bx-rest 0.23.0 → 0.25.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.
@@ -28,10 +28,16 @@ export class BXRestNavvyRestCalendarEvent {
28
28
  // )
29
29
  // }
30
30
  this.get = Object.assign(
31
- /** Возвращает список событий календаря, всегда весь список, паганации в методе нет да и не нужна */
32
- (param) => this.Navvy.simple(this.url.get, param, BXRestMapCalendarEvent.get), {
33
- /** Метод получает список будущих событий */
34
- nearest: (param) => this.Navvy.simple(this.url.get.nearest, param, BXRestMapCalendarEvent.get),
31
+ /**
32
+ * Возвращает список событий календаря, всегда весь список, паганации в методе нет да и не нужна.
33
+ *
34
+ * @param param
35
+ * @param dateTimeFormat Формат полей с датой и временем в ответе (см. {@link BXRestMapCalendarEvent.get}).
36
+ * Передавайте явно, если формат дат на портале отличается от значения по умолчанию.
37
+ */
38
+ (param, dateTimeFormat) => this.Navvy.simple(this.url.get, param, (raw) => BXRestMapCalendarEvent.get(raw, dateTimeFormat)), {
39
+ /** Метод получает список будущих событий. @see get */
40
+ nearest: (param, dateTimeFormat) => this.Navvy.simple(this.url.get.nearest, param, (raw) => BXRestMapCalendarEvent.get(raw, dateTimeFormat)),
35
41
  });
36
42
  }
37
43
  /** Добавляет событие в календарь */
@@ -46,9 +52,15 @@ export class BXRestNavvyRestCalendarEvent {
46
52
  update(param) {
47
53
  return this.Navvy.simple(this.url.update, param);
48
54
  }
49
- /** Метод получает информацию о событии календаря по идентификатору */
50
- getById(param) {
51
- return this.Navvy.simple(this.url.getById, param, BXRestMapCalendarEvent.getById);
55
+ /**
56
+ * Метод получает информацию о событии календаря по идентификатору.
57
+ *
58
+ * @param param
59
+ * @param dateTimeFormat Формат полей с датой и временем в ответе (см. {@link BXRestMapCalendarEvent.getById}).
60
+ * Передавайте явно, если формат дат на портале отличается от значения по умолчанию.
61
+ */
62
+ getById(param, dateTimeFormat) {
63
+ return this.Navvy.simple(this.url.getById, param, (raw) => BXRestMapCalendarEvent.getById(raw, dateTimeFormat));
52
64
  }
53
65
  }
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ieC1yZXN0L3NyYy9yZXF1ZXN0LW5hdnZ5L2NhbGVuZGFyL2V2ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUNqRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFVMUcsTUFBTSxPQUFPLDRCQUE0QjtJQUF6QztRQUVVLFFBQUcsR0FBRztZQUVaLDhCQUE4QjtZQUM5QixHQUFHLEVBQUUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQztZQUU5QixzQkFBc0I7WUFDdEIsTUFBTSxFQUFFLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUM7WUFFcEMsMENBQTBDO1lBQzFDLEdBQUcsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsRUFBRTtnQkFFNUMsa0VBQWtFO2dCQUNsRSxPQUFPLEVBQUUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLENBQUM7YUFDN0MsQ0FBQztZQUVGLHNFQUFzRTtZQUN0RSxPQUFPLEVBQUUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLFNBQVMsQ0FBQztZQUV2Qyx1Q0FBdUM7WUFDdkMsTUFBTSxFQUFFLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUM7U0FDckMsQ0FBQTtRQUVnQixVQUFLLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQTtRQWtCcEMsdUdBQXVHO1FBQ3ZHLDZDQUE2QztRQUM3Qyw4QkFBOEI7UUFDOUIsb0JBQW9CO1FBQ3BCLGFBQWE7UUFDYixpQ0FBaUM7UUFDakMsTUFBTTtRQUNOLElBQUk7UUFFSixRQUFHLEdBQUcsTUFBTSxDQUFDLE1BQU07UUFDakIsb0dBQW9HO1FBQ3BHLENBQUMsS0FBbUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ3hELElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUNaLEtBQUssRUFDTCxzQkFBc0IsQ0FBQyxHQUFHLENBQzNCLEVBQ0Q7WUFDRSw0Q0FBNEM7WUFDNUMsT0FBTyxFQUFFLENBQUMsS0FBMEMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ3hFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFDcEIsS0FBSyxFQUNMLHNCQUFzQixDQUFDLEdBQUcsQ0FDM0I7U0FDRixDQUNGLENBQUM7SUFrQkosQ0FBQztJQTFEQyxvQ0FBb0M7SUFDcEMsR0FBRyxDQUFDLEtBQW1DO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ3RCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUNaLEtBQUssQ0FDTixDQUFBO0lBQ0gsQ0FBQztJQUVELG9DQUFvQztJQUNwQyxNQUFNLENBQUMsS0FBc0M7UUFDM0MsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FDdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQ2YsS0FBSyxDQUNOLENBQUE7SUFDSCxDQUFDO0lBNEJELHFDQUFxQztJQUNyQyxNQUFNLENBQUMsS0FBc0M7UUFDM0MsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FDdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQ2YsS0FBSyxDQUNOLENBQUE7SUFDSCxDQUFDO0lBRUQsc0VBQXNFO0lBQ3RFLE9BQU8sQ0FBQyxLQUF1QztRQUM3QyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUN0QixJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFDaEIsS0FBSyxFQUNMLHNCQUFzQixDQUFDLE9BQU8sQ0FDL0IsQ0FBQTtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5pbXBvcnQgeyBOYXZ2eSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL25hdnZ5J1xyXG5pbXBvcnQgeyBCWFJlc3RNYXBDYWxlbmRhckV2ZW50IH0gZnJvbSAnLi4vLi4vbWFwL2NhbGVuZGFyL2V2ZW50J1xyXG5pbXBvcnQgeyAkYWRkLCAkY2FsZW5kYXIsICRkZWxldGUsICRldmVudCwgJGdldCwgJG5lYXJlc3QsICR1cGRhdGUgfSBmcm9tICcuLi8uLi9jb25zdHMvcGFydC1uYW1lLW1ldGhvZHMnXHJcbmltcG9ydCB7XHJcbiAgaUJYUmVzdENhbGVuZGFyRXZlbnRHZXRCeUlkUGFyYW0sXHJcbiAgaUJYUmVzdENhbGVuZGFyRXZlbnRHZXRQYXJhbSxcclxuICBpQlhSZXN0Q2FsZW5kYXJFdmVudEFkZFBhcmFtLFxyXG4gIGlCWFJlc3RDYWxlbmRhckV2ZW50VXBkYXRlUGFyYW0sXHJcbiAgaUJYUmVzdENhbGVuZGFyRXZlbnREZWxldGVQYXJhbSxcclxuICBpQlhSZXN0Q2FsZW5kYXJFdmVudEdldE5lYXJlc3RQYXJhbVxyXG59IGZyb20gJy4uLy4uL3R5cGlmaWNhdGlvbi9yZXN0L2NhbGVuZGFyJ1xyXG5cclxuZXhwb3J0IGNsYXNzIEJYUmVzdE5hdnZ5UmVzdENhbGVuZGFyRXZlbnQge1xyXG5cclxuICBwcml2YXRlIHVybCA9IHtcclxuXHJcbiAgICAvKiog0JTQvtCx0LDQstC70Y/QtdGCINC90L7QstC+0LUg0YHQvtCx0YvRgtC40LUgKi9cclxuICAgIGFkZDogWyRjYWxlbmRhciwgJGV2ZW50LCAkYWRkXSxcclxuXHJcbiAgICAvKiog0KPQtNCw0LvRj9C10YIg0YHQvtCx0YvRgtC40LUgKi9cclxuICAgIGRlbGV0ZTogWyRjYWxlbmRhciwgJGV2ZW50LCAkZGVsZXRlXSxcclxuXHJcbiAgICAvKiog0JLQvtC30LLRgNCw0YnQsNC10YIg0YHQv9C40YHQvtC6INGB0L7QsdGL0YLQuNC5INC60LDQu9C10L3QtNCw0YDRjyAqL1xyXG4gICAgZ2V0OiBPYmplY3QuYXNzaWduKFskY2FsZW5kYXIsICRldmVudCwgJGdldF0sIHtcclxuXHJcbiAgICAgIC8qKiDQktC+0LfQstGA0LDRidCw0LXRgiDRgdC/0LjRgdC+0Log0LHRg9C00YPRidC40YUg0YHQvtCx0YvRgtC40Lkg0LTQu9GPINGC0LXQutGD0YnQtdCz0L4g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPICovXHJcbiAgICAgIG5lYXJlc3Q6IFskY2FsZW5kYXIsICRldmVudCwgJGdldCwgJG5lYXJlc3RdLFxyXG4gICAgfSksXHJcblxyXG4gICAgLyoqINCc0LXRgtC+0LQg0L/QvtC70YPRh9Cw0LXRgiDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDRgdC+0LHRi9GC0LjQuCDQutCw0LvQtdC90LTQsNGA0Y8g0L/QviDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNGDICovXHJcbiAgICBnZXRCeUlkOiBbJGNhbGVuZGFyLCAkZXZlbnQsICdnZXRCeUlkJ10sXHJcblxyXG4gICAgLyoqINCg0LXQtNCw0LrRgtC40YDRg9C10YIg0YHRg9GJ0LXRgdGC0LLRg9GO0YnQtdC1INGB0L7QsdGL0YLQuNC1ICovXHJcbiAgICB1cGRhdGU6IFskY2FsZW5kYXIsICRldmVudCwgJHVwZGF0ZV0sXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IE5hdnZ5ID0gbmV3IE5hdnZ5KClcclxuXHJcbiAgLyoqINCU0L7QsdCw0LLQu9GP0LXRgiDRgdC+0LHRi9GC0LjQtSDQsiDQutCw0LvQtdC90LTQsNGA0YwgKi9cclxuICBhZGQocGFyYW06IGlCWFJlc3RDYWxlbmRhckV2ZW50QWRkUGFyYW0pIHtcclxuICAgIHJldHVybiB0aGlzLk5hdnZ5LnNpbXBsZTxudW1iZXIsIG51bWJlciwgaUJYUmVzdENhbGVuZGFyRXZlbnRBZGRQYXJhbT4oXHJcbiAgICAgIHRoaXMudXJsLmFkZCxcclxuICAgICAgcGFyYW1cclxuICAgIClcclxuICB9XHJcblxyXG4gIC8qKiDQlNC+0LHQsNCy0LvRj9C10YIg0YHQvtCx0YvRgtC40LUg0LIg0LrQsNC70LXQvdC00LDRgNGMICovXHJcbiAgZGVsZXRlKHBhcmFtOiBpQlhSZXN0Q2FsZW5kYXJFdmVudERlbGV0ZVBhcmFtKSB7XHJcbiAgICByZXR1cm4gdGhpcy5OYXZ2eS5zaW1wbGU8Ym9vbGVhbiwgYm9vbGVhbiwgaUJYUmVzdENhbGVuZGFyRXZlbnREZWxldGVQYXJhbT4oXHJcbiAgICAgIHRoaXMudXJsLmRlbGV0ZSxcclxuICAgICAgcGFyYW1cclxuICAgIClcclxuICB9XHJcblxyXG4gIC8vIC8qKiDQktC+0LfQstGA0LDRidCw0LXRgiDRgdC/0LjRgdC+0Log0YHQvtCx0YvRgtC40Lkg0LrQsNC70LXQvdC00LDRgNGPLCDQstGB0LXQs9C00LAg0LLQtdGB0Ywg0YHQv9C40YHQvtC6LCDQv9Cw0LPQsNC90LDRhtC40Lgg0LIg0LzQtdGC0L7QtNC1INC90LXRgiDQtNCwINC4INC90LUg0L3Rg9C20L3QsCAqL1xyXG4gIC8vIGdldChwYXJhbTogaUJYUmVzdENhbGVuZGFyRXZlbnRHZXRQYXJhbSkge1xyXG4gIC8vICAgcmV0dXJuIHRoaXMuTmF2dnkuc2ltcGxlKFxyXG4gIC8vICAgICB0aGlzLnVybC5nZXQsXHJcbiAgLy8gICAgIHBhcmFtLFxyXG4gIC8vICAgICBCWFJlc3RNYXBDYWxlbmRhckV2ZW50LmdldFxyXG4gIC8vICAgKVxyXG4gIC8vIH1cclxuXHJcbiAgZ2V0ID0gT2JqZWN0LmFzc2lnbihcclxuICAgIC8qKiDQktC+0LfQstGA0LDRidCw0LXRgiDRgdC/0LjRgdC+0Log0YHQvtCx0YvRgtC40Lkg0LrQsNC70LXQvdC00LDRgNGPLCDQstGB0LXQs9C00LAg0LLQtdGB0Ywg0YHQv9C40YHQvtC6LCDQv9Cw0LPQsNC90LDRhtC40Lgg0LIg0LzQtdGC0L7QtNC1INC90LXRgiDQtNCwINC4INC90LUg0L3Rg9C20L3QsCAqL1xyXG4gICAgKHBhcmFtOiBpQlhSZXN0Q2FsZW5kYXJFdmVudEdldFBhcmFtKSA9PiB0aGlzLk5hdnZ5LnNpbXBsZShcclxuICAgICAgdGhpcy51cmwuZ2V0LFxyXG4gICAgICBwYXJhbSxcclxuICAgICAgQlhSZXN0TWFwQ2FsZW5kYXJFdmVudC5nZXRcclxuICAgICksXHJcbiAgICB7XHJcbiAgICAgIC8qKiDQnNC10YLQvtC0INC/0L7Qu9GD0YfQsNC10YIg0YHQv9C40YHQvtC6INCx0YPQtNGD0YnQuNGFINGB0L7QsdGL0YLQuNC5ICovXHJcbiAgICAgIG5lYXJlc3Q6IChwYXJhbTogaUJYUmVzdENhbGVuZGFyRXZlbnRHZXROZWFyZXN0UGFyYW0pID0+IHRoaXMuTmF2dnkuc2ltcGxlKFxyXG4gICAgICAgIHRoaXMudXJsLmdldC5uZWFyZXN0LFxyXG4gICAgICAgIHBhcmFtLFxyXG4gICAgICAgIEJYUmVzdE1hcENhbGVuZGFyRXZlbnQuZ2V0XHJcbiAgICAgICksXHJcbiAgICB9XHJcbiAgKTtcclxuXHJcbiAgLyoqINCe0LHQvdC+0LLQu9C10L3QuNC1INGB0L7QsdGL0YLQuNC1INCyINC60LDQu9C10L3QtNCw0YDRjCAqL1xyXG4gIHVwZGF0ZShwYXJhbTogaUJYUmVzdENhbGVuZGFyRXZlbnRVcGRhdGVQYXJhbSkge1xyXG4gICAgcmV0dXJuIHRoaXMuTmF2dnkuc2ltcGxlPG51bWJlciwgbnVtYmVyLCBpQlhSZXN0Q2FsZW5kYXJFdmVudFVwZGF0ZVBhcmFtPihcclxuICAgICAgdGhpcy51cmwudXBkYXRlLFxyXG4gICAgICBwYXJhbVxyXG4gICAgKVxyXG4gIH1cclxuXHJcbiAgLyoqINCc0LXRgtC+0LQg0L/QvtC70YPRh9Cw0LXRgiDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDRgdC+0LHRi9GC0LjQuCDQutCw0LvQtdC90LTQsNGA0Y8g0L/QviDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNGDICovXHJcbiAgZ2V0QnlJZChwYXJhbTogaUJYUmVzdENhbGVuZGFyRXZlbnRHZXRCeUlkUGFyYW0pIHtcclxuICAgIHJldHVybiB0aGlzLk5hdnZ5LnNpbXBsZShcclxuICAgICAgdGhpcy51cmwuZ2V0QnlJZCxcclxuICAgICAgcGFyYW0sXHJcbiAgICAgIEJYUmVzdE1hcENhbGVuZGFyRXZlbnQuZ2V0QnlJZFxyXG4gICAgKVxyXG4gIH1cclxufVxyXG4iXX0=
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ieC1yZXN0L3NyYy9yZXF1ZXN0LW5hdnZ5L2NhbGVuZGFyL2V2ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUNqRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFVMUcsTUFBTSxPQUFPLDRCQUE0QjtJQUF6QztRQUVVLFFBQUcsR0FBRztZQUVaLDhCQUE4QjtZQUM5QixHQUFHLEVBQUUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQztZQUU5QixzQkFBc0I7WUFDdEIsTUFBTSxFQUFFLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUM7WUFFcEMsMENBQTBDO1lBQzFDLEdBQUcsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsRUFBRTtnQkFFNUMsa0VBQWtFO2dCQUNsRSxPQUFPLEVBQUUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLENBQUM7YUFDN0MsQ0FBQztZQUVGLHNFQUFzRTtZQUN0RSxPQUFPLEVBQUUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLFNBQVMsQ0FBQztZQUV2Qyx1Q0FBdUM7WUFDdkMsTUFBTSxFQUFFLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUM7U0FDckMsQ0FBQTtRQUVnQixVQUFLLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQTtRQWtCcEMsdUdBQXVHO1FBQ3ZHLDZDQUE2QztRQUM3Qyw4QkFBOEI7UUFDOUIsb0JBQW9CO1FBQ3BCLGFBQWE7UUFDYixpQ0FBaUM7UUFDakMsTUFBTTtRQUNOLElBQUk7UUFFSixRQUFHLEdBQUcsTUFBTSxDQUFDLE1BQU07UUFDakI7Ozs7OztXQU1HO1FBQ0gsQ0FBQyxLQUFtQyxFQUFFLGNBQXVCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUNqRixJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFDWixLQUFLLEVBQ0wsQ0FBQyxHQUFzRCxFQUFFLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLGNBQWMsQ0FBQyxDQUM1RyxFQUNEO1lBQ0Usc0RBQXNEO1lBQ3RELE9BQU8sRUFBRSxDQUFDLEtBQTBDLEVBQUUsY0FBdUIsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ2pHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFDcEIsS0FBSyxFQUNMLENBQUMsR0FBc0QsRUFBRSxFQUFFLENBQUMsc0JBQXNCLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxjQUFjLENBQUMsQ0FDNUc7U0FDRixDQUNGLENBQUM7SUF3QkosQ0FBQztJQXRFQyxvQ0FBb0M7SUFDcEMsR0FBRyxDQUFDLEtBQW1DO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ3RCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUNaLEtBQUssQ0FDTixDQUFBO0lBQ0gsQ0FBQztJQUVELG9DQUFvQztJQUNwQyxNQUFNLENBQUMsS0FBc0M7UUFDM0MsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FDdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQ2YsS0FBSyxDQUNOLENBQUE7SUFDSCxDQUFDO0lBa0NELHFDQUFxQztJQUNyQyxNQUFNLENBQUMsS0FBc0M7UUFDM0MsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FDdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQ2YsS0FBSyxDQUNOLENBQUE7SUFDSCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsT0FBTyxDQUFDLEtBQXVDLEVBQUUsY0FBdUI7UUFDdEUsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FDdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQ2hCLEtBQUssRUFDTCxDQUFDLEdBQTBELEVBQUUsRUFBRSxDQUFDLHNCQUFzQixDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsY0FBYyxDQUFDLENBQ3BILENBQUE7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuaW1wb3J0IHsgTmF2dnkgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9uYXZ2eSdcclxuaW1wb3J0IHsgQlhSZXN0TWFwQ2FsZW5kYXJFdmVudCB9IGZyb20gJy4uLy4uL21hcC9jYWxlbmRhci9ldmVudCdcclxuaW1wb3J0IHsgJGFkZCwgJGNhbGVuZGFyLCAkZGVsZXRlLCAkZXZlbnQsICRnZXQsICRuZWFyZXN0LCAkdXBkYXRlIH0gZnJvbSAnLi4vLi4vY29uc3RzL3BhcnQtbmFtZS1tZXRob2RzJ1xyXG5pbXBvcnQge1xyXG4gIGlCWFJlc3RDYWxlbmRhckV2ZW50R2V0QnlJZFBhcmFtLFxyXG4gIGlCWFJlc3RDYWxlbmRhckV2ZW50R2V0UGFyYW0sXHJcbiAgaUJYUmVzdENhbGVuZGFyRXZlbnRBZGRQYXJhbSxcclxuICBpQlhSZXN0Q2FsZW5kYXJFdmVudFVwZGF0ZVBhcmFtLFxyXG4gIGlCWFJlc3RDYWxlbmRhckV2ZW50RGVsZXRlUGFyYW0sXHJcbiAgaUJYUmVzdENhbGVuZGFyRXZlbnRHZXROZWFyZXN0UGFyYW1cclxufSBmcm9tICcuLi8uLi90eXBpZmljYXRpb24vcmVzdC9jYWxlbmRhcidcclxuXHJcbmV4cG9ydCBjbGFzcyBCWFJlc3ROYXZ2eVJlc3RDYWxlbmRhckV2ZW50IHtcclxuXHJcbiAgcHJpdmF0ZSB1cmwgPSB7XHJcblxyXG4gICAgLyoqINCU0L7QsdCw0LLQu9GP0LXRgiDQvdC+0LLQvtC1INGB0L7QsdGL0YLQuNC1ICovXHJcbiAgICBhZGQ6IFskY2FsZW5kYXIsICRldmVudCwgJGFkZF0sXHJcblxyXG4gICAgLyoqINCj0LTQsNC70Y/QtdGCINGB0L7QsdGL0YLQuNC1ICovXHJcbiAgICBkZWxldGU6IFskY2FsZW5kYXIsICRldmVudCwgJGRlbGV0ZV0sXHJcblxyXG4gICAgLyoqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINGB0L/QuNGB0L7QuiDRgdC+0LHRi9GC0LjQuSDQutCw0LvQtdC90LTQsNGA0Y8gKi9cclxuICAgIGdldDogT2JqZWN0LmFzc2lnbihbJGNhbGVuZGFyLCAkZXZlbnQsICRnZXRdLCB7XHJcblxyXG4gICAgICAvKiog0JLQvtC30LLRgNCw0YnQsNC10YIg0YHQv9C40YHQvtC6INCx0YPQtNGD0YnQuNGFINGB0L7QsdGL0YLQuNC5INC00LvRjyDRgtC10LrRg9GJ0LXQs9C+INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyAqL1xyXG4gICAgICBuZWFyZXN0OiBbJGNhbGVuZGFyLCAkZXZlbnQsICRnZXQsICRuZWFyZXN0XSxcclxuICAgIH0pLFxyXG5cclxuICAgIC8qKiDQnNC10YLQvtC0INC/0L7Qu9GD0YfQsNC10YIg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0YHQvtCx0YvRgtC40Lgg0LrQsNC70LXQvdC00LDRgNGPINC/0L4g0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YDRgyAqL1xyXG4gICAgZ2V0QnlJZDogWyRjYWxlbmRhciwgJGV2ZW50LCAnZ2V0QnlJZCddLFxyXG5cclxuICAgIC8qKiDQoNC10LTQsNC60YLQuNGA0YPQtdGCINGB0YPRidC10YHRgtCy0YPRjtGJ0LXQtSDRgdC+0LHRi9GC0LjQtSAqL1xyXG4gICAgdXBkYXRlOiBbJGNhbGVuZGFyLCAkZXZlbnQsICR1cGRhdGVdLFxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBOYXZ2eSA9IG5ldyBOYXZ2eSgpXHJcblxyXG4gIC8qKiDQlNC+0LHQsNCy0LvRj9C10YIg0YHQvtCx0YvRgtC40LUg0LIg0LrQsNC70LXQvdC00LDRgNGMICovXHJcbiAgYWRkKHBhcmFtOiBpQlhSZXN0Q2FsZW5kYXJFdmVudEFkZFBhcmFtKSB7XHJcbiAgICByZXR1cm4gdGhpcy5OYXZ2eS5zaW1wbGU8bnVtYmVyLCBudW1iZXIsIGlCWFJlc3RDYWxlbmRhckV2ZW50QWRkUGFyYW0+KFxyXG4gICAgICB0aGlzLnVybC5hZGQsXHJcbiAgICAgIHBhcmFtXHJcbiAgICApXHJcbiAgfVxyXG5cclxuICAvKiog0JTQvtCx0LDQstC70Y/QtdGCINGB0L7QsdGL0YLQuNC1INCyINC60LDQu9C10L3QtNCw0YDRjCAqL1xyXG4gIGRlbGV0ZShwYXJhbTogaUJYUmVzdENhbGVuZGFyRXZlbnREZWxldGVQYXJhbSkge1xyXG4gICAgcmV0dXJuIHRoaXMuTmF2dnkuc2ltcGxlPGJvb2xlYW4sIGJvb2xlYW4sIGlCWFJlc3RDYWxlbmRhckV2ZW50RGVsZXRlUGFyYW0+KFxyXG4gICAgICB0aGlzLnVybC5kZWxldGUsXHJcbiAgICAgIHBhcmFtXHJcbiAgICApXHJcbiAgfVxyXG5cclxuICAvLyAvKiog0JLQvtC30LLRgNCw0YnQsNC10YIg0YHQv9C40YHQvtC6INGB0L7QsdGL0YLQuNC5INC60LDQu9C10L3QtNCw0YDRjywg0LLRgdC10LPQtNCwINCy0LXRgdGMINGB0L/QuNGB0L7Quiwg0L/QsNCz0LDQvdCw0YbQuNC4INCyINC80LXRgtC+0LTQtSDQvdC10YIg0LTQsCDQuCDQvdC1INC90YPQttC90LAgKi9cclxuICAvLyBnZXQocGFyYW06IGlCWFJlc3RDYWxlbmRhckV2ZW50R2V0UGFyYW0pIHtcclxuICAvLyAgIHJldHVybiB0aGlzLk5hdnZ5LnNpbXBsZShcclxuICAvLyAgICAgdGhpcy51cmwuZ2V0LFxyXG4gIC8vICAgICBwYXJhbSxcclxuICAvLyAgICAgQlhSZXN0TWFwQ2FsZW5kYXJFdmVudC5nZXRcclxuICAvLyAgIClcclxuICAvLyB9XHJcblxyXG4gIGdldCA9IE9iamVjdC5hc3NpZ24oXHJcbiAgICAvKipcclxuICAgICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINGB0L/QuNGB0L7QuiDRgdC+0LHRi9GC0LjQuSDQutCw0LvQtdC90LTQsNGA0Y8sINCy0YHQtdCz0LTQsCDQstC10YHRjCDRgdC/0LjRgdC+0LosINC/0LDQs9Cw0L3QsNGG0LjQuCDQsiDQvNC10YLQvtC00LUg0L3QtdGCINC00LAg0Lgg0L3QtSDQvdGD0LbQvdCwLlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBwYXJhbVxyXG4gICAgICogQHBhcmFtIGRhdGVUaW1lRm9ybWF0INCk0L7RgNC80LDRgiDQv9C+0LvQtdC5INGBINC00LDRgtC+0Lkg0Lgg0LLRgNC10LzQtdC90LXQvCDQsiDQvtGC0LLQtdGC0LUgKNGB0LwuIHtAbGluayBCWFJlc3RNYXBDYWxlbmRhckV2ZW50LmdldH0pLlxyXG4gICAgICogICDQn9C10YDQtdC00LDQstCw0LnRgtC1INGP0LLQvdC+LCDQtdGB0LvQuCDRhNC+0YDQvNCw0YIg0LTQsNGCINC90LAg0L/QvtGA0YLQsNC70LUg0L7RgtC70LjRh9Cw0LXRgtGB0Y8g0L7RgiDQt9C90LDRh9C10L3QuNGPINC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOLlxyXG4gICAgICovXHJcbiAgICAocGFyYW06IGlCWFJlc3RDYWxlbmRhckV2ZW50R2V0UGFyYW0sIGRhdGVUaW1lRm9ybWF0Pzogc3RyaW5nKSA9PiB0aGlzLk5hdnZ5LnNpbXBsZShcclxuICAgICAgdGhpcy51cmwuZ2V0LFxyXG4gICAgICBwYXJhbSxcclxuICAgICAgKHJhdz86IFBhcmFtZXRlcnM8dHlwZW9mIEJYUmVzdE1hcENhbGVuZGFyRXZlbnQuZ2V0PlswXSkgPT4gQlhSZXN0TWFwQ2FsZW5kYXJFdmVudC5nZXQocmF3LCBkYXRlVGltZUZvcm1hdClcclxuICAgICksXHJcbiAgICB7XHJcbiAgICAgIC8qKiDQnNC10YLQvtC0INC/0L7Qu9GD0YfQsNC10YIg0YHQv9C40YHQvtC6INCx0YPQtNGD0YnQuNGFINGB0L7QsdGL0YLQuNC5LiBAc2VlIGdldCAqL1xyXG4gICAgICBuZWFyZXN0OiAocGFyYW06IGlCWFJlc3RDYWxlbmRhckV2ZW50R2V0TmVhcmVzdFBhcmFtLCBkYXRlVGltZUZvcm1hdD86IHN0cmluZykgPT4gdGhpcy5OYXZ2eS5zaW1wbGUoXHJcbiAgICAgICAgdGhpcy51cmwuZ2V0Lm5lYXJlc3QsXHJcbiAgICAgICAgcGFyYW0sXHJcbiAgICAgICAgKHJhdz86IFBhcmFtZXRlcnM8dHlwZW9mIEJYUmVzdE1hcENhbGVuZGFyRXZlbnQuZ2V0PlswXSkgPT4gQlhSZXN0TWFwQ2FsZW5kYXJFdmVudC5nZXQocmF3LCBkYXRlVGltZUZvcm1hdClcclxuICAgICAgKSxcclxuICAgIH1cclxuICApO1xyXG5cclxuICAvKiog0J7QsdC90L7QstC70LXQvdC40LUg0YHQvtCx0YvRgtC40LUg0LIg0LrQsNC70LXQvdC00LDRgNGMICovXHJcbiAgdXBkYXRlKHBhcmFtOiBpQlhSZXN0Q2FsZW5kYXJFdmVudFVwZGF0ZVBhcmFtKSB7XHJcbiAgICByZXR1cm4gdGhpcy5OYXZ2eS5zaW1wbGU8bnVtYmVyLCBudW1iZXIsIGlCWFJlc3RDYWxlbmRhckV2ZW50VXBkYXRlUGFyYW0+KFxyXG4gICAgICB0aGlzLnVybC51cGRhdGUsXHJcbiAgICAgIHBhcmFtXHJcbiAgICApXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiDQnNC10YLQvtC0INC/0L7Qu9GD0YfQsNC10YIg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0YHQvtCx0YvRgtC40Lgg0LrQsNC70LXQvdC00LDRgNGPINC/0L4g0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YDRgy5cclxuICAgKlxyXG4gICAqIEBwYXJhbSBwYXJhbVxyXG4gICAqIEBwYXJhbSBkYXRlVGltZUZvcm1hdCDQpNC+0YDQvNCw0YIg0L/QvtC70LXQuSDRgSDQtNCw0YLQvtC5INC4INCy0YDQtdC80LXQvdC10Lwg0LIg0L7RgtCy0LXRgtC1ICjRgdC8LiB7QGxpbmsgQlhSZXN0TWFwQ2FsZW5kYXJFdmVudC5nZXRCeUlkfSkuXHJcbiAgICogICDQn9C10YDQtdC00LDQstCw0LnRgtC1INGP0LLQvdC+LCDQtdGB0LvQuCDRhNC+0YDQvNCw0YIg0LTQsNGCINC90LAg0L/QvtGA0YLQsNC70LUg0L7RgtC70LjRh9Cw0LXRgtGB0Y8g0L7RgiDQt9C90LDRh9C10L3QuNGPINC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOLlxyXG4gICAqL1xyXG4gIGdldEJ5SWQocGFyYW06IGlCWFJlc3RDYWxlbmRhckV2ZW50R2V0QnlJZFBhcmFtLCBkYXRlVGltZUZvcm1hdD86IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuTmF2dnkuc2ltcGxlKFxyXG4gICAgICB0aGlzLnVybC5nZXRCeUlkLFxyXG4gICAgICBwYXJhbSxcclxuICAgICAgKHJhdz86IFBhcmFtZXRlcnM8dHlwZW9mIEJYUmVzdE1hcENhbGVuZGFyRXZlbnQuZ2V0QnlJZD5bMF0pID0+IEJYUmVzdE1hcENhbGVuZGFyRXZlbnQuZ2V0QnlJZChyYXcsIGRhdGVUaW1lRm9ybWF0KVxyXG4gICAgKVxyXG4gIH1cclxufVxyXG4iXX0=
@@ -15,9 +15,15 @@ export class BXRestNavvyRestCalendarSection {
15
15
  };
16
16
  this.Navvy = new Navvy();
17
17
  }
18
- /** Возвращает описание разделов, всегда весь список, паганации в методе нет да и не нужна */
19
- get(param) {
20
- return this.Navvy.simple(this.url.get, param, BXRestMapCalendarSection.get);
18
+ /**
19
+ * Возвращает описание разделов, всегда весь список, паганации в методе нет да и не нужна.
20
+ *
21
+ * @param param
22
+ * @param dateTimeFormat Формат полей `DATE_CREATE`/`TIMESTAMP_X` в ответе (см. {@link BXRestMapCalendarSection.get}).
23
+ * Передавайте явно, если формат дат на портале отличается от значения по умолчанию.
24
+ */
25
+ get(param, dateTimeFormat) {
26
+ return this.Navvy.simple(this.url.get, param, (raw) => BXRestMapCalendarSection.get(raw, dateTimeFormat));
21
27
  }
22
28
  /** Добавляет новый раздел */
23
29
  add(param) {
@@ -32,4 +38,4 @@ export class BXRestNavvyRestCalendarSection {
32
38
  return this.Navvy.simple(this.url.update, param);
33
39
  }
34
40
  }
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL3JlcXVlc3QtbmF2dnkvY2FsZW5kYXIvc2VjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDNUMsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFPbEcsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENBQUE7QUFFckUsTUFBTSxPQUFPLDhCQUE4QjtJQUEzQztRQUVVLFFBQUcsR0FBRztZQUVaLDZCQUE2QjtZQUM3QixHQUFHLEVBQUUsQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQztZQUNoQyxxQkFBcUI7WUFDckIsTUFBTSxFQUFFLENBQUMsU0FBUyxFQUFFLFFBQVEsRUFBRSxPQUFPLENBQUM7WUFFdEMsbUNBQW1DO1lBQ25DLEdBQUcsRUFBRSxDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDO1lBRWhDLHVDQUF1QztZQUN2QyxNQUFNLEVBQUUsQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQztTQUN2QyxDQUFBO1FBRWdCLFVBQUssR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFBO0lBa0N0QyxDQUFDO0lBaENDLDZGQUE2RjtJQUM3RixHQUFHLENBQUMsS0FBcUM7UUFDdkMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FDdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQ1osS0FBSyxFQUNMLHdCQUF3QixDQUFDLEdBQUcsQ0FDN0IsQ0FBQTtJQUNILENBQUM7SUFFRCw2QkFBNkI7SUFDN0IsR0FBRyxDQUFDLEtBQXFDO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ3RCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUNaLEtBQUssQ0FDTixDQUFBO0lBQ0gsQ0FBQztJQUVELHFCQUFxQjtJQUNyQixNQUFNLENBQUMsS0FBd0M7UUFDN0MsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FDdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQ2YsS0FBSyxDQUNOLENBQUE7SUFDSCxDQUFDO0lBRUQsdUNBQXVDO0lBQ3ZDLE1BQU0sQ0FBQyxLQUF3QztRQUM3QyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUN0QixJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFDZixLQUFLLENBQ04sQ0FBQTtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5hdnZ5IH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbmF2dnknXHJcbmltcG9ydCB7ICRhZGQsICRjYWxlbmRhciwgJGRlbGV0ZSwgJGdldCwgJHNlY3Rpb24sICR1cGRhdGUgfSBmcm9tICcuLi8uLi9jb25zdHMvcGFydC1uYW1lLW1ldGhvZHMnXHJcbmltcG9ydCB7XHJcbiAgaUJYUmVzdENhbGVuZGFyU2VjdGlvbkdldFBhcmFtLFxyXG4gIGlCWFJlc3RDYWxlbmRhclNlY3Rpb25BZGRQYXJhbSxcclxuICBpQlhSZXN0Q2FsZW5kYXJTZWN0aW9uRGVsZXRlUGFyYW0sXHJcbiAgaUJYUmVzdENhbGVuZGFyU2VjdGlvblVwZGF0ZVBhcmFtXHJcbn0gZnJvbSAnLi4vLi4vdHlwaWZpY2F0aW9uL3Jlc3QvY2FsZW5kYXInXHJcbmltcG9ydCB7IEJYUmVzdE1hcENhbGVuZGFyU2VjdGlvbiB9IGZyb20gJy4uLy4uL21hcC9jYWxlbmRhci9zZWN0aW9uJ1xyXG5cclxuZXhwb3J0IGNsYXNzIEJYUmVzdE5hdnZ5UmVzdENhbGVuZGFyU2VjdGlvbiB7XHJcblxyXG4gIHByaXZhdGUgdXJsID0ge1xyXG5cclxuICAgIC8qKiDQlNC+0LHQsNCy0LvRj9C10YIg0L3QvtCy0YvQuSDRgNCw0LfQtNC10LsgKi9cclxuICAgIGFkZDogWyRjYWxlbmRhciwgJHNlY3Rpb24sICRhZGRdLFxyXG4gICAgLyoqINCj0LTQsNC70Y/QtdGCINGA0LDQt9C00LXQuyAqL1xyXG4gICAgZGVsZXRlOiBbJGNhbGVuZGFyLCAkc2VjdGlvbiwgJGRlbGV0ZV0sXHJcblxyXG4gICAgLyoqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINC+0L/QuNGB0LDQvdC40LUg0YDQsNC30LTQtdC70L7QsiAqL1xyXG4gICAgZ2V0OiBbJGNhbGVuZGFyLCAkc2VjdGlvbiwgJGdldF0sXHJcblxyXG4gICAgLyoqINCg0LXQtNCw0LrRgtC40YDRg9C10YIg0YHRg9GJ0LXRgdGC0LLRg9GO0YnQtdC1INGA0LDQt9C00LXQu9GLICovXHJcbiAgICB1cGRhdGU6IFskY2FsZW5kYXIsICRzZWN0aW9uLCAkdXBkYXRlXSxcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgTmF2dnkgPSBuZXcgTmF2dnkoKVxyXG5cclxuICAvKiog0JLQvtC30LLRgNCw0YnQsNC10YIg0L7Qv9C40YHQsNC90LjQtSDRgNCw0LfQtNC10LvQvtCyLCDQstGB0LXQs9C00LAg0LLQtdGB0Ywg0YHQv9C40YHQvtC6LCDQv9Cw0LPQsNC90LDRhtC40Lgg0LIg0LzQtdGC0L7QtNC1INC90LXRgiDQtNCwINC4INC90LUg0L3Rg9C20L3QsCAqL1xyXG4gIGdldChwYXJhbTogaUJYUmVzdENhbGVuZGFyU2VjdGlvbkdldFBhcmFtKSB7XHJcbiAgICByZXR1cm4gdGhpcy5OYXZ2eS5zaW1wbGUoXHJcbiAgICAgIHRoaXMudXJsLmdldCxcclxuICAgICAgcGFyYW0sXHJcbiAgICAgIEJYUmVzdE1hcENhbGVuZGFyU2VjdGlvbi5nZXRcclxuICAgIClcclxuICB9XHJcblxyXG4gIC8qKiDQlNC+0LHQsNCy0LvRj9C10YIg0L3QvtCy0YvQuSDRgNCw0LfQtNC10LsgKi9cclxuICBhZGQocGFyYW06IGlCWFJlc3RDYWxlbmRhclNlY3Rpb25BZGRQYXJhbSkge1xyXG4gICAgcmV0dXJuIHRoaXMuTmF2dnkuc2ltcGxlPG51bWJlciwgbnVtYmVyLCBpQlhSZXN0Q2FsZW5kYXJTZWN0aW9uQWRkUGFyYW0+KFxyXG4gICAgICB0aGlzLnVybC5hZGQsXHJcbiAgICAgIHBhcmFtXHJcbiAgICApXHJcbiAgfVxyXG5cclxuICAvKiog0KPQtNCw0LvRj9C10YIg0YDQsNC30LTQtdC7ICovXHJcbiAgZGVsZXRlKHBhcmFtOiBpQlhSZXN0Q2FsZW5kYXJTZWN0aW9uRGVsZXRlUGFyYW0pIHtcclxuICAgIHJldHVybiB0aGlzLk5hdnZ5LnNpbXBsZTxib29sZWFufHN0cmluZywgYm9vbGVhbnxzdHJpbmcsIGlCWFJlc3RDYWxlbmRhclNlY3Rpb25EZWxldGVQYXJhbT4oXHJcbiAgICAgIHRoaXMudXJsLmRlbGV0ZSxcclxuICAgICAgcGFyYW1cclxuICAgIClcclxuICB9XHJcblxyXG4gIC8qKiDQoNC10LTQsNC60YLQuNGA0YPQtdGCINGB0YPRidC10YHRgtCy0YPRjtGJ0LXQtSDRgNCw0LfQtNC10LvRiyAqL1xyXG4gIHVwZGF0ZShwYXJhbTogaUJYUmVzdENhbGVuZGFyU2VjdGlvblVwZGF0ZVBhcmFtKSB7XHJcbiAgICByZXR1cm4gdGhpcy5OYXZ2eS5zaW1wbGU8bnVtYmVyLCBudW1iZXIsIGlCWFJlc3RDYWxlbmRhclNlY3Rpb25VcGRhdGVQYXJhbT4oXHJcbiAgICAgIHRoaXMudXJsLnVwZGF0ZSxcclxuICAgICAgcGFyYW1cclxuICAgIClcclxuICB9XHJcbn1cclxuIl19
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL3JlcXVlc3QtbmF2dnkvY2FsZW5kYXIvc2VjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDNUMsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFPbEcsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENBQUE7QUFFckUsTUFBTSxPQUFPLDhCQUE4QjtJQUEzQztRQUVVLFFBQUcsR0FBRztZQUVaLDZCQUE2QjtZQUM3QixHQUFHLEVBQUUsQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQztZQUNoQyxxQkFBcUI7WUFDckIsTUFBTSxFQUFFLENBQUMsU0FBUyxFQUFFLFFBQVEsRUFBRSxPQUFPLENBQUM7WUFFdEMsbUNBQW1DO1lBQ25DLEdBQUcsRUFBRSxDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDO1lBRWhDLHVDQUF1QztZQUN2QyxNQUFNLEVBQUUsQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQztTQUN2QyxDQUFBO1FBRWdCLFVBQUssR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFBO0lBd0N0QyxDQUFDO0lBdENDOzs7Ozs7T0FNRztJQUNILEdBQUcsQ0FBQyxLQUFxQyxFQUFFLGNBQXVCO1FBQ2hFLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ3RCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUNaLEtBQUssRUFDTCxDQUFDLEdBQXdELEVBQUUsRUFBRSxDQUFDLHdCQUF3QixDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsY0FBYyxDQUFDLENBQ2hILENBQUE7SUFDSCxDQUFDO0lBRUQsNkJBQTZCO0lBQzdCLEdBQUcsQ0FBQyxLQUFxQztRQUN2QyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUN0QixJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFDWixLQUFLLENBQ04sQ0FBQTtJQUNILENBQUM7SUFFRCxxQkFBcUI7SUFDckIsTUFBTSxDQUFDLEtBQXdDO1FBQzdDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQ3RCLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUNmLEtBQUssQ0FDTixDQUFBO0lBQ0gsQ0FBQztJQUVELHVDQUF1QztJQUN2QyxNQUFNLENBQUMsS0FBd0M7UUFDN0MsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FDdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQ2YsS0FBSyxDQUNOLENBQUE7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOYXZ2eSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL25hdnZ5J1xyXG5pbXBvcnQgeyAkYWRkLCAkY2FsZW5kYXIsICRkZWxldGUsICRnZXQsICRzZWN0aW9uLCAkdXBkYXRlIH0gZnJvbSAnLi4vLi4vY29uc3RzL3BhcnQtbmFtZS1tZXRob2RzJ1xyXG5pbXBvcnQge1xyXG4gIGlCWFJlc3RDYWxlbmRhclNlY3Rpb25HZXRQYXJhbSxcclxuICBpQlhSZXN0Q2FsZW5kYXJTZWN0aW9uQWRkUGFyYW0sXHJcbiAgaUJYUmVzdENhbGVuZGFyU2VjdGlvbkRlbGV0ZVBhcmFtLFxyXG4gIGlCWFJlc3RDYWxlbmRhclNlY3Rpb25VcGRhdGVQYXJhbVxyXG59IGZyb20gJy4uLy4uL3R5cGlmaWNhdGlvbi9yZXN0L2NhbGVuZGFyJ1xyXG5pbXBvcnQgeyBCWFJlc3RNYXBDYWxlbmRhclNlY3Rpb24gfSBmcm9tICcuLi8uLi9tYXAvY2FsZW5kYXIvc2VjdGlvbidcclxuXHJcbmV4cG9ydCBjbGFzcyBCWFJlc3ROYXZ2eVJlc3RDYWxlbmRhclNlY3Rpb24ge1xyXG5cclxuICBwcml2YXRlIHVybCA9IHtcclxuXHJcbiAgICAvKiog0JTQvtCx0LDQstC70Y/QtdGCINC90L7QstGL0Lkg0YDQsNC30LTQtdC7ICovXHJcbiAgICBhZGQ6IFskY2FsZW5kYXIsICRzZWN0aW9uLCAkYWRkXSxcclxuICAgIC8qKiDQo9C00LDQu9GP0LXRgiDRgNCw0LfQtNC10LsgKi9cclxuICAgIGRlbGV0ZTogWyRjYWxlbmRhciwgJHNlY3Rpb24sICRkZWxldGVdLFxyXG5cclxuICAgIC8qKiDQktC+0LfQstGA0LDRidCw0LXRgiDQvtC/0LjRgdCw0L3QuNC1INGA0LDQt9C00LXQu9C+0LIgKi9cclxuICAgIGdldDogWyRjYWxlbmRhciwgJHNlY3Rpb24sICRnZXRdLFxyXG5cclxuICAgIC8qKiDQoNC10LTQsNC60YLQuNGA0YPQtdGCINGB0YPRidC10YHRgtCy0YPRjtGJ0LXQtSDRgNCw0LfQtNC10LvRiyAqL1xyXG4gICAgdXBkYXRlOiBbJGNhbGVuZGFyLCAkc2VjdGlvbiwgJHVwZGF0ZV0sXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IE5hdnZ5ID0gbmV3IE5hdnZ5KClcclxuXHJcbiAgLyoqXHJcbiAgICog0JLQvtC30LLRgNCw0YnQsNC10YIg0L7Qv9C40YHQsNC90LjQtSDRgNCw0LfQtNC10LvQvtCyLCDQstGB0LXQs9C00LAg0LLQtdGB0Ywg0YHQv9C40YHQvtC6LCDQv9Cw0LPQsNC90LDRhtC40Lgg0LIg0LzQtdGC0L7QtNC1INC90LXRgiDQtNCwINC4INC90LUg0L3Rg9C20L3QsC5cclxuICAgKlxyXG4gICAqIEBwYXJhbSBwYXJhbVxyXG4gICAqIEBwYXJhbSBkYXRlVGltZUZvcm1hdCDQpNC+0YDQvNCw0YIg0L/QvtC70LXQuSBgREFURV9DUkVBVEVgL2BUSU1FU1RBTVBfWGAg0LIg0L7RgtCy0LXRgtC1ICjRgdC8LiB7QGxpbmsgQlhSZXN0TWFwQ2FsZW5kYXJTZWN0aW9uLmdldH0pLlxyXG4gICAqICAg0J/QtdGA0LXQtNCw0LLQsNC50YLQtSDRj9Cy0L3Qviwg0LXRgdC70Lgg0YTQvtGA0LzQsNGCINC00LDRgiDQvdCwINC/0L7RgNGC0LDQu9C1INC+0YLQu9C40YfQsNC10YLRgdGPINC+0YIg0LfQvdCw0YfQtdC90LjRjyDQv9C+INGD0LzQvtC70YfQsNC90LjRji5cclxuICAgKi9cclxuICBnZXQocGFyYW06IGlCWFJlc3RDYWxlbmRhclNlY3Rpb25HZXRQYXJhbSwgZGF0ZVRpbWVGb3JtYXQ/OiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLk5hdnZ5LnNpbXBsZShcclxuICAgICAgdGhpcy51cmwuZ2V0LFxyXG4gICAgICBwYXJhbSxcclxuICAgICAgKHJhdz86IFBhcmFtZXRlcnM8dHlwZW9mIEJYUmVzdE1hcENhbGVuZGFyU2VjdGlvbi5nZXQ+WzBdKSA9PiBCWFJlc3RNYXBDYWxlbmRhclNlY3Rpb24uZ2V0KHJhdywgZGF0ZVRpbWVGb3JtYXQpXHJcbiAgICApXHJcbiAgfVxyXG5cclxuICAvKiog0JTQvtCx0LDQstC70Y/QtdGCINC90L7QstGL0Lkg0YDQsNC30LTQtdC7ICovXHJcbiAgYWRkKHBhcmFtOiBpQlhSZXN0Q2FsZW5kYXJTZWN0aW9uQWRkUGFyYW0pIHtcclxuICAgIHJldHVybiB0aGlzLk5hdnZ5LnNpbXBsZTxudW1iZXIsIG51bWJlciwgaUJYUmVzdENhbGVuZGFyU2VjdGlvbkFkZFBhcmFtPihcclxuICAgICAgdGhpcy51cmwuYWRkLFxyXG4gICAgICBwYXJhbVxyXG4gICAgKVxyXG4gIH1cclxuXHJcbiAgLyoqINCj0LTQsNC70Y/QtdGCINGA0LDQt9C00LXQuyAqL1xyXG4gIGRlbGV0ZShwYXJhbTogaUJYUmVzdENhbGVuZGFyU2VjdGlvbkRlbGV0ZVBhcmFtKSB7XHJcbiAgICByZXR1cm4gdGhpcy5OYXZ2eS5zaW1wbGU8Ym9vbGVhbnxzdHJpbmcsIGJvb2xlYW58c3RyaW5nLCBpQlhSZXN0Q2FsZW5kYXJTZWN0aW9uRGVsZXRlUGFyYW0+KFxyXG4gICAgICB0aGlzLnVybC5kZWxldGUsXHJcbiAgICAgIHBhcmFtXHJcbiAgICApXHJcbiAgfVxyXG5cclxuICAvKiog0KDQtdC00LDQutGC0LjRgNGD0LXRgiDRgdGD0YnQtdGB0YLQstGD0Y7RidC10LUg0YDQsNC30LTQtdC70YsgKi9cclxuICB1cGRhdGUocGFyYW06IGlCWFJlc3RDYWxlbmRhclNlY3Rpb25VcGRhdGVQYXJhbSkge1xyXG4gICAgcmV0dXJuIHRoaXMuTmF2dnkuc2ltcGxlPG51bWJlciwgbnVtYmVyLCBpQlhSZXN0Q2FsZW5kYXJTZWN0aW9uVXBkYXRlUGFyYW0+KFxyXG4gICAgICB0aGlzLnVybC51cGRhdGUsXHJcbiAgICAgIHBhcmFtXHJcbiAgICApXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -34,10 +34,12 @@ export class BXRestNavvyCrmCallList {
34
34
  * Участников можно получить через `items.get()`.
35
35
  *
36
36
  * @param param Идентификатор списка обзвона.
37
+ * @param dateTimeFormat Формат поля `DATE_CREATE` в ответе (см. {@link BXRestMapCrmCallList.get}).
38
+ * Передавайте явно, если формат дат на портале отличается от значения по умолчанию.
37
39
  * @see https://apidocs.bitrix24.ru/api-reference/crm/call-list/crm-calllist-get.html
38
40
  */
39
- get(param) {
40
- return this.Navvy.simple(this.url.get, param, BXRestMapCrmCallList.get);
41
+ get(param, dateTimeFormat) {
42
+ return this.Navvy.simple(this.url.get, param, (raw) => BXRestMapCrmCallList.get(raw, dateTimeFormat));
41
43
  }
42
44
  /**
43
45
  * Возвращает списки обзвона с выборкой полей, фильтрацией и сортировкой.
@@ -45,10 +47,12 @@ export class BXRestNavvyCrmCallList {
45
47
  * Набор полей каждого элемента результата зависит от `SELECT`.
46
48
  *
47
49
  * @param param Выбираемые поля, фильтр и порядок сортировки.
50
+ * @param dateTimeFormat Формат поля `DATE_CREATE` в ответе (см. {@link BXRestMapCrmCallList.list}).
51
+ * Передавайте явно, если формат дат на портале отличается от значения по умолчанию.
48
52
  * @see https://apidocs.bitrix24.ru/api-reference/crm/call-list/crm-calllist-list.html
49
53
  */
50
- list(param = {}) {
51
- return this.Navvy.simple(this.url.list, param, BXRestMapCrmCallList.list);
54
+ list(param = {}, dateTimeFormat) {
55
+ return this.Navvy.simple(this.url.list, param, (raw) => BXRestMapCrmCallList.list(raw, dateTimeFormat));
52
56
  }
53
57
  /**
54
58
  * Возвращает справочник статусов обзвона.
@@ -76,4 +80,4 @@ export class BXRestNavvyCrmCallList {
76
80
  return this.Navvy.simple(this.url.update, param);
77
81
  }
78
82
  }
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ieC1yZXN0L3NyYy9yZXF1ZXN0LW5hdnZ5L2NybS9jYWxsbGlzdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsSUFBSSxFQUNKLFNBQVMsRUFDVCxJQUFJLEVBQ0osSUFBSSxFQUNKLEtBQUssRUFDTCxXQUFXLEVBQ1gsT0FBTyxFQUNSLE1BQU0sbUNBQW1DLENBQUE7QUFDMUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFDdkQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBWS9DLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUVyRCxjQUFjLFNBQVMsQ0FBQTtBQUV2QixpRUFBaUU7QUFDakUsTUFBTSxPQUFPLHNCQUFzQjtJQUFuQztRQUNtQixVQUFLLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQTtRQUNuQixRQUFHLEdBQUc7WUFDckIsR0FBRyxFQUFFLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUM7WUFDNUIsR0FBRyxFQUFFLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUM7WUFDNUIsSUFBSSxFQUFFLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUM7WUFDOUIsVUFBVSxFQUFFLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxXQUFXLENBQUM7WUFDMUMsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUM7U0FDbkMsQ0FBQTtRQUVELHlEQUF5RDtRQUN6QyxVQUFLLEdBQUcsSUFBSSwyQkFBMkIsRUFBRSxDQUFBO0lBMkUzRCxDQUFDO0lBekVDOzs7Ozs7O09BT0c7SUFDSCxHQUFHLENBQUMsS0FBaUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBNkMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUE7SUFDM0YsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxHQUFHLENBQUMsS0FBaUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FJdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ2xELENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0gsSUFBSSxDQUFDLFFBQXFDLEVBQUU7UUFDMUMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FJdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFBO0lBQ3BELENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUE2QixJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQzNFLENBQUM7SUFFRDs7Ozs7Ozs7O09BU0c7SUFDSCxNQUFNLENBQUMsS0FBb0M7UUFDekMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FDdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQ2YsS0FBSyxDQUNOLENBQUE7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAkYWRkLFxuICAkY2FsbGxpc3QsXG4gICRjcm0sXG4gICRnZXQsXG4gICRsaXN0LFxuICAkc3RhdHVzbGlzdCxcbiAgJHVwZGF0ZVxufSBmcm9tICcuLi8uLi8uLi9jb25zdHMvcGFydC1uYW1lLW1ldGhvZHMnXG5pbXBvcnQgeyBCWFJlc3RNYXBDcm1DYWxsTGlzdCB9IGZyb20gJy4uLy4uLy4uL21hcC9jcm0nXG5pbXBvcnQgeyBOYXZ2eSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL25hdnZ5J1xuaW1wb3J0IHtcbiAgaUJYUmVzdENybUNhbGxMaXN0LFxuICBpQlhSZXN0Q3JtQ2FsbExpc3RIdHRwLFxuICBpQlhSZXN0Q3JtQ2FsbExpc3RMaXN0SXRlbSxcbiAgaUJYUmVzdENybUNhbGxMaXN0TGlzdEl0ZW1IdHRwLFxuICBpQlhSZXN0Q3JtQ2FsbExpc3RTdGF0dXMsXG4gIGlCWFJlc3RQYXJhbUNybUNhbGxMaXN0QWRkLFxuICBpQlhSZXN0UGFyYW1Dcm1DYWxsTGlzdEdldCxcbiAgaUJYUmVzdFBhcmFtQ3JtQ2FsbExpc3RMaXN0LFxuICBpQlhSZXN0UGFyYW1Dcm1DYWxsTGlzdFVwZGF0ZVxufSBmcm9tICcuLi8uLi8uLi90eXBpZmljYXRpb24vcmVzdC9jcm0nXG5pbXBvcnQgeyBCWFJlc3ROYXZ2eUNybUNhbGxMaXN0SXRlbXMgfSBmcm9tICcuL2l0ZW1zJ1xuXG5leHBvcnQgKiBmcm9tICcuL2l0ZW1zJ1xuXG4vKiog0J3QsNCy0LjQs9Cw0YLQvtGAIFJFU1Qt0LzQtdGC0L7QtNC+0LIg0YHQv9C40YHQutC+0LIg0L7QsdC30LLQvtC90LAgKGBjcm0uY2FsbGxpc3QuKmApLiAqL1xuZXhwb3J0IGNsYXNzIEJYUmVzdE5hdnZ5Q3JtQ2FsbExpc3Qge1xuICBwcml2YXRlIHJlYWRvbmx5IE5hdnZ5ID0gbmV3IE5hdnZ5KClcbiAgcHJpdmF0ZSByZWFkb25seSB1cmwgPSB7XG4gICAgYWRkOiBbJGNybSwgJGNhbGxsaXN0LCAkYWRkXSxcbiAgICBnZXQ6IFskY3JtLCAkY2FsbGxpc3QsICRnZXRdLFxuICAgIGxpc3Q6IFskY3JtLCAkY2FsbGxpc3QsICRsaXN0XSxcbiAgICBzdGF0dXNMaXN0OiBbJGNybSwgJGNhbGxsaXN0LCAkc3RhdHVzbGlzdF0sXG4gICAgdXBkYXRlOiBbJGNybSwgJGNhbGxsaXN0LCAkdXBkYXRlXVxuICB9XG5cbiAgLyoqINCj0YfQsNGB0YLQvdC40LrQuCDRgdC/0LjRgdC60LAg0L7QsdC30LLQvtC90LAgKGBjcm0uY2FsbGxpc3QuaXRlbXMuKmApLiAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaXRlbXMgPSBuZXcgQlhSZXN0TmF2dnlDcm1DYWxsTGlzdEl0ZW1zKClcblxuICAvKipcbiAgICog0KHQvtC30LTQsNC10YIg0YHQv9C40YHQvtC6INC+0LHQt9Cy0L7QvdCwINC40Lcg0LrQvtC90YLQsNC60YLQvtCyINC40LvQuCDQutC+0LzQv9Cw0L3QuNC5LlxuICAgKlxuICAgKiDQkiDQvtC00L3QvtC8INGB0L/QuNGB0LrQtSDQvNC+0LPRg9GCINC90LDRhdC+0LTQuNGC0YzRgdGPINC+0LHRitC10LrRgtGLINGC0L7Qu9GM0LrQviDQvtC00L3QvtCz0L4g0YLQuNC/0LAsINC30LDQtNCw0L3QvdC+0LPQviDQsiBgRU5USVRZX1RZUEVgLlxuICAgKlxuICAgKiBAcGFyYW0gcGFyYW0g0KLQuNC/INC+0LHRitC10LrRgtC+0LIsINC40YUg0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YDRiyDQuCDQvdC10L7QsdGP0LfQsNGC0LXQu9GM0L3QsNGPIENSTS3RhNC+0YDQvNCwLlxuICAgKiBAc2VlIGh0dHBzOi8vYXBpZG9jcy5iaXRyaXgyNC5ydS9hcGktcmVmZXJlbmNlL2NybS9jYWxsLWxpc3QvY3JtLWNhbGxsaXN0LWFkZC5odG1sXG4gICAqL1xuICBhZGQocGFyYW06IGlCWFJlc3RQYXJhbUNybUNhbGxMaXN0QWRkKSB7XG4gICAgcmV0dXJuIHRoaXMuTmF2dnkuc2ltcGxlPG51bWJlciwgbnVtYmVyLCBpQlhSZXN0UGFyYW1Dcm1DYWxsTGlzdEFkZD4odGhpcy51cmwuYWRkLCBwYXJhbSlcbiAgfVxuXG4gIC8qKlxuICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDQtNCw0L3QvdGL0LUg0YHQv9C40YHQutCwINC+0LHQt9Cy0L7QvdCwINC/0L4g0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YDRgyDQsdC10Lcg0YHQv9C40YHQutCwINGD0YfQsNGB0YLQvdC40LrQvtCyLlxuICAgKlxuICAgKiDQo9GH0LDRgdGC0L3QuNC60L7QsiDQvNC+0LbQvdC+INC/0L7Qu9GD0YfQuNGC0Ywg0YfQtdGA0LXQtyBgaXRlbXMuZ2V0KClgLlxuICAgKlxuICAgKiBAcGFyYW0gcGFyYW0g0JjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0YHQv9C40YHQutCwINC+0LHQt9Cy0L7QvdCwLlxuICAgKiBAc2VlIGh0dHBzOi8vYXBpZG9jcy5iaXRyaXgyNC5ydS9hcGktcmVmZXJlbmNlL2NybS9jYWxsLWxpc3QvY3JtLWNhbGxsaXN0LWdldC5odG1sXG4gICAqL1xuICBnZXQocGFyYW06IGlCWFJlc3RQYXJhbUNybUNhbGxMaXN0R2V0KSB7XG4gICAgcmV0dXJuIHRoaXMuTmF2dnkuc2ltcGxlPFxuICAgICAgaUJYUmVzdENybUNhbGxMaXN0SHR0cCxcbiAgICAgIGlCWFJlc3RDcm1DYWxsTGlzdCxcbiAgICAgIGlCWFJlc3RQYXJhbUNybUNhbGxMaXN0R2V0XG4gICAgPih0aGlzLnVybC5nZXQsIHBhcmFtLCBCWFJlc3RNYXBDcm1DYWxsTGlzdC5nZXQpXG4gIH1cblxuICAvKipcbiAgICog0JLQvtC30LLRgNCw0YnQsNC10YIg0YHQv9C40YHQutC4INC+0LHQt9Cy0L7QvdCwINGBINCy0YvQsdC+0YDQutC+0Lkg0L/QvtC70LXQuSwg0YTQuNC70YzRgtGA0LDRhtC40LXQuSDQuCDRgdC+0YDRgtC40YDQvtCy0LrQvtC5LlxuICAgKlxuICAgKiDQndCw0LHQvtGAINC/0L7Qu9C10Lkg0LrQsNC20LTQvtCz0L4g0Y3Qu9C10LzQtdC90YLQsCDRgNC10LfRg9C70YzRgtCw0YLQsCDQt9Cw0LLQuNGB0LjRgiDQvtGCIGBTRUxFQ1RgLlxuICAgKlxuICAgKiBAcGFyYW0gcGFyYW0g0JLRi9Cx0LjRgNCw0LXQvNGL0LUg0L/QvtC70Y8sINGE0LjQu9GM0YLRgCDQuCDQv9C+0YDRj9C00L7QuiDRgdC+0YDRgtC40YDQvtCy0LrQuC5cbiAgICogQHNlZSBodHRwczovL2FwaWRvY3MuYml0cml4MjQucnUvYXBpLXJlZmVyZW5jZS9jcm0vY2FsbC1saXN0L2NybS1jYWxsbGlzdC1saXN0Lmh0bWxcbiAgICovXG4gIGxpc3QocGFyYW06IGlCWFJlc3RQYXJhbUNybUNhbGxMaXN0TGlzdCA9IHt9KSB7XG4gICAgcmV0dXJuIHRoaXMuTmF2dnkuc2ltcGxlPFxuICAgICAgaUJYUmVzdENybUNhbGxMaXN0TGlzdEl0ZW1IdHRwW10sXG4gICAgICBpQlhSZXN0Q3JtQ2FsbExpc3RMaXN0SXRlbVtdLFxuICAgICAgaUJYUmVzdFBhcmFtQ3JtQ2FsbExpc3RMaXN0XG4gICAgPih0aGlzLnVybC5saXN0LCBwYXJhbSwgQlhSZXN0TWFwQ3JtQ2FsbExpc3QubGlzdClcbiAgfVxuXG4gIC8qKlxuICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDRgdC/0YDQsNCy0L7Rh9C90LjQuiDRgdGC0LDRgtGD0YHQvtCyINC+0LHQt9Cy0L7QvdCwLlxuICAgKlxuICAgKiDQl9C90LDRh9C10L3QuNC1IGBTVEFUVVNfSURgINC80L7QttC90L4g0L/QtdGA0LXQtNCw0YLRjCDQsiBgaXRlbXMuZ2V0KHsgRklMVEVSOiB7IFNUQVRVUyB9IH0pYC5cbiAgICog0KHQvtC30LTQsNC90LjQtSwg0LjQt9C80LXQvdC10L3QuNC1INC4INGD0LTQsNC70LXQvdC40LUg0YHRgtCw0YLRg9GB0L7QsiDQstGL0L/QvtC70L3Rj9C10YLRgdGPINC80LXRgtC+0LTQsNC80LggYGNybS5zdGF0dXMuKmBcbiAgICog0YHQviDQt9C90LDRh9C10L3QuNC10LwgYEVOVElUWV9JRDogJ0NBTExfTElTVCdgLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vYXBpZG9jcy5iaXRyaXgyNC5ydS9hcGktcmVmZXJlbmNlL2NybS9jYWxsLWxpc3QvY3JtLWNhbGxsaXN0LXN0YXR1c2xpc3QuaHRtbFxuICAgKi9cbiAgc3RhdHVzTGlzdCgpIHtcbiAgICByZXR1cm4gdGhpcy5OYXZ2eS5zaW1wbGU8aUJYUmVzdENybUNhbGxMaXN0U3RhdHVzW10+KHRoaXMudXJsLnN0YXR1c0xpc3QpXG4gIH1cblxuICAvKipcbiAgICog0JfQsNC80LXQvdGP0LXRgiDRgdC+0YHRgtCw0LIg0YHRg9GJ0LXRgdGC0LLRg9GO0YnQtdCz0L4g0YHQv9C40YHQutCwINC+0LHQt9Cy0L7QvdCwINC4INC+0LHQvdC+0LLQu9GP0LXRgiDRgdCy0Y/Qt9Cw0L3QvdGD0Y4gQ1JNLdGE0L7RgNC80YMuXG4gICAqXG4gICAqIGBFTlRJVElFU2Ag0L/QtdGA0LXQt9Cw0L/QuNGB0YvQstCw0LXRgtGB0Y8g0YbQtdC70LjQutC+0Lw6INGH0YLQvtCx0Ysg0LTQvtCx0LDQstC40YLRjCDRg9GH0LDRgdGC0L3QuNC60L7Qsiwg0L/QtdGA0LXQtNCw0LnRgtC1INC4INGC0LXQutGD0YnQuNC1LFxuICAgKiDQuCDQvdC+0LLRi9C1INC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGA0Ys7INGH0YLQvtCx0Ysg0YPQtNCw0LvQuNGC0Ywg4oCUINGC0L7Qu9GM0LrQviDRgtC1LCDQutC+0YLQvtGA0YvQtSDQtNC+0LvQttC90Ysg0L7RgdGC0LDRgtGM0YHRjy5cbiAgICog0JXRgdC70LggYFdFQkZPUk1fSURgINC90LUg0L/QtdGA0LXQtNCw0L0sINGA0LDQvdC10LUg0YPRgdGC0LDQvdC+0LLQu9C10L3QvdCw0Y8gQ1JNLdGE0L7RgNC80LAg0LHRg9C00LXRgiDQvtGH0LjRidC10L3QsC5cbiAgICpcbiAgICogQHBhcmFtIHBhcmFtINCY0LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINGB0L/QuNGB0LrQsCDQuCDQtdCz0L4g0L3QvtCy0YvQuSDQv9C+0LvQvdGL0Lkg0YHQvtGB0YLQsNCyLlxuICAgKiBAc2VlIGh0dHBzOi8vYXBpZG9jcy5iaXRyaXgyNC5ydS9hcGktcmVmZXJlbmNlL2NybS9jYWxsLWxpc3QvY3JtLWNhbGxsaXN0LXVwZGF0ZS5odG1sXG4gICAqL1xuICB1cGRhdGUocGFyYW06IGlCWFJlc3RQYXJhbUNybUNhbGxMaXN0VXBkYXRlKSB7XG4gICAgcmV0dXJuIHRoaXMuTmF2dnkuc2ltcGxlPGJvb2xlYW4sIGJvb2xlYW4sIGlCWFJlc3RQYXJhbUNybUNhbGxMaXN0VXBkYXRlPihcbiAgICAgIHRoaXMudXJsLnVwZGF0ZSxcbiAgICAgIHBhcmFtXG4gICAgKVxuICB9XG59XG4iXX0=
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ieC1yZXN0L3NyYy9yZXF1ZXN0LW5hdnZ5L2NybS9jYWxsbGlzdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsSUFBSSxFQUNKLFNBQVMsRUFDVCxJQUFJLEVBQ0osSUFBSSxFQUNKLEtBQUssRUFDTCxXQUFXLEVBQ1gsT0FBTyxFQUNSLE1BQU0sbUNBQW1DLENBQUE7QUFDMUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFDdkQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBWS9DLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUVyRCxjQUFjLFNBQVMsQ0FBQTtBQUV2QixpRUFBaUU7QUFDakUsTUFBTSxPQUFPLHNCQUFzQjtJQUFuQztRQUNtQixVQUFLLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQTtRQUNuQixRQUFHLEdBQUc7WUFDckIsR0FBRyxFQUFFLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUM7WUFDNUIsR0FBRyxFQUFFLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUM7WUFDNUIsSUFBSSxFQUFFLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUM7WUFDOUIsVUFBVSxFQUFFLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxXQUFXLENBQUM7WUFDMUMsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUM7U0FDbkMsQ0FBQTtRQUVELHlEQUF5RDtRQUN6QyxVQUFLLEdBQUcsSUFBSSwyQkFBMkIsRUFBRSxDQUFBO0lBK0UzRCxDQUFDO0lBN0VDOzs7Ozs7O09BT0c7SUFDSCxHQUFHLENBQUMsS0FBaUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBNkMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUE7SUFDM0YsQ0FBQztJQUVEOzs7Ozs7Ozs7T0FTRztJQUNILEdBQUcsQ0FBQyxLQUFpQyxFQUFFLGNBQXVCO1FBQzVELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBSXRCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxDQUFDLEdBQTRCLEVBQUUsRUFBRSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQTtJQUN6RyxDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0gsSUFBSSxDQUFDLFFBQXFDLEVBQUUsRUFBRSxjQUF1QjtRQUNuRSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUl0QixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxHQUFzQyxFQUFFLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUE7SUFDckgsQ0FBQztJQUVEOzs7Ozs7OztPQVFHO0lBQ0gsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQTZCLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDM0UsQ0FBQztJQUVEOzs7Ozs7Ozs7T0FTRztJQUNILE1BQU0sQ0FBQyxLQUFvQztRQUN6QyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUN0QixJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFDZixLQUFLLENBQ04sQ0FBQTtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICRhZGQsXG4gICRjYWxsbGlzdCxcbiAgJGNybSxcbiAgJGdldCxcbiAgJGxpc3QsXG4gICRzdGF0dXNsaXN0LFxuICAkdXBkYXRlXG59IGZyb20gJy4uLy4uLy4uL2NvbnN0cy9wYXJ0LW5hbWUtbWV0aG9kcydcbmltcG9ydCB7IEJYUmVzdE1hcENybUNhbGxMaXN0IH0gZnJvbSAnLi4vLi4vLi4vbWFwL2NybSdcbmltcG9ydCB7IE5hdnZ5IH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbmF2dnknXG5pbXBvcnQge1xuICBpQlhSZXN0Q3JtQ2FsbExpc3QsXG4gIGlCWFJlc3RDcm1DYWxsTGlzdEh0dHAsXG4gIGlCWFJlc3RDcm1DYWxsTGlzdExpc3RJdGVtLFxuICBpQlhSZXN0Q3JtQ2FsbExpc3RMaXN0SXRlbUh0dHAsXG4gIGlCWFJlc3RDcm1DYWxsTGlzdFN0YXR1cyxcbiAgaUJYUmVzdFBhcmFtQ3JtQ2FsbExpc3RBZGQsXG4gIGlCWFJlc3RQYXJhbUNybUNhbGxMaXN0R2V0LFxuICBpQlhSZXN0UGFyYW1Dcm1DYWxsTGlzdExpc3QsXG4gIGlCWFJlc3RQYXJhbUNybUNhbGxMaXN0VXBkYXRlXG59IGZyb20gJy4uLy4uLy4uL3R5cGlmaWNhdGlvbi9yZXN0L2NybSdcbmltcG9ydCB7IEJYUmVzdE5hdnZ5Q3JtQ2FsbExpc3RJdGVtcyB9IGZyb20gJy4vaXRlbXMnXG5cbmV4cG9ydCAqIGZyb20gJy4vaXRlbXMnXG5cbi8qKiDQndCw0LLQuNCz0LDRgtC+0YAgUkVTVC3QvNC10YLQvtC00L7QsiDRgdC/0LjRgdC60L7QsiDQvtCx0LfQstC+0L3QsCAoYGNybS5jYWxsbGlzdC4qYCkuICovXG5leHBvcnQgY2xhc3MgQlhSZXN0TmF2dnlDcm1DYWxsTGlzdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgTmF2dnkgPSBuZXcgTmF2dnkoKVxuICBwcml2YXRlIHJlYWRvbmx5IHVybCA9IHtcbiAgICBhZGQ6IFskY3JtLCAkY2FsbGxpc3QsICRhZGRdLFxuICAgIGdldDogWyRjcm0sICRjYWxsbGlzdCwgJGdldF0sXG4gICAgbGlzdDogWyRjcm0sICRjYWxsbGlzdCwgJGxpc3RdLFxuICAgIHN0YXR1c0xpc3Q6IFskY3JtLCAkY2FsbGxpc3QsICRzdGF0dXNsaXN0XSxcbiAgICB1cGRhdGU6IFskY3JtLCAkY2FsbGxpc3QsICR1cGRhdGVdXG4gIH1cblxuICAvKiog0KPRh9Cw0YHRgtC90LjQutC4INGB0L/QuNGB0LrQsCDQvtCx0LfQstC+0L3QsCAoYGNybS5jYWxsbGlzdC5pdGVtcy4qYCkuICovXG4gIHB1YmxpYyByZWFkb25seSBpdGVtcyA9IG5ldyBCWFJlc3ROYXZ2eUNybUNhbGxMaXN0SXRlbXMoKVxuXG4gIC8qKlxuICAgKiDQodC+0LfQtNCw0LXRgiDRgdC/0LjRgdC+0Log0L7QsdC30LLQvtC90LAg0LjQtyDQutC+0L3RgtCw0LrRgtC+0LIg0LjQu9C4INC60L7QvNC/0LDQvdC40LkuXG4gICAqXG4gICAqINCSINC+0LTQvdC+0Lwg0YHQv9C40YHQutC1INC80L7Qs9GD0YIg0L3QsNGF0L7QtNC40YLRjNGB0Y8g0L7QsdGK0LXQutGC0Ysg0YLQvtC70YzQutC+INC+0LTQvdC+0LPQviDRgtC40L/QsCwg0LfQsNC00LDQvdC90L7Qs9C+INCyIGBFTlRJVFlfVFlQRWAuXG4gICAqXG4gICAqIEBwYXJhbSBwYXJhbSDQotC40L8g0L7QsdGK0LXQutGC0L7Qsiwg0LjRhSDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNGLINC4INC90LXQvtCx0Y/Qt9Cw0YLQtdC70YzQvdCw0Y8gQ1JNLdGE0L7RgNC80LAuXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGlkb2NzLmJpdHJpeDI0LnJ1L2FwaS1yZWZlcmVuY2UvY3JtL2NhbGwtbGlzdC9jcm0tY2FsbGxpc3QtYWRkLmh0bWxcbiAgICovXG4gIGFkZChwYXJhbTogaUJYUmVzdFBhcmFtQ3JtQ2FsbExpc3RBZGQpIHtcbiAgICByZXR1cm4gdGhpcy5OYXZ2eS5zaW1wbGU8bnVtYmVyLCBudW1iZXIsIGlCWFJlc3RQYXJhbUNybUNhbGxMaXN0QWRkPih0aGlzLnVybC5hZGQsIHBhcmFtKVxuICB9XG5cbiAgLyoqXG4gICAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINC00LDQvdC90YvQtSDRgdC/0LjRgdC60LAg0L7QsdC30LLQvtC90LAg0L/QviDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNGDINCx0LXQtyDRgdC/0LjRgdC60LAg0YPRh9Cw0YHRgtC90LjQutC+0LIuXG4gICAqXG4gICAqINCj0YfQsNGB0YLQvdC40LrQvtCyINC80L7QttC90L4g0L/QvtC70YPRh9C40YLRjCDRh9C10YDQtdC3IGBpdGVtcy5nZXQoKWAuXG4gICAqXG4gICAqIEBwYXJhbSBwYXJhbSDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDRgdC/0LjRgdC60LAg0L7QsdC30LLQvtC90LAuXG4gICAqIEBwYXJhbSBkYXRlVGltZUZvcm1hdCDQpNC+0YDQvNCw0YIg0L/QvtC70Y8gYERBVEVfQ1JFQVRFYCDQsiDQvtGC0LLQtdGC0LUgKNGB0LwuIHtAbGluayBCWFJlc3RNYXBDcm1DYWxsTGlzdC5nZXR9KS5cbiAgICogICDQn9C10YDQtdC00LDQstCw0LnRgtC1INGP0LLQvdC+LCDQtdGB0LvQuCDRhNC+0YDQvNCw0YIg0LTQsNGCINC90LAg0L/QvtGA0YLQsNC70LUg0L7RgtC70LjRh9Cw0LXRgtGB0Y8g0L7RgiDQt9C90LDRh9C10L3QuNGPINC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOLlxuICAgKiBAc2VlIGh0dHBzOi8vYXBpZG9jcy5iaXRyaXgyNC5ydS9hcGktcmVmZXJlbmNlL2NybS9jYWxsLWxpc3QvY3JtLWNhbGxsaXN0LWdldC5odG1sXG4gICAqL1xuICBnZXQocGFyYW06IGlCWFJlc3RQYXJhbUNybUNhbGxMaXN0R2V0LCBkYXRlVGltZUZvcm1hdD86IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLk5hdnZ5LnNpbXBsZTxcbiAgICAgIGlCWFJlc3RDcm1DYWxsTGlzdEh0dHAsXG4gICAgICBpQlhSZXN0Q3JtQ2FsbExpc3QsXG4gICAgICBpQlhSZXN0UGFyYW1Dcm1DYWxsTGlzdEdldFxuICAgID4odGhpcy51cmwuZ2V0LCBwYXJhbSwgKHJhdz86IGlCWFJlc3RDcm1DYWxsTGlzdEh0dHApID0+IEJYUmVzdE1hcENybUNhbGxMaXN0LmdldChyYXcsIGRhdGVUaW1lRm9ybWF0KSlcbiAgfVxuXG4gIC8qKlxuICAgKiDQktC+0LfQstGA0LDRidCw0LXRgiDRgdC/0LjRgdC60Lgg0L7QsdC30LLQvtC90LAg0YEg0LLRi9Cx0L7RgNC60L7QuSDQv9C+0LvQtdC5LCDRhNC40LvRjNGC0YDQsNGG0LjQtdC5INC4INGB0L7RgNGC0LjRgNC+0LLQutC+0LkuXG4gICAqXG4gICAqINCd0LDQsdC+0YAg0L/QvtC70LXQuSDQutCw0LbQtNC+0LPQviDRjdC70LXQvNC10L3RgtCwINGA0LXQt9GD0LvRjNGC0LDRgtCwINC30LDQstC40YHQuNGCINC+0YIgYFNFTEVDVGAuXG4gICAqXG4gICAqIEBwYXJhbSBwYXJhbSDQktGL0LHQuNGA0LDQtdC80YvQtSDQv9C+0LvRjywg0YTQuNC70YzRgtGAINC4INC/0L7RgNGP0LTQvtC6INGB0L7RgNGC0LjRgNC+0LLQutC4LlxuICAgKiBAcGFyYW0gZGF0ZVRpbWVGb3JtYXQg0KTQvtGA0LzQsNGCINC/0L7Qu9GPIGBEQVRFX0NSRUFURWAg0LIg0L7RgtCy0LXRgtC1ICjRgdC8LiB7QGxpbmsgQlhSZXN0TWFwQ3JtQ2FsbExpc3QubGlzdH0pLlxuICAgKiAgINCf0LXRgNC10LTQsNCy0LDQudGC0LUg0Y/QstC90L4sINC10YHQu9C4INGE0L7RgNC80LDRgiDQtNCw0YIg0L3QsCDQv9C+0YDRgtCw0LvQtSDQvtGC0LvQuNGH0LDQtdGC0YHRjyDQvtGCINC30L3QsNGH0LXQvdC40Y8g0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4uXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGlkb2NzLmJpdHJpeDI0LnJ1L2FwaS1yZWZlcmVuY2UvY3JtL2NhbGwtbGlzdC9jcm0tY2FsbGxpc3QtbGlzdC5odG1sXG4gICAqL1xuICBsaXN0KHBhcmFtOiBpQlhSZXN0UGFyYW1Dcm1DYWxsTGlzdExpc3QgPSB7fSwgZGF0ZVRpbWVGb3JtYXQ/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5OYXZ2eS5zaW1wbGU8XG4gICAgICBpQlhSZXN0Q3JtQ2FsbExpc3RMaXN0SXRlbUh0dHBbXSxcbiAgICAgIGlCWFJlc3RDcm1DYWxsTGlzdExpc3RJdGVtW10sXG4gICAgICBpQlhSZXN0UGFyYW1Dcm1DYWxsTGlzdExpc3RcbiAgICA+KHRoaXMudXJsLmxpc3QsIHBhcmFtLCAocmF3PzogaUJYUmVzdENybUNhbGxMaXN0TGlzdEl0ZW1IdHRwW10pID0+IEJYUmVzdE1hcENybUNhbGxMaXN0Lmxpc3QocmF3LCBkYXRlVGltZUZvcm1hdCkpXG4gIH1cblxuICAvKipcbiAgICog0JLQvtC30LLRgNCw0YnQsNC10YIg0YHQv9GA0LDQstC+0YfQvdC40Log0YHRgtCw0YLRg9GB0L7QsiDQvtCx0LfQstC+0L3QsC5cbiAgICpcbiAgICog0JfQvdCw0YfQtdC90LjQtSBgU1RBVFVTX0lEYCDQvNC+0LbQvdC+INC/0LXRgNC10LTQsNGC0Ywg0LIgYGl0ZW1zLmdldCh7IEZJTFRFUjogeyBTVEFUVVMgfSB9KWAuXG4gICAqINCh0L7Qt9C00LDQvdC40LUsINC40LfQvNC10L3QtdC90LjQtSDQuCDRg9C00LDQu9C10L3QuNC1INGB0YLQsNGC0YPRgdC+0LIg0LLRi9C/0L7Qu9C90Y/QtdGC0YHRjyDQvNC10YLQvtC00LDQvNC4IGBjcm0uc3RhdHVzLipgXG4gICAqINGB0L4g0LfQvdCw0YfQtdC90LjQtdC8IGBFTlRJVFlfSUQ6ICdDQUxMX0xJU1QnYC5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaWRvY3MuYml0cml4MjQucnUvYXBpLXJlZmVyZW5jZS9jcm0vY2FsbC1saXN0L2NybS1jYWxsbGlzdC1zdGF0dXNsaXN0Lmh0bWxcbiAgICovXG4gIHN0YXR1c0xpc3QoKSB7XG4gICAgcmV0dXJuIHRoaXMuTmF2dnkuc2ltcGxlPGlCWFJlc3RDcm1DYWxsTGlzdFN0YXR1c1tdPih0aGlzLnVybC5zdGF0dXNMaXN0KVxuICB9XG5cbiAgLyoqXG4gICAqINCX0LDQvNC10L3Rj9C10YIg0YHQvtGB0YLQsNCyINGB0YPRidC10YHRgtCy0YPRjtGJ0LXQs9C+INGB0L/QuNGB0LrQsCDQvtCx0LfQstC+0L3QsCDQuCDQvtCx0L3QvtCy0LvRj9C10YIg0YHQstGP0LfQsNC90L3Rg9GOIENSTS3RhNC+0YDQvNGDLlxuICAgKlxuICAgKiBgRU5USVRJRVNgINC/0LXRgNC10LfQsNC/0LjRgdGL0LLQsNC10YLRgdGPINGG0LXQu9C40LrQvtC8OiDRh9GC0L7QsdGLINC00L7QsdCw0LLQuNGC0Ywg0YPRh9Cw0YHRgtC90LjQutC+0LIsINC/0LXRgNC10LTQsNC50YLQtSDQuCDRgtC10LrRg9GJ0LjQtSxcbiAgICog0Lgg0L3QvtCy0YvQtSDQuNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgNGLOyDRh9GC0L7QsdGLINGD0LTQsNC70LjRgtGMIOKAlCDRgtC+0LvRjNC60L4g0YLQtSwg0LrQvtGC0L7RgNGL0LUg0LTQvtC70LbQvdGLINC+0YHRgtCw0YLRjNGB0Y8uXG4gICAqINCV0YHQu9C4IGBXRUJGT1JNX0lEYCDQvdC1INC/0LXRgNC10LTQsNC9LCDRgNCw0L3QtdC1INGD0YHRgtCw0L3QvtCy0LvQtdC90L3QsNGPIENSTS3RhNC+0YDQvNCwINCx0YPQtNC10YIg0L7Rh9C40YnQtdC90LAuXG4gICAqXG4gICAqIEBwYXJhbSBwYXJhbSDQmNC00LXQvdGC0LjRhNC40LrQsNGC0L7RgCDRgdC/0LjRgdC60LAg0Lgg0LXQs9C+INC90L7QstGL0Lkg0L/QvtC70L3Ri9C5INGB0L7RgdGC0LDQsi5cbiAgICogQHNlZSBodHRwczovL2FwaWRvY3MuYml0cml4MjQucnUvYXBpLXJlZmVyZW5jZS9jcm0vY2FsbC1saXN0L2NybS1jYWxsbGlzdC11cGRhdGUuaHRtbFxuICAgKi9cbiAgdXBkYXRlKHBhcmFtOiBpQlhSZXN0UGFyYW1Dcm1DYWxsTGlzdFVwZGF0ZSkge1xuICAgIHJldHVybiB0aGlzLk5hdnZ5LnNpbXBsZTxib29sZWFuLCBib29sZWFuLCBpQlhSZXN0UGFyYW1Dcm1DYWxsTGlzdFVwZGF0ZT4oXG4gICAgICB0aGlzLnVybC51cGRhdGUsXG4gICAgICBwYXJhbVxuICAgIClcbiAgfVxufVxuIl19
@@ -1,4 +1,3 @@
1
- import { DateTime } from 'luxon';
2
1
  /**
3
2
  * Преобразует значение в строку
4
3
  *
@@ -54,8 +53,154 @@ export class ToNumError extends Error {
54
53
  ].join('\n');
55
54
  }
56
55
  }
56
+ /** Соответствие токенов формата регулярным группам захвата. Порядок важен: длинные токены проверяются раньше коротких */
57
+ const DATE_FORMAT_TOKENS = [
58
+ ['yyyy', '(?<yyyy>\\d{4})'],
59
+ ['yy', '(?<yy>\\d{2})'],
60
+ ['MM', '(?<MM>\\d{2})'],
61
+ ['M', '(?<M>\\d{1,2})'],
62
+ ['dd', '(?<dd>\\d{2})'],
63
+ ['d', '(?<d>\\d{1,2})'],
64
+ ['HH', '(?<HH>\\d{2})'],
65
+ ['H', '(?<H>\\d{1,2})'],
66
+ ['mm', '(?<mm>\\d{2})'],
67
+ ['m', '(?<m>\\d{1,2})'],
68
+ ['ss', '(?<ss>\\d{2})'],
69
+ ['s', '(?<s>\\d{1,2})'],
70
+ ];
71
+ const DATE_FORMAT_TOKEN_REGEX = new RegExp(DATE_FORMAT_TOKENS.map(([token]) => token).join('|'), 'g');
72
+ const TIME_ONLY_TOKENS = new Set(['HH', 'H', 'mm', 'm', 'ss', 's']);
57
73
  /**
58
- * Преобразует значение в дату
74
+ * Выводит формат "только дата" из формата даты-и-времени — отрезает время и разделитель перед
75
+ * ним (например, `'dd.MM.yyyy HH:mm:ss'` → `'dd.MM.yyyy'`). Порядок день/месяц/год у полей
76
+ * "дата" и "дата-время" на одном портале Bitrix24 всегда согласован — различается только
77
+ * наличие `HH:mm:ss`, поэтому нет смысла заставлять вызывающего передавать оба формата и
78
+ * держать их в синхроне вручную.
79
+ */
80
+ export function deriveDateOnlyFormat(dateTimeFormat) {
81
+ DATE_FORMAT_TOKEN_REGEX.lastIndex = 0;
82
+ let match;
83
+ while ((match = DATE_FORMAT_TOKEN_REGEX.exec(dateTimeFormat)) !== null) {
84
+ if (TIME_ONLY_TOKENS.has(match[0])) {
85
+ // Отрезаем любой разделитель перед временем, включая буквенный (например 'T' в ISO-стиле
86
+ // 'dd.MM.yyyyTHH:mm:ss'), а не только пунктуацию — останавливаемся на последнем символе,
87
+ // который реально относится к токенам даты (y/M/d).
88
+ const datePart = dateTimeFormat.slice(0, match.index).replace(/[^yMd]+$/, '');
89
+ return datePart || dateTimeFormat;
90
+ }
91
+ }
92
+ return dateTimeFormat;
93
+ }
94
+ function escapeRegExp(str) {
95
+ return str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
96
+ }
97
+ /**
98
+ * Форматы дат, которые Bitrix24 реально присылает в разных методах REST и на разных
99
+ * порталах — формат даты/времени в ответе зависит от настроек портала (Настройки → формат
100
+ * даты и времени), поэтому один захардкоженный шаблон не универсален. Если явный `format`,
101
+ * переданный в toDate(), не совпал со значением, перед тем как считать строку невалидной,
102
+ * пробуем эти варианты по очереди — они не пересекаются по разделителям/порядку токенов,
103
+ * так что ложных совпадений не будет.
104
+ */
105
+ const FALLBACK_DATE_FORMATS = [
106
+ 'dd.MM.yyyy HH:mm:ss',
107
+ 'yyyy-MM-dd HH:mm:ss',
108
+ 'dd.MM.yyyy',
109
+ 'yyyy-MM-dd',
110
+ ];
111
+ /**
112
+ * Разбирает строку даты по простому шаблону (yyyy, MM, dd, HH, mm, ss и их однобуквенные
113
+ * варианты, например 'dd.MM.yyyy HH:mm:ss'). Разделители между токенами берутся из шаблона
114
+ * как есть. Не поддерживает локали, названия месяцев и часовые пояса — для REST-ответов
115
+ * Bitrix24 они не требуются, значения всегда приходят в фиксированном числовом виде.
116
+ */
117
+ function parseDateWithFormat(val, format) {
118
+ const tokenMap = new Map(DATE_FORMAT_TOKENS);
119
+ let pattern = '';
120
+ let lastIndex = 0;
121
+ let match;
122
+ DATE_FORMAT_TOKEN_REGEX.lastIndex = 0;
123
+ while ((match = DATE_FORMAT_TOKEN_REGEX.exec(format)) !== null) {
124
+ pattern += escapeRegExp(format.slice(lastIndex, match.index));
125
+ pattern += tokenMap.get(match[0]);
126
+ lastIndex = match.index + match[0].length;
127
+ }
128
+ pattern += escapeRegExp(format.slice(lastIndex));
129
+ const result = new RegExp(`^${pattern}$`).exec(val);
130
+ if (!result?.groups) {
131
+ return null;
132
+ }
133
+ const g = result.groups;
134
+ const year = g['yyyy'] ? Number(g['yyyy']) : g['yy'] ? 2000 + Number(g['yy']) : new Date().getFullYear();
135
+ const month = Number(g['MM'] ?? g['M'] ?? 1);
136
+ const day = Number(g['dd'] ?? g['d'] ?? 1);
137
+ const hour = Number(g['HH'] ?? g['H'] ?? 0);
138
+ const minute = Number(g['mm'] ?? g['m'] ?? 0);
139
+ const second = Number(g['ss'] ?? g['s'] ?? 0);
140
+ // Токены — это просто "N цифр", без проверки диапазона (regex не отличит "13" месяца от
141
+ // "13" дня). Без этой проверки new Date() молча "перекатывает" переполнение на соседний
142
+ // месяц/год (например, месяц=13 → январь следующего года) вместо того, чтобы считать
143
+ // строку невалидной.
144
+ if (month < 1 || month > 12 || day < 1 || day > 31 || hour > 23 || minute > 59 || second > 59) {
145
+ return null;
146
+ }
147
+ const date = new Date(year, month - 1, day, hour, minute, second);
148
+ return isNaN(date.getTime()) ? null : date;
149
+ }
150
+ /**
151
+ * Последний резервный разбор — без знания конкретного формата. Работает только для чисто
152
+ * числовых дат (никаких названий месяцев/дней — для этого нужны locale-таблицы, а это как
153
+ * раз тот вес, ради ухода от которого luxon был убран из зависимостей).
154
+ *
155
+ * Идея: год — единственный сегмент длиной ровно 4 цифры, поэтому его позиция (первый или
156
+ * последний из трёх сегментов даты) однозначно опознаётся при любом разделителе (`.`, `-`,
157
+ * `/`, пробел...). Месяц по всем распространённым в мире соглашениям (ISO `yyyy-MM-dd` и
158
+ * европейское `dd.MM.yyyy`) стоит между годом и днём, поэтому берётся как средний сегмент.
159
+ * Время, если есть, всегда идёт как `HH:mm:ss` — этот порядок универсален.
160
+ *
161
+ * Не решает и не пытается решить неоднозначность день/месяц в чисто числовых форматах вида
162
+ * `MM/dd/yyyy` (США), где оба сегмента могут быть ≤12 — угадывать это без знания локали
163
+ * значило бы иногда молча путать день с месяцем, что хуже явной ошибки.
164
+ */
165
+ function parseDateHeuristically(val) {
166
+ const parts = val.match(/\d+/g);
167
+ if (!parts || parts.length < 3 || parts.length > 6) {
168
+ return null;
169
+ }
170
+ const [d0, d1, d2, ...timeParts] = parts;
171
+ const dateParts = [d0, d1, d2];
172
+ const yearIdx = dateParts.findIndex(p => p.length === 4);
173
+ // Год должен быть однозначно найден (ровно 4 цифры) и стоять с края, а не в середине —
174
+ // иначе позиция месяца/дня не определить безопасно.
175
+ if (yearIdx !== 0 && yearIdx !== 2) {
176
+ return null;
177
+ }
178
+ const year = Number(dateParts[yearIdx]);
179
+ const month = Number(dateParts[1]);
180
+ const day = Number(dateParts[yearIdx === 0 ? 2 : 0]);
181
+ if (month < 1 || month > 12 || day < 1 || day > 31) {
182
+ return null;
183
+ }
184
+ const [hh, mm, ss] = timeParts;
185
+ const hour = hh !== undefined ? Number(hh) : 0;
186
+ const minute = mm !== undefined ? Number(mm) : 0;
187
+ const second = ss !== undefined ? Number(ss) : 0;
188
+ if (hour > 23 || minute > 59 || second > 59) {
189
+ return null;
190
+ }
191
+ const date = new Date(year, month - 1, day, hour, minute, second);
192
+ return isNaN(date.getTime()) ? null : date;
193
+ }
194
+ /**
195
+ * Преобразует значение в дату.
196
+ *
197
+ * Если передан `format`, но значение ему не соответствует (см. FALLBACK_DATE_FORMATS —
198
+ * актуально для полей, где Bitrix24 отдаёт дату в формате, настроенном на портале, а не в
199
+ * том, что захардкожен в маппере), перед тем как считать значение невалидным, делаются ещё
200
+ * две попытки: другие распространённые форматы Bitrix24, а затем — позиционная эвристика
201
+ * (см. parseDateHeuristically), которая распознаёт практически любой чисто числовой формат
202
+ * даты независимо от разделителя. Если приложению точно известен формат конкретного портала,
203
+ * его стоит передавать явным `format` — это всегда приоритетнее угадывания.
59
204
  */
60
205
  export function toDate(val, format, opt, throwError = true) {
61
206
  if (val instanceof Date) {
@@ -63,10 +208,22 @@ export function toDate(val, format, opt, throwError = true) {
63
208
  }
64
209
  else if (typeof val === 'string') {
65
210
  if (format) {
66
- if (opt) {
67
- return DateTime.fromFormat(val, format, opt).toJSDate();
211
+ const parsed = parseDateWithFormat(val, format);
212
+ if (parsed) {
213
+ return parsed;
214
+ }
215
+ for (const fallbackFormat of FALLBACK_DATE_FORMATS) {
216
+ if (fallbackFormat === format)
217
+ continue;
218
+ const fallbackParsed = parseDateWithFormat(val, fallbackFormat);
219
+ if (fallbackParsed) {
220
+ return fallbackParsed;
221
+ }
222
+ }
223
+ const heuristicParsed = parseDateHeuristically(val);
224
+ if (heuristicParsed) {
225
+ return heuristicParsed;
68
226
  }
69
- return DateTime.fromFormat(val, format).toJSDate();
70
227
  }
71
228
  else {
72
229
  return new Date(val);
@@ -202,4 +359,4 @@ export function prepareBaseAddress(url, add = '') {
202
359
  }
203
360
  return url;
204
361
  }
205
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL3NlcnZpY2VzL2Jhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBbUIsTUFBTSxPQUFPLENBQUE7QUFFakQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsS0FBSyxDQUFDLEdBQVEsRUFBRSxVQUFVLEdBQUcsS0FBSztJQUNoRCxJQUFJLEdBQUcsS0FBSyxJQUFJLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ3RDLElBQUksVUFBVSxFQUFFLENBQUM7WUFDZixNQUFNLElBQUksS0FBSyxDQUFDLGtCQUFrQixHQUFHLGdDQUFnQyxDQUFDLENBQUE7UUFDeEUsQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFBO0lBQ1gsQ0FBQztJQUNELE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0FBQ3BCLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSxLQUFLLENBQUMsR0FBUSxFQUFFLFVBQVUsR0FBRyxJQUFJLEVBQUUsUUFBUSxHQUFHLENBQUM7SUFDN0QsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBRTFCLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUE7UUFFakMsSUFBSSxVQUFVO1lBQUUsTUFBTSxLQUFLLENBQUE7UUFFM0Isa0RBQWtEO1FBQ2xELE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUE7UUFDL0IsT0FBTyxRQUFRLENBQUE7SUFDakIsQ0FBQztJQUVELE9BQU8sTUFBTSxDQUFBO0FBQ2YsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLFVBQVcsU0FBUSxLQUFLO0lBQ25DLFlBQTRCLEtBQVU7UUFDcEMsTUFBTSxTQUFTLEdBQUcsT0FBTyxLQUFLLENBQUE7UUFDOUIsTUFBTSxjQUFjLEdBQ2xCLFNBQVMsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNoRSxNQUFNLE9BQU8sR0FBRyxvQ0FBb0MsY0FBYyxXQUFXLFNBQVMsR0FBRyxDQUFBO1FBQ3pGLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUxZLFVBQUssR0FBTCxLQUFLLENBQUs7UUFNcEMsSUFBSSxDQUFDLElBQUksR0FBRyxZQUFZLENBQUE7UUFFeEIsdURBQXVEO1FBQ3ZELElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2YsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUE7WUFDekMsMEVBQTBFO1lBQzFFLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ2pFLENBQUM7SUFDSCxDQUFDO0lBRVEsUUFBUTtRQUNmLE9BQU87WUFDTCxNQUFNLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNsQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxvQkFBb0IsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFO1NBQ25ELENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQ2QsQ0FBQztDQUNGO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsTUFBTSxDQUFDLEdBQTJCLEVBQUUsTUFBZSxFQUFFLEdBQXFCLEVBQUUsVUFBVSxHQUFHLElBQUk7SUFDM0csSUFBSSxHQUFHLFlBQVksSUFBSSxFQUFFLENBQUM7UUFDeEIsT0FBTyxHQUFHLENBQUE7SUFDWixDQUFDO1NBQU0sSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUNuQyxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1gsSUFBSSxHQUFHLEVBQUUsQ0FBQztnQkFDUixPQUFPLFFBQVEsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQTtZQUN6RCxDQUFDO1lBQ0QsT0FBTyxRQUFRLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQTtRQUNwRCxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDdEIsQ0FBQztJQUNILENBQUM7U0FBTSxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQ25DLE9BQU8sSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDdEIsQ0FBQztJQUVELElBQUksVUFBVSxFQUFFLENBQUM7UUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLG1CQUFtQixFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQTtRQUMvQyxNQUFNLElBQUksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUE7SUFDdEMsQ0FBQztJQUVELE9BQU8sSUFBSSxJQUFJLEVBQUUsQ0FBQTtBQUNuQixDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsdUJBQXVCLENBQUMsSUFBVSxFQUFFLFVBQVUsR0FBRyxJQUFJO0lBQ25FLElBQUksQ0FBQyxDQUFDLElBQUksWUFBWSxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQzVCLElBQUksVUFBVTtZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsd0NBQXdDLENBQUMsQ0FBQTtRQUN6RSxPQUFPLEVBQUUsQ0FBQTtJQUNYLENBQUM7SUFFRCxNQUFNLFFBQVEsR0FBRyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFBO0lBQzFDLE1BQU0sSUFBSSxHQUFHLFFBQVEsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFBO0lBQ3RDLE1BQU0sR0FBRyxHQUFHLENBQUMsQ0FBUyxFQUFFLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQTtJQUN4RSxPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUU7UUFDdkIsR0FBRyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzlCLEdBQUcsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3pCLEdBQUcsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzFCLEdBQUcsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzVCLEdBQUcsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzVCLElBQUksR0FBRyxHQUFHLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUN6QixHQUFHLEdBQUcsR0FBRyxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUMsQ0FBQTtBQUM1QixDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsTUFBTSxDQUFDLEdBQVEsRUFBRSxVQUFVLEdBQUcsSUFBSTtJQUNoRCxRQUFRLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDbkIsS0FBSyxRQUFRO1lBQ1gsR0FBRyxHQUFHLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQTtZQUN2QixJQUFJLEdBQUcsS0FBSyxHQUFHLElBQUksR0FBRyxLQUFLLEdBQUcsRUFBRSxDQUFDLENBQUMsNkJBQTZCO2dCQUM3RCxPQUFPLEdBQUcsS0FBSyxHQUFHLENBQUE7WUFDcEIsQ0FBQztpQkFBTSxJQUFJLEdBQUcsS0FBSyxNQUFNLElBQUksR0FBRyxLQUFLLE9BQU8sRUFBRSxDQUFDLENBQUMsNkJBQTZCO2dCQUMzRSxPQUFPLEdBQUcsS0FBSyxNQUFNLENBQUE7WUFDdkIsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLElBQUksVUFBVTtvQkFBRSxNQUFNLElBQUksS0FBSyxDQUFDLCtDQUErQyxDQUFDLENBQUE7Z0JBQ2hGLE9BQU8sS0FBSyxDQUFBO1lBQ2QsQ0FBQztRQUNIO1lBQ0UsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDdkIsQ0FBQztBQUNILENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLFFBQVEsQ0FBQyxHQUFZO0lBQ25DLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQTtBQUN4QixDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxHQUFXLEVBQUUsU0FBUyxHQUFHLEtBQUs7SUFDNUQsSUFBSSxTQUFTLEVBQUUsQ0FBQztRQUNkLE9BQU8sU0FBUyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQTtJQUN0QyxDQUFDO1NBQU0sQ0FBQztRQUNOLE9BQU8sU0FBUyxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUE7SUFDbkQsQ0FBQztBQUNILENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLE9BQU8sQ0FBQyxHQUFXO0lBQ2pDLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUE7SUFDNUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQTtJQUMzQyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFBO0lBQzFDLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUE7SUFDekMsT0FBTyxHQUFHLENBQUE7QUFDWixDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxhQUFhLENBQUMsSUFBVTtJQUN0QyxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1FBQ3JDLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUE7UUFDL0IsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUMxQixNQUFNLENBQUMsTUFBTSxHQUFHLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBZ0IsQ0FBQyxDQUFBO1FBQ3RELE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDekMsQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsb0JBQW9CLENBQUMsSUFBVTtJQUluRCxNQUFNLE1BQU0sR0FBRyxNQUFNLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUN4QyxJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQy9CLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDL0IsT0FBTztZQUNMLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ2hCLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO1NBQ2QsQ0FBQTtJQUNILENBQUM7SUFDRCxPQUFPLFNBQVMsQ0FBQTtBQUNsQixDQUFDO0FBRUQsTUFBTSxVQUFVLGtCQUFrQixDQUFDLEdBQVcsRUFBRSxNQUEwQixFQUFFO0lBQzFFLCtEQUErRDtJQUMvRCwyQkFBMkI7SUFDM0IsSUFBSTtJQUVKLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDMUIsSUFBSSxHQUFHLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzlDLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFBO1FBQ2pCLENBQUM7UUFFRCxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsQ0FBQTtJQUNqQixDQUFDO0lBRUQsSUFBSSxHQUFHLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzlDLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFBO0lBQ2pCLENBQUM7SUFFRCxPQUFPLEdBQUcsQ0FBQTtBQUNaLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlVGltZSwgRGF0ZVRpbWVPcHRpb25zIH0gZnJvbSAnbHV4b24nXHJcblxyXG4vKipcclxuICog0J/RgNC10L7QsdGA0LDQt9GD0LXRgiDQt9C90LDRh9C10L3QuNC1INCyINGB0YLRgNC+0LrRg1xyXG4gKlxyXG4gKiBAcGFyYW0gdmFsXHJcbiAqIEBwYXJhbSB0aHJvd0Vycm9yXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gdG9TdHIodmFsOiBhbnksIHRocm93RXJyb3IgPSBmYWxzZSk6IHN0cmluZyB7XHJcbiAgaWYgKHZhbCA9PT0gbnVsbCB8fCB2YWwgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgaWYgKHRocm93RXJyb3IpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHZhbHVlOiAke3ZhbH0gY2Fubm90IGJlIGNvbnZlcnRlZCB0byBzdHJpbmdgKVxyXG4gICAgfVxyXG4gICAgcmV0dXJuICcnXHJcbiAgfVxyXG4gIHJldHVybiBTdHJpbmcodmFsKVxyXG59XHJcblxyXG4vKipcclxuICog0J/RgNC10L7QsdGA0LDQt9GD0LXRgiDQt9C90LDRh9C10L3QuNC1INCyINGH0LjRgdC70L5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiB0b051bSh2YWw6IGFueSwgdGhyb3dFcnJvciA9IHRydWUsIGRlZlZhbHVlID0gMCk6IG51bWJlciB7XHJcbiAgY29uc3QgcmVzdWx0ID0gTnVtYmVyKHZhbClcclxuXHJcbiAgaWYgKGlzTmFOKHJlc3VsdCkpIHtcclxuICAgIGNvbnN0IGVycm9yID0gbmV3IFRvTnVtRXJyb3IodmFsKVxyXG5cclxuICAgIGlmICh0aHJvd0Vycm9yKSB0aHJvdyBlcnJvclxyXG5cclxuICAgIC8vINCV0YHQu9C4INC+0YjQuNCx0LrQsCDQvdC1INC/0YDQvtCx0YDQsNGB0YvQstCw0LXRgtGB0Y8g4oCUINC/0YDQvtGB0YLQviDQu9C+0LPQuNGA0YPQtdC8XHJcbiAgICBjb25zb2xlLmVycm9yKGVycm9yLnRvU3RyaW5nKCkpXHJcbiAgICByZXR1cm4gZGVmVmFsdWVcclxuICB9XHJcblxyXG4gIHJldHVybiByZXN1bHRcclxufVxyXG5cclxuLyoqXHJcbiAqINCa0LDRgdGC0L7QvNC90YvQuSDRgtC40L8g0L7RiNC40LHQutC4INC00LvRjyDRh9C40YHQu9C+0LLRi9GFINC/0YDQtdC+0LHRgNCw0LfQvtCy0LDQvdC40LlcclxuICovXHJcbmV4cG9ydCBjbGFzcyBUb051bUVycm9yIGV4dGVuZHMgRXJyb3Ige1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSB2YWx1ZTogYW55KSB7XHJcbiAgICBjb25zdCB2YWx1ZVR5cGUgPSB0eXBlb2YgdmFsdWVcclxuICAgIGNvbnN0IGZvcm1hdHRlZFZhbHVlID1cclxuICAgICAgdmFsdWVUeXBlID09PSAnb2JqZWN0JyA/IEpTT04uc3RyaW5naWZ5KHZhbHVlKSA6IFN0cmluZyh2YWx1ZSlcclxuICAgIGNvbnN0IG1lc3NhZ2UgPSBgSW52YWxpZCB2YWx1ZSBwYXNzZWQgdG8gdG9OdW0oKTogJHtmb3JtYXR0ZWRWYWx1ZX0gKHR5cGU6ICR7dmFsdWVUeXBlfSlgXHJcbiAgICBzdXBlcihtZXNzYWdlKVxyXG4gICAgdGhpcy5uYW1lID0gJ1RvTnVtRXJyb3InXHJcblxyXG4gICAgLy8g0YHQvtGF0YDQsNC90Y/QtdC8INGB0YLQtdC6INCy0YvQt9C+0LLQsCAo0L7RgtGE0LjQu9GM0YLRgNC+0LLQsNCyINGB0LDQvCDQutC+0L3RgdGC0YDRg9C60YLQvtGAKVxyXG4gICAgaWYgKHRoaXMuc3RhY2spIHtcclxuICAgICAgY29uc3Qgc3RhY2tMaW5lcyA9IHRoaXMuc3RhY2suc3BsaXQoJ1xcbicpXHJcbiAgICAgIC8vINCj0LTQsNC70Y/QtdC8INGB0YLRgNC+0LrRgyDQutC+0L3RgdGC0YDRg9C60YLQvtGA0LAgKNGH0YLQvtCx0Ysg0YHRgtC10Log0L3QsNGH0LjQvdCw0LvRgdGPINGBINC80LXRgdGC0LAg0LLRi9C30L7QstCwIHRvTnVtKVxyXG4gICAgICB0aGlzLnN0YWNrID0gW3N0YWNrTGluZXNbMF0sIC4uLnN0YWNrTGluZXMuc2xpY2UoMildLmpvaW4oJ1xcbicpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSB0b1N0cmluZygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIFtcclxuICAgICAgYOKdjCBbJHt0aGlzLm5hbWV9XSAke3RoaXMubWVzc2FnZX1gLFxyXG4gICAgICB0aGlzLnN0YWNrID8gYCAgIFN0YWNrIHRyYWNlOlxcbiR7dGhpcy5zdGFja31gIDogJycsXHJcbiAgICBdLmpvaW4oJ1xcbicpXHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICog0J/RgNC10L7QsdGA0LDQt9GD0LXRgiDQt9C90LDRh9C10L3QuNC1INCyINC00LDRgtGDXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gdG9EYXRlKHZhbDogbnVtYmVyIHwgc3RyaW5nIHwgRGF0ZSwgZm9ybWF0Pzogc3RyaW5nLCBvcHQ/OiBEYXRlVGltZU9wdGlvbnMsIHRocm93RXJyb3IgPSB0cnVlKTogRGF0ZSB7XHJcbiAgaWYgKHZhbCBpbnN0YW5jZW9mIERhdGUpIHtcclxuICAgIHJldHVybiB2YWxcclxuICB9IGVsc2UgaWYgKHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnKSB7XHJcbiAgICBpZiAoZm9ybWF0KSB7XHJcbiAgICAgIGlmIChvcHQpIHtcclxuICAgICAgICByZXR1cm4gRGF0ZVRpbWUuZnJvbUZvcm1hdCh2YWwsIGZvcm1hdCwgb3B0KS50b0pTRGF0ZSgpXHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIERhdGVUaW1lLmZyb21Gb3JtYXQodmFsLCBmb3JtYXQpLnRvSlNEYXRlKClcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBuZXcgRGF0ZSh2YWwpXHJcbiAgICB9XHJcbiAgfSBlbHNlIGlmICh0eXBlb2YgdmFsID09PSAnbnVtYmVyJykge1xyXG4gICAgcmV0dXJuIG5ldyBEYXRlKHZhbClcclxuICB9XHJcblxyXG4gIGlmICh0aHJvd0Vycm9yKSB7XHJcbiAgICBjb25zb2xlLmVycm9yKCdXcm9uZyBkYXRlIGZvcm1hdCcsIHZhbCwgZm9ybWF0KVxyXG4gICAgdGhyb3cgbmV3IEVycm9yKCdXcm9uZyBkYXRlIGZvcm1hdCcpXHJcbiAgfVxyXG5cclxuICByZXR1cm4gbmV3IERhdGUoKVxyXG59XHJcblxyXG4vKipcclxuICog0J/RgNC10L7QsdGA0LDQt9GD0LXRgiDQtNCw0YLRgyDQsiDRgdGC0YDQvtC60YMg0YEg0YPRh9C10YLQvtC8INCy0YDQtdC80LXQvdC90L7QuSDQt9C+0L3Ri1xyXG4gKlxyXG4gKiBAcGFyYW0gZGF0ZVxyXG4gKiBAcGFyYW0gdGhyb3dFcnJvclxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHRvSVNPU3RyaW5nV2l0aFRpbWV6b25lKGRhdGU6IERhdGUsIHRocm93RXJyb3IgPSB0cnVlKTogc3RyaW5nIHtcclxuICBpZiAoIShkYXRlIGluc3RhbmNlb2YgRGF0ZSkpIHtcclxuICAgIGlmICh0aHJvd0Vycm9yKSB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgdmFsdWU6IG5vdCBhIHZhbGlkIERhdGUgb2JqZWN0JylcclxuICAgIHJldHVybiAnJ1xyXG4gIH1cclxuXHJcbiAgY29uc3QgdHpPZmZzZXQgPSAtZGF0ZS5nZXRUaW1lem9uZU9mZnNldCgpXHJcbiAgY29uc3QgZGlmZiA9IHR6T2Zmc2V0ID49IDAgPyAnKycgOiAnLSdcclxuICBjb25zdCBwYWQgPSAobjogbnVtYmVyKSA9PiBgJHtNYXRoLmZsb29yKE1hdGguYWJzKG4pKX1gLnBhZFN0YXJ0KDIsICcwJylcclxuICByZXR1cm4gZGF0ZS5nZXRGdWxsWWVhcigpICtcclxuICAgICctJyArIHBhZChkYXRlLmdldE1vbnRoKCkgKyAxKSArXHJcbiAgICAnLScgKyBwYWQoZGF0ZS5nZXREYXRlKCkpICtcclxuICAgICdUJyArIHBhZChkYXRlLmdldEhvdXJzKCkpICtcclxuICAgICc6JyArIHBhZChkYXRlLmdldE1pbnV0ZXMoKSkgK1xyXG4gICAgJzonICsgcGFkKGRhdGUuZ2V0U2Vjb25kcygpKSArXHJcbiAgICBkaWZmICsgcGFkKHR6T2Zmc2V0IC8gNjApICtcclxuICAgICc6JyArIHBhZCh0ek9mZnNldCAlIDYwKVxyXG59XHJcblxyXG4vKipcclxuICog0J/RgNC10L7QsdGA0LDQt9GD0LXRgiDQt9C90LDRh9C10L3QuNC1INCyINCx0YPQu9C10LLQviDQt9C90LDRh9C10L3QuNC1XHJcbiAqXHJcbiAqIEBwYXJhbSB2YWxcclxuICogQHBhcmFtIHRocm93RXJyb3JcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiB0b0Jvb2wodmFsOiBhbnksIHRocm93RXJyb3IgPSB0cnVlKTogYm9vbGVhbiB7XHJcbiAgc3dpdGNoICh0eXBlb2YgdmFsKSB7XHJcbiAgICBjYXNlICdzdHJpbmcnOlxyXG4gICAgICB2YWwgPSB2YWwudG9Mb3dlckNhc2UoKVxyXG4gICAgICBpZiAodmFsID09PSAnbicgfHwgdmFsID09PSAneScpIHsgLy8g0LHQuNGC0YDQuNC60YHQvtCy0YvQtSDQv9C+0L3Rj9GC0LjRjyDQviBib29sXHJcbiAgICAgICAgcmV0dXJuIHZhbCA9PT0gJ3knXHJcbiAgICAgIH0gZWxzZSBpZiAodmFsID09PSAndHJ1ZScgfHwgdmFsID09PSAnZmFsc2UnKSB7IC8vINCx0LjRgtGA0LjQutGB0L7QstGL0LUg0L/QvtC90Y/RgtC40Y8g0L4gYm9vbFxyXG4gICAgICAgIHJldHVybiB2YWwgPT09ICd0cnVlJ1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmICh0aHJvd0Vycm9yKSB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgdmFsdWU6IGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gYm9vbGVhbicpXHJcbiAgICAgICAgcmV0dXJuIGZhbHNlXHJcbiAgICAgIH1cclxuICAgIGRlZmF1bHQ6XHJcbiAgICAgIHJldHVybiBCb29sZWFuKHZhbClcclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiDQn9GA0LXQvtCx0YDQsNC30YPQtdGCINCx0YPQu9C10LLQviDQt9C90LDRh9C10L3QuNC1INCyICdZJyDQuNC70LggJ04nXHJcbiAqXHJcbiAqIEBwYXJhbSB2YWxcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiB0b0JYWW9yTih2YWw6IGJvb2xlYW4pOiBzdHJpbmcge1xyXG4gIHJldHVybiB2YWwgPyAnWScgOiAnTidcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldEJhc2VVcmxIdHRwcyh1cmw6IHN0cmluZywgY29tcG9uZW50ID0gZmFsc2UpOiBzdHJpbmcge1xyXG4gIGlmIChjb21wb25lbnQpIHtcclxuICAgIHJldHVybiBlbmNvZGVVUkkoY3JvcFVybCh1cmwpICsgJy8nKVxyXG4gIH0gZWxzZSB7XHJcbiAgICByZXR1cm4gZW5jb2RlVVJJKCdodHRwczovLycgKyBjcm9wVXJsKHVybCkgKyAnLycpXHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICog0J7QsdGA0LXQt9Cw0LXRgiBVUkwgKNGD0LTQsNC70Y/QtdGCINC/0YDQvtGC0L7QutC+0LspXHJcbiAqXHJcbiAqIEBwYXJhbSB1cmxcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBjcm9wVXJsKHVybDogc3RyaW5nKTogc3RyaW5nIHtcclxuICB1cmwgPSB1cmwgPyB1cmwucmVwbGFjZSgnaHR0cHM6Ly8nLCAnJykgOiAnJ1xyXG4gIHVybCA9IHVybCA/IHVybC5yZXBsYWNlKCdodHRwOi8vJywgJycpIDogJydcclxuICB1cmwgPSB1cmwgPyB1cmwucmVwbGFjZSgnaHR0cHM6JywgJycpIDogJydcclxuICB1cmwgPSB1cmwgPyB1cmwucmVwbGFjZSgnaHR0cDonLCAnJykgOiAnJ1xyXG4gIHJldHVybiB1cmxcclxufVxyXG5cclxuLyoqXHJcbiAqINCf0YDQtdC+0LHRgNCw0LfRg9C10YIg0YTQsNC50Lsg0LIgYmFzZTY0XHJcbiAqXHJcbiAqIEBwYXJhbSBmaWxlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0QmFzZTY0RmlsZShmaWxlOiBGaWxlKTogUHJvbWlzZTxzdHJpbmc+IHtcclxuICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKVxyXG4gICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwoZmlsZSlcclxuICAgIHJlYWRlci5vbmxvYWQgPSAoKSA9PiByZXNvbHZlKHJlYWRlci5yZXN1bHQgYXMgc3RyaW5nKVxyXG4gICAgcmVhZGVyLm9uZXJyb3IgPSBlcnJvciA9PiByZWplY3QoZXJyb3IpXHJcbiAgfSlcclxufVxyXG5cclxuLyoqXHJcbiAqINCf0L7Qu9GD0YfQuNGC0Ywg0YTQsNC50Lsg0LIg0YTQvtGA0LzQsNGC0LUgYmFzZTY0INGBINGA0LDQt9Cx0LjQstC60L7QuSDQvdCwINC30LDQs9C+0LvQvtCy0L7QuiDQuCDQtNCw0L3QvdGL0LVcclxuICpcclxuICogQHBhcmFtIGZpbGVcclxuICovXHJcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRCYXNlNjRGaWxlTGlrZVN0cihmaWxlOiBGaWxlKTogUHJvbWlzZTx7XHJcbiAgaGVhZGVyOiBzdHJpbmcsXHJcbiAgdmFsOiBzdHJpbmdcclxufSB8IHVuZGVmaW5lZD4ge1xyXG4gIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGdldEJhc2U2NEZpbGUoZmlsZSlcclxuICBpZiAodHlwZW9mIHJlc3VsdCA9PT0gJ3N0cmluZycpIHtcclxuICAgIGNvbnN0IHNwbGl0ID0gcmVzdWx0LnNwbGl0KCcsJylcclxuICAgIHJldHVybiB7XHJcbiAgICAgIGhlYWRlcjogc3BsaXRbMF0sXHJcbiAgICAgIHZhbDogc3BsaXRbMV1cclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIHVuZGVmaW5lZFxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcHJlcGFyZUJhc2VBZGRyZXNzKHVybDogc3RyaW5nLCBhZGQ6IHN0cmluZyB8IHVuZGVmaW5lZCA9ICcnKSB7XHJcbiAgLy8gaWYgKHVybC5zZWFyY2goJ2h0dHBzOi8vJykgIT09IDAgJiYgdXJsLnNlYXJjaCgnaHR0cDovLycpKSB7XHJcbiAgLy8gICB1cmwgPSAnaHR0cHM6Ly8nICsgdXJsXHJcbiAgLy8gfVxyXG5cclxuICBpZiAoYWRkICYmIGFkZC5sZW5ndGggPiAwKSB7XHJcbiAgICBpZiAodXJsLmxhc3RJbmRleE9mKCcvJykgIT09ICh1cmwubGVuZ3RoIC0gMSkpIHtcclxuICAgICAgdXJsID0gdXJsICsgJy8nXHJcbiAgICB9XHJcblxyXG4gICAgdXJsID0gdXJsICsgYWRkXHJcbiAgfVxyXG5cclxuICBpZiAodXJsLmxhc3RJbmRleE9mKCcvJykgIT09ICh1cmwubGVuZ3RoIC0gMSkpIHtcclxuICAgIHVybCA9IHVybCArICcvJ1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHVybFxyXG59Il19
362
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL3NlcnZpY2VzL2Jhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsS0FBSyxDQUFDLEdBQVEsRUFBRSxVQUFVLEdBQUcsS0FBSztJQUNoRCxJQUFJLEdBQUcsS0FBSyxJQUFJLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ3RDLElBQUksVUFBVSxFQUFFLENBQUM7WUFDZixNQUFNLElBQUksS0FBSyxDQUFDLGtCQUFrQixHQUFHLGdDQUFnQyxDQUFDLENBQUE7UUFDeEUsQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFBO0lBQ1gsQ0FBQztJQUNELE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0FBQ3BCLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSxLQUFLLENBQUMsR0FBUSxFQUFFLFVBQVUsR0FBRyxJQUFJLEVBQUUsUUFBUSxHQUFHLENBQUM7SUFDN0QsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBRTFCLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUE7UUFFakMsSUFBSSxVQUFVO1lBQUUsTUFBTSxLQUFLLENBQUE7UUFFM0Isa0RBQWtEO1FBQ2xELE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUE7UUFDL0IsT0FBTyxRQUFRLENBQUE7SUFDakIsQ0FBQztJQUVELE9BQU8sTUFBTSxDQUFBO0FBQ2YsQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLFVBQVcsU0FBUSxLQUFLO0lBQ25DLFlBQTRCLEtBQVU7UUFDcEMsTUFBTSxTQUFTLEdBQUcsT0FBTyxLQUFLLENBQUE7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QUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFBO0lBRWhELE1BQU0sTUFBTSxHQUFHLElBQUksTUFBTSxDQUFDLElBQUksT0FBTyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDbkQsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQztRQUNwQixPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7SUFFRCxNQUFNLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFBO0lBQ3ZCLE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUE7SUFDeEcsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7SUFDNUMsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7SUFDMUMsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7SUFDM0MsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7SUFDN0MsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFB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QUM5QyxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsQ0FBQTtRQUNqQixDQUFDO1FBRUQsR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLENBQUE7SUFDakIsQ0FBQztJQUVELElBQUksR0FBRyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUM5QyxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsQ0FBQTtJQUNqQixDQUFDO0lBRUQsT0FBTyxHQUFHLENBQUE7QUFDWixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqINCf0YDQtdC+0LHRgNCw0LfRg9C10YIg0LfQvdCw0YfQtdC90LjQtSDQsiDRgdGC0YDQvtC60YNcclxuICpcclxuICogQHBhcmFtIHZhbFxyXG4gKiBAcGFyYW0gdGhyb3dFcnJvclxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHRvU3RyKHZhbDogYW55LCB0aHJvd0Vycm9yID0gZmFsc2UpOiBzdHJpbmcge1xyXG4gIGlmICh2YWwgPT09IG51bGwgfHwgdmFsID09PSB1bmRlZmluZWQpIHtcclxuICAgIGlmICh0aHJvd0Vycm9yKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCB2YWx1ZTogJHt2YWx9IGNhbm5vdCBiZSBjb252ZXJ0ZWQgdG8gc3RyaW5nYClcclxuICAgIH1cclxuICAgIHJldHVybiAnJ1xyXG4gIH1cclxuICByZXR1cm4gU3RyaW5nKHZhbClcclxufVxyXG5cclxuLyoqXHJcbiAqINCf0YDQtdC+0LHRgNCw0LfRg9C10YIg0LfQvdCw0YfQtdC90LjQtSDQsiDRh9C40YHQu9C+XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gdG9OdW0odmFsOiBhbnksIHRocm93RXJyb3IgPSB0cnVlLCBkZWZWYWx1ZSA9IDApOiBudW1iZXIge1xyXG4gIGNvbnN0IHJlc3VsdCA9IE51bWJlcih2YWwpXHJcblxyXG4gIGlmIChpc05hTihyZXN1bHQpKSB7XHJcbiAgICBjb25zdCBlcnJvciA9IG5ldyBUb051bUVycm9yKHZhbClcclxuXHJcbiAgICBpZiAodGhyb3dFcnJvcikgdGhyb3cgZXJyb3JcclxuXHJcbiAgICAvLyDQldGB0LvQuCDQvtGI0LjQsdC60LAg0L3QtSDQv9GA0L7QsdGA0LDRgdGL0LLQsNC10YLRgdGPIOKAlCDQv9GA0L7RgdGC0L4g0LvQvtCz0LjRgNGD0LXQvFxyXG4gICAgY29uc29sZS5lcnJvcihlcnJvci50b1N0cmluZygpKVxyXG4gICAgcmV0dXJuIGRlZlZhbHVlXHJcbiAgfVxyXG5cclxuICByZXR1cm4gcmVzdWx0XHJcbn1cclxuXHJcbi8qKlxyXG4gKiDQmtCw0YHRgtC+0LzQvdGL0Lkg0YLQuNC/INC+0YjQuNCx0LrQuCDQtNC70Y8g0YfQuNGB0LvQvtCy0YvRhSDQv9GA0LXQvtCx0YDQsNC30L7QstCw0L3QuNC5XHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgVG9OdW1FcnJvciBleHRlbmRzIEVycm9yIHtcclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgdmFsdWU6IGFueSkge1xyXG4gICAgY29uc3QgdmFsdWVUeXBlID0gdHlwZW9mIHZhbHVlXHJcbiAgICBjb25zdCBmb3JtYXR0ZWRWYWx1ZSA9XHJcbiAgICAgIHZhbHVlVHlwZSA9PT0gJ29iamVjdCcgPyBKU09OLnN0cmluZ2lmeSh2YWx1ZSkgOiBTdHJpbmcodmFsdWUpXHJcbiAgICBjb25zdCBtZXNzYWdlID0gYEludmFsaWQgdmFsdWUgcGFzc2VkIHRvIHRvTnVtKCk6ICR7Zm9ybWF0dGVkVmFsdWV9ICh0eXBlOiAke3ZhbHVlVHlwZX0pYFxyXG4gICAgc3VwZXIobWVzc2FnZSlcclxuICAgIHRoaXMubmFtZSA9ICdUb051bUVycm9yJ1xyXG5cclxuICAgIC8vINGB0L7RhdGA0LDQvdGP0LXQvCDRgdGC0LXQuiDQstGL0LfQvtCy0LAgKNC+0YLRhNC40LvRjNGC0YDQvtCy0LDQsiDRgdCw0Lwg0LrQvtC90YHRgtGA0YPQutGC0L7RgClcclxuICAgIGlmICh0aGlzLnN0YWNrKSB7XHJcbiAgICAgIGNvbnN0IHN0YWNrTGluZXMgPSB0aGlzLnN0YWNrLnNwbGl0KCdcXG4nKVxyXG4gICAgICAvLyDQo9C00LDQu9GP0LXQvCDRgdGC0YDQvtC60YMg0LrQvtC90YHRgtGA0YPQutGC0L7RgNCwICjRh9GC0L7QsdGLINGB0YLQtdC6INC90LDRh9C40L3QsNC70YHRjyDRgSDQvNC10YHRgtCwINCy0YvQt9C+0LLQsCB0b051bSlcclxuICAgICAgdGhpcy5zdGFjayA9IFtzdGFja0xpbmVzWzBdLCAuLi5zdGFja0xpbmVzLnNsaWNlKDIpXS5qb2luKCdcXG4nKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgdG9TdHJpbmcoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBbXHJcbiAgICAgIGDinYwgWyR7dGhpcy5uYW1lfV0gJHt0aGlzLm1lc3NhZ2V9YCxcclxuICAgICAgdGhpcy5zdGFjayA/IGAgICBTdGFjayB0cmFjZTpcXG4ke3RoaXMuc3RhY2t9YCA6ICcnLFxyXG4gICAgXS5qb2luKCdcXG4nKVxyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqINCe0L/RhtC40Lgg0LTQu9GPIHRvRGF0ZSgpLiDQntGB0YLQsNCy0LvQtdC90Ysg0LTQu9GPINC+0LHRgNCw0YLQvdC+0Lkg0YHQvtCy0LzQtdGB0YLQuNC80L7RgdGC0Lgg0YHQuNCz0L3QsNGC0YPRgNGLIOKAlCDRgNCw0L3QtdC1INC/0YDQvtCx0YDQsNGB0YvQstCw0LvQuNGB0YxcclxuICog0LIgbHV4b24gKNC30L7QvdCwL9C70L7QutCw0LvRjCkuINCg0LDQt9Cx0L7RgCDQtNCw0YLRiyDRgtC10L/QtdGA0Ywg0L3QtSDQt9Cw0LLQuNGB0LjRgiDQvtGCINCy0L3QtdGI0L3QuNGFINCx0LjQsdC70LjQvtGC0LXQuiDQuCDQv9C+0LTQtNC10YDQttC40LLQsNC10YJcclxuICog0YLQvtC70YzQutC+INGE0LjQutGB0LjRgNC+0LLQsNC90L3Ri9C1INGH0LjRgdC70L7QstGL0LUg0YLQvtC60LXQvdGLICjRgdC8LiBwYXJzZURhdGVXaXRoRm9ybWF0KSwg0L/QvtGN0YLQvtC80YMg0L7Qv9GG0LjQuCDRgdC10LnRh9Cw0YEg0L3QtSDQuNGB0L/QvtC70YzQt9GD0Y7RgtGB0Y8uXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFRvRGF0ZU9wdGlvbnMge1xyXG4gIHpvbmU/OiBzdHJpbmdcclxuICBsb2NhbGU/OiBzdHJpbmdcclxufVxyXG5cclxuLyoqINCh0L7QvtGC0LLQtdGC0YHRgtCy0LjQtSDRgtC+0LrQtdC90L7QsiDRhNC+0YDQvNCw0YLQsCDRgNC10LPRg9C70Y/RgNC90YvQvCDQs9GA0YPQv9C/0LDQvCDQt9Cw0YXQstCw0YLQsC4g0J/QvtGA0Y/QtNC+0Log0LLQsNC20LXQvTog0LTQu9C40L3QvdGL0LUg0YLQvtC60LXQvdGLINC/0YDQvtCy0LXRgNGP0Y7RgtGB0Y8g0YDQsNC90YzRiNC1INC60L7RgNC+0YLQutC40YUgKi9cclxuY29uc3QgREFURV9GT1JNQVRfVE9LRU5TOiBbc3RyaW5nLCBzdHJpbmddW10gPSBbXHJcbiAgWyd5eXl5JywgJyg/PHl5eXk+XFxcXGR7NH0pJ10sXHJcbiAgWyd5eScsICcoPzx5eT5cXFxcZHsyfSknXSxcclxuICBbJ01NJywgJyg/PE1NPlxcXFxkezJ9KSddLFxyXG4gIFsnTScsICcoPzxNPlxcXFxkezEsMn0pJ10sXHJcbiAgWydkZCcsICcoPzxkZD5cXFxcZHsyfSknXSxcclxuICBbJ2QnLCAnKD88ZD5cXFxcZHsxLDJ9KSddLFxyXG4gIFsnSEgnLCAnKD88SEg+XFxcXGR7Mn0pJ10sXHJcbiAgWydIJywgJyg/PEg+XFxcXGR7MSwyfSknXSxcclxuICBbJ21tJywgJyg/PG1tPlxcXFxkezJ9KSddLFxyXG4gIFsnbScsICcoPzxtPlxcXFxkezEsMn0pJ10sXHJcbiAgWydzcycsICcoPzxzcz5cXFxcZHsyfSknXSxcclxuICBbJ3MnLCAnKD88cz5cXFxcZHsxLDJ9KSddLFxyXG5dXHJcblxyXG5jb25zdCBEQVRFX0ZPUk1BVF9UT0tFTl9SRUdFWCA9IG5ldyBSZWdFeHAoREFURV9GT1JNQVRfVE9LRU5TLm1hcCgoW3Rva2VuXSkgPT4gdG9rZW4pLmpvaW4oJ3wnKSwgJ2cnKVxyXG5cclxuY29uc3QgVElNRV9PTkxZX1RPS0VOUyA9IG5ldyBTZXQoWydISCcsICdIJywgJ21tJywgJ20nLCAnc3MnLCAncyddKVxyXG5cclxuLyoqXHJcbiAqINCS0YvQstC+0LTQuNGCINGE0L7RgNC80LDRgiBcItGC0L7Qu9GM0LrQviDQtNCw0YLQsFwiINC40Lcg0YTQvtGA0LzQsNGC0LAg0LTQsNGC0Yst0Lgt0LLRgNC10LzQtdC90Lgg4oCUINC+0YLRgNC10LfQsNC10YIg0LLRgNC10LzRjyDQuCDRgNCw0LfQtNC10LvQuNGC0LXQu9GMINC/0LXRgNC10LRcclxuICog0L3QuNC8ICjQvdCw0L/RgNC40LzQtdGALCBgJ2RkLk1NLnl5eXkgSEg6bW06c3MnYCDihpIgYCdkZC5NTS55eXl5J2ApLiDQn9C+0YDRj9C00L7QuiDQtNC10L3RjC/QvNC10YHRj9GGL9Cz0L7QtCDRgyDQv9C+0LvQtdC5XHJcbiAqIFwi0LTQsNGC0LBcIiDQuCBcItC00LDRgtCwLdCy0YDQtdC80Y9cIiDQvdCwINC+0LTQvdC+0Lwg0L/QvtGA0YLQsNC70LUgQml0cml4MjQg0LLRgdC10LPQtNCwINGB0L7Qs9C70LDRgdC+0LLQsNC9IOKAlCDRgNCw0LfQu9C40YfQsNC10YLRgdGPINGC0L7Qu9GM0LrQvlxyXG4gKiDQvdCw0LvQuNGH0LjQtSBgSEg6bW06c3NgLCDQv9C+0Y3RgtC+0LzRgyDQvdC10YIg0YHQvNGL0YHQu9CwINC30LDRgdGC0LDQstC70Y/RgtGMINCy0YvQt9GL0LLQsNGO0YnQtdCz0L4g0L/QtdGA0LXQtNCw0LLQsNGC0Ywg0L7QsdCwINGE0L7RgNC80LDRgtCwINC4XHJcbiAqINC00LXRgNC20LDRgtGMINC40YUg0LIg0YHQuNC90YXRgNC+0L3QtSDQstGA0YPRh9C90YPRji5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBkZXJpdmVEYXRlT25seUZvcm1hdChkYXRlVGltZUZvcm1hdDogc3RyaW5nKTogc3RyaW5nIHtcclxuICBEQVRFX0ZPUk1BVF9UT0tFTl9SRUdFWC5sYXN0SW5kZXggPSAwXHJcbiAgbGV0IG1hdGNoOiBSZWdFeHBFeGVjQXJyYXkgfCBudWxsXHJcblxyXG4gIHdoaWxlICgobWF0Y2ggPSBEQVRFX0ZPUk1BVF9UT0tFTl9SRUdFWC5leGVjKGRhdGVUaW1lRm9ybWF0KSkgIT09IG51bGwpIHtcclxuICAgIGlmIChUSU1FX09OTFlfVE9LRU5TLmhhcyhtYXRjaFswXSkpIHtcclxuICAgICAgLy8g0J7RgtGA0LXQt9Cw0LXQvCDQu9GO0LHQvtC5INGA0LDQt9C00LXQu9C40YLQtdC70Ywg0L/QtdGA0LXQtCDQstGA0LXQvNC10L3QtdC8LCDQstC60LvRjtGH0LDRjyDQsdGD0LrQstC10L3QvdGL0LkgKNC90LDQv9GA0LjQvNC10YAgJ1QnINCyIElTTy3RgdGC0LjQu9C1XHJcbiAgICAgIC8vICdkZC5NTS55eXl5VEhIOm1tOnNzJyksINCwINC90LUg0YLQvtC70YzQutC+INC/0YPQvdC60YLRg9Cw0YbQuNGOIOKAlCDQvtGB0YLQsNC90LDQstC70LjQstCw0LXQvNGB0Y8g0L3QsCDQv9C+0YHQu9C10LTQvdC10Lwg0YHQuNC80LLQvtC70LUsXHJcbiAgICAgIC8vINC60L7RgtC+0YDRi9C5INGA0LXQsNC70YzQvdC+INC+0YLQvdC+0YHQuNGC0YHRjyDQuiDRgtC+0LrQtdC90LDQvCDQtNCw0YLRiyAoeS9NL2QpLlxyXG4gICAgICBjb25zdCBkYXRlUGFydCA9IGRhdGVUaW1lRm9ybWF0LnNsaWNlKDAsIG1hdGNoLmluZGV4KS5yZXBsYWNlKC9bXnlNZF0rJC8sICcnKVxyXG4gICAgICByZXR1cm4gZGF0ZVBhcnQgfHwgZGF0ZVRpbWVGb3JtYXRcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJldHVybiBkYXRlVGltZUZvcm1hdFxyXG59XHJcblxyXG5mdW5jdGlvbiBlc2NhcGVSZWdFeHAoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gIHJldHVybiBzdHIucmVwbGFjZSgvWy4qKz9eJHt9KCl8W1xcXVxcXFxdL2csICdcXFxcJCYnKVxyXG59XHJcblxyXG4vKipcclxuICog0KTQvtGA0LzQsNGC0Ysg0LTQsNGCLCDQutC+0YLQvtGA0YvQtSBCaXRyaXgyNCDRgNC10LDQu9GM0L3QviDQv9GA0LjRgdGL0LvQsNC10YIg0LIg0YDQsNC30L3Ri9GFINC80LXRgtC+0LTQsNGFIFJFU1Qg0Lgg0L3QsCDRgNCw0LfQvdGL0YVcclxuICog0L/QvtGA0YLQsNC70LDRhSDigJQg0YTQvtGA0LzQsNGCINC00LDRgtGLL9Cy0YDQtdC80LXQvdC4INCyINC+0YLQstC10YLQtSDQt9Cw0LLQuNGB0LjRgiDQvtGCINC90LDRgdGC0YDQvtC10Log0L/QvtGA0YLQsNC70LAgKNCd0LDRgdGC0YDQvtC50LrQuCDihpIg0YTQvtGA0LzQsNGCXHJcbiAqINC00LDRgtGLINC4INCy0YDQtdC80LXQvdC4KSwg0L/QvtGN0YLQvtC80YMg0L7QtNC40L0g0LfQsNGF0LDRgNC00LrQvtC20LXQvdC90YvQuSDRiNCw0LHQu9C+0L0g0L3QtSDRg9C90LjQstC10YDRgdCw0LvQtdC9LiDQldGB0LvQuCDRj9Cy0L3Ri9C5IGBmb3JtYXRgLFxyXG4gKiDQv9C10YDQtdC00LDQvdC90YvQuSDQsiB0b0RhdGUoKSwg0L3QtSDRgdC+0LLQv9Cw0Lsg0YHQviDQt9C90LDRh9C10L3QuNC10LwsINC/0LXRgNC10LQg0YLQtdC8INC60LDQuiDRgdGH0LjRgtCw0YLRjCDRgdGC0YDQvtC60YMg0L3QtdCy0LDQu9C40LTQvdC+0LksXHJcbiAqINC/0YDQvtCx0YPQtdC8INGN0YLQuCDQstCw0YDQuNCw0L3RgtGLINC/0L4g0L7Rh9C10YDQtdC00Lgg4oCUINC+0L3QuCDQvdC1INC/0LXRgNC10YHQtdC60LDRjtGC0YHRjyDQv9C+INGA0LDQt9C00LXQu9C40YLQtdC70Y/QvC/Qv9C+0YDRj9C00LrRgyDRgtC+0LrQtdC90L7QsixcclxuICog0YLQsNC6INGH0YLQviDQu9C+0LbQvdGL0YUg0YHQvtCy0L/QsNC00LXQvdC40Lkg0L3QtSDQsdGD0LTQtdGCLlxyXG4gKi9cclxuY29uc3QgRkFMTEJBQ0tfREFURV9GT1JNQVRTID0gW1xyXG4gICdkZC5NTS55eXl5IEhIOm1tOnNzJyxcclxuICAneXl5eS1NTS1kZCBISDptbTpzcycsXHJcbiAgJ2RkLk1NLnl5eXknLFxyXG4gICd5eXl5LU1NLWRkJyxcclxuXVxyXG5cclxuLyoqXHJcbiAqINCg0LDQt9Cx0LjRgNCw0LXRgiDRgdGC0YDQvtC60YMg0LTQsNGC0Ysg0L/QviDQv9GA0L7RgdGC0L7QvNGDINGI0LDQsdC70L7QvdGDICh5eXl5LCBNTSwgZGQsIEhILCBtbSwgc3Mg0Lgg0LjRhSDQvtC00L3QvtCx0YPQutCy0LXQvdC90YvQtVxyXG4gKiDQstCw0YDQuNCw0L3RgtGLLCDQvdCw0L/RgNC40LzQtdGAICdkZC5NTS55eXl5IEhIOm1tOnNzJykuINCg0LDQt9C00LXQu9C40YLQtdC70Lgg0LzQtdC20LTRgyDRgtC+0LrQtdC90LDQvNC4INCx0LXRgNGD0YLRgdGPINC40Lcg0YjQsNCx0LvQvtC90LBcclxuICog0LrQsNC6INC10YHRgtGMLiDQndC1INC/0L7QtNC00LXRgNC20LjQstCw0LXRgiDQu9C+0LrQsNC70LgsINC90LDQt9Cy0LDQvdC40Y8g0LzQtdGB0Y/RhtC10LIg0Lgg0YfQsNGB0L7QstGL0LUg0L/QvtGP0YHQsCDigJQg0LTQu9GPIFJFU1Qt0L7RgtCy0LXRgtC+0LJcclxuICogQml0cml4MjQg0L7QvdC4INC90LUg0YLRgNC10LHRg9GO0YLRgdGPLCDQt9C90LDRh9C10L3QuNGPINCy0YHQtdCz0LTQsCDQv9GA0LjRhdC+0LTRj9GCINCyINGE0LjQutGB0LjRgNC+0LLQsNC90L3QvtC8INGH0LjRgdC70L7QstC+0Lwg0LLQuNC00LUuXHJcbiAqL1xyXG5mdW5jdGlvbiBwYXJzZURhdGVXaXRoRm9ybWF0KHZhbDogc3RyaW5nLCBmb3JtYXQ6IHN0cmluZyk6IERhdGUgfCBudWxsIHtcclxuICBjb25zdCB0b2tlbk1hcCA9IG5ldyBNYXAoREFURV9GT1JNQVRfVE9LRU5TKVxyXG4gIGxldCBwYXR0ZXJuID0gJydcclxuICBsZXQgbGFzdEluZGV4ID0gMFxyXG4gIGxldCBtYXRjaDogUmVnRXhwRXhlY0FycmF5IHwgbnVsbFxyXG5cclxuICBEQVRFX0ZPUk1BVF9UT0tFTl9SRUdFWC5sYXN0SW5kZXggPSAwXHJcbiAgd2hpbGUgKChtYXRjaCA9IERBVEVfRk9STUFUX1RPS0VOX1JFR0VYLmV4ZWMoZm9ybWF0KSkgIT09IG51bGwpIHtcclxuICAgIHBhdHRlcm4gKz0gZXNjYXBlUmVnRXhwKGZvcm1hdC5zbGljZShsYXN0SW5kZXgsIG1hdGNoLmluZGV4KSlcclxuICAgIHBhdHRlcm4gKz0gdG9rZW5NYXAuZ2V0KG1hdGNoWzBdKVxyXG4gICAgbGFzdEluZGV4ID0gbWF0Y2guaW5kZXggKyBtYXRjaFswXS5sZW5ndGhcclxuICB9XHJcbiAgcGF0dGVybiArPSBlc2NhcGVSZWdFeHAoZm9ybWF0LnNsaWNlKGxhc3RJbmRleCkpXHJcblxyXG4gIGNvbnN0IHJlc3VsdCA9IG5ldyBSZWdFeHAoYF4ke3BhdHRlcm59JGApLmV4ZWModmFsKVxyXG4gIGlmICghcmVzdWx0Py5ncm91cHMpIHtcclxuICAgIHJldHVybiBudWxsXHJcbiAgfVxyXG5cclxuICBjb25zdCBnID0gcmVzdWx0Lmdyb3Vwc1xyXG4gIGNvbnN0IHllYXIgPSBnWyd5eXl5J10gPyBOdW1iZXIoZ1sneXl5eSddKSA6IGdbJ3l5J10gPyAyMDAwICsgTnVtYmVyKGdbJ3l5J10pIDogbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpXHJcbiAgY29uc3QgbW9udGggPSBOdW1iZXIoZ1snTU0nXSA/PyBnWydNJ10gPz8gMSlcclxuICBjb25zdCBkYXkgPSBOdW1iZXIoZ1snZGQnXSA/PyBnWydkJ10gPz8gMSlcclxuICBjb25zdCBob3VyID0gTnVtYmVyKGdbJ0hIJ10gPz8gZ1snSCddID8/IDApXHJcbiAgY29uc3QgbWludXRlID0gTnVtYmVyKGdbJ21tJ10gPz8gZ1snbSddID8/IDApXHJcbiAgY29uc3Qgc2Vjb25kID0gTnVtYmVyKGdbJ3NzJ10gPz8gZ1sncyddID8/IDApXHJcblxyXG4gIC8vINCi0L7QutC10L3RiyDigJQg0Y3RgtC+INC/0YDQvtGB0YLQviBcIk4g0YbQuNGE0YBcIiwg0LHQtdC3INC/0YDQvtCy0LXRgNC60Lgg0LTQuNCw0L/QsNC30L7QvdCwIChyZWdleCDQvdC1INC+0YLQu9C40YfQuNGCIFwiMTNcIiDQvNC10YHRj9GG0LAg0L7RglxyXG4gIC8vIFwiMTNcIiDQtNC90Y8pLiDQkdC10Lcg0Y3RgtC+0Lkg0L/RgNC+0LLQtdGA0LrQuCBuZXcgRGF0ZSgpINC80L7Qu9GH0LAgXCLQv9C10YDQtdC60LDRgtGL0LLQsNC10YJcIiDQv9C10YDQtdC/0L7Qu9C90LXQvdC40LUg0L3QsCDRgdC+0YHQtdC00L3QuNC5XHJcbiAgLy8g0LzQtdGB0Y/Rhi/Qs9C+0LQgKNC90LDQv9GA0LjQvNC10YAsINC80LXRgdGP0YY9MTMg4oaSINGP0L3QstCw0YDRjCDRgdC70LXQtNGD0Y7RidC10LPQviDQs9C+0LTQsCkg0LLQvNC10YHRgtC+INGC0L7Qs9C+LCDRh9GC0L7QsdGLINGB0YfQuNGC0LDRgtGMXHJcbiAgLy8g0YHRgtGA0L7QutGDINC90LXQstCw0LvQuNC00L3QvtC5LlxyXG4gIGlmIChtb250aCA8IDEgfHwgbW9udGggPiAxMiB8fCBkYXkgPCAxIHx8IGRheSA+IDMxIHx8IGhvdXIgPiAyMyB8fCBtaW51dGUgPiA1OSB8fCBzZWNvbmQgPiA1OSkge1xyXG4gICAgcmV0dXJuIG51bGxcclxuICB9XHJcblxyXG4gIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSh5ZWFyLCBtb250aCAtIDEsIGRheSwgaG91ciwgbWludXRlLCBzZWNvbmQpXHJcbiAgcmV0dXJuIGlzTmFOKGRhdGUuZ2V0VGltZSgpKSA/IG51bGwgOiBkYXRlXHJcbn1cclxuXHJcbi8qKlxyXG4gKiDQn9C+0YHQu9C10LTQvdC40Lkg0YDQtdC30LXRgNCy0L3Ri9C5INGA0LDQt9Cx0L7RgCDigJQg0LHQtdC3INC30L3QsNC90LjRjyDQutC+0L3QutGA0LXRgtC90L7Qs9C+INGE0L7RgNC80LDRgtCwLiDQoNCw0LHQvtGC0LDQtdGCINGC0L7Qu9GM0LrQviDQtNC70Y8g0YfQuNGB0YLQvlxyXG4gKiDRh9C40YHQu9C+0LLRi9GFINC00LDRgiAo0L3QuNC60LDQutC40YUg0L3QsNC30LLQsNC90LjQuSDQvNC10YHRj9GG0LXQsi/QtNC90LXQuSDigJQg0LTQu9GPINGN0YLQvtCz0L4g0L3Rg9C20L3RiyBsb2NhbGUt0YLQsNCx0LvQuNGG0YssINCwINGN0YLQviDQutCw0LpcclxuICog0YDQsNC3INGC0L7RgiDQstC10YEsINGA0LDQtNC4INGD0YXQvtC00LAg0L7RgiDQutC+0YLQvtGA0L7Qs9C+IGx1eG9uINCx0YvQuyDRg9Cx0YDQsNC9INC40Lcg0LfQsNCy0LjRgdC40LzQvtGB0YLQtdC5KS5cclxuICpcclxuICog0JjQtNC10Y86INCz0L7QtCDigJQg0LXQtNC40L3RgdGC0LLQtdC90L3Ri9C5INGB0LXQs9C80LXQvdGCINC00LvQuNC90L7QuSDRgNC+0LLQvdC+IDQg0YbQuNGE0YDRiywg0L/QvtGN0YLQvtC80YMg0LXQs9C+INC/0L7Qt9C40YbQuNGPICjQv9C10YDQstGL0Lkg0LjQu9C4XHJcbiAqINC/0L7RgdC70LXQtNC90LjQuSDQuNC3INGC0YDRkdGFINGB0LXQs9C80LXQvdGC0L7QsiDQtNCw0YLRiykg0L7QtNC90L7Qt9C90LDRh9C90L4g0L7Qv9C+0LfQvdCw0ZHRgtGB0Y8g0L/RgNC4INC70Y7QsdC+0Lwg0YDQsNC30LTQtdC70LjRgtC10LvQtSAoYC5gLCBgLWAsXHJcbiAqIGAvYCwg0L/RgNC+0LHQtdC7Li4uKS4g0JzQtdGB0Y/RhiDQv9C+INCy0YHQtdC8INGA0LDRgdC/0YDQvtGB0YLRgNCw0L3RkdC90L3Ri9C8INCyINC80LjRgNC1INGB0L7Qs9C70LDRiNC10L3QuNGP0LwgKElTTyBgeXl5eS1NTS1kZGAg0LhcclxuICog0LXQstGA0L7Qv9C10LnRgdC60L7QtSBgZGQuTU0ueXl5eWApINGB0YLQvtC40YIg0LzQtdC20LTRgyDQs9C+0LTQvtC8INC4INC00L3RkdC8LCDQv9C+0Y3RgtC+0LzRgyDQsdC10YDRkdGC0YHRjyDQutCw0Log0YHRgNC10LTQvdC40Lkg0YHQtdCz0LzQtdC90YIuXHJcbiAqINCS0YDQtdC80Y8sINC10YHQu9C4INC10YHRgtGMLCDQstGB0LXQs9C00LAg0LjQtNGR0YIg0LrQsNC6IGBISDptbTpzc2Ag4oCUINGN0YLQvtGCINC/0L7RgNGP0LTQvtC6INGD0L3QuNCy0LXRgNGB0LDQu9C10L0uXHJcbiAqXHJcbiAqINCd0LUg0YDQtdGI0LDQtdGCINC4INC90LUg0L/Ri9GC0LDQtdGC0YHRjyDRgNC10YjQuNGC0Ywg0L3QtdC+0LTQvdC+0LfQvdCw0YfQvdC+0YHRgtGMINC00LXQvdGML9C80LXRgdGP0YYg0LIg0YfQuNGB0YLQviDRh9C40YHQu9C+0LLRi9GFINGE0L7RgNC80LDRgtCw0YUg0LLQuNC00LBcclxuICogYE1NL2RkL3l5eXlgICjQodCo0JApLCDQs9C00LUg0L7QsdCwINGB0LXQs9C80LXQvdGC0LAg0LzQvtCz0YPRgiDQsdGL0YLRjCDiiaQxMiDigJQg0YPQs9Cw0LTRi9Cy0LDRgtGMINGN0YLQviDQsdC10Lcg0LfQvdCw0L3QuNGPINC70L7QutCw0LvQuFxyXG4gKiDQt9C90LDRh9C40LvQviDQsdGLINC40L3QvtCz0LTQsCDQvNC+0LvRh9CwINC/0YPRgtCw0YLRjCDQtNC10L3RjCDRgSDQvNC10YHRj9GG0LXQvCwg0YfRgtC+INGF0YPQttC1INGP0LLQvdC+0Lkg0L7RiNC40LHQutC4LlxyXG4gKi9cclxuZnVuY3Rpb24gcGFyc2VEYXRlSGV1cmlzdGljYWxseSh2YWw6IHN0cmluZyk6IERhdGUgfCBudWxsIHtcclxuICBjb25zdCBwYXJ0cyA9IHZhbC5tYXRjaCgvXFxkKy9nKVxyXG4gIGlmICghcGFydHMgfHwgcGFydHMubGVuZ3RoIDwgMyB8fCBwYXJ0cy5sZW5ndGggPiA2KSB7XHJcbiAgICByZXR1cm4gbnVsbFxyXG4gIH1cclxuXHJcbiAgY29uc3QgW2QwLCBkMSwgZDIsIC4uLnRpbWVQYXJ0c10gPSBwYXJ0c1xyXG4gIGNvbnN0IGRhdGVQYXJ0cyA9IFtkMCwgZDEsIGQyXVxyXG4gIGNvbnN0IHllYXJJZHggPSBkYXRlUGFydHMuZmluZEluZGV4KHAgPT4gcC5sZW5ndGggPT09IDQpXHJcbiAgLy8g0JPQvtC0INC00L7Qu9C20LXQvSDQsdGL0YLRjCDQvtC00L3QvtC30L3QsNGH0L3QviDQvdCw0LnQtNC10L0gKNGA0L7QstC90L4gNCDRhtC40YTRgNGLKSDQuCDRgdGC0L7Rj9GC0Ywg0YEg0LrRgNCw0Y8sINCwINC90LUg0LIg0YHQtdGA0LXQtNC40L3QtSDigJRcclxuICAvLyDQuNC90LDRh9C1INC/0L7Qt9C40YbQuNGPINC80LXRgdGP0YbQsC/QtNC90Y8g0L3QtSDQvtC/0YDQtdC00LXQu9C40YLRjCDQsdC10LfQvtC/0LDRgdC90L4uXHJcbiAgaWYgKHllYXJJZHggIT09IDAgJiYgeWVhcklkeCAhPT0gMikge1xyXG4gICAgcmV0dXJuIG51bGxcclxuICB9XHJcblxyXG4gIGNvbnN0IHllYXIgPSBOdW1iZXIoZGF0ZVBhcnRzW3llYXJJZHhdKVxyXG4gIGNvbnN0IG1vbnRoID0gTnVtYmVyKGRhdGVQYXJ0c1sxXSlcclxuICBjb25zdCBkYXkgPSBOdW1iZXIoZGF0ZVBhcnRzW3llYXJJZHggPT09IDAgPyAyIDogMF0pXHJcbiAgaWYgKG1vbnRoIDwgMSB8fCBtb250aCA+IDEyIHx8IGRheSA8IDEgfHwgZGF5ID4gMzEpIHtcclxuICAgIHJldHVybiBudWxsXHJcbiAgfVxyXG5cclxuICBjb25zdCBbaGgsIG1tLCBzc10gPSB0aW1lUGFydHNcclxuICBjb25zdCBob3VyID0gaGggIT09IHVuZGVmaW5lZCA/IE51bWJlcihoaCkgOiAwXHJcbiAgY29uc3QgbWludXRlID0gbW0gIT09IHVuZGVmaW5lZCA/IE51bWJlcihtbSkgOiAwXHJcbiAgY29uc3Qgc2Vjb25kID0gc3MgIT09IHVuZGVmaW5lZCA/IE51bWJlcihzcykgOiAwXHJcbiAgaWYgKGhvdXIgPiAyMyB8fCBtaW51dGUgPiA1OSB8fCBzZWNvbmQgPiA1OSkge1xyXG4gICAgcmV0dXJuIG51bGxcclxuICB9XHJcblxyXG4gIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSh5ZWFyLCBtb250aCAtIDEsIGRheSwgaG91ciwgbWludXRlLCBzZWNvbmQpXHJcbiAgcmV0dXJuIGlzTmFOKGRhdGUuZ2V0VGltZSgpKSA/IG51bGwgOiBkYXRlXHJcbn1cclxuXHJcbi8qKlxyXG4gKiDQn9GA0LXQvtCx0YDQsNC30YPQtdGCINC30L3QsNGH0LXQvdC40LUg0LIg0LTQsNGC0YMuXHJcbiAqXHJcbiAqINCV0YHQu9C4INC/0LXRgNC10LTQsNC9IGBmb3JtYXRgLCDQvdC+INC30L3QsNGH0LXQvdC40LUg0LXQvNGDINC90LUg0YHQvtC+0YLQstC10YLRgdGC0LLRg9C10YIgKNGB0LwuIEZBTExCQUNLX0RBVEVfRk9STUFUUyDigJRcclxuICog0LDQutGC0YPQsNC70YzQvdC+INC00LvRjyDQv9C+0LvQtdC5LCDQs9C00LUgQml0cml4MjQg0L7RgtC00LDRkdGCINC00LDRgtGDINCyINGE0L7RgNC80LDRgtC1LCDQvdCw0YHRgtGA0L7QtdC90L3QvtC8INC90LAg0L/QvtGA0YLQsNC70LUsINCwINC90LUg0LJcclxuICog0YLQvtC8LCDRh9GC0L4g0LfQsNGF0LDRgNC00LrQvtC20LXQvSDQsiDQvNCw0L/Qv9C10YDQtSksINC/0LXRgNC10LQg0YLQtdC8INC60LDQuiDRgdGH0LjRgtCw0YLRjCDQt9C90LDRh9C10L3QuNC1INC90LXQstCw0LvQuNC00L3Ri9C8LCDQtNC10LvQsNGO0YLRgdGPINC10YnRkVxyXG4gKiDQtNCy0LUg0L/QvtC/0YvRgtC60Lg6INC00YDRg9Cz0LjQtSDRgNCw0YHQv9GA0L7RgdGC0YDQsNC90ZHQvdC90YvQtSDRhNC+0YDQvNCw0YLRiyBCaXRyaXgyNCwg0LAg0LfQsNGC0LXQvCDigJQg0L/QvtC30LjRhtC40L7QvdC90LDRjyDRjdCy0YDQuNGB0YLQuNC60LBcclxuICogKNGB0LwuIHBhcnNlRGF0ZUhldXJpc3RpY2FsbHkpLCDQutC+0YLQvtGA0LDRjyDRgNCw0YHQv9C+0LfQvdCw0ZHRgiDQv9GA0LDQutGC0LjRh9C10YHQutC4INC70Y7QsdC+0Lkg0YfQuNGB0YLQviDRh9C40YHQu9C+0LLQvtC5INGE0L7RgNC80LDRglxyXG4gKiDQtNCw0YLRiyDQvdC10LfQsNCy0LjRgdC40LzQviDQvtGCINGA0LDQt9C00LXQu9C40YLQtdC70Y8uINCV0YHQu9C4INC/0YDQuNC70L7QttC10L3QuNGOINGC0L7Rh9C90L4g0LjQt9Cy0LXRgdGC0LXQvSDRhNC+0YDQvNCw0YIg0LrQvtC90LrRgNC10YLQvdC+0LPQviDQv9C+0YDRgtCw0LvQsCxcclxuICog0LXQs9C+INGB0YLQvtC40YIg0L/QtdGA0LXQtNCw0LLQsNGC0Ywg0Y/QstC90YvQvCBgZm9ybWF0YCDigJQg0Y3RgtC+INCy0YHQtdCz0LTQsCDQv9GA0LjQvtGA0LjRgtC10YLQvdC10LUg0YPQs9Cw0LTRi9Cy0LDQvdC40Y8uXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gdG9EYXRlKHZhbDogbnVtYmVyIHwgc3RyaW5nIHwgRGF0ZSwgZm9ybWF0Pzogc3RyaW5nLCBvcHQ/OiBUb0RhdGVPcHRpb25zLCB0aHJvd0Vycm9yID0gdHJ1ZSk6IERhdGUge1xyXG4gIGlmICh2YWwgaW5zdGFuY2VvZiBEYXRlKSB7XHJcbiAgICByZXR1cm4gdmFsXHJcbiAgfSBlbHNlIGlmICh0eXBlb2YgdmFsID09PSAnc3RyaW5nJykge1xyXG4gICAgaWYgKGZvcm1hdCkge1xyXG4gICAgICBjb25zdCBwYXJzZWQgPSBwYXJzZURhdGVXaXRoRm9ybWF0KHZhbCwgZm9ybWF0KVxyXG4gICAgICBpZiAocGFyc2VkKSB7XHJcbiAgICAgICAgcmV0dXJuIHBhcnNlZFxyXG4gICAgICB9XHJcblxyXG4gICAgICBmb3IgKGNvbnN0IGZhbGxiYWNrRm9ybWF0IG9mIEZBTExCQUNLX0RBVEVfRk9STUFUUykge1xyXG4gICAgICAgIGlmIChmYWxsYmFja0Zvcm1hdCA9PT0gZm9ybWF0KSBjb250aW51ZVxyXG4gICAgICAgIGNvbnN0IGZhbGxiYWNrUGFyc2VkID0gcGFyc2VEYXRlV2l0aEZvcm1hdCh2YWwsIGZhbGxiYWNrRm9ybWF0KVxyXG4gICAgICAgIGlmIChmYWxsYmFja1BhcnNlZCkge1xyXG4gICAgICAgICAgcmV0dXJuIGZhbGxiYWNrUGFyc2VkXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBjb25zdCBoZXVyaXN0aWNQYXJzZWQgPSBwYXJzZURhdGVIZXVyaXN0aWNhbGx5KHZhbClcclxuICAgICAgaWYgKGhldXJpc3RpY1BhcnNlZCkge1xyXG4gICAgICAgIHJldHVybiBoZXVyaXN0aWNQYXJzZWRcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG5ldyBEYXRlKHZhbClcclxuICAgIH1cclxuICB9IGVsc2UgaWYgKHR5cGVvZiB2YWwgPT09ICdudW1iZXInKSB7XHJcbiAgICByZXR1cm4gbmV3IERhdGUodmFsKVxyXG4gIH1cclxuXHJcbiAgaWYgKHRocm93RXJyb3IpIHtcclxuICAgIGNvbnNvbGUuZXJyb3IoJ1dyb25nIGRhdGUgZm9ybWF0JywgdmFsLCBmb3JtYXQpXHJcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1dyb25nIGRhdGUgZm9ybWF0JylcclxuICB9XHJcblxyXG4gIHJldHVybiBuZXcgRGF0ZSgpXHJcbn1cclxuXHJcbi8qKlxyXG4gKiDQn9GA0LXQvtCx0YDQsNC30YPQtdGCINC00LDRgtGDINCyINGB0YLRgNC+0LrRgyDRgSDRg9GH0LXRgtC+0Lwg0LLRgNC10LzQtdC90L3QvtC5INC30L7QvdGLXHJcbiAqXHJcbiAqIEBwYXJhbSBkYXRlXHJcbiAqIEBwYXJhbSB0aHJvd0Vycm9yXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gdG9JU09TdHJpbmdXaXRoVGltZXpvbmUoZGF0ZTogRGF0ZSwgdGhyb3dFcnJvciA9IHRydWUpOiBzdHJpbmcge1xyXG4gIGlmICghKGRhdGUgaW5zdGFuY2VvZiBEYXRlKSkge1xyXG4gICAgaWYgKHRocm93RXJyb3IpIHRocm93IG5ldyBFcnJvcignSW52YWxpZCB2YWx1ZTogbm90IGEgdmFsaWQgRGF0ZSBvYmplY3QnKVxyXG4gICAgcmV0dXJuICcnXHJcbiAgfVxyXG5cclxuICBjb25zdCB0ek9mZnNldCA9IC1kYXRlLmdldFRpbWV6b25lT2Zmc2V0KClcclxuICBjb25zdCBkaWZmID0gdHpPZmZzZXQgPj0gMCA/ICcrJyA6ICctJ1xyXG4gIGNvbnN0IHBhZCA9IChuOiBudW1iZXIpID0+IGAke01hdGguZmxvb3IoTWF0aC5hYnMobikpfWAucGFkU3RhcnQoMiwgJzAnKVxyXG4gIHJldHVybiBkYXRlLmdldEZ1bGxZZWFyKCkgK1xyXG4gICAgJy0nICsgcGFkKGRhdGUuZ2V0TW9udGgoKSArIDEpICtcclxuICAgICctJyArIHBhZChkYXRlLmdldERhdGUoKSkgK1xyXG4gICAgJ1QnICsgcGFkKGRhdGUuZ2V0SG91cnMoKSkgK1xyXG4gICAgJzonICsgcGFkKGRhdGUuZ2V0TWludXRlcygpKSArXHJcbiAgICAnOicgKyBwYWQoZGF0ZS5nZXRTZWNvbmRzKCkpICtcclxuICAgIGRpZmYgKyBwYWQodHpPZmZzZXQgLyA2MCkgK1xyXG4gICAgJzonICsgcGFkKHR6T2Zmc2V0ICUgNjApXHJcbn1cclxuXHJcbi8qKlxyXG4gKiDQn9GA0LXQvtCx0YDQsNC30YPQtdGCINC30L3QsNGH0LXQvdC40LUg0LIg0LHRg9C70LXQstC+INC30L3QsNGH0LXQvdC40LVcclxuICpcclxuICogQHBhcmFtIHZhbFxyXG4gKiBAcGFyYW0gdGhyb3dFcnJvclxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHRvQm9vbCh2YWw6IGFueSwgdGhyb3dFcnJvciA9IHRydWUpOiBib29sZWFuIHtcclxuICBzd2l0Y2ggKHR5cGVvZiB2YWwpIHtcclxuICAgIGNhc2UgJ3N0cmluZyc6XHJcbiAgICAgIHZhbCA9IHZhbC50b0xvd2VyQ2FzZSgpXHJcbiAgICAgIGlmICh2YWwgPT09ICduJyB8fCB2YWwgPT09ICd5JykgeyAvLyDQsdC40YLRgNC40LrRgdC+0LLRi9C1INC/0L7QvdGP0YLQuNGPINC+IGJvb2xcclxuICAgICAgICByZXR1cm4gdmFsID09PSAneSdcclxuICAgICAgfSBlbHNlIGlmICh2YWwgPT09ICd0cnVlJyB8fCB2YWwgPT09ICdmYWxzZScpIHsgLy8g0LHQuNGC0YDQuNC60YHQvtCy0YvQtSDQv9C+0L3Rj9GC0LjRjyDQviBib29sXHJcbiAgICAgICAgcmV0dXJuIHZhbCA9PT0gJ3RydWUnXHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKHRocm93RXJyb3IpIHRocm93IG5ldyBFcnJvcignSW52YWxpZCB2YWx1ZTogY2Fubm90IGJlIGNvbnZlcnRlZCB0byBib29sZWFuJylcclxuICAgICAgICByZXR1cm4gZmFsc2VcclxuICAgICAgfVxyXG4gICAgZGVmYXVsdDpcclxuICAgICAgcmV0dXJuIEJvb2xlYW4odmFsKVxyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqINCf0YDQtdC+0LHRgNCw0LfRg9C10YIg0LHRg9C70LXQstC+INC30L3QsNGH0LXQvdC40LUg0LIgJ1knINC40LvQuCAnTidcclxuICpcclxuICogQHBhcmFtIHZhbFxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHRvQlhZb3JOKHZhbDogYm9vbGVhbik6IHN0cmluZyB7XHJcbiAgcmV0dXJuIHZhbCA/ICdZJyA6ICdOJ1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0QmFzZVVybEh0dHBzKHVybDogc3RyaW5nLCBjb21wb25lbnQgPSBmYWxzZSk6IHN0cmluZyB7XHJcbiAgaWYgKGNvbXBvbmVudCkge1xyXG4gICAgcmV0dXJuIGVuY29kZVVSSShjcm9wVXJsKHVybCkgKyAnLycpXHJcbiAgfSBlbHNlIHtcclxuICAgIHJldHVybiBlbmNvZGVVUkkoJ2h0dHBzOi8vJyArIGNyb3BVcmwodXJsKSArICcvJylcclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiDQntCx0YDQtdC30LDQtdGCIFVSTCAo0YPQtNCw0LvRj9C10YIg0L/RgNC+0YLQvtC60L7QuylcclxuICpcclxuICogQHBhcmFtIHVybFxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGNyb3BVcmwodXJsOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gIHVybCA9IHVybCA/IHVybC5yZXBsYWNlKCdodHRwczovLycsICcnKSA6ICcnXHJcbiAgdXJsID0gdXJsID8gdXJsLnJlcGxhY2UoJ2h0dHA6Ly8nLCAnJykgOiAnJ1xyXG4gIHVybCA9IHVybCA/IHVybC5yZXBsYWNlKCdodHRwczonLCAnJykgOiAnJ1xyXG4gIHVybCA9IHVybCA/IHVybC5yZXBsYWNlKCdodHRwOicsICcnKSA6ICcnXHJcbiAgcmV0dXJuIHVybFxyXG59XHJcblxyXG4vKipcclxuICog0J/RgNC10L7QsdGA0LDQt9GD0LXRgiDRhNCw0LnQuyDQsiBiYXNlNjRcclxuICpcclxuICogQHBhcmFtIGZpbGVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRCYXNlNjRGaWxlKGZpbGU6IEZpbGUpOiBQcm9taXNlPHN0cmluZz4ge1xyXG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpXHJcbiAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKVxyXG4gICAgcmVhZGVyLm9ubG9hZCA9ICgpID0+IHJlc29sdmUocmVhZGVyLnJlc3VsdCBhcyBzdHJpbmcpXHJcbiAgICByZWFkZXIub25lcnJvciA9IGVycm9yID0+IHJlamVjdChlcnJvcilcclxuICB9KVxyXG59XHJcblxyXG4vKipcclxuICog0J/QvtC70YPRh9C40YLRjCDRhNCw0LnQuyDQsiDRhNC+0YDQvNCw0YLQtSBiYXNlNjQg0YEg0YDQsNC30LHQuNCy0LrQvtC5INC90LAg0LfQsNCz0L7Qu9C+0LLQvtC6INC4INC00LDQvdC90YvQtVxyXG4gKlxyXG4gKiBAcGFyYW0gZmlsZVxyXG4gKi9cclxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEJhc2U2NEZpbGVMaWtlU3RyKGZpbGU6IEZpbGUpOiBQcm9taXNlPHtcclxuICBoZWFkZXI6IHN0cmluZyxcclxuICB2YWw6IHN0cmluZ1xyXG59IHwgdW5kZWZpbmVkPiB7XHJcbiAgY29uc3QgcmVzdWx0ID0gYXdhaXQgZ2V0QmFzZTY0RmlsZShmaWxlKVxyXG4gIGlmICh0eXBlb2YgcmVzdWx0ID09PSAnc3RyaW5nJykge1xyXG4gICAgY29uc3Qgc3BsaXQgPSByZXN1bHQuc3BsaXQoJywnKVxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgaGVhZGVyOiBzcGxpdFswXSxcclxuICAgICAgdmFsOiBzcGxpdFsxXVxyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gdW5kZWZpbmVkXHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBwcmVwYXJlQmFzZUFkZHJlc3ModXJsOiBzdHJpbmcsIGFkZDogc3RyaW5nIHwgdW5kZWZpbmVkID0gJycpIHtcclxuICAvLyBpZiAodXJsLnNlYXJjaCgnaHR0cHM6Ly8nKSAhPT0gMCAmJiB1cmwuc2VhcmNoKCdodHRwOi8vJykpIHtcclxuICAvLyAgIHVybCA9ICdodHRwczovLycgKyB1cmxcclxuICAvLyB9XHJcblxyXG4gIGlmIChhZGQgJiYgYWRkLmxlbmd0aCA+IDApIHtcclxuICAgIGlmICh1cmwubGFzdEluZGV4T2YoJy8nKSAhPT0gKHVybC5sZW5ndGggLSAxKSkge1xyXG4gICAgICB1cmwgPSB1cmwgKyAnLydcclxuICAgIH1cclxuXHJcbiAgICB1cmwgPSB1cmwgKyBhZGRcclxuICB9XHJcblxyXG4gIGlmICh1cmwubGFzdEluZGV4T2YoJy8nKSAhPT0gKHVybC5sZW5ndGggLSAxKSkge1xyXG4gICAgdXJsID0gdXJsICsgJy8nXHJcbiAgfVxyXG5cclxuICByZXR1cm4gdXJsXHJcbn0iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYngtcmVzdC9zcmMvdHlwaWZpY2F0aW9uL3Jlc3QvY2FsZW5kYXIvZXZlbnQvZ2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3VudHJ5Q29kZSwgVGltZXpvbmVOYW1lIH0gZnJvbSAnY291bnRyaWVzLWFuZC10aW1lem9uZXMnXHJcbmltcG9ydCB7IGlCWFJlc3RDYWxlbmRhclR5cGVFdmVudCB9IGZyb20gJy4uL2Jhc2UvdHlwZSdcclxuaW1wb3J0IHsgaUJYUmVzdFllc05vIH0gZnJvbSAnLi4vLi4vYmFzZS95ZXMtbm8nXHJcblxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgaUJYUmVzdENhbGVuZGFyRXZlbnRHZXRBbnN3ZXIgZXh0ZW5kcyBpQlhSZXN0Q2FsZW5kYXJFdmVudEdldEFuc3dlckJhc2V7XHJcbiAgQVRURU5ERUVfTElTVDoge2lkOiBudW1iZXIsIGVudHJ5SWQ6IG51bWJlciwgc3RhdHVzOiAnWScgfCAnTicgfCAnSCd9W11cclxuICBDUkVBVEVEX0JZOiBzdHJpbmdcclxuICBEQVRFX0NSRUFURTogRGF0ZVxyXG4gIERBVEVfRlJPTTogRGF0ZVxyXG4gIERBVEVfRlJPTV9UU19VVEM6IG51bWJlclxyXG4gIERBVEVfVE86IERhdGVcclxuICBEQVRFX1RPX1RTX1VUQzogbnVtYmVyXHJcbiAgREVMRVRFRDogYm9vbGVhblxyXG4gIERUX0xFTkdUSDogbnVtYmVyXHJcbiAgRFRfU0tJUF9USU1FOiBib29sZWFuXHJcbiAgTUVFVElOR19TVEFUVVM6IGJvb2xlYW5cclxuICBFWERBVEU6IERhdGVbXSAvLyDRgtGD0YIg0L/RgNC10L7QsdGA0LDQt9C+0LLQsNC90LjQtSDQuNC3INGB0YLRgNC+0LrQuCDQs9C00LUg0YfQtdGA0LXQtyBcIjtcIiDQuNC00LXRgiDQv9C10YDQtdGH0LjRgdC70LXQvdC40LUg0LTQsNGCXHJcbiAgSUQ6IG51bWJlclxyXG4gIE1FRVRJTkdfSE9TVDogbnVtYmVyXHJcbiAgT1JJR0lOQUxfREFURV9GUk9NOiBEYXRlIHwgbnVsbFxyXG4gIE9XTkVSX0lEOiBudW1iZXJcclxuICBQQVJFTlRfSUQ6IG51bWJlclxyXG4gIFJFQ1VSUkVOQ0VfSUQ6IG51bWJlclxyXG4gIFNFQ1RJT05fSUQ6IG51bWJlclxyXG4gIFNFQ1RfSUQ6IG51bWJlclxyXG4gIFRJTUVTVEFNUF9YOiBEYXRlXHJcbiAgVFpfT0ZGU0VUX0ZST006IG51bWJlclxyXG4gIFRaX09GRlNFVF9UTzogbnVtYmVyXHJcbiAgVkVSU0lPTjogbnVtYmVyXHJcbiAgUlJVTEU6IG51bGwgfCBpQlhSZXN0Q2FsZW5kYXJFdmVudEdldEFuc3dlclJ1bGVcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBpQlhSZXN0Q2FsZW5kYXJFdmVudEdldEFuc3dlckh0dHAgZXh0ZW5kcyBpQlhSZXN0Q2FsZW5kYXJFdmVudEdldEFuc3dlckJhc2Uge1xyXG4gIEFUVEVOREVFX0xJU1Q/OiB7aWQ6IG51bWJlciwgZW50cnlJZDogc3RyaW5nLCBzdGF0dXM6ICdZJyB8ICdOJyB8ICdIJ31bXVxyXG4gIENSRUFURURfQlk6IHN0cmluZ1xyXG4gIERBVEVfQ1JFQVRFOiBzdHJpbmdcclxuICBEQVRFX0ZST006IHN0cmluZ1xyXG4gIERBVEVfRlJPTV9UU19VVEM6IHN0cmluZ1xyXG4gIERBVEVfVE86IHN0cmluZ1xyXG4gIERBVEVfVE9fVFNfVVRDOiBzdHJpbmdcclxuICBERUxFVEVEOiBpQlhSZXN0WWVzTm9cclxuICBEVF9MRU5HVEg6IHN0cmluZ1xyXG4gIERUX1NLSVBfVElNRTogaUJYUmVzdFllc05vXHJcbiAgTUVFVElOR19TVEFUVVM6IGlCWFJlc3RZZXNOb1xyXG4gIEVYREFURTogc3RyaW5nXHJcbiAgSUQ6IHN0cmluZ1xyXG4gIE1FRVRJTkdfSE9TVDogc3RyaW5nXHJcbiAgT1JJR0lOQUxfREFURV9GUk9NOiBzdHJpbmcgfCBudWxsXHJcbiAgT1dORVJfSUQ6IHN0cmluZ1xyXG4gIFBBUkVOVF9JRDogc3RyaW5nXHJcbiAgUkVDVVJSRU5DRV9JRDogc3RyaW5nXHJcbiAgUlJVTEU6IHN0cmluZyB8IGlCWFJlc3RDYWxlbmRhckV2ZW50R2V0QW5zd2VyUnVsZUh0dHBcclxuICBTRUNUSU9OX0lEOiBzdHJpbmdcclxuICBTRUNUX0lEOiBzdHJpbmdcclxuICBUSU1FU1RBTVBfWDogc3RyaW5nXHJcbiAgVFpfT0ZGU0VUX0ZST006IHN0cmluZ1xyXG4gIFRaX09GRlNFVF9UTzogc3RyaW5nXHJcbiAgVkVSU0lPTjogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgaUJYUmVzdENhbGVuZGFyRXZlbnRHZXRBbnN3ZXJCYXNlIHtcclxuICBBQ0NFU1NJQklMSVRZOiAnYnVzeScgLy8gVE9ETzog0KDQsNC30L7QsdGA0LDRgtGM0YHRj1xyXG4gIEFUVEVOREVFU19DT0RFUzogc3RyaW5nW10gLy8gVE9ETzog0YLRg9GCINGA0LDQt9C+0LHRgNCw0YLRjNGB0Y8g0LrQvtGA0YDQtdC60YLQvdC+INC70Lgg0LHRg9C00LXRgiDQv9GA0LXQvtCx0YDQsNC30L7QstGL0LLQsNGC0Ywg0LIg0YfQuNGB0LvQviDRgtCw0Log0LrQsNC6INGE0L7RgNC80LDRgiDQstGL0LHRgNCw0L0g0LrQsNC6IFUxMDkxINCz0LTQtSB1IC0gdXNlciAxMDkxIC0gaWRcclxuICBDQUxfREFWX0xBQkVMOiBudWxsXHJcbiAgQ0FMX1RZUEU6IGlCWFJlc3RDYWxlbmRhclR5cGVFdmVudFxyXG4gIENPTE9SOiBzdHJpbmcgLy8g0LrQvtC0INGE0L7RgNC80LDRgtCwICM2ODVnZGYg0LLQvtC30LzQvtC20L3QviDQvNC+0LbQvdC+INC30LDRgtCw0LnQv9C40YLRjCwg0L3QviDRgdC10LnRh9Cw0YEg0Y3RgtC+INCx0YPQtNC10YIg0YLRg9C80LDRhyAo0YHQtdC50YfQsNGBINC90LXRgiDRgtCw0LrQuNGFINC30LDQtNCw0YcpXHJcbiAgREFWX0VYQ0hfTEFCRUw6IG51bGwgLy8gVE9ETzog0KDQsNC30L7QsdGA0LDRgtGM0YHRj1xyXG4gIERBVl9YTUxfSUQ6IHN0cmluZ1xyXG4gIEVWRU5UX1RZUEU6IG51bGwgLy8gVE9ETzog0KDQsNC30L7QsdGA0LDRgtGM0YHRj1xyXG4gIEdfRVZFTlRfSUQ6IG51bGwgLy8gVE9ETzog0KDQsNC30L7QsdGA0LDRgtGM0YHRj1xyXG4gIElNUE9SVEFOQ0U6ICdub3JtYWwnIC8vIFRPRE86INCg0LDQt9C+0LHRgNCw0YLRjNGB0Y9cclxuICBJU19NRUVUSU5HOiBib29sZWFuXHJcbiAgTE9DQVRJT046IHN0cmluZ1xyXG4gIFJJTkRFWD86IG51bWJlcixcclxuICBNRUVUSU5HOiB7XHJcbiAgICBBTExPV19JTlZJVEU6IGJvb2xlYW5cclxuICAgIEhJREVfR1VFU1RTOiBib29sZWFuXHJcbiAgICBIT1NUX05BTUU6IHN0cmluZ1xyXG4gICAgTEFOR1VBR0VfSUQ6IExvd2VyY2FzZTxDb3VudHJ5Q29kZT5cclxuICAgIE1BSUxfRlJPTTogc3RyaW5nXHJcbiAgICBNRUVUSU5HX0NSRUFUT1I6IG51bWJlclxyXG4gICAgTk9USUZZOiBib29sZWFuXHJcbiAgICBSRUlOVklURTogYm9vbGVhblxyXG4gIH0gfCBudWxsXHJcbiAgTkFNRTogc3RyaW5nXHJcbiAgUFJJVkFURV9FVkVOVDogXCJcIiAvLyBUT0RPOiDQoNCw0LfQvtCx0YDQsNGC0YzRgdGPXHJcbiAgUkVMQVRJT05TOiB7Q09NTUVOVF9YTUxfSUQ6IHN0cmluZ31cclxuICBSRU1JTkQ6IHt0eXBlOiAnbWluJywgY291bnQ6IG51bWJlcn1bXSAvLyBUT0RPOiDQoNCw0LfQvtCx0YDQsNGC0YzRgdGPXHJcbiAgU1lOQ19TVEFUVVM6IG51bGwgLy8gVE9ETzog0KDQsNC30L7QsdGA0LDRgtGM0YHRj1xyXG4gIFRaX0ZST006IFRpbWV6b25lTmFtZVxyXG4gIFRaX1RPOiBUaW1lem9uZU5hbWVcclxuICBVRl9DUk1fQ0FMX0VWRU5UOiBib29sZWFuXHJcbiAgVUZfV0VCREFWX0NBTF9FVkVOVDogYm9vbGVhblxyXG4gIGF0dGVuZGVlc0VudGl0eUxpc3Q/OiB7ZW50aXR5SWQ6IGlCWFJlc3RDYWxlbmRhclR5cGVFdmVudCwgaWQ6IG51bWJlcn1bXSB8IG51bGxcclxuICAnflVTRVJfT0ZGU0VUX0ZST00nOiBudW1iZXJcclxuICAnflVTRVJfT0ZGU0VUX1RPJzogbnVtYmVyXHJcbn1cclxuXHJcbmludGVyZmFjZSBpQlhSZXN0Q2FsZW5kYXJFdmVudEdldEFuc3dlclJ1bGVIdHRwIGV4dGVuZHMgaUJYUmVzdENhbGVuZGFyRXZlbnRHZXRBbnN3ZXJSdWxlQmFzZSB7XHJcbiAgVU5USUw6IHN0cmluZ1xyXG4gICd+VU5USUwnOiBzdHJpbmdcclxufVxyXG5cclxuaW50ZXJmYWNlIGlCWFJlc3RDYWxlbmRhckV2ZW50R2V0QW5zd2VyUnVsZSBleHRlbmRzIGlCWFJlc3RDYWxlbmRhckV2ZW50R2V0QW5zd2VyUnVsZUJhc2Uge1xyXG4gIFVOVElMOiBEYXRlXHJcbiAgJ35VTlRJTCc6IERhdGVcclxufVxyXG5cclxuaW50ZXJmYWNlIGlCWFJlc3RDYWxlbmRhckV2ZW50R2V0QW5zd2VyUnVsZUJhc2Uge1xyXG4gIEZSPzogJ0ZSJ1xyXG4gIE1PPzogJ01PJ1xyXG4gIFdFPzogJ1dFJ1xyXG4gIEZSRVE6ICdXRUVLTFknXHJcbiAgSU5URVJWQUw6IG51bWJlclxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIGlCWFJlc3RDYWxlbmRhckV2ZW50R2V0UGFyYW0ge1xyXG4gIHR5cGU6IGlCWFJlc3RDYWxlbmRhclR5cGVFdmVudFxyXG4gIG93bmVySWQ/OiBudW1iZXIsXHJcbiAgZnJvbT86IERhdGVcclxuICB0bz86IERhdGVcclxuICBzZWN0aW9uPzogYW55IC8vIFRPRE86INGA0LDQt9C+0LHRgNCw0YLRjNGB0Y9cclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBpQlhSZXN0Q2FsZW5kYXJFdmVudEdldEJ5SWRQYXJhbSB7XHJcbiAgaWQ6IG51bWJlclxyXG59Il19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYngtcmVzdC9zcmMvdHlwaWZpY2F0aW9uL3Jlc3QvY2FsZW5kYXIvZXZlbnQvZ2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3VudHJ5Q29kZSwgVGltZXpvbmVOYW1lIH0gZnJvbSAnY291bnRyaWVzLWFuZC10aW1lem9uZXMnXHJcbmltcG9ydCB7IGlCWFJlc3RDYWxlbmRhclR5cGVFdmVudCB9IGZyb20gJy4uL2Jhc2UvdHlwZSdcclxuaW1wb3J0IHsgaUJYUmVzdFllc05vIH0gZnJvbSAnLi4vLi4vYmFzZS95ZXMtbm8nXHJcblxyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgaUJYUmVzdENhbGVuZGFyRXZlbnRHZXRBbnN3ZXIgZXh0ZW5kcyBpQlhSZXN0Q2FsZW5kYXJFdmVudEdldEFuc3dlckJhc2V7XHJcbiAgQVRURU5ERUVfTElTVDoge2lkOiBudW1iZXIsIGVudHJ5SWQ6IG51bWJlciwgc3RhdHVzOiAnWScgfCAnTicgfCAnSCd9W11cclxuICBDUkVBVEVEX0JZOiBzdHJpbmdcclxuICBEQVRFX0NSRUFURTogRGF0ZVxyXG4gIERBVEVfRlJPTTogRGF0ZVxyXG4gIERBVEVfRlJPTV9UU19VVEM6IG51bWJlclxyXG4gIERBVEVfVE86IERhdGVcclxuICBEQVRFX1RPX1RTX1VUQzogbnVtYmVyXHJcbiAgREVMRVRFRDogYm9vbGVhblxyXG4gIERUX0xFTkdUSDogbnVtYmVyXHJcbiAgRFRfU0tJUF9USU1FOiBib29sZWFuXHJcbiAgTUVFVElOR19TVEFUVVM6IGJvb2xlYW5cclxuICBFWERBVEU6IERhdGVbXSAvLyDRgtGD0YIg0L/RgNC10L7QsdGA0LDQt9C+0LLQsNC90LjQtSDQuNC3INGB0YLRgNC+0LrQuCDQs9C00LUg0YfQtdGA0LXQtyBcIjtcIiDQuNC00LXRgiDQv9C10YDQtdGH0LjRgdC70LXQvdC40LUg0LTQsNGCXHJcbiAgSUQ6IG51bWJlclxyXG4gIE1FRVRJTkdfSE9TVDogbnVtYmVyXHJcbiAgT1JJR0lOQUxfREFURV9GUk9NOiBEYXRlIHwgbnVsbFxyXG4gIE9XTkVSX0lEOiBudW1iZXJcclxuICBQQVJFTlRfSUQ6IG51bWJlclxyXG4gIFJFQ1VSUkVOQ0VfSUQ6IG51bWJlclxyXG4gIFNFQ1RJT05fSUQ6IG51bWJlclxyXG4gIFNFQ1RfSUQ6IG51bWJlclxyXG4gIFRJTUVTVEFNUF9YOiBEYXRlXHJcbiAgVFpfT0ZGU0VUX0ZST006IG51bWJlclxyXG4gIFRaX09GRlNFVF9UTzogbnVtYmVyXHJcbiAgVkVSU0lPTjogbnVtYmVyXHJcbiAgUlJVTEU6IG51bGwgfCBpQlhSZXN0Q2FsZW5kYXJFdmVudEdldEFuc3dlclJ1bGVcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBpQlhSZXN0Q2FsZW5kYXJFdmVudEdldEFuc3dlckh0dHAgZXh0ZW5kcyBpQlhSZXN0Q2FsZW5kYXJFdmVudEdldEFuc3dlckJhc2Uge1xyXG4gIEFUVEVOREVFX0xJU1Q/OiB7aWQ6IG51bWJlciwgZW50cnlJZDogc3RyaW5nLCBzdGF0dXM6ICdZJyB8ICdOJyB8ICdIJ31bXVxyXG4gIENSRUFURURfQlk6IHN0cmluZ1xyXG4gIERBVEVfQ1JFQVRFOiBzdHJpbmdcclxuICBEQVRFX0ZST006IHN0cmluZ1xyXG4gIERBVEVfRlJPTV9UU19VVEM6IHN0cmluZ1xyXG4gIERBVEVfVE86IHN0cmluZ1xyXG4gIERBVEVfVE9fVFNfVVRDOiBzdHJpbmdcclxuICBERUxFVEVEOiBpQlhSZXN0WWVzTm9cclxuICBEVF9MRU5HVEg6IHN0cmluZ1xyXG4gIERUX1NLSVBfVElNRTogaUJYUmVzdFllc05vXHJcbiAgTUVFVElOR19TVEFUVVM6IGlCWFJlc3RZZXNOb1xyXG4gIEVYREFURTogc3RyaW5nXHJcbiAgSUQ6IHN0cmluZ1xyXG4gIE1FRVRJTkdfSE9TVDogc3RyaW5nXHJcbiAgT1JJR0lOQUxfREFURV9GUk9NOiBzdHJpbmcgfCBudWxsXHJcbiAgT1dORVJfSUQ6IHN0cmluZ1xyXG4gIFBBUkVOVF9JRDogc3RyaW5nXHJcbiAgUkVDVVJSRU5DRV9JRDogc3RyaW5nXHJcbiAgUlJVTEU6IHN0cmluZyB8IGlCWFJlc3RDYWxlbmRhckV2ZW50R2V0QW5zd2VyUnVsZUh0dHBcclxuICBTRUNUSU9OX0lEOiBzdHJpbmdcclxuICBTRUNUX0lEOiBzdHJpbmdcclxuICBUSU1FU1RBTVBfWDogc3RyaW5nXHJcbiAgVFpfT0ZGU0VUX0ZST006IHN0cmluZ1xyXG4gIFRaX09GRlNFVF9UTzogc3RyaW5nXHJcbiAgVkVSU0lPTjogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgaUJYUmVzdENhbGVuZGFyRXZlbnRHZXRBbnN3ZXJCYXNlIHtcclxuICBBQ0NFU1NJQklMSVRZOiAnYnVzeScgLy8gVE9ETzog0KDQsNC30L7QsdGA0LDRgtGM0YHRj1xyXG4gIEFUVEVOREVFU19DT0RFUzogc3RyaW5nW10gLy8gVE9ETzog0YLRg9GCINGA0LDQt9C+0LHRgNCw0YLRjNGB0Y8g0LrQvtGA0YDQtdC60YLQvdC+INC70Lgg0LHRg9C00LXRgiDQv9GA0LXQvtCx0YDQsNC30L7QstGL0LLQsNGC0Ywg0LIg0YfQuNGB0LvQviDRgtCw0Log0LrQsNC6INGE0L7RgNC80LDRgiDQstGL0LHRgNCw0L0g0LrQsNC6IFUxMDkxINCz0LTQtSB1IC0gdXNlciAxMDkxIC0gaWRcclxuICBDQUxfREFWX0xBQkVMOiBudWxsXHJcbiAgQ0FMX1RZUEU6IGlCWFJlc3RDYWxlbmRhclR5cGVFdmVudFxyXG4gIENPTE9SOiBzdHJpbmcgLy8g0LrQvtC0INGE0L7RgNC80LDRgtCwICM2ODVnZGYg0LLQvtC30LzQvtC20L3QviDQvNC+0LbQvdC+INC30LDRgtCw0LnQv9C40YLRjCwg0L3QviDRgdC10LnRh9Cw0YEg0Y3RgtC+INCx0YPQtNC10YIg0YLRg9C80LDRhyAo0YHQtdC50YfQsNGBINC90LXRgiDRgtCw0LrQuNGFINC30LDQtNCw0YcpXHJcbiAgREFWX0VYQ0hfTEFCRUw6IG51bGwgLy8gVE9ETzog0KDQsNC30L7QsdGA0LDRgtGM0YHRj1xyXG4gIERBVl9YTUxfSUQ6IHN0cmluZ1xyXG4gIEVWRU5UX1RZUEU6IG51bGwgLy8gVE9ETzog0KDQsNC30L7QsdGA0LDRgtGM0YHRj1xyXG4gIEdfRVZFTlRfSUQ6IG51bGwgLy8gVE9ETzog0KDQsNC30L7QsdGA0LDRgtGM0YHRj1xyXG4gIElNUE9SVEFOQ0U6ICdub3JtYWwnIC8vIFRPRE86INCg0LDQt9C+0LHRgNCw0YLRjNGB0Y9cclxuICBJU19NRUVUSU5HOiBib29sZWFuXHJcbiAgTE9DQVRJT046IHN0cmluZ1xyXG4gIFJJTkRFWD86IG51bWJlcixcclxuICBNRUVUSU5HOiB7XHJcbiAgICBBTExPV19JTlZJVEU6IGJvb2xlYW5cclxuICAgIEhJREVfR1VFU1RTOiBib29sZWFuXHJcbiAgICBIT1NUX05BTUU6IHN0cmluZ1xyXG4gICAgTEFOR1VBR0VfSUQ6IExvd2VyY2FzZTxDb3VudHJ5Q29kZT5cclxuICAgIE1BSUxfRlJPTTogc3RyaW5nXHJcbiAgICBNRUVUSU5HX0NSRUFUT1I6IG51bWJlclxyXG4gICAgTk9USUZZOiBib29sZWFuXHJcbiAgICBSRUlOVklURTogYm9vbGVhblxyXG4gIH0gfCBudWxsXHJcbiAgTkFNRTogc3RyaW5nXHJcbiAgUFJJVkFURV9FVkVOVDogXCJcIiAvLyBUT0RPOiDQoNCw0LfQvtCx0YDQsNGC0YzRgdGPXHJcbiAgUkVMQVRJT05TOiB7Q09NTUVOVF9YTUxfSUQ6IHN0cmluZ31cclxuICBSRU1JTkQ6IHt0eXBlOiAnbWluJywgY291bnQ6IG51bWJlcn1bXSAvLyBUT0RPOiDQoNCw0LfQvtCx0YDQsNGC0YzRgdGPXHJcbiAgU1lOQ19TVEFUVVM6IG51bGwgLy8gVE9ETzog0KDQsNC30L7QsdGA0LDRgtGM0YHRj1xyXG4gIFRaX0ZST006IFRpbWV6b25lTmFtZVxyXG4gIFRaX1RPOiBUaW1lem9uZU5hbWVcclxuICBVRl9DUk1fQ0FMX0VWRU5UOiBib29sZWFuXHJcbiAgVUZfV0VCREFWX0NBTF9FVkVOVDogYm9vbGVhblxyXG4gIGF0dGVuZGVlc0VudGl0eUxpc3Q/OiB7ZW50aXR5SWQ6IGlCWFJlc3RDYWxlbmRhclR5cGVFdmVudCwgaWQ6IG51bWJlcn1bXSB8IG51bGxcclxuICAnflVTRVJfT0ZGU0VUX0ZST00nOiBudW1iZXJcclxuICAnflVTRVJfT0ZGU0VUX1RPJzogbnVtYmVyXHJcbn1cclxuXHJcbmludGVyZmFjZSBpQlhSZXN0Q2FsZW5kYXJFdmVudEdldEFuc3dlclJ1bGVIdHRwIGV4dGVuZHMgaUJYUmVzdENhbGVuZGFyRXZlbnRHZXRBbnN3ZXJSdWxlQmFzZSB7XHJcbiAgVU5USUw6IHN0cmluZ1xyXG4gICd+VU5USUwnOiBzdHJpbmdcclxufVxyXG5cclxuaW50ZXJmYWNlIGlCWFJlc3RDYWxlbmRhckV2ZW50R2V0QW5zd2VyUnVsZSBleHRlbmRzIGlCWFJlc3RDYWxlbmRhckV2ZW50R2V0QW5zd2VyUnVsZUJhc2Uge1xyXG4gIC8vIEJpdHJpeCDQv9GA0LjRgdGL0LvQsNC10YIgUlJVTEUg0Lgg0LHQtdC3IFVOVElMIOKAlCDQvdCw0L/RgNC40LzQtdGALCDQv9C+0LLRgtC+0YDQtdC90LjQtSDQvtCz0YDQsNC90LjRh9C10L3QviDRh9C10YDQtdC3IENPVU5ULCDQsCDQvdC1INC00LDRgtC+0LlcclxuICBVTlRJTDogRGF0ZSB8IG51bGxcclxuICAnflVOVElMJzogRGF0ZSB8IG51bGxcclxufVxyXG5cclxuaW50ZXJmYWNlIGlCWFJlc3RDYWxlbmRhckV2ZW50R2V0QW5zd2VyUnVsZUJhc2Uge1xyXG4gIEZSPzogJ0ZSJ1xyXG4gIE1PPzogJ01PJ1xyXG4gIFdFPzogJ1dFJ1xyXG4gIEZSRVE6ICdXRUVLTFknXHJcbiAgSU5URVJWQUw6IG51bWJlclxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIGlCWFJlc3RDYWxlbmRhckV2ZW50R2V0UGFyYW0ge1xyXG4gIHR5cGU6IGlCWFJlc3RDYWxlbmRhclR5cGVFdmVudFxyXG4gIG93bmVySWQ/OiBudW1iZXIsXHJcbiAgZnJvbT86IERhdGVcclxuICB0bz86IERhdGVcclxuICBzZWN0aW9uPzogYW55IC8vIFRPRE86INGA0LDQt9C+0LHRgNCw0YLRjNGB0Y9cclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBpQlhSZXN0Q2FsZW5kYXJFdmVudEdldEJ5SWRQYXJhbSB7XHJcbiAgaWQ6IG51bWJlclxyXG59Il19