dts-backoffice-util 2.8.2 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/bundles/dts-backoffice-util.umd.js +419 -2359
  2. package/bundles/dts-backoffice-util.umd.js.map +1 -1
  3. package/esm2015/dts-backoffice-util.js +2 -6
  4. package/esm2015/lib/components/totvs-schedule-execution/totvs-schedule-execution.component.js +15 -131
  5. package/esm2015/lib/components/totvs-schedule-execution/totvs-schedule-execution.model.js +1 -125
  6. package/esm2015/lib/components/totvs-schedule-execution/totvs-schedule-execution.service.js +19 -172
  7. package/esm2015/lib/dts-backoffice-util.module.js +2 -8
  8. package/esm2015/lib/interfaces/filter-range.interface.js +2 -47
  9. package/esm2015/lib/interfaces/totvs-response.interface.js +2 -16
  10. package/esm2015/lib/model/session-info.model.js +1 -116
  11. package/esm2015/lib/pipes/dts-date-format.pipe.js +2 -11
  12. package/esm2015/lib/services/breadcrumb-control.service.js +9 -44
  13. package/esm2015/lib/services/cache-params.service.js +10 -24
  14. package/esm2015/lib/services/menu-datasul.service.js +9 -18
  15. package/esm2015/lib/services/profile.service.js +17 -78
  16. package/esm2015/lib/services/report.service.js +20 -81
  17. package/esm2015/lib/services/session-info.service.js +12 -27
  18. package/esm2015/lib/services/translate.service.js +2 -15
  19. package/esm2015/lib/utils/date.util.js +1 -39
  20. package/esm2015/lib/utils/disclaimer.util.js +33 -317
  21. package/esm2015/lib/utils/field-validation.util.js +1 -96
  22. package/esm2015/lib/utils/file.util.js +7 -102
  23. package/esm2015/lib/utils/filter-range.util.js +1 -20
  24. package/esm2015/lib/utils/generic-functions.utils.js +12 -137
  25. package/esm2015/public-api.js +22 -25
  26. package/fesm2015/dts-backoffice-util.js +176 -1501
  27. package/fesm2015/dts-backoffice-util.js.map +1 -1
  28. package/package.json +9 -8
  29. package/CHANGELOG.md +0 -159
  30. package/bundles/dts-backoffice-util.umd.min.js +0 -2
  31. package/bundles/dts-backoffice-util.umd.min.js.map +0 -1
  32. package/esm5/dts-backoffice-util.js +0 -9
  33. package/esm5/lib/components/totvs-schedule-execution/totvs-schedule-execution.component.js +0 -448
  34. package/esm5/lib/components/totvs-schedule-execution/totvs-schedule-execution.model.js +0 -143
  35. package/esm5/lib/components/totvs-schedule-execution/totvs-schedule-execution.service.js +0 -434
  36. package/esm5/lib/dts-backoffice-util.module.js +0 -53
  37. package/esm5/lib/interfaces/filter-range.interface.js +0 -47
  38. package/esm5/lib/interfaces/totvs-response.interface.js +0 -16
  39. package/esm5/lib/model/session-info.model.js +0 -239
  40. package/esm5/lib/pipes/dts-date-format.pipe.js +0 -36
  41. package/esm5/lib/services/breadcrumb-control.service.js +0 -157
  42. package/esm5/lib/services/cache-params.service.js +0 -61
  43. package/esm5/lib/services/menu-datasul.service.js +0 -92
  44. package/esm5/lib/services/profile.service.js +0 -146
  45. package/esm5/lib/services/report.service.js +0 -137
  46. package/esm5/lib/services/session-info.service.js +0 -64
  47. package/esm5/lib/services/translate.service.js +0 -47
  48. package/esm5/lib/utils/date.util.js +0 -135
  49. package/esm5/lib/utils/disclaimer.util.js +0 -930
  50. package/esm5/lib/utils/field-validation.util.js +0 -358
  51. package/esm5/lib/utils/file.util.js +0 -262
  52. package/esm5/lib/utils/filter-range.util.js +0 -69
  53. package/esm5/lib/utils/generic-functions.utils.js +0 -358
  54. package/esm5/public-api.js +0 -37
  55. package/fesm5/dts-backoffice-util.js +0 -3944
  56. package/fesm5/dts-backoffice-util.js.map +0 -1
@@ -1,9 +1,5 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
1
  /**
6
2
  * Generated bundle index. Do not edit.
7
3
  */
8
- export { UserLoginService, ProfileService, ReportFormats, ReportService, BreadcrumbControlService, MenuDatasulService, CacheParamsService, TranslateService, DateUtil, DisclaimerUtil, FieldValidationUtil, FilterRangeUtil, GenericFunctionsUtils, FileUtil, DownloadDataParams, TotvsScheduleExecutionComponent, ScheduleParameters, ExecutionStatus, ExecutionParameters, TotvsScheduleExecutionService, DtsBackofficeUtilsModule, DtsDateFormatPipe } from './public-api';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHRzLWJhY2tvZmZpY2UtdXRpbC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2R0cy1iYWNrb2ZmaWNlLXV0aWwvIiwic291cmNlcyI6WyJkdHMtYmFja29mZmljZS11dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSwrYkFBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHRzLWJhY2tvZmZpY2UtdXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2R0cy1iYWNrb2ZmaWNlLXV0aWwvc3JjL2R0cy1iYWNrb2ZmaWNlLXV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -1,18 +1,9 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
1
  import { Component, Input, ViewChild, Output, EventEmitter } from '@angular/core';
6
2
  import { PoI18nService, PoNotificationService } from '@po-ui/ng-components';
7
3
  import { ScheduleParameters } from './totvs-schedule-execution.model';
8
4
  import { NgForm } from '@angular/forms';
9
5
  import { TotvsScheduleExecutionService } from './totvs-schedule-execution.service';
10
6
  export class TotvsScheduleExecutionComponent {
11
- /**
12
- * @param {?} poI18nService
13
- * @param {?} rpwService
14
- * @param {?} poNotification
15
- */
16
7
  constructor(poI18nService, rpwService, poNotification) {
17
8
  this.poI18nService = poI18nService;
18
9
  this.rpwService = rpwService;
@@ -25,9 +16,6 @@ export class TotvsScheduleExecutionComponent {
25
16
  this.jsonObject = {};
26
17
  this.literals = {};
27
18
  }
28
- /**
29
- * @return {?}
30
- */
31
19
  ngOnInit() {
32
20
  /* VERIFICAR COMO FICARÁ A TRADUÇÃO
33
21
  forkJoin(
@@ -39,9 +27,6 @@ export class TotvsScheduleExecutionComponent {
39
27
  });*/
40
28
  this.setupComponents();
41
29
  }
42
- /**
43
- * @return {?}
44
- */
45
30
  setupComponents() {
46
31
  this.executionTypeOptions = [
47
32
  { label: 'Executar Hoje', value: 1 },
@@ -73,46 +58,25 @@ export class TotvsScheduleExecutionComponent {
73
58
  this.model.repeatType = 1;
74
59
  this.model.repeatExecution = false;
75
60
  }
76
- /**
77
- * @param {?} schParam
78
- * @return {?}
79
- */
80
61
  setScheduleParameters(schParam) {
81
62
  if (!schParam) {
82
63
  return;
83
64
  }
84
65
  this.model = schParam;
85
66
  }
86
- /**
87
- * @param {?} value
88
- * @return {?}
89
- */
90
67
  fieldRpwServiceFormat(value) {
91
68
  return `${value.code} - ${value.name}`;
92
69
  }
93
- /**
94
- * @return {?}
95
- */
96
70
  isExecutionSchedule() {
97
71
  return (this.model.executionType === 2);
98
72
  }
99
- /**
100
- * @return {?}
101
- */
102
73
  isRepeatExecution() {
103
74
  return this.model.repeatExecution;
104
75
  }
105
- /**
106
- * @return {?}
107
- */
108
76
  isFrenquency() {
109
77
  return (this.model.frequency === 'yes');
110
78
  }
111
- /**
112
- * @return {?}
113
- */
114
79
  changeRepeatExecution() {
115
- /** @type {?} */
116
80
  const date = new Date();
117
81
  if (!this.model.execAppointHourInit) {
118
82
  this.model.execAppointHourInit = `${this.addZero(date.getHours())}:${this.addZero(date.getMinutes())}`;
@@ -126,49 +90,26 @@ export class TotvsScheduleExecutionComponent {
126
90
  this.model.frequencyType = 'hour';
127
91
  this.model.frequencyValue = 0;
128
92
  }
129
- /**
130
- * @return {?}
131
- */
132
93
  changeExecutionType() {
133
- /** @type {?} */
134
94
  const date = new Date();
135
95
  this.model.execAppointDate = date;
136
96
  this.model.execAppointHour = `${this.addZero(date.getHours())}:${this.addZero(date.getMinutes())}`;
137
97
  }
138
- /**
139
- * @return {?}
140
- */
141
98
  changeTypeFrequency() {
142
99
  }
143
- /**
144
- * @param {?} codTab
145
- * @return {?}
146
- */
147
100
  getActiveTab(codTab) {
148
101
  return (this.model.repeatType === codTab);
149
102
  }
150
- /**
151
- * @param {?} codTab
152
- * @return {?}
153
- */
154
103
  setActiveTab(codTab) {
155
104
  this.model.repeatType = codTab;
156
105
  }
157
- /**
158
- * @param {?} num
159
- * @return {?}
160
- */
161
106
  addZero(num) {
162
- /** @type {?} */
163
107
  let str = `${num}`;
164
108
  if (num < 10) {
165
109
  str = `0${num}`;
166
110
  }
167
111
  return str;
168
112
  }
169
- /**
170
- * @return {?}
171
- */
172
113
  executeSchedule() {
173
114
  if (this.disabledParams) {
174
115
  return;
@@ -182,7 +123,6 @@ export class TotvsScheduleExecutionComponent {
182
123
  this.jsonObject.recurrent = this.model.repeatExecution;
183
124
  this.jsonObject.executionParameter = {};
184
125
  if (this.model.executionType === 1) {
185
- /** @type {?} */
186
126
  const date = new Date();
187
127
  this.jsonObject.firstExecution = `${date.getFullYear()}-${(date.getMonth() + 1)}-${date.getDate()}T${this.addZero(date.getHours())}:${this.addZero(date.getMinutes())}:00.000Z`;
188
128
  }
@@ -197,12 +137,9 @@ export class TotvsScheduleExecutionComponent {
197
137
  this.jsonObject.executionParameter.parametros[4] = {};
198
138
  this.jsonObject.executionParameter.parametros[4].parametros_negocio = this.parameters;
199
139
  // Executa hoje ou agendada
200
- this.rpwService.createExecution(this.jsonObject, this.loading).subscribe((/**
201
- * @return {?}
202
- */
203
- () => {
140
+ this.rpwService.createExecution(this.jsonObject, this.loading).subscribe(() => {
204
141
  this.poNotification.success('Agendamento realizado com sucesso !');
205
- }));
142
+ });
206
143
  if (this.model.repeatExecution) {
207
144
  if (this.model.repeatType === 1) {
208
145
  this.jsonObject.daily = {
@@ -237,19 +174,11 @@ export class TotvsScheduleExecutionComponent {
237
174
  };
238
175
  }
239
176
  // Executa a diária, semanal ou mensal
240
- this.rpwService.createExecution(this.jsonObject, this.loading).subscribe((/**
241
- * @return {?}
242
- */
243
- () => {
244
- }));
177
+ this.rpwService.createExecution(this.jsonObject, this.loading).subscribe(() => {
178
+ });
245
179
  }
246
180
  this.endExecution.emit(this.model);
247
181
  }
248
- /**
249
- * @param {?} value
250
- * @param {?} type
251
- * @return {?}
252
- */
253
182
  getHourOrMinute(value, type) {
254
183
  if (type === 'h') {
255
184
  return +value.substring(0, 2);
@@ -258,11 +187,6 @@ export class TotvsScheduleExecutionComponent {
258
187
  return +value.substring(3, 6);
259
188
  }
260
189
  }
261
- /**
262
- * @param {?} hourInit
263
- * @param {?} hourFinal
264
- * @return {?}
265
- */
266
190
  compareHour(hourInit, hourFinal) {
267
191
  if (hourInit === hourFinal) {
268
192
  return false;
@@ -275,9 +199,6 @@ export class TotvsScheduleExecutionComponent {
275
199
  }
276
200
  return true;
277
201
  }
278
- /**
279
- * @return {?}
280
- */
281
202
  validate() {
282
203
  if (!this.scheduleExecutionForm.valid) {
283
204
  this.poNotification.error('Verifique as inconsistências em tela.');
@@ -318,19 +239,27 @@ export class TotvsScheduleExecutionComponent {
318
239
  return true;
319
240
  }
320
241
  }
242
+ /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
321
243
  TotvsScheduleExecutionComponent.decorators = [
322
244
  { type: Component, args: [{
323
245
  selector: 'app-totvs-schedule-execution',
324
246
  template: "<form #scheduleExecutionForm=\"ngForm\">\r\n <div class=\"po-row po-sm-12 po-md-12 po-lg-12 po-xl-12\">\r\n <po-radio-group \r\n class=\"po-sm-12 po-md-12 po-lg-12 po-xl-12\"\r\n name=\"executionType\"\r\n p-label=\"Data de Execu\u00E7\u00E3o\"\r\n [p-disabled]=\"disabledParams\"\r\n [(ngModel)]=\"model.executionType\"\r\n [p-options]=\"executionTypeOptions\"\r\n (p-change)=\"changeExecutionType()\">\r\n </po-radio-group>\r\n\r\n <po-datepicker *ngIf=isExecutionSchedule()\r\n class=\"po-sm-6 po-md-6 po-lg-6 po-xl-6\"\r\n name=\"model.execAppointDate\"\r\n p-label=\"Agendar para\"\r\n [p-disabled]=\"disabledParams\"\r\n [(ngModel)]=\"model.execAppointDate\">\r\n </po-datepicker>\r\n\r\n <po-input *ngIf=isExecutionSchedule()\r\n class=\"po-sm-6 po-md-6 po-lg-6 po-xl-6\"\r\n name=\"execAppointHour\"\r\n p-label=\"Hora\"\r\n p-mask=\"99:99\"\r\n p-mask-format-model=\"true\"\r\n p-pattern=\"^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$\"\r\n p-error-pattern=\"Hora inv\u00E1lida\"\r\n [p-disabled]=\"disabledParams\"\r\n [(ngModel)]=\"model.execAppointHour\">\r\n </po-input>\r\n </div>\r\n\r\n <div class=\"po-row po-sm-12 po-md-12 po-lg-12 po-xl-12\">\r\n <po-lookup\r\n class=\"po-sm-12 po-md-12 po-lg-12 po-xl-12\"\r\n name=\"executionServer\"\r\n p-label=\"Servidor de Execu\u00E7\u00E3o\"\r\n p-placeholder=\"Servidor de Execu\u00E7\u00E3o\"\r\n [p-columns]=\"zoomRpwServiceColumns\"\r\n [p-field-format]=\"fieldRpwServiceFormat\"\r\n [p-filter-service]=\"rpwService\"\r\n p-field-label=\"name\"\r\n p-field-value=\"code\"\r\n [p-disabled]=\"disabledParams\"\r\n [(ngModel)]=\"model.executionServer\">\r\n </po-lookup>\r\n </div>\r\n\r\n <div class=\"po-row po-sm-12 po-md-12 po-lg-12 po-xl-12\">\r\n <po-switch\r\n class=\"po-sm-6 po-md-6 po-lg-6 po-xl-6\"\r\n name=\"repeatExecution\"\r\n p-label=\"Repetir ocorr\u00EAncia ?\"\r\n p-label-off=\"N\u00E3o\"\r\n p-label-on=\"Sim\"\r\n [(ngModel)]=\"model.repeatExecution\"\r\n [p-disabled]=\"disabledParams\"\r\n (click)=\"changeRepeatExecution()\">\r\n </po-switch>\r\n </div>\r\n\r\n <div class=\"po-row\" *ngIf=\"isRepeatExecution()\">\r\n \r\n <po-tabs>\r\n\r\n <po-tab \r\n p-label=\"Di\u00E1ria\" \r\n [p-active]=\"getActiveTab(1)\" \r\n (p-click)=\"setActiveTab(1)\">\r\n\r\n <div class=\"po-sm-6 po-md-6 po-lg-6 po-xl-6\">\r\n <po-radio-group \r\n class=\"po-sm-12 po-md-12 po-lg-12 po-xl-12\"\r\n name=\"frequencyDaily\"\r\n p-label=\"Frequ\u00EAncia\"\r\n p-columns=1\r\n [(ngModel)]=\"model.frequency\"\r\n [p-disabled]=\"disabledParams\"\r\n [p-options]=\"frequencyOptions\"\r\n (p-change)=\"changeTypeFrequency()\">\r\n </po-radio-group>\r\n </div>\r\n \r\n <div class=\"po-sm-6 po-md-6 po-lg-6 po-xl-6\"> \r\n <po-input\r\n class=\"po-sm-6 po-md-6 po-lg-6 po-xl-6\"\r\n name=\"execAppointHourInitDaily\"\r\n p-label=\"Hora In\u00EDcio\"\r\n p-mask=\"99:99\"\r\n p-mask-format-model=\"true\"\r\n p-pattern=\"^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$\"\r\n p-error-pattern=\"Hora inv\u00E1lida\"\r\n [p-disabled]=\"disabledParams\"\r\n [(ngModel)]=\"model.execAppointHourInit\">\r\n </po-input>\r\n \r\n <po-input *ngIf=\"isFrenquency()\"\r\n class=\"po-sm-6 po-md-6 po-lg-6 po-xl-6\"\r\n name=\"execAppointHourFinalDaily\"\r\n p-label=\"Hora Fim\"\r\n p-mask=\"99:99\"\r\n p-mask-format-model=\"true\"\r\n p-pattern=\"^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$\"\r\n p-error-pattern=\"Hora inv\u00E1lida\"\r\n [p-disabled]=\"disabledParams\"\r\n [(ngModel)]=\"model.execAppointHourFinal\">\r\n </po-input>\r\n \r\n <po-number *ngIf=\"isFrenquency()\"\r\n class=\"po-sm-5 po-md-5 po-lg-5 po-xl-5\"\r\n name=\"frequencyValueDaily\"\r\n p-label=\"A cada\"\r\n p-minlength=\"1\"\r\n p-maxlength=\"3\"\r\n p-min=\"0\"\r\n p-max=\"999\"\r\n [p-disabled]=\"disabledParams\"\r\n [(ngModel)]=\"model.frequencyValue\">\r\n </po-number>\r\n \r\n <po-select *ngIf=\"isFrenquency()\"\r\n class=\"po-mt-3 po-sm-7 po-md-7 po-lg-7 po-xl-7\"\r\n name=\"frequencyTypeDaily\"\r\n p-label=\"\"\r\n [p-options]=\"frequencyTypeOptions\"\r\n [p-disabled]=\"disabledParams\"\r\n [(ngModel)]=\"model.frequencyType\">\r\n </po-select>\r\n </div>\r\n </po-tab>\r\n\r\n <po-tab \r\n p-label=\"Semanal\"\r\n [p-active]=\"getActiveTab(2)\"\r\n (p-click)=\"setActiveTab(2)\">\r\n\r\n <div class=\"po-row po-sm-12 po-md-12 po-lg-12 po-xl-12\">\r\n <po-multiselect\r\n class=\"po-sm-12 po-md-12 po-lg-12 po-xl-12\"\r\n name=\"selectWeeklys\"\r\n p-label=\"Dias da Semana\"\r\n p-placeholder=\"Escolha os dias da semana\"\r\n [p-disabled]=\"disabledParams\"\r\n [(ngModel)]=\"model.selectWeeklys\"\r\n [p-options]=\"weeklyOptions\">\r\n </po-multiselect>\r\n </div>\r\n\r\n <div class=\"po-sm-6 po-md-6 po-lg-6 po-xl-6\">\r\n <po-radio-group \r\n class=\"po-sm-12 po-md-12 po-lg-12 po-xl-12\"\r\n name=\"frequencyWeekly\"\r\n p-label=\"Frequ\u00EAncia\"\r\n p-columns=1\r\n [(ngModel)]=\"model.frequency\"\r\n [p-disabled]=\"disabledParams\"\r\n [p-options]=\"frequencyOptions\"\r\n (p-change)=\"changeTypeFrequency()\">\r\n </po-radio-group>\r\n </div>\r\n\r\n <div class=\"po-sm-6 po-md-6 po-lg-6 po-xl-6\">\r\n <po-input\r\n class=\"po-sm-6 po-md-6 po-lg-6 po-xl-6\"\r\n name=\"execAppointHourInitWeekly\"\r\n p-label=\"Hora In\u00EDcio\"\r\n p-mask=\"99:99\"\r\n p-mask-format-model=\"true\"\r\n p-pattern=\"^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$\"\r\n p-error-pattern=\"Hora inv\u00E1lida\"\r\n [p-disabled]=\"disabledParams\"\r\n [(ngModel)]=\"model.execAppointHourInit\">\r\n </po-input>\r\n\r\n <po-input *ngIf=\"isFrenquency()\"\r\n class=\"po-sm-6 po-md-6 po-lg-6 po-xl-6\"\r\n name=\"execAppointHourFinalWeekly\"\r\n p-label=\"Hora Fim\"\r\n p-mask=\"99:99\"\r\n p-mask-format-model=\"true\"\r\n p-pattern=\"^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$\"\r\n p-error-pattern=\"Hora inv\u00E1lida\"\r\n [p-disabled]=\"disabledParams\"\r\n [(ngModel)]=\"model.execAppointHourFinal\">\r\n </po-input>\r\n\r\n <po-number *ngIf=\"isFrenquency()\"\r\n class=\"po-sm-5 po-md-5 po-lg-5 po-xl-5\"\r\n name=\"frequencyValueWeekly\"\r\n p-label=\"A cada\"\r\n p-minlength=\"1\"\r\n p-maxlength=\"3\"\r\n p-min=\"0\"\r\n p-max=\"999\"\r\n [p-disabled]=\"disabledParams\"\r\n [(ngModel)]=\"model.frequencyValue\">\r\n </po-number>\r\n\r\n <po-select *ngIf=\"isFrenquency()\"\r\n class=\"po-mt-3 po-sm-7 po-md-7 po-lg-7 po-xl-7\"\r\n name=\"frequencyTypeWeekly\"\r\n p-label=\"\"\r\n [p-options]=\"frequencyTypeOptions\"\r\n [p-disabled]=\"disabledParams\"\r\n [(ngModel)]=\"model.frequencyType\">\r\n </po-select>\r\n </div>\r\n </po-tab>\r\n\r\n <po-tab \r\n p-label=\"Mensal\" \r\n [p-active]=\"getActiveTab(3)\" \r\n (p-click)=\"setActiveTab(3)\">\r\n\r\n <div class=\"po-row po-sm-12 po-md-12 po-lg-12 po-xl-12\">\r\n <po-number\r\n class=\"po-sm-3 po-md-3 po-lg-3 po-xl-3\"\r\n name=\"dayOfMonth\"\r\n p-label=\"Dia do m\u00EAs\"\r\n p-minlength=\"1\"\r\n p-maxlength=\"2\"\r\n p-min=\"0\"\r\n p-max=\"31\"\r\n [p-disabled]=\"disabledParams\"\r\n [(ngModel)]=\"model.dayOfMonth\">\r\n </po-number>\r\n </div>\r\n\r\n <div class=\"po-row po-sm-6 po-md-6 po-lg-6 po-xl-6\">\r\n <po-radio-group \r\n class=\"po-sm-12 po-md-12 po-lg-12 po-xl-12\"\r\n name=\"frequencyMonthly\"\r\n p-label=\"Frequ\u00EAncia\"\r\n p-columns=1\r\n [(ngModel)]=\"model.frequency\"\r\n [p-disabled]=\"disabledParams\"\r\n [p-options]=\"frequencyOptions\"\r\n (p-change)=\"changeTypeFrequency()\">\r\n </po-radio-group>\r\n </div>\r\n\r\n <div class=\"po-row po-sm-6 po-md-6 po-lg-6 po-xl-6\">\r\n <po-input\r\n class=\"po-sm-6 po-md-6 po-lg-6 po-xl-6\"\r\n name=\"execAppointHourInitMonthly\"\r\n p-label=\"Hora In\u00EDcio\"\r\n p-mask=\"99:99\"\r\n p-mask-format-model=\"true\"\r\n p-pattern=\"^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$\"\r\n p-error-pattern=\"Hora inv\u00E1lida\"\r\n [p-disabled]=\"disabledParams\"\r\n [(ngModel)]=\"model.execAppointHourInit\">\r\n </po-input>\r\n\r\n <po-input *ngIf=\"isFrenquency()\"\r\n class=\"po-sm-6 po-md-6 po-lg-6 po-xl-6\"\r\n name=\"execAppointHourFinalWeekly\"\r\n p-label=\"Hora Fim\"\r\n p-mask=\"99:99\"\r\n p-mask-format-model=\"true\"\r\n p-pattern=\"^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$\"\r\n p-error-pattern=\"Hora inv\u00E1lida\"\r\n [p-disabled]=\"disabledParams\"\r\n [(ngModel)]=\"model.execAppointHourFinal\">\r\n </po-input>\r\n\r\n <po-number *ngIf=\"isFrenquency()\"\r\n class=\"po-sm-5 po-md-5 po-lg-5 po-xl-5\"\r\n name=\"frequencyValueWeekly\"\r\n p-label=\"A cada\"\r\n p-minlength=\"1\"\r\n p-maxlength=\"3\"\r\n p-min=\"0\"\r\n p-max=\"999\"\r\n [p-disabled]=\"disabledParams\"\r\n [(ngModel)]=\"model.frequencyValue\">\r\n </po-number>\r\n\r\n <po-select *ngIf=\"isFrenquency()\"\r\n class=\"po-mt-3 po-sm-7 po-md-7 po-lg-7 po-xl-7\"\r\n name=\"frequencyTypeWeekly\"\r\n p-label=\"\"\r\n [p-options]=\"frequencyTypeOptions\"\r\n [p-disabled]=\"disabledParams\"\r\n [(ngModel)]=\"model.frequencyType\">\r\n </po-select>\r\n </div>\r\n </po-tab>\r\n </po-tabs>\r\n </div>\r\n\r\n <div class=\"po-sm-12 po-md-12 po-lg-12 po-xl-12\" style=\"padding-top: 15px;\">\r\n <po-button\r\n style=\"float: right;\"\r\n p-label=\"Gerar Agendamento RPW\"\r\n [p-disabled]=\"disabledParams\"\r\n (click)=\"executeSchedule()\">\r\n </po-button>\r\n </div>\r\n</form>\r\n",
325
247
  styles: [""]
326
- }] }
248
+ },] }
327
249
  ];
328
- /** @nocollapse */
250
+ /**
251
+ * @type {function(): !Array<(null|{
252
+ * type: ?,
253
+ * decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
254
+ * })>}
255
+ * @nocollapse
256
+ */
329
257
  TotvsScheduleExecutionComponent.ctorParameters = () => [
330
258
  { type: PoI18nService },
331
259
  { type: TotvsScheduleExecutionService },
332
260
  { type: PoNotificationService }
333
261
  ];
262
+ /** @type {!Object<string, !Array<{type: !Function, args: (undefined|!Array<?>)}>>} */
334
263
  TotvsScheduleExecutionComponent.propDecorators = {
335
264
  scheduleExecutionForm: [{ type: ViewChild, args: ['scheduleExecutionForm', { static: true },] }],
336
265
  programName: [{ type: Input }],
@@ -342,49 +271,4 @@ TotvsScheduleExecutionComponent.propDecorators = {
342
271
  loading: [{ type: Input }],
343
272
  endExecution: [{ type: Output }]
344
273
  };
345
- if (false) {
346
- /** @type {?} */
347
- TotvsScheduleExecutionComponent.prototype.scheduleExecutionForm;
348
- /** @type {?} */
349
- TotvsScheduleExecutionComponent.prototype.programName;
350
- /** @type {?} */
351
- TotvsScheduleExecutionComponent.prototype.externalName;
352
- /** @type {?} */
353
- TotvsScheduleExecutionComponent.prototype.programEMS5;
354
- /** @type {?} */
355
- TotvsScheduleExecutionComponent.prototype.programVersion;
356
- /** @type {?} */
357
- TotvsScheduleExecutionComponent.prototype.parameters;
358
- /** @type {?} */
359
- TotvsScheduleExecutionComponent.prototype.disabledParams;
360
- /** @type {?} */
361
- TotvsScheduleExecutionComponent.prototype.loading;
362
- /** @type {?} */
363
- TotvsScheduleExecutionComponent.prototype.endExecution;
364
- /** @type {?} */
365
- TotvsScheduleExecutionComponent.prototype.executionTypeOptions;
366
- /** @type {?} */
367
- TotvsScheduleExecutionComponent.prototype.frequencyOptions;
368
- /** @type {?} */
369
- TotvsScheduleExecutionComponent.prototype.frequencyTypeOptions;
370
- /** @type {?} */
371
- TotvsScheduleExecutionComponent.prototype.weeklyOptions;
372
- /** @type {?} */
373
- TotvsScheduleExecutionComponent.prototype.zoomRpwServiceColumns;
374
- /** @type {?} */
375
- TotvsScheduleExecutionComponent.prototype.model;
376
- /**
377
- * @type {?}
378
- * @private
379
- */
380
- TotvsScheduleExecutionComponent.prototype.jsonObject;
381
- /** @type {?} */
382
- TotvsScheduleExecutionComponent.prototype.literals;
383
- /** @type {?} */
384
- TotvsScheduleExecutionComponent.prototype.poI18nService;
385
- /** @type {?} */
386
- TotvsScheduleExecutionComponent.prototype.rpwService;
387
- /** @type {?} */
388
- TotvsScheduleExecutionComponent.prototype.poNotification;
389
- }
390
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90dnMtc2NoZWR1bGUtZXhlY3V0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2R0cy1iYWNrb2ZmaWNlLXV0aWwvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy90b3R2cy1zY2hlZHVsZS1leGVjdXRpb24vdG90dnMtc2NoZWR1bGUtZXhlY3V0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFzQixhQUFhLEVBQUUscUJBQXFCLEVBQWtCLE1BQU0sc0JBQXNCLENBQUM7QUFDaEgsT0FBTyxFQUF1QixrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQzNGLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQVFuRixNQUFNLE9BQU8sK0JBQStCOzs7Ozs7SUFZeEMsWUFDVyxhQUE0QixFQUM1QixVQUF5QyxFQUN6QyxjQUFxQztRQUZyQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixlQUFVLEdBQVYsVUFBVSxDQUErQjtRQUN6QyxtQkFBYyxHQUFkLGNBQWMsQ0FBdUI7UUFWdkMsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFFcEIsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFDdkIsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNmLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQWNwQyxlQUFVLEdBQVEsRUFBRSxDQUFDO1FBRTdCLGFBQVEsR0FBUSxFQUFFLENBQUM7SUFWbkIsQ0FBQzs7OztJQVlELFFBQVE7UUFDSjs7Ozs7OztlQU9PO1FBRVAsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzNCLENBQUM7Ozs7SUFFRCxlQUFlO1FBQ1gsSUFBSSxDQUFDLG9CQUFvQixHQUFHO1lBQ3hCLEVBQUUsS0FBSyxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFO1lBQ3BDLEVBQUUsS0FBSyxFQUFFLGtCQUFrQixFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUU7U0FDMUMsQ0FBQztRQUVGLElBQUksQ0FBQyxnQkFBZ0IsR0FBRztZQUNwQixFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO1lBQ3hDLEVBQUUsS0FBSyxFQUFFLHFCQUFxQixFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUU7U0FDakQsQ0FBQztRQUVGLElBQUksQ0FBQyxvQkFBb0IsR0FBRztZQUN4QixFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRTtZQUNuQyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRTtTQUMxQyxDQUFDO1FBRUYsSUFBSSxDQUFDLGFBQWEsR0FBRztZQUNqQixFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRTtZQUNyQyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRTtZQUNyQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRTtZQUNwQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRTtZQUN2QyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRTtZQUN0QyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRTtZQUNuQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRTtTQUN6QyxDQUFDO1FBRUYsSUFBSSxDQUFDLHFCQUFxQixHQUFHO1lBQ3pCLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRTtZQUNyRSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUU7U0FDekUsQ0FBQztRQUVGLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7UUFDMUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO0lBQ3ZDLENBQUM7Ozs7O0lBRU0scUJBQXFCLENBQUMsUUFBNkI7UUFDdEQsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUFFLE9BQU87U0FBRTtRQUMxQixJQUFJLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQztJQUMxQixDQUFDOzs7OztJQUVELHFCQUFxQixDQUFDLEtBQUs7UUFDdkIsT0FBTyxHQUFHLEtBQUssQ0FBQyxJQUFJLE1BQU0sS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzNDLENBQUM7Ozs7SUFFRCxtQkFBbUI7UUFDZixPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDNUMsQ0FBQzs7OztJQUVELGlCQUFpQjtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUM7SUFDdEMsQ0FBQzs7OztJQUVELFlBQVk7UUFDUixPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEtBQUssS0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQzs7OztJQUVELHFCQUFxQjs7Y0FDWCxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUU7UUFFdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsbUJBQW1CLEVBQUU7WUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLG1CQUFtQixHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxFQUFFLENBQUM7U0FBRTtRQUNoSixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsRUFBRTtZQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsb0JBQW9CLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLEVBQUUsQ0FBQztTQUFFO1FBQ2xKLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7UUFDMUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQzVCLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQztRQUNsQyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUM7SUFDbEMsQ0FBQzs7OztJQUVELG1CQUFtQjs7Y0FDVCxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUU7UUFFdkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxFQUFFLENBQUM7SUFDdkcsQ0FBQzs7OztJQUVELG1CQUFtQjtJQUNuQixDQUFDOzs7OztJQUVELFlBQVksQ0FBQyxNQUFjO1FBQ3ZCLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsS0FBSyxNQUFNLENBQUMsQ0FBQztJQUM5QyxDQUFDOzs7OztJQUVELFlBQVksQ0FBQyxNQUFjO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQztJQUNuQyxDQUFDOzs7OztJQUVELE9BQU8sQ0FBQyxHQUFXOztZQUNYLEdBQUcsR0FBRyxHQUFHLEdBQUcsRUFBRTtRQUNsQixJQUFJLEdBQUcsR0FBRyxFQUFFLEVBQUU7WUFBRSxHQUFHLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztTQUFFO1FBQ2xDLE9BQU8sR0FBRyxDQUFDO0lBQ2YsQ0FBQzs7OztJQUVELGVBQWU7UUFDWCxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFBRSxPQUFPO1NBQUU7UUFDcEMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUFFLE9BQU87U0FBRTtRQUVqQyxJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUM7UUFDbEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUM3QyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQztRQUN2RCxJQUFJLENBQUMsVUFBVSxDQUFDLGtCQUFrQixHQUFHLEVBQUUsQ0FBQztRQUV4QyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxLQUFLLENBQUMsRUFBRTs7a0JBQzFCLElBQUksR0FBRyxJQUFJLElBQUksRUFBRTtZQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsR0FBRyxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxVQUFVLENBQUM7U0FDbkw7UUFDRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxLQUFLLENBQUMsRUFBRTtZQUNoQyxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxVQUFVLENBQUM7U0FDMUc7UUFFRCxJQUFJLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7UUFDbkQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzdHLElBQUksQ0FBQyxVQUFVLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3RHLElBQUksQ0FBQyxVQUFVLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNySCxJQUFJLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUV6RyxJQUFJLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDdEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUV0RiwyQkFBMkI7UUFDM0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUzs7O1FBQUMsR0FBRyxFQUFFO1lBQzFFLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLHFDQUFxQyxDQUFDLENBQUM7UUFDdkUsQ0FBQyxFQUFDLENBQUM7UUFFSCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxFQUFFO1lBQzVCLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLEtBQUssQ0FBQyxFQUFFO2dCQUM3QixJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssR0FBRztvQkFDcEIsSUFBSSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLENBQUM7b0JBQy9ELE1BQU0sRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxDQUFDO2lCQUNwRSxDQUFDO2FBQ0w7WUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxLQUFLLENBQUMsRUFBRTtnQkFDN0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUc7b0JBQ3JCLElBQUksRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxDQUFDO29CQUMvRCxNQUFNLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLG1CQUFtQixFQUFFLEdBQUcsQ0FBQztvQkFDakUsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYTtpQkFDdkMsQ0FBQzthQUNMO1lBRUQsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsS0FBSyxDQUFDLEVBQUU7Z0JBQzdCLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxHQUFHO29CQUN0QixJQUFJLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLG1CQUFtQixFQUFFLEdBQUcsQ0FBQztvQkFDL0QsTUFBTSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLENBQUM7b0JBQ2pFLEdBQUcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVU7aUJBQzdCLENBQUM7YUFDTDtZQUVELElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxFQUFFO2dCQUNyQixJQUFJLENBQUMsVUFBVSxDQUFDLGVBQWUsR0FBRztvQkFDOUIsU0FBUyxFQUFFO3dCQUNQLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWE7d0JBQzlCLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWM7cUJBQ25DO29CQUNELFVBQVUsRUFBRTt3QkFDUixJQUFJLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLG9CQUFvQixFQUFFLEdBQUcsQ0FBQzt3QkFDaEUsTUFBTSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsRUFBRSxHQUFHLENBQUM7cUJBQ3JFO2lCQUNKLENBQUM7YUFDTDtZQUVELHNDQUFzQztZQUN0QyxJQUFJLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTOzs7WUFBQyxHQUFHLEVBQUU7WUFDOUUsQ0FBQyxFQUFDLENBQUM7U0FDTjtRQUVELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2QyxDQUFDOzs7Ozs7SUFFRCxlQUFlLENBQUMsS0FBYSxFQUFFLElBQVk7UUFDdkMsSUFBSSxJQUFJLEtBQUssR0FBRyxFQUFFO1lBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQUU7UUFDcEQsSUFBSSxJQUFJLEtBQUssR0FBRyxFQUFFO1lBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQUU7SUFDeEQsQ0FBQzs7Ozs7O0lBRUQsV0FBVyxDQUFDLFFBQWdCLEVBQUUsU0FBaUI7UUFDM0MsSUFBSSxRQUFRLEtBQUssU0FBUyxFQUFFO1lBQUUsT0FBTyxLQUFLLENBQUM7U0FBRTtRQUM3QyxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxFQUFFO1lBQUUsT0FBTyxJQUFJLENBQUM7U0FBRTtRQUNoRyxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxFQUFFO1lBQUUsT0FBTyxLQUFLLENBQUM7U0FBRTtRQUNqRyxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDOzs7O0lBRUQsUUFBUTtRQUVKLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxFQUFFO1lBQ25DLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLHVDQUF1QyxDQUFDLENBQUM7WUFDbkUsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLEVBQUU7WUFDN0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMseUNBQXlDLENBQUMsQ0FBQztZQUNyRSxPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUVELElBQUksSUFBSSxDQUFDLG1CQUFtQixFQUFFLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsRUFBRTtZQUM1RixJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyx3REFBd0QsQ0FBQyxDQUFDO1lBQ3BGLE9BQU8sS0FBSyxDQUFDO1NBQ2hCO1FBRUQsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsRUFBRTtZQUM1QixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsRUFBRTtnQkFDakMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsNENBQTRDLENBQUMsQ0FBQztnQkFDeEUsT0FBTyxLQUFLLENBQUM7YUFDaEI7WUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsRUFBRTtnQkFDeEUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsNkNBQTZDLENBQUMsQ0FBQztnQkFDekUsT0FBTyxLQUFLLENBQUM7YUFDaEI7WUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRTtnQkFDekQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsaUNBQWlDLENBQUMsQ0FBQztnQkFDN0QsT0FBTyxLQUFLLENBQUM7YUFDaEI7WUFFRCxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsRUFBRTtnQkFDckIsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLEVBQUU7b0JBQ3BGLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLDBDQUEwQyxDQUFDLENBQUM7b0JBQ3RFLE9BQU8sS0FBSyxDQUFDO2lCQUNoQjtnQkFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxLQUFLLENBQUMsRUFBRTtvQkFDakMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMseURBQXlELENBQUMsQ0FBQztvQkFDckYsT0FBTyxLQUFLLENBQUM7aUJBQ2hCO2FBQ0o7U0FDSjtRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7OztZQXJSSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLDhCQUE4QjtnQkFDeEMsMndiQUF3RDs7YUFFM0Q7Ozs7WUFUNEIsYUFBYTtZQUdqQyw2QkFBNkI7WUFITSxxQkFBcUI7OztvQ0FZNUQsU0FBUyxTQUFDLHVCQUF1QixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTswQkFFbkQsS0FBSzsyQkFDTCxLQUFLOzBCQUNMLEtBQUs7NkJBQ0wsS0FBSzt5QkFDTCxLQUFLOzZCQUNMLEtBQUs7c0JBQ0wsS0FBSzsyQkFDTCxNQUFNOzs7O0lBVFAsZ0VBQW9GOztJQUVwRixzREFBNkI7O0lBQzdCLHVEQUE4Qjs7SUFDOUIsc0RBQTZCOztJQUM3Qix5REFBNkI7O0lBQzdCLHFEQUF3Qjs7SUFDeEIseURBQWdDOztJQUNoQyxrREFBeUI7O0lBQ3pCLHVEQUE0Qzs7SUFRNUMsK0RBQWdEOztJQUNoRCwyREFBNEM7O0lBQzVDLCtEQUFnRDs7SUFDaEQsd0RBQXlDOztJQUN6QyxnRUFBNkM7O0lBQzdDLGdEQUEwQjs7Ozs7SUFDMUIscURBQTZCOztJQUU3QixtREFBbUI7O0lBYmYsd0RBQW1DOztJQUNuQyxxREFBZ0Q7O0lBQ2hELHlEQUE0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgVmlld0NoaWxkLCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBQb1JhZGlvR3JvdXBPcHRpb24sIFBvSTE4blNlcnZpY2UsIFBvTm90aWZpY2F0aW9uU2VydmljZSwgUG9Mb29rdXBDb2x1bW4gfSBmcm9tICdAcG8tdWkvbmctY29tcG9uZW50cyc7XHJcbmltcG9ydCB7IElTY2hlZHVsZVBhcmFtZXRlcnMsIFNjaGVkdWxlUGFyYW1ldGVycyB9IGZyb20gJy4vdG90dnMtc2NoZWR1bGUtZXhlY3V0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgTmdGb3JtIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBUb3R2c1NjaGVkdWxlRXhlY3V0aW9uU2VydmljZSB9IGZyb20gJy4vdG90dnMtc2NoZWR1bGUtZXhlY3V0aW9uLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2FwcC10b3R2cy1zY2hlZHVsZS1leGVjdXRpb24nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RvdHZzLXNjaGVkdWxlLWV4ZWN1dGlvbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi90b3R2cy1zY2hlZHVsZS1leGVjdXRpb24uY29tcG9uZW50LmNzcyddXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgVG90dnNTY2hlZHVsZUV4ZWN1dGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgICBAVmlld0NoaWxkKCdzY2hlZHVsZUV4ZWN1dGlvbkZvcm0nLCB7IHN0YXRpYzogdHJ1ZSB9KSBzY2hlZHVsZUV4ZWN1dGlvbkZvcm06IE5nRm9ybTtcclxuXHJcbiAgICBASW5wdXQoKSBwcm9ncmFtTmFtZTogc3RyaW5nO1xyXG4gICAgQElucHV0KCkgZXh0ZXJuYWxOYW1lOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBwcm9ncmFtRU1TNSA9IGZhbHNlO1xyXG4gICAgQElucHV0KCkgcHJvZ3JhbVZlcnNpb24gPSAnJztcclxuICAgIEBJbnB1dCgpIHBhcmFtZXRlcnM6IFtdO1xyXG4gICAgQElucHV0KCkgZGlzYWJsZWRQYXJhbXMgPSBmYWxzZTtcclxuICAgIEBJbnB1dCgpIGxvYWRpbmcgPSBmYWxzZTtcclxuICAgIEBPdXRwdXQoKSBlbmRFeGVjdXRpb24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHVibGljIHBvSTE4blNlcnZpY2U6IFBvSTE4blNlcnZpY2UsXHJcbiAgICAgICAgcHVibGljIHJwd1NlcnZpY2U6IFRvdHZzU2NoZWR1bGVFeGVjdXRpb25TZXJ2aWNlLFxyXG4gICAgICAgIHB1YmxpYyBwb05vdGlmaWNhdGlvbjogUG9Ob3RpZmljYXRpb25TZXJ2aWNlKSB7XHJcbiAgICB9XHJcblxyXG4gICAgZXhlY3V0aW9uVHlwZU9wdGlvbnM6IEFycmF5PFBvUmFkaW9Hcm91cE9wdGlvbj47XHJcbiAgICBmcmVxdWVuY3lPcHRpb25zOiBBcnJheTxQb1JhZGlvR3JvdXBPcHRpb24+O1xyXG4gICAgZnJlcXVlbmN5VHlwZU9wdGlvbnM6IEFycmF5PFBvUmFkaW9Hcm91cE9wdGlvbj47XHJcbiAgICB3ZWVrbHlPcHRpb25zOiBBcnJheTxQb1JhZGlvR3JvdXBPcHRpb24+O1xyXG4gICAgem9vbVJwd1NlcnZpY2VDb2x1bW5zOiBBcnJheTxQb0xvb2t1cENvbHVtbj47XHJcbiAgICBtb2RlbDogU2NoZWR1bGVQYXJhbWV0ZXJzO1xyXG4gICAgcHJpdmF0ZSBqc29uT2JqZWN0OiBhbnkgPSB7fTtcclxuXHJcbiAgICBsaXRlcmFsczogYW55ID0ge307XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgLyogVkVSSUZJQ0FSIENPTU8gRklDQVLDgSBBIFRSQURVw4fDg09cclxuICAgICAgICBmb3JrSm9pbihcclxuICAgICAgICAgICAgICB0aGlzLnBvSTE4blNlcnZpY2UuZ2V0TGl0ZXJhbHMoKSxcclxuICAgICAgICAgICAgICB0aGlzLnBvSTE4blNlcnZpY2UuZ2V0TGl0ZXJhbHMoeyBjb250ZXh0OiAnZ2VuZXJhbFJwdycgfSlcclxuICAgICAgICAgICkuc3Vic2NyaWJlKGxpdGVyYWxzID0+IHtcclxuICAgICAgICAgICAgICBsaXRlcmFscy5tYXAoaXRlbSA9PiBPYmplY3QuYXNzaWduKHRoaXMubGl0ZXJhbHMsIGl0ZW0pICk7XHJcbiAgICAgICAgICAgICAgdGhpcy5zZXR1cENvbXBvbmVudHMoKTtcclxuICAgICAgICAgIH0pOyovXHJcblxyXG4gICAgICAgIHRoaXMuc2V0dXBDb21wb25lbnRzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0dXBDb21wb25lbnRzKCkge1xyXG4gICAgICAgIHRoaXMuZXhlY3V0aW9uVHlwZU9wdGlvbnMgPSBbXHJcbiAgICAgICAgICAgIHsgbGFiZWw6ICdFeGVjdXRhciBIb2plJywgdmFsdWU6IDEgfSxcclxuICAgICAgICAgICAgeyBsYWJlbDogJ0FnZW5kYXIgRXhlY3XDp8OjbycsIHZhbHVlOiAyIH1cclxuICAgICAgICBdO1xyXG5cclxuICAgICAgICB0aGlzLmZyZXF1ZW5jeU9wdGlvbnMgPSBbXHJcbiAgICAgICAgICAgIHsgbGFiZWw6ICdVbWEgdmV6IG5vIGRpYScsIHZhbHVlOiAnbm8nIH0sXHJcbiAgICAgICAgICAgIHsgbGFiZWw6ICdWw6FyaWFzIHZlemVzIG5vIGRpYScsIHZhbHVlOiAneWVzJyB9XHJcbiAgICAgICAgXTtcclxuXHJcbiAgICAgICAgdGhpcy5mcmVxdWVuY3lUeXBlT3B0aW9ucyA9IFtcclxuICAgICAgICAgICAgeyBsYWJlbDogJ0hvcmEocyknLCB2YWx1ZTogJ2hvdXInIH0sXHJcbiAgICAgICAgICAgIHsgbGFiZWw6ICdNaW51dG8ocyknLCB2YWx1ZTogJ21pbnV0ZScgfVxyXG4gICAgICAgIF07XHJcblxyXG4gICAgICAgIHRoaXMud2Vla2x5T3B0aW9ucyA9IFtcclxuICAgICAgICAgICAgeyBsYWJlbDogJ0RvbWluZ28nLCB2YWx1ZTogJ1N1bmRheScgfSxcclxuICAgICAgICAgICAgeyBsYWJlbDogJ1NlZ3VuZGEnLCB2YWx1ZTogJ01vbmRheScgfSxcclxuICAgICAgICAgICAgeyBsYWJlbDogJ1RlcsOnYScsIHZhbHVlOiAnVHVlc2RheScgfSxcclxuICAgICAgICAgICAgeyBsYWJlbDogJ1F1YXJ0YScsIHZhbHVlOiAnV2VkbmVzZGF5JyB9LFxyXG4gICAgICAgICAgICB7IGxhYmVsOiAnUXVpbnRhJywgdmFsdWU6ICdUaHVyc2RheScgfSxcclxuICAgICAgICAgICAgeyBsYWJlbDogJ1NleHRhJywgdmFsdWU6ICdGcmlkYXknIH0sXHJcbiAgICAgICAgICAgIHsgbGFiZWw6ICdTw6FiYWRvJywgdmFsdWU6ICdTYXR1cmRheScgfVxyXG4gICAgICAgIF07XHJcblxyXG4gICAgICAgIHRoaXMuem9vbVJwd1NlcnZpY2VDb2x1bW5zID0gW1xyXG4gICAgICAgICAgICB7IHByb3BlcnR5OiAnY29kZScsIGxhYmVsOiAnU2Vydmlkb3InLCB0eXBlOiAnc3RyaW5nJywgd2lkdGg6ICcyMCUnIH0sXHJcbiAgICAgICAgICAgIHsgcHJvcGVydHk6ICduYW1lJywgbGFiZWw6ICdEZXNjcmnDp8OjbycsIHR5cGU6ICdzdHJpbmcnLCB3aWR0aDogJzgwJScgfVxyXG4gICAgICAgIF07XHJcblxyXG4gICAgICAgIHRoaXMubW9kZWwgPSBuZXcgU2NoZWR1bGVQYXJhbWV0ZXJzKCk7XHJcbiAgICAgICAgdGhpcy5tb2RlbC5leGVjdXRpb25UeXBlID0gMTtcclxuICAgICAgICB0aGlzLm1vZGVsLnJlcGVhdFR5cGUgPSAxO1xyXG4gICAgICAgIHRoaXMubW9kZWwucmVwZWF0RXhlY3V0aW9uID0gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHNldFNjaGVkdWxlUGFyYW1ldGVycyhzY2hQYXJhbTogSVNjaGVkdWxlUGFyYW1ldGVycykge1xyXG4gICAgICAgIGlmICghc2NoUGFyYW0pIHsgcmV0dXJuOyB9XHJcbiAgICAgICAgdGhpcy5tb2RlbCA9IHNjaFBhcmFtO1xyXG4gICAgfVxyXG5cclxuICAgIGZpZWxkUnB3U2VydmljZUZvcm1hdCh2YWx1ZSkge1xyXG4gICAgICAgIHJldHVybiBgJHt2YWx1ZS5jb2RlfSAtICR7dmFsdWUubmFtZX1gO1xyXG4gICAgfVxyXG5cclxuICAgIGlzRXhlY3V0aW9uU2NoZWR1bGUoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICh0aGlzLm1vZGVsLmV4ZWN1dGlvblR5cGUgPT09IDIpO1xyXG4gICAgfVxyXG5cclxuICAgIGlzUmVwZWF0RXhlY3V0aW9uKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLm1vZGVsLnJlcGVhdEV4ZWN1dGlvbjtcclxuICAgIH1cclxuXHJcbiAgICBpc0ZyZW5xdWVuY3koKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICh0aGlzLm1vZGVsLmZyZXF1ZW5jeSA9PT0gJ3llcycpO1xyXG4gICAgfVxyXG5cclxuICAgIGNoYW5nZVJlcGVhdEV4ZWN1dGlvbigpIHtcclxuICAgICAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoKTtcclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLm1vZGVsLmV4ZWNBcHBvaW50SG91ckluaXQpIHsgdGhpcy5tb2RlbC5leGVjQXBwb2ludEhvdXJJbml0ID0gYCR7dGhpcy5hZGRaZXJvKGRhdGUuZ2V0SG91cnMoKSl9OiR7dGhpcy5hZGRaZXJvKGRhdGUuZ2V0TWludXRlcygpKX1gOyB9XHJcbiAgICAgICAgaWYgKCF0aGlzLm1vZGVsLmV4ZWNBcHBvaW50SG91ckZpbmFsKSB7IHRoaXMubW9kZWwuZXhlY0FwcG9pbnRIb3VyRmluYWwgPSBgJHt0aGlzLmFkZFplcm8oZGF0ZS5nZXRIb3VycygpKX06JHt0aGlzLmFkZFplcm8oZGF0ZS5nZXRNaW51dGVzKCkpfWA7IH1cclxuICAgICAgICB0aGlzLm1vZGVsLnNlbGVjdFdlZWtseXMgPSBbXTtcclxuICAgICAgICB0aGlzLm1vZGVsLmRheU9mTW9udGggPSAwO1xyXG4gICAgICAgIHRoaXMubW9kZWwuZnJlcXVlbmN5ID0gJ25vJztcclxuICAgICAgICB0aGlzLm1vZGVsLmZyZXF1ZW5jeVR5cGUgPSAnaG91cic7XHJcbiAgICAgICAgdGhpcy5tb2RlbC5mcmVxdWVuY3lWYWx1ZSA9IDA7XHJcbiAgICB9XHJcblxyXG4gICAgY2hhbmdlRXhlY3V0aW9uVHlwZSgpIHtcclxuICAgICAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoKTtcclxuXHJcbiAgICAgICAgdGhpcy5tb2RlbC5leGVjQXBwb2ludERhdGUgPSBkYXRlO1xyXG4gICAgICAgIHRoaXMubW9kZWwuZXhlY0FwcG9pbnRIb3VyID0gYCR7dGhpcy5hZGRaZXJvKGRhdGUuZ2V0SG91cnMoKSl9OiR7dGhpcy5hZGRaZXJvKGRhdGUuZ2V0TWludXRlcygpKX1gO1xyXG4gICAgfVxyXG5cclxuICAgIGNoYW5nZVR5cGVGcmVxdWVuY3koKSB7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0QWN0aXZlVGFiKGNvZFRhYjogbnVtYmVyKSB7XHJcbiAgICAgICAgcmV0dXJuICh0aGlzLm1vZGVsLnJlcGVhdFR5cGUgPT09IGNvZFRhYik7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0QWN0aXZlVGFiKGNvZFRhYjogbnVtYmVyKSB7XHJcbiAgICAgICAgdGhpcy5tb2RlbC5yZXBlYXRUeXBlID0gY29kVGFiO1xyXG4gICAgfVxyXG5cclxuICAgIGFkZFplcm8obnVtOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgICAgIGxldCBzdHIgPSBgJHtudW19YDtcclxuICAgICAgICBpZiAobnVtIDwgMTApIHsgc3RyID0gYDAke251bX1gOyB9XHJcbiAgICAgICAgcmV0dXJuIHN0cjtcclxuICAgIH1cclxuXHJcbiAgICBleGVjdXRlU2NoZWR1bGUoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWRQYXJhbXMpIHsgcmV0dXJuOyB9XHJcbiAgICAgICAgaWYgKCF0aGlzLnZhbGlkYXRlKCkpIHsgcmV0dXJuOyB9XHJcblxyXG4gICAgICAgIHRoaXMuanNvbk9iamVjdCA9IHt9O1xyXG4gICAgICAgIHRoaXMuanNvbk9iamVjdC5zdGF0dXMgPSAnYWN0aXZlJztcclxuICAgICAgICB0aGlzLmpzb25PYmplY3QucHJvY2Vzc0lEID0gdGhpcy5wcm9ncmFtTmFtZTtcclxuICAgICAgICB0aGlzLmpzb25PYmplY3QucmVjdXJyZW50ID0gdGhpcy5tb2RlbC5yZXBlYXRFeGVjdXRpb247XHJcbiAgICAgICAgdGhpcy5qc29uT2JqZWN0LmV4ZWN1dGlvblBhcmFtZXRlciA9IHt9O1xyXG5cclxuICAgICAgICBpZiAodGhpcy5tb2RlbC5leGVjdXRpb25UeXBlID09PSAxKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgICAgICAgICB0aGlzLmpzb25PYmplY3QuZmlyc3RFeGVjdXRpb24gPSBgJHtkYXRlLmdldEZ1bGxZZWFyKCl9LSR7KGRhdGUuZ2V0TW9udGgoKSArIDEpfS0ke2RhdGUuZ2V0RGF0ZSgpfVQke3RoaXMuYWRkWmVybyhkYXRlLmdldEhvdXJzKCkpfToke3RoaXMuYWRkWmVybyhkYXRlLmdldE1pbnV0ZXMoKSl9OjAwLjAwMFpgO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy5tb2RlbC5leGVjdXRpb25UeXBlID09PSAyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuanNvbk9iamVjdC5maXJzdEV4ZWN1dGlvbiA9IGAke3RoaXMubW9kZWwuZXhlY0FwcG9pbnREYXRlfVQke3RoaXMubW9kZWwuZXhlY0FwcG9pbnRIb3VyfTowMC4wMDBaYDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuanNvbk9iamVjdC5leGVjdXRpb25QYXJhbWV0ZXIucGFyYW1ldHJvcyA9IFtdO1xyXG4gICAgICAgIHRoaXMuanNvbk9iamVjdC5leGVjdXRpb25QYXJhbWV0ZXIucGFyYW1ldHJvc1swXSA9IHsgY2hhdmU6ICdycHdTZXJ2ZXInLCB2YWxvcjogdGhpcy5tb2RlbC5leGVjdXRpb25TZXJ2ZXIgfTtcclxuICAgICAgICB0aGlzLmpzb25PYmplY3QuZXhlY3V0aW9uUGFyYW1ldGVyLnBhcmFtZXRyb3NbMV0gPSB7IGNoYXZlOiAnUlBXX1BST0dSQU0nLCB2YWxvcjogdGhpcy5leHRlcm5hbE5hbWUgfTtcclxuICAgICAgICB0aGlzLmpzb25PYmplY3QuZXhlY3V0aW9uUGFyYW1ldGVyLnBhcmFtZXRyb3NbMl0gPSB7IGNoYXZlOiAnUlBXX1BSR19FTVM1JywgdmFsb3I6IHRoaXMucHJvZ3JhbUVNUzUgPyAneWVzJyA6ICdubycgfTtcclxuICAgICAgICB0aGlzLmpzb25PYmplY3QuZXhlY3V0aW9uUGFyYW1ldGVyLnBhcmFtZXRyb3NbM10gPSB7IGNoYXZlOiAnUlBXX1BSR19WRVJTJywgdmFsb3I6IHRoaXMucHJvZ3JhbVZlcnNpb24gfTtcclxuXHJcbiAgICAgICAgdGhpcy5qc29uT2JqZWN0LmV4ZWN1dGlvblBhcmFtZXRlci5wYXJhbWV0cm9zWzRdID0ge307XHJcbiAgICAgICAgdGhpcy5qc29uT2JqZWN0LmV4ZWN1dGlvblBhcmFtZXRlci5wYXJhbWV0cm9zWzRdLnBhcmFtZXRyb3NfbmVnb2NpbyA9IHRoaXMucGFyYW1ldGVycztcclxuXHJcbiAgICAgICAgLy8gRXhlY3V0YSBob2plIG91IGFnZW5kYWRhXHJcbiAgICAgICAgdGhpcy5ycHdTZXJ2aWNlLmNyZWF0ZUV4ZWN1dGlvbih0aGlzLmpzb25PYmplY3QsIHRoaXMubG9hZGluZykuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5wb05vdGlmaWNhdGlvbi5zdWNjZXNzKCdBZ2VuZGFtZW50byByZWFsaXphZG8gY29tIHN1Y2Vzc28gIScpO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5tb2RlbC5yZXBlYXRFeGVjdXRpb24pIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMubW9kZWwucmVwZWF0VHlwZSA9PT0gMSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5qc29uT2JqZWN0LmRhaWx5ID0ge1xyXG4gICAgICAgICAgICAgICAgICAgIGhvdXI6IHRoaXMuZ2V0SG91ck9yTWludXRlKHRoaXMubW9kZWwuZXhlY0FwcG9pbnRIb3VySW5pdCwgJ2gnKSxcclxuICAgICAgICAgICAgICAgICAgICBtaW51dGU6IHRoaXMuZ2V0SG91ck9yTWludXRlKHRoaXMubW9kZWwuZXhlY0FwcG9pbnRIb3VySW5pdCwgJ20nKVxyXG4gICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaWYgKHRoaXMubW9kZWwucmVwZWF0VHlwZSA9PT0gMikge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5qc29uT2JqZWN0LndlZWtseSA9IHtcclxuICAgICAgICAgICAgICAgICAgICBob3VyOiB0aGlzLmdldEhvdXJPck1pbnV0ZSh0aGlzLm1vZGVsLmV4ZWNBcHBvaW50SG91ckluaXQsICdoJyksXHJcbiAgICAgICAgICAgICAgICAgICAgbWludXRlOiB0aGlzLmdldEhvdXJPck1pbnV0ZSh0aGlzLm1vZGVsLmV4ZWNBcHBvaW50SG91ckluaXQsICdtJyksXHJcbiAgICAgICAgICAgICAgICAgICAgZGF5c09mV2VlazogdGhpcy5tb2RlbC5zZWxlY3RXZWVrbHlzXHJcbiAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy5tb2RlbC5yZXBlYXRUeXBlID09PSAzKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmpzb25PYmplY3QubW9udGhseSA9IHtcclxuICAgICAgICAgICAgICAgICAgICBob3VyOiB0aGlzLmdldEhvdXJPck1pbnV0ZSh0aGlzLm1vZGVsLmV4ZWNBcHBvaW50SG91ckluaXQsICdoJyksXHJcbiAgICAgICAgICAgICAgICAgICAgbWludXRlOiB0aGlzLmdldEhvdXJPck1pbnV0ZSh0aGlzLm1vZGVsLmV4ZWNBcHBvaW50SG91ckluaXQsICdtJyksXHJcbiAgICAgICAgICAgICAgICAgICAgZGF5OiB0aGlzLm1vZGVsLmRheU9mTW9udGhcclxuICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmICh0aGlzLmlzRnJlbnF1ZW5jeSgpKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmpzb25PYmplY3QucmFuZ2VFeGVjdXRpb25zID0ge1xyXG4gICAgICAgICAgICAgICAgICAgIGZyZXF1ZW5jeToge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiB0aGlzLm1vZGVsLmZyZXF1ZW5jeVR5cGUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiB0aGlzLm1vZGVsLmZyZXF1ZW5jeVZhbHVlXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICByYW5nZUxpbWl0OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhvdXI6IHRoaXMuZ2V0SG91ck9yTWludXRlKHRoaXMubW9kZWwuZXhlY0FwcG9pbnRIb3VyRmluYWwsICdoJyksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbnV0ZTogdGhpcy5nZXRIb3VyT3JNaW51dGUodGhpcy5tb2RlbC5leGVjQXBwb2ludEhvdXJGaW5hbCwgJ20nKVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC8vIEV4ZWN1dGEgYSBkacOhcmlhLCBzZW1hbmFsIG91IG1lbnNhbFxyXG4gICAgICAgICAgICB0aGlzLnJwd1NlcnZpY2UuY3JlYXRlRXhlY3V0aW9uKHRoaXMuanNvbk9iamVjdCwgdGhpcy5sb2FkaW5nKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuZW5kRXhlY3V0aW9uLmVtaXQodGhpcy5tb2RlbCk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0SG91ck9yTWludXRlKHZhbHVlOiBzdHJpbmcsIHR5cGU6IHN0cmluZyk6IG51bWJlciB7XHJcbiAgICAgICAgaWYgKHR5cGUgPT09ICdoJykgeyByZXR1cm4gK3ZhbHVlLnN1YnN0cmluZygwLCAyKTsgfVxyXG4gICAgICAgIGlmICh0eXBlID09PSAnbScpIHsgcmV0dXJuICt2YWx1ZS5zdWJzdHJpbmcoMywgNik7IH1cclxuICAgIH1cclxuXHJcbiAgICBjb21wYXJlSG91cihob3VySW5pdDogc3RyaW5nLCBob3VyRmluYWw6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmIChob3VySW5pdCA9PT0gaG91ckZpbmFsKSB7IHJldHVybiBmYWxzZTsgfVxyXG4gICAgICAgIGlmICh0aGlzLmdldEhvdXJPck1pbnV0ZShob3VySW5pdCwgJ2gnKSA8IHRoaXMuZ2V0SG91ck9yTWludXRlKGhvdXJGaW5hbCwgJ2gnKSkgeyByZXR1cm4gdHJ1ZTsgfVxyXG4gICAgICAgIGlmICh0aGlzLmdldEhvdXJPck1pbnV0ZShob3VySW5pdCwgJ20nKSA+IHRoaXMuZ2V0SG91ck9yTWludXRlKGhvdXJGaW5hbCwgJ20nKSkgeyByZXR1cm4gZmFsc2U7IH1cclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICB2YWxpZGF0ZSgpOiBib29sZWFuIHtcclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLnNjaGVkdWxlRXhlY3V0aW9uRm9ybS52YWxpZCkge1xyXG4gICAgICAgICAgICB0aGlzLnBvTm90aWZpY2F0aW9uLmVycm9yKCdWZXJpZmlxdWUgYXMgaW5jb25zaXN0w6puY2lhcyBlbSB0ZWxhLicpO1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoIXRoaXMubW9kZWwuZXhlY3V0aW9uU2VydmVyKSB7XHJcbiAgICAgICAgICAgIHRoaXMucG9Ob3RpZmljYXRpb24uZXJyb3IoJ1NlcnZpZG9yIGRlIEV4ZWN1w6fDo28gbsOjbyBmb2kgaW5mb3JtYWRvLicpO1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodGhpcy5pc0V4ZWN1dGlvblNjaGVkdWxlKCkgJiYgKCF0aGlzLm1vZGVsLmV4ZWNBcHBvaW50RGF0ZSB8fCAhdGhpcy5tb2RlbC5leGVjQXBwb2ludEhvdXIpKSB7XHJcbiAgICAgICAgICAgIHRoaXMucG9Ob3RpZmljYXRpb24uZXJyb3IoJ0luZm9ybWFyIGEgZGF0YSBlIGEgaG9yYSBwYXJhIGFnZW5kYW1lbnRvIGRhIGV4ZWN1w6fDo28uJyk7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh0aGlzLm1vZGVsLnJlcGVhdEV4ZWN1dGlvbikge1xyXG4gICAgICAgICAgICBpZiAoIXRoaXMubW9kZWwuZXhlY0FwcG9pbnRIb3VySW5pdCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5wb05vdGlmaWNhdGlvbi5lcnJvcignSW5mb3JtYXIgYSBob3JhIGRlIGluw61jaW8gcGFyYSBhIGV4ZWN1w6fDo28uJyk7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmICh0aGlzLm1vZGVsLnJlcGVhdFR5cGUgPT09IDIgJiYgKHRoaXMubW9kZWwuc2VsZWN0V2Vla2x5cy5sZW5ndGggPT09IDApKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnBvTm90aWZpY2F0aW9uLmVycm9yKCdJbmZvcm1hciBvcyBkaWFzIGRhIHNlbWFuYSBwYXJhIGEgZXhlY3XDp8Ojby4nKTtcclxuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaWYgKHRoaXMubW9kZWwucmVwZWF0VHlwZSA9PT0gMyAmJiAoIXRoaXMubW9kZWwuZGF5T2ZNb250aCkpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMucG9Ob3RpZmljYXRpb24uZXJyb3IoJ0luZm9ybWFyIG8gZGlhIHBhcmEgYSBleGVjdcOnw6NvLicpO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy5pc0ZyZW5xdWVuY3koKSkge1xyXG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLmNvbXBhcmVIb3VyKHRoaXMubW9kZWwuZXhlY0FwcG9pbnRIb3VySW5pdCwgdGhpcy5tb2RlbC5leGVjQXBwb2ludEhvdXJGaW5hbCkpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnBvTm90aWZpY2F0aW9uLmVycm9yKCdIb3JhIEZpbSBkZXZlIHNlciBtYWlvciBxdWUgSG9yYSBJbsOtY2lvLicpO1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5tb2RlbC5mcmVxdWVuY3lWYWx1ZSA9PT0gMCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucG9Ob3RpZmljYXRpb24uZXJyb3IoJ0luZm9ybWFyIGEgZnJlcXXDqm5jaWEgZGUgZXhlY3XDp8OjbyAoQSBjYWRhIGhvcmEvbWludXRvKS4nKTtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
274
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90dnMtc2NoZWR1bGUtZXhlY3V0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2R0cy1iYWNrb2ZmaWNlLXV0aWwvc3JjL2xpYi9jb21wb25lbnRzL3RvdHZzLXNjaGVkdWxlLWV4ZWN1dGlvbi90b3R2cy1zY2hlZHVsZS1leGVjdXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFGLE9BQU8sRUFBc0IsYUFBYSxFQUFFLHFCQUFxQixFQUFrQixNQUFNLHNCQUFzQixDQUFDO0FBQ2hILE9BQU8sRUFBdUIsa0JBQWtCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMzRixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEMsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFRbkYsTUFBTSxPQUFPLCtCQUErQjtJQVl4QyxZQUNXLGFBQTRCLEVBQzVCLFVBQXlDLEVBQ3pDLGNBQXFDO1FBRnJDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLGVBQVUsR0FBVixVQUFVLENBQStCO1FBQ3pDLG1CQUFjLEdBQWQsY0FBYyxDQUF1QjtRQVZ2QyxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNwQixtQkFBYyxHQUFHLEVBQUUsQ0FBQztRQUVwQixtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUN2QixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2YsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBY3BDLGVBQVUsR0FBUSxFQUFFLENBQUM7UUFFN0IsYUFBUSxHQUFRLEVBQUUsQ0FBQztJQVZuQixDQUFDO0lBWUQsUUFBUTtRQUNKOzs7Ozs7O2VBT087UUFFUCxJQUFJ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QUssQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO29CQUN0RSxPQUFPLEtBQUssQ0FBQztpQkFDaEI7Z0JBRUQsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsS0FBSyxDQUFDLEVBQUU7b0JBQ2pDLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLHlEQUF5RCxDQUFDLENBQUM7b0JBQ3JGLE9BQU8sS0FBSyxDQUFDO2lCQUNoQjthQUNKO1NBQ0o7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDOzs7O1lBclJKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsOEJBQThCO2dCQUN4Qywyd2JBQXdEOzthQUUzRDs7Ozs7Ozs7OztZQVQ0QixhQUFhO1lBR2pDLDZCQUE2QjtZQUhNLHFCQUFxQjs7OztvQ0FZNUQsU0FBUyxTQUFDLHVCQUF1QixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTswQkFFbkQsS0FBSzsyQkFDTCxLQUFLOzBCQUNMLEtBQUs7NkJBQ0wsS0FBSzt5QkFDTCxLQUFLOzZCQUNMLEtBQUs7c0JBQ0wsS0FBSzsyQkFDTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBWaWV3Q2hpbGQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFBvUmFkaW9Hcm91cE9wdGlvbiwgUG9JMThuU2VydmljZSwgUG9Ob3RpZmljYXRpb25TZXJ2aWNlLCBQb0xvb2t1cENvbHVtbiB9IGZyb20gJ0Bwby11aS9uZy1jb21wb25lbnRzJztcclxuaW1wb3J0IHsgSVNjaGVkdWxlUGFyYW1ldGVycywgU2NoZWR1bGVQYXJhbWV0ZXJzIH0gZnJvbSAnLi90b3R2cy1zY2hlZHVsZS1leGVjdXRpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyBOZ0Zvcm0gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFRvdHZzU2NoZWR1bGVFeGVjdXRpb25TZXJ2aWNlIH0gZnJvbSAnLi90b3R2cy1zY2hlZHVsZS1leGVjdXRpb24uc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYXBwLXRvdHZzLXNjaGVkdWxlLWV4ZWN1dGlvbicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdG90dnMtc2NoZWR1bGUtZXhlY3V0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3RvdHZzLXNjaGVkdWxlLWV4ZWN1dGlvbi5jb21wb25lbnQuY3NzJ11cclxufSlcclxuXHJcbmV4cG9ydCBjbGFzcyBUb3R2c1NjaGVkdWxlRXhlY3V0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBWaWV3Q2hpbGQoJ3NjaGVkdWxlRXhlY3V0aW9uRm9ybScsIHsgc3RhdGljOiB0cnVlIH0pIHNjaGVkdWxlRXhlY3V0aW9uRm9ybTogTmdGb3JtO1xyXG5cclxuICAgIEBJbnB1dCgpIHByb2dyYW1OYW1lOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBleHRlcm5hbE5hbWU6IHN0cmluZztcclxuICAgIEBJbnB1dCgpIHByb2dyYW1FTVM1ID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBwcm9ncmFtVmVyc2lvbiA9ICcnO1xyXG4gICAgQElucHV0KCkgcGFyYW1ldGVyczogW107XHJcbiAgICBASW5wdXQoKSBkaXNhYmxlZFBhcmFtcyA9IGZhbHNlO1xyXG4gICAgQElucHV0KCkgbG9hZGluZyA9IGZhbHNlO1xyXG4gICAgQE91dHB1dCgpIGVuZEV4ZWN1dGlvbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwdWJsaWMgcG9JMThuU2VydmljZTogUG9JMThuU2VydmljZSxcclxuICAgICAgICBwdWJsaWMgcnB3U2VydmljZTogVG90dnNTY2hlZHVsZUV4ZWN1dGlvblNlcnZpY2UsXHJcbiAgICAgICAgcHVibGljIHBvTm90aWZpY2F0aW9uOiBQb05vdGlmaWNhdGlvblNlcnZpY2UpIHtcclxuICAgIH1cclxuXHJcbiAgICBleGVjdXRpb25UeXBlT3B0aW9uczogQXJyYXk8UG9SYWRpb0dyb3VwT3B0aW9uPjtcclxuICAgIGZyZXF1ZW5jeU9wdGlvbnM6IEFycmF5PFBvUmFkaW9Hcm91cE9wdGlvbj47XHJcbiAgICBmcmVxdWVuY3lUeXBlT3B0aW9uczogQXJyYXk8UG9SYWRpb0dyb3VwT3B0aW9uPjtcclxuICAgIHdlZWtseU9wdGlvbnM6IEFycmF5PFBvUmFkaW9Hcm91cE9wdGlvbj47XHJcbiAgICB6b29tUnB3U2VydmljZUNvbHVtbnM6IEFycmF5PFBvTG9va3VwQ29sdW1uPjtcclxuICAgIG1vZGVsOiBTY2hlZHVsZVBhcmFtZXRlcnM7XHJcbiAgICBwcml2YXRlIGpzb25PYmplY3Q6IGFueSA9IHt9O1xyXG5cclxuICAgIGxpdGVyYWxzOiBhbnkgPSB7fTtcclxuXHJcbiAgICBuZ09uSW5pdCgpIHtcclxuICAgICAgICAvKiBWRVJJRklDQVIgQ09NTyBGSUNBUsOBIEEgVFJBRFXDh8ODT1xyXG4gICAgICAgIGZvcmtKb2luKFxyXG4gICAgICAgICAgICAgIHRoaXMucG9JMThuU2VydmljZS5nZXRMaXRlcmFscygpLFxyXG4gICAgICAgICAgICAgIHRoaXMucG9JMThuU2VydmljZS5nZXRMaXRlcmFscyh7IGNvbnRleHQ6ICdnZW5lcmFsUnB3JyB9KVxyXG4gICAgICAgICAgKS5zdWJzY3JpYmUobGl0ZXJhbHMgPT4ge1xyXG4gICAgICAgICAgICAgIGxpdGVyYWxzLm1hcChpdGVtID0+IE9iamVjdC5hc3NpZ24odGhpcy5saXRlcmFscywgaXRlbSkgKTtcclxuICAgICAgICAgICAgICB0aGlzLnNldHVwQ29tcG9uZW50cygpO1xyXG4gICAgICAgICAgfSk7Ki9cclxuXHJcbiAgICAgICAgdGhpcy5zZXR1cENvbXBvbmVudHMoKTtcclxuICAgIH1cclxuXHJcbiAgICBzZXR1cENvbXBvbmVudHMoKSB7XHJcbiAgICAgICAgdGhpcy5leGVjdXRpb25UeXBlT3B0aW9ucyA9IFtcclxuICAgICAgICAgICAgeyBsYWJlbDogJ0V4ZWN1dGFyIEhvamUnLCB2YWx1ZTogMSB9LFxyXG4gICAgICAgICAgICB7IGxhYmVsOiAnQWdlbmRhciBFeGVjdcOnw6NvJywgdmFsdWU6IDIgfVxyXG4gICAgICAgIF07XHJcblxyXG4gICAgICAgIHRoaXMuZnJlcXVlbmN5T3B0aW9ucyA9IFtcclxuICAgICAgICAgICAgeyBsYWJlbDogJ1VtYSB2ZXogbm8gZGlhJywgdmFsdWU6ICdubycgfSxcclxuICAgICAgICAgICAgeyBsYWJlbDogJ1bDoXJpYXMgdmV6ZXMgbm8gZGlhJywgdmFsdWU6ICd5ZXMnIH1cclxuICAgICAgICBdO1xyXG5cclxuICAgICAgICB0aGlzLmZyZXF1ZW5jeVR5cGVPcHRpb25zID0gW1xyXG4gICAgICAgICAgICB7IGxhYmVsOiAnSG9yYShzKScsIHZhbHVlOiAnaG91cicgfSxcclxuICAgICAgICAgICAgeyBsYWJlbDogJ01pbnV0byhzKScsIHZhbHVlOiAnbWludXRlJyB9XHJcbiAgICAgICAgXTtcclxuXHJcbiAgICAgICAgdGhpcy53ZWVrbHlPcHRpb25zID0gW1xyXG4gICAgICAgICAgICB7IGxhYmVsOiAnRG9taW5nbycsIHZhbHVlOiAnU3VuZGF5JyB9LFxyXG4gICAgICAgICAgICB7IGxhYmVsOiAnU2VndW5kYScsIHZhbHVlOiAnTW9uZGF5JyB9LFxyXG4gICAgICAgICAgICB7IGxhYmVsOiAnVGVyw6dhJywgdmFsdWU6ICdUdWVzZGF5JyB9LFxyXG4gICAgICAgICAgICB7IGxhYmVsOiAnUXVhcnRhJywgdmFsdWU6ICdXZWRuZXNkYXknIH0sXHJcbiAgICAgICAgICAgIHsgbGFiZWw6ICdRdWludGEnLCB2YWx1ZTogJ1RodXJzZGF5JyB9LFxyXG4gICAgICAgICAgICB7IGxhYmVsOiAnU2V4dGEnLCB2YWx1ZTogJ0ZyaWRheScgfSxcclxuICAgICAgICAgICAgeyBsYWJlbDogJ1PDoWJhZG8nLCB2YWx1ZTogJ1NhdHVyZGF5JyB9XHJcbiAgICAgICAgXTtcclxuXHJcbiAgICAgICAgdGhpcy56b29tUnB3U2VydmljZUNvbHVtbnMgPSBbXHJcbiAgICAgICAgICAgIHsgcHJvcGVydHk6ICdjb2RlJywgbGFiZWw6ICdTZXJ2aWRvcicsIHR5cGU6ICdzdHJpbmcnLCB3aWR0aDogJzIwJScgfSxcclxuICAgICAgICAgICAgeyBwcm9wZXJ0eTogJ25hbWUnLCBsYWJlbDogJ0Rlc2NyacOnw6NvJywgdHlwZTogJ3N0cmluZycsIHdpZHRoOiAnODAlJyB9XHJcbiAgICAgICAgXTtcclxuXHJcbiAgICAgICAgdGhpcy5tb2RlbCA9IG5ldyBTY2hlZHVsZVBhcmFtZXRlcnMoKTtcclxuICAgICAgICB0aGlzLm1vZGVsLmV4ZWN1dGlvblR5cGUgPSAxO1xyXG4gICAgICAgIHRoaXMubW9kZWwucmVwZWF0VHlwZSA9IDE7XHJcbiAgICAgICAgdGhpcy5tb2RlbC5yZXBlYXRFeGVjdXRpb24gPSBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc2V0U2NoZWR1bGVQYXJhbWV0ZXJzKHNjaFBhcmFtOiBJU2NoZWR1bGVQYXJhbWV0ZXJzKSB7XHJcbiAgICAgICAgaWYgKCFzY2hQYXJhbSkgeyByZXR1cm47IH1cclxuICAgICAgICB0aGlzLm1vZGVsID0gc2NoUGFyYW07XHJcbiAgICB9XHJcblxyXG4gICAgZmllbGRScHdTZXJ2aWNlRm9ybWF0KHZhbHVlKSB7XHJcbiAgICAgICAgcmV0dXJuIGAke3ZhbHVlLmNvZGV9IC0gJHt2YWx1ZS5uYW1lfWA7XHJcbiAgICB9XHJcblxyXG4gICAgaXNFeGVjdXRpb25TY2hlZHVsZSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gKHRoaXMubW9kZWwuZXhlY3V0aW9uVHlwZSA9PT0gMik7XHJcbiAgICB9XHJcblxyXG4gICAgaXNSZXBlYXRFeGVjdXRpb24oKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMubW9kZWwucmVwZWF0RXhlY3V0aW9uO1xyXG4gICAgfVxyXG5cclxuICAgIGlzRnJlbnF1ZW5jeSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gKHRoaXMubW9kZWwuZnJlcXVlbmN5ID09PSAneWVzJyk7XHJcbiAgICB9XHJcblxyXG4gICAgY2hhbmdlUmVwZWF0RXhlY3V0aW9uKCkge1xyXG4gICAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSgpO1xyXG5cclxuICAgICAgICBpZiAoIXRoaXMubW9kZWwuZXhlY0FwcG9pbnRIb3VySW5pdCkgeyB0aGlzLm1vZGVsLmV4ZWNBcHBvaW50SG91ckluaXQgPSBgJHt0aGlzLmFkZFplcm8oZGF0ZS5nZXRIb3VycygpKX06JHt0aGlzLmFkZFplcm8oZGF0ZS5nZXRNaW51dGVzKCkpfWA7IH1cclxuICAgICAgICBpZiAoIXRoaXMubW9kZWwuZXhlY0FwcG9pbnRIb3VyRmluYWwpIHsgdGhpcy5tb2RlbC5leGVjQXBwb2ludEhvdXJGaW5hbCA9IGAke3RoaXMuYWRkWmVybyhkYXRlLmdldEhvdXJzKCkpfToke3RoaXMuYWRkWmVybyhkYXRlLmdldE1pbnV0ZXMoKSl9YDsgfVxyXG4gICAgICAgIHRoaXMubW9kZWwuc2VsZWN0V2Vla2x5cyA9IFtdO1xyXG4gICAgICAgIHRoaXMubW9kZWwuZGF5T2ZNb250aCA9IDA7XHJcbiAgICAgICAgdGhpcy5tb2RlbC5mcmVxdWVuY3kgPSAnbm8nO1xyXG4gICAgICAgIHRoaXMubW9kZWwuZnJlcXVlbmN5VHlwZSA9ICdob3VyJztcclxuICAgICAgICB0aGlzLm1vZGVsLmZyZXF1ZW5jeVZhbHVlID0gMDtcclxuICAgIH1cclxuXHJcbiAgICBjaGFuZ2VFeGVjdXRpb25UeXBlKCkge1xyXG4gICAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSgpO1xyXG5cclxuICAgICAgICB0aGlzLm1vZGVsLmV4ZWNBcHBvaW50RGF0ZSA9IGRhdGU7XHJcbiAgICAgICAgdGhpcy5tb2RlbC5leGVjQXBwb2ludEhvdXIgPSBgJHt0aGlzLmFkZFplcm8oZGF0ZS5nZXRIb3VycygpKX06JHt0aGlzLmFkZFplcm8oZGF0ZS5nZXRNaW51dGVzKCkpfWA7XHJcbiAgICB9XHJcblxyXG4gICAgY2hhbmdlVHlwZUZyZXF1ZW5jeSgpIHtcclxuICAgIH1cclxuXHJcbiAgICBnZXRBY3RpdmVUYWIoY29kVGFiOiBudW1iZXIpIHtcclxuICAgICAgICByZXR1cm4gKHRoaXMubW9kZWwucmVwZWF0VHlwZSA9PT0gY29kVGFiKTtcclxuICAgIH1cclxuXHJcbiAgICBzZXRBY3RpdmVUYWIoY29kVGFiOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLm1vZGVsLnJlcGVhdFR5cGUgPSBjb2RUYWI7XHJcbiAgICB9XHJcblxyXG4gICAgYWRkWmVybyhudW06IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICAgICAgbGV0IHN0ciA9IGAke251bX1gO1xyXG4gICAgICAgIGlmIChudW0gPCAxMCkgeyBzdHIgPSBgMCR7bnVtfWA7IH1cclxuICAgICAgICByZXR1cm4gc3RyO1xyXG4gICAgfVxyXG5cclxuICAgIGV4ZWN1dGVTY2hlZHVsZSgpIHtcclxuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZFBhcmFtcykgeyByZXR1cm47IH1cclxuICAgICAgICBpZiAoIXRoaXMudmFsaWRhdGUoKSkgeyByZXR1cm47IH1cclxuXHJcbiAgICAgICAgdGhpcy5qc29uT2JqZWN0ID0ge307XHJcbiAgICAgICAgdGhpcy5qc29uT2JqZWN0LnN0YXR1cyA9ICdhY3RpdmUnO1xyXG4gICAgICAgIHRoaXMuanNvbk9iamVjdC5wcm9jZXNzSUQgPSB0aGlzLnByb2dyYW1OYW1lO1xyXG4gICAgICAgIHRoaXMuanNvbk9iamVjdC5yZWN1cnJlbnQgPSB0aGlzLm1vZGVsLnJlcGVhdEV4ZWN1dGlvbjtcclxuICAgICAgICB0aGlzLmpzb25PYmplY3QuZXhlY3V0aW9uUGFyYW1ldGVyID0ge307XHJcblxyXG4gICAgICAgIGlmICh0aGlzLm1vZGVsLmV4ZWN1dGlvblR5cGUgPT09IDEpIHtcclxuICAgICAgICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgICAgICAgICAgIHRoaXMuanNvbk9iamVjdC5maXJzdEV4ZWN1dGlvbiA9IGAke2RhdGUuZ2V0RnVsbFllYXIoKX0tJHsoZGF0ZS5nZXRNb250aCgpICsgMSl9LSR7ZGF0ZS5nZXREYXRlKCl9VCR7dGhpcy5hZGRaZXJvKGRhdGUuZ2V0SG91cnMoKSl9OiR7dGhpcy5hZGRaZXJvKGRhdGUuZ2V0TWludXRlcygpKX06MDAuMDAwWmA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLm1vZGVsLmV4ZWN1dGlvblR5cGUgPT09IDIpIHtcclxuICAgICAgICAgICAgdGhpcy5qc29uT2JqZWN0LmZpcnN0RXhlY3V0aW9uID0gYCR7dGhpcy5tb2RlbC5leGVjQXBwb2ludERhdGV9VCR7dGhpcy5tb2RlbC5leGVjQXBwb2ludEhvdXJ9OjAwLjAwMFpgO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5qc29uT2JqZWN0LmV4ZWN1dGlvblBhcmFtZXRlci5wYXJhbWV0cm9zID0gW107XHJcbiAgICAgICAgdGhpcy5qc29uT2JqZWN0LmV4ZWN1dGlvblBhcmFtZXRlci5wYXJhbWV0cm9zWzBdID0geyBjaGF2ZTogJ3Jwd1NlcnZlcicsIHZhbG9yOiB0aGlzLm1vZGVsLmV4ZWN1dGlvblNlcnZlciB9O1xyXG4gICAgICAgIHRoaXMuanNvbk9iamVjdC5leGVjdXRpb25QYXJhbWV0ZXIucGFyYW1ldHJvc1sxXSA9IHsgY2hhdmU6ICdSUFdfUFJPR1JBTScsIHZhbG9yOiB0aGlzLmV4dGVybmFsTmFtZSB9O1xyXG4gICAgICAgIHRoaXMuanNvbk9iamVjdC5leGVjdXRpb25QYXJhbWV0ZXIucGFyYW1ldHJvc1syXSA9IHsgY2hhdmU6ICdSUFdfUFJHX0VNUzUnLCB2YWxvcjogdGhpcy5wcm9ncmFtRU1TNSA/ICd5ZXMnIDogJ25vJyB9O1xyXG4gICAgICAgIHRoaXMuanNvbk9iamVjdC5leGVjdXRpb25QYXJhbWV0ZXIucGFyYW1ldHJvc1szXSA9IHsgY2hhdmU6ICdSUFdfUFJHX1ZFUlMnLCB2YWxvcjogdGhpcy5wcm9ncmFtVmVyc2lvbiB9O1xyXG5cclxuICAgICAgICB0aGlzLmpzb25PYmplY3QuZXhlY3V0aW9uUGFyYW1ldGVyLnBhcmFtZXRyb3NbNF0gPSB7fTtcclxuICAgICAgICB0aGlzLmpzb25PYmplY3QuZXhlY3V0aW9uUGFyYW1ldGVyLnBhcmFtZXRyb3NbNF0ucGFyYW1ldHJvc19uZWdvY2lvID0gdGhpcy5wYXJhbWV0ZXJzO1xyXG5cclxuICAgICAgICAvLyBFeGVjdXRhIGhvamUgb3UgYWdlbmRhZGFcclxuICAgICAgICB0aGlzLnJwd1NlcnZpY2UuY3JlYXRlRXhlY3V0aW9uKHRoaXMuanNvbk9iamVjdCwgdGhpcy5sb2FkaW5nKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnBvTm90aWZpY2F0aW9uLnN1Y2Nlc3MoJ0FnZW5kYW1lbnRvIHJlYWxpemFkbyBjb20gc3VjZXNzbyAhJyk7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLm1vZGVsLnJlcGVhdEV4ZWN1dGlvbikge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5tb2RlbC5yZXBlYXRUeXBlID09PSAxKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmpzb25PYmplY3QuZGFpbHkgPSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaG91cjogdGhpcy5nZXRIb3VyT3JNaW51dGUodGhpcy5tb2RlbC5leGVjQXBwb2ludEhvdXJJbml0LCAnaCcpLFxyXG4gICAgICAgICAgICAgICAgICAgIG1pbnV0ZTogdGhpcy5nZXRIb3VyT3JNaW51dGUodGhpcy5tb2RlbC5leGVjQXBwb2ludEhvdXJJbml0LCAnbScpXHJcbiAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy5tb2RlbC5yZXBlYXRUeXBlID09PSAyKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmpzb25PYmplY3Qud2Vla2x5ID0ge1xyXG4gICAgICAgICAgICAgICAgICAgIGhvdXI6IHRoaXMuZ2V0SG91ck9yTWludXRlKHRoaXMubW9kZWwuZXhlY0FwcG9pbnRIb3VySW5pdCwgJ2gnKSxcclxuICAgICAgICAgICAgICAgICAgICBtaW51dGU6IHRoaXMuZ2V0SG91ck9yTWludXRlKHRoaXMubW9kZWwuZXhlY0FwcG9pbnRIb3VySW5pdCwgJ20nKSxcclxuICAgICAgICAgICAgICAgICAgICBkYXlzT2ZXZWVrOiB0aGlzLm1vZGVsLnNlbGVjdFdlZWtseXNcclxuICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmICh0aGlzLm1vZGVsLnJlcGVhdFR5cGUgPT09IDMpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuanNvbk9iamVjdC5tb250aGx5ID0ge1xyXG4gICAgICAgICAgICAgICAgICAgIGhvdXI6IHRoaXMuZ2V0SG91ck9yTWludXRlKHRoaXMubW9kZWwuZXhlY0FwcG9pbnRIb3VySW5pdCwgJ2gnKSxcclxuICAgICAgICAgICAgICAgICAgICBtaW51dGU6IHRoaXMuZ2V0SG91ck9yTWludXRlKHRoaXMubW9kZWwuZXhlY0FwcG9pbnRIb3VySW5pdCwgJ20nKSxcclxuICAgICAgICAgICAgICAgICAgICBkYXk6IHRoaXMubW9kZWwuZGF5T2ZNb250aFxyXG4gICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaWYgKHRoaXMuaXNGcmVucXVlbmN5KCkpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuanNvbk9iamVjdC5yYW5nZUV4ZWN1dGlvbnMgPSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZnJlcXVlbmN5OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IHRoaXMubW9kZWwuZnJlcXVlbmN5VHlwZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHRoaXMubW9kZWwuZnJlcXVlbmN5VmFsdWVcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIHJhbmdlTGltaXQ6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaG91cjogdGhpcy5nZXRIb3VyT3JNaW51dGUodGhpcy5tb2RlbC5leGVjQXBwb2ludEhvdXJGaW5hbCwgJ2gnKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWludXRlOiB0aGlzLmdldEhvdXJPck1pbnV0ZSh0aGlzLm1vZGVsLmV4ZWNBcHBvaW50SG91ckZpbmFsLCAnbScpXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy8gRXhlY3V0YSBhIGRpw6FyaWEsIHNlbWFuYWwgb3UgbWVuc2FsXHJcbiAgICAgICAgICAgIHRoaXMucnB3U2VydmljZS5jcmVhdGVFeGVjdXRpb24odGhpcy5qc29uT2JqZWN0LCB0aGlzLmxvYWRpbmcpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5lbmRFeGVjdXRpb24uZW1pdCh0aGlzLm1vZGVsKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRIb3VyT3JNaW51dGUodmFsdWU6IHN0cmluZywgdHlwZTogc3RyaW5nKTogbnVtYmVyIHtcclxuICAgICAgICBpZiAodHlwZSA9PT0gJ2gnKSB7IHJldHVybiArdmFsdWUuc3Vic3RyaW5nKDAsIDIpOyB9XHJcbiAgICAgICAgaWYgKHR5cGUgPT09ICdtJykgeyByZXR1cm4gK3ZhbHVlLnN1YnN0cmluZygzLCA2KTsgfVxyXG4gICAgfVxyXG5cclxuICAgIGNvbXBhcmVIb3VyKGhvdXJJbml0OiBzdHJpbmcsIGhvdXJGaW5hbDogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKGhvdXJJbml0ID09PSBob3VyRmluYWwpIHsgcmV0dXJuIGZhbHNlOyB9XHJcbiAgICAgICAgaWYgKHRoaXMuZ2V0SG91ck9yTWludXRlKGhvdXJJbml0LCAnaCcpIDwgdGhpcy5nZXRIb3VyT3JNaW51dGUoaG91ckZpbmFsLCAnaCcpKSB7IHJldHVybiB0cnVlOyB9XHJcbiAgICAgICAgaWYgKHRoaXMuZ2V0SG91ck9yTWludXRlKGhvdXJJbml0LCAnbScpID4gdGhpcy5nZXRIb3VyT3JNaW51dGUoaG91ckZpbmFsLCAnbScpKSB7IHJldHVybiBmYWxzZTsgfVxyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIHZhbGlkYXRlKCk6IGJvb2xlYW4ge1xyXG5cclxuICAgICAgICBpZiAoIXRoaXMuc2NoZWR1bGVFeGVjdXRpb25Gb3JtLnZhbGlkKSB7XHJcbiAgICAgICAgICAgIHRoaXMucG9Ob3RpZmljYXRpb24uZXJyb3IoJ1ZlcmlmaXF1ZSBhcyBpbmNvbnNpc3TDqm5jaWFzIGVtIHRlbGEuJyk7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICghdGhpcy5tb2RlbC5leGVjdXRpb25TZXJ2ZXIpIHtcclxuICAgICAgICAgICAgdGhpcy5wb05vdGlmaWNhdGlvbi5lcnJvcignU2Vydmlkb3IgZGUgRXhlY3XDp8OjbyBuw6NvIGZvaSBpbmZvcm1hZG8uJyk7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmlzRXhlY3V0aW9uU2NoZWR1bGUoKSAmJiAoIXRoaXMubW9kZWwuZXhlY0FwcG9pbnREYXRlIHx8ICF0aGlzLm1vZGVsLmV4ZWNBcHBvaW50SG91cikpIHtcclxuICAgICAgICAgICAgdGhpcy5wb05vdGlmaWNhdGlvbi5lcnJvcignSW5mb3JtYXIgYSBkYXRhIGUgYSBob3JhIHBhcmEgYWdlbmRhbWVudG8gZGEgZXhlY3XDp8Ojby4nKTtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMubW9kZWwucmVwZWF0RXhlY3V0aW9uKSB7XHJcbiAgICAgICAgICAgIGlmICghdGhpcy5tb2RlbC5leGVjQXBwb2ludEhvdXJJbml0KSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnBvTm90aWZpY2F0aW9uLmVycm9yKCdJbmZvcm1hciBhIGhvcmEgZGUgaW7DrWNpbyBwYXJhIGEgZXhlY3XDp8Ojby4nKTtcclxuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaWYgKHRoaXMubW9kZWwucmVwZWF0VHlwZSA9PT0gMiAmJiAodGhpcy5tb2RlbC5zZWxlY3RXZWVrbHlzLmxlbmd0aCA9PT0gMCkpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMucG9Ob3RpZmljYXRpb24uZXJyb3IoJ0luZm9ybWFyIG9zIGRpYXMgZGEgc2VtYW5hIHBhcmEgYSBleGVjdcOnw6NvLicpO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy5tb2RlbC5yZXBlYXRUeXBlID09PSAzICYmICghdGhpcy5tb2RlbC5kYXlPZk1vbnRoKSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5wb05vdGlmaWNhdGlvbi5lcnJvcignSW5mb3JtYXIgbyBkaWEgcGFyYSBhIGV4ZWN1w6fDo28uJyk7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmICh0aGlzLmlzRnJlbnF1ZW5jeSgpKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuY29tcGFyZUhvdXIodGhpcy5tb2RlbC5leGVjQXBwb2ludEhvdXJJbml0LCB0aGlzLm1vZGVsLmV4ZWNBcHBvaW50SG91ckZpbmFsKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucG9Ob3RpZmljYXRpb24uZXJyb3IoJ0hvcmEgRmltIGRldmUgc2VyIG1haW9yIHF1ZSBIb3JhIEluw61jaW8uJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLm1vZGVsLmZyZXF1ZW5jeVZhbHVlID09PSAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wb05vdGlmaWNhdGlvbi5lcnJvcignSW5mb3JtYXIgYSBmcmVxdcOqbmNpYSBkZSBleGVjdcOnw6NvIChBIGNhZGEgaG9yYS9taW51dG8pLicpO1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -1,131 +1,7 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
- */
5
- /**
6
- * @record
7
- */
8
- export function IScheduleParameters() { }
9
- if (false) {
10
- /** @type {?} */
11
- IScheduleParameters.prototype.executionType;
12
- /** @type {?} */
13
- IScheduleParameters.prototype.execAppointDate;
14
- /** @type {?} */
15
- IScheduleParameters.prototype.execAppointHour;
16
- /** @type {?} */
17
- IScheduleParameters.prototype.executionServer;
18
- /** @type {?} */
19
- IScheduleParameters.prototype.repeatExecution;
20
- /** @type {?} */
21
- IScheduleParameters.prototype.repeatType;
22
- /** @type {?} */
23
- IScheduleParameters.prototype.frequency;
24
- /** @type {?} */
25
- IScheduleParameters.prototype.frequencyValue;
26
- /** @type {?} */
27
- IScheduleParameters.prototype.frequencyType;
28
- /** @type {?} */
29
- IScheduleParameters.prototype.execAppointHourInit;
30
- /** @type {?} */
31
- IScheduleParameters.prototype.execAppointHourFinal;
32
- /** @type {?} */
33
- IScheduleParameters.prototype.selectWeeklys;
34
- /** @type {?} */
35
- IScheduleParameters.prototype.dayOfMonth;
36
- }
37
1
  export class ScheduleParameters {
38
2
  }
39
- if (false) {
40
- /** @type {?} */
41
- ScheduleParameters.prototype.executionType;
42
- /** @type {?} */
43
- ScheduleParameters.prototype.execAppointDate;
44
- /** @type {?} */
45
- ScheduleParameters.prototype.execAppointHour;
46
- /** @type {?} */
47
- ScheduleParameters.prototype.executionServer;
48
- /** @type {?} */
49
- ScheduleParameters.prototype.repeatExecution;
50
- /** @type {?} */
51
- ScheduleParameters.prototype.repeatType;
52
- /** @type {?} */
53
- ScheduleParameters.prototype.frequency;
54
- /** @type {?} */
55
- ScheduleParameters.prototype.frequencyValue;
56
- /** @type {?} */
57
- ScheduleParameters.prototype.frequencyType;
58
- /** @type {?} */
59
- ScheduleParameters.prototype.execAppointHourInit;
60
- /** @type {?} */
61
- ScheduleParameters.prototype.execAppointHourFinal;
62
- /** @type {?} */
63
- ScheduleParameters.prototype.selectWeeklys;
64
- /** @type {?} */
65
- ScheduleParameters.prototype.dayOfMonth;
66
- }
67
- /**
68
- * @record
69
- */
70
- export function IExecutionStatus() { }
71
- if (false) {
72
- /** @type {?} */
73
- IExecutionStatus.prototype.jobScheduleID;
74
- /** @type {?} */
75
- IExecutionStatus.prototype.executionID;
76
- /** @type {?} */
77
- IExecutionStatus.prototype.startedDate;
78
- /** @type {?} */
79
- IExecutionStatus.prototype.error;
80
- /** @type {?} */
81
- IExecutionStatus.prototype.status;
82
- }
83
3
  export class ExecutionStatus {
84
4
  }
85
- if (false) {
86
- /** @type {?} */
87
- ExecutionStatus.prototype.jobScheduleID;
88
- /** @type {?} */
89
- ExecutionStatus.prototype.executionID;
90
- /** @type {?} */
91
- ExecutionStatus.prototype.startedDate;
92
- /** @type {?} */
93
- ExecutionStatus.prototype.error;
94
- /** @type {?} */
95
- ExecutionStatus.prototype.status;
96
- }
97
- /**
98
- * @record
99
- */
100
- export function IExecutionParameters() { }
101
- if (false) {
102
- /** @type {?} */
103
- IExecutionParameters.prototype.executionServer;
104
- /** @type {?} */
105
- IExecutionParameters.prototype.programName;
106
- /** @type {?} */
107
- IExecutionParameters.prototype.externalName;
108
- /** @type {?} */
109
- IExecutionParameters.prototype.programEMS5;
110
- /** @type {?} */
111
- IExecutionParameters.prototype.programVersion;
112
- /** @type {?} */
113
- IExecutionParameters.prototype.businessParams;
114
- }
115
5
  export class ExecutionParameters {
116
6
  }
117
- if (false) {
118
- /** @type {?} */
119
- ExecutionParameters.prototype.executionServer;
120
- /** @type {?} */
121
- ExecutionParameters.prototype.programName;
122
- /** @type {?} */
123
- ExecutionParameters.prototype.externalName;
124
- /** @type {?} */
125
- ExecutionParameters.prototype.programEMS5;
126
- /** @type {?} */
127
- ExecutionParameters.prototype.programVersion;
128
- /** @type {?} */
129
- ExecutionParameters.prototype.businessParams;
130
- }
131
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90dnMtc2NoZWR1bGUtZXhlY3V0aW9uLm1vZGVsLmpzIiwic291cmNlUm9vdCI6Im5nOi8vZHRzLWJhY2tvZmZpY2UtdXRpbC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL3RvdHZzLXNjaGVkdWxlLWV4ZWN1dGlvbi90b3R2cy1zY2hlZHVsZS1leGVjdXRpb24ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLHlDQWNDOzs7SUFiRyw0Q0FBc0I7O0lBQ3RCLDhDQUFzQjs7SUFDdEIsOENBQXdCOztJQUN4Qiw4Q0FBd0I7O0lBQ3hCLDhDQUF5Qjs7SUFDekIseUNBQW1COztJQUNuQix3Q0FBa0I7O0lBQ2xCLDZDQUF1Qjs7SUFDdkIsNENBQXNCOztJQUN0QixrREFBNEI7O0lBQzVCLG1EQUE2Qjs7SUFDN0IsNENBQWtCOztJQUNsQix5Q0FBbUI7O0FBR3ZCLE1BQU0sT0FBTyxrQkFBa0I7Q0FjOUI7OztJQWJHLDJDQUFzQjs7SUFDdEIsNkNBQXNCOztJQUN0Qiw2Q0FBd0I7O0lBQ3hCLDZDQUF3Qjs7SUFDeEIsNkNBQXlCOztJQUN6Qix3Q0FBbUI7O0lBQ25CLHVDQUFrQjs7SUFDbEIsNENBQXVCOztJQUN2QiwyQ0FBc0I7O0lBQ3RCLGlEQUE0Qjs7SUFDNUIsa0RBQTZCOztJQUM3QiwyQ0FBa0I7O0lBQ2xCLHdDQUFtQjs7Ozs7QUFHdkIsc0NBTUM7OztJQUxHLHlDQUFzQjs7SUFDdEIsdUNBQW9COztJQUNwQix1Q0FBa0I7O0lBQ2xCLGlDQUFjOztJQUNkLGtDQUFlOztBQUduQixNQUFNLE9BQU8sZUFBZTtDQU0zQjs7O0lBTEcsd0NBQXNCOztJQUN0QixzQ0FBb0I7O0lBQ3BCLHNDQUFrQjs7SUFDbEIsZ0NBQWM7O0lBQ2QsaUNBQWU7Ozs7O0FBR25CLDBDQU9DOzs7SUFORywrQ0FBd0I7O0lBQ3hCLDJDQUFvQjs7SUFDcEIsNENBQXFCOztJQUNyQiwyQ0FBcUI7O0lBQ3JCLDhDQUF1Qjs7SUFDdkIsOENBQTJCOztBQUcvQixNQUFNLE9BQU8sbUJBQW1CO0NBTy9COzs7SUFORyw4Q0FBd0I7O0lBQ3hCLDBDQUFvQjs7SUFDcEIsMkNBQXFCOztJQUNyQiwwQ0FBcUI7O0lBQ3JCLDZDQUF1Qjs7SUFDdkIsNkNBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJU2NoZWR1bGVQYXJhbWV0ZXJzIHtcclxuICAgIGV4ZWN1dGlvblR5cGU6IG51bWJlcjtcclxuICAgIGV4ZWNBcHBvaW50RGF0ZTogRGF0ZTtcclxuICAgIGV4ZWNBcHBvaW50SG91cjogc3RyaW5nO1xyXG4gICAgZXhlY3V0aW9uU2VydmVyOiBzdHJpbmc7XHJcbiAgICByZXBlYXRFeGVjdXRpb246IGJvb2xlYW47XHJcbiAgICByZXBlYXRUeXBlOiBudW1iZXI7XHJcbiAgICBmcmVxdWVuY3k6IHN0cmluZztcclxuICAgIGZyZXF1ZW5jeVZhbHVlOiBudW1iZXI7XHJcbiAgICBmcmVxdWVuY3lUeXBlOiBzdHJpbmc7XHJcbiAgICBleGVjQXBwb2ludEhvdXJJbml0OiBzdHJpbmc7XHJcbiAgICBleGVjQXBwb2ludEhvdXJGaW5hbDogc3RyaW5nO1xyXG4gICAgc2VsZWN0V2Vla2x5czogW107XHJcbiAgICBkYXlPZk1vbnRoOiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBTY2hlZHVsZVBhcmFtZXRlcnMgaW1wbGVtZW50cyBJU2NoZWR1bGVQYXJhbWV0ZXJzIHtcclxuICAgIGV4ZWN1dGlvblR5cGU6IG51bWJlcjtcclxuICAgIGV4ZWNBcHBvaW50RGF0ZTogRGF0ZTtcclxuICAgIGV4ZWNBcHBvaW50SG91cjogc3RyaW5nO1xyXG4gICAgZXhlY3V0aW9uU2VydmVyOiBzdHJpbmc7XHJcbiAgICByZXBlYXRFeGVjdXRpb246IGJvb2xlYW47XHJcbiAgICByZXBlYXRUeXBlOiBudW1iZXI7XHJcbiAgICBmcmVxdWVuY3k6IHN0cmluZztcclxuICAgIGZyZXF1ZW5jeVZhbHVlOiBudW1iZXI7XHJcbiAgICBmcmVxdWVuY3lUeXBlOiBzdHJpbmc7XHJcbiAgICBleGVjQXBwb2ludEhvdXJJbml0OiBzdHJpbmc7XHJcbiAgICBleGVjQXBwb2ludEhvdXJGaW5hbDogc3RyaW5nO1xyXG4gICAgc2VsZWN0V2Vla2x5czogW107XHJcbiAgICBkYXlPZk1vbnRoOiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUV4ZWN1dGlvblN0YXR1cyB7XHJcbiAgICBqb2JTY2hlZHVsZUlEOiBzdHJpbmc7XHJcbiAgICBleGVjdXRpb25JRDogc3RyaW5nO1xyXG4gICAgc3RhcnRlZERhdGU6IERhdGU7XHJcbiAgICBlcnJvcjogc3RyaW5nO1xyXG4gICAgc3RhdHVzOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBFeGVjdXRpb25TdGF0dXMgaW1wbGVtZW50cyBJRXhlY3V0aW9uU3RhdHVzIHtcclxuICAgIGpvYlNjaGVkdWxlSUQ6IHN0cmluZztcclxuICAgIGV4ZWN1dGlvbklEOiBzdHJpbmc7XHJcbiAgICBzdGFydGVkRGF0ZTogRGF0ZTtcclxuICAgIGVycm9yOiBzdHJpbmc7XHJcbiAgICBzdGF0dXM6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJRXhlY3V0aW9uUGFyYW1ldGVycyB7XHJcbiAgICBleGVjdXRpb25TZXJ2ZXI6IHN0cmluZztcclxuICAgIHByb2dyYW1OYW1lOiBzdHJpbmc7XHJcbiAgICBleHRlcm5hbE5hbWU6IHN0cmluZztcclxuICAgIHByb2dyYW1FTVM1OiBib29sZWFuO1xyXG4gICAgcHJvZ3JhbVZlcnNpb246IHN0cmluZztcclxuICAgIGJ1c2luZXNzUGFyYW1zOiBBcnJheTxhbnk+O1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgRXhlY3V0aW9uUGFyYW1ldGVycyBpbXBsZW1lbnRzIElFeGVjdXRpb25QYXJhbWV0ZXJzIHtcclxuICAgIGV4ZWN1dGlvblNlcnZlcjogc3RyaW5nO1xyXG4gICAgcHJvZ3JhbU5hbWU6IHN0cmluZztcclxuICAgIGV4dGVybmFsTmFtZTogc3RyaW5nO1xyXG4gICAgcHJvZ3JhbUVNUzU6IGJvb2xlYW47XHJcbiAgICBwcm9ncmFtVmVyc2lvbjogc3RyaW5nO1xyXG4gICAgYnVzaW5lc3NQYXJhbXM6IEFycmF5PGFueT47XHJcbn1cclxuIl19
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90dnMtc2NoZWR1bGUtZXhlY3V0aW9uLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHRzLWJhY2tvZmZpY2UtdXRpbC9zcmMvbGliL2NvbXBvbmVudHMvdG90dnMtc2NoZWR1bGUtZXhlY3V0aW9uL3RvdHZzLXNjaGVkdWxlLWV4ZWN1dGlvbi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQkEsTUFBTSxPQUFPLGtCQUFrQjtDQWM5QjtBQVVELE1BQU0sT0FBTyxlQUFlO0NBTTNCO0FBV0QsTUFBTSxPQUFPLG1CQUFtQjtDQU8vQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgSVNjaGVkdWxlUGFyYW1ldGVycyB7XHJcbiAgICBleGVjdXRpb25UeXBlOiBudW1iZXI7XHJcbiAgICBleGVjQXBwb2ludERhdGU6IERhdGU7XHJcbiAgICBleGVjQXBwb2ludEhvdXI6IHN0cmluZztcclxuICAgIGV4ZWN1dGlvblNlcnZlcjogc3RyaW5nO1xyXG4gICAgcmVwZWF0RXhlY3V0aW9uOiBib29sZWFuO1xyXG4gICAgcmVwZWF0VHlwZTogbnVtYmVyO1xyXG4gICAgZnJlcXVlbmN5OiBzdHJpbmc7XHJcbiAgICBmcmVxdWVuY3lWYWx1ZTogbnVtYmVyO1xyXG4gICAgZnJlcXVlbmN5VHlwZTogc3RyaW5nO1xyXG4gICAgZXhlY0FwcG9pbnRIb3VySW5pdDogc3RyaW5nO1xyXG4gICAgZXhlY0FwcG9pbnRIb3VyRmluYWw6IHN0cmluZztcclxuICAgIHNlbGVjdFdlZWtseXM6IFtdO1xyXG4gICAgZGF5T2ZNb250aDogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgU2NoZWR1bGVQYXJhbWV0ZXJzIGltcGxlbWVudHMgSVNjaGVkdWxlUGFyYW1ldGVycyB7XHJcbiAgICBleGVjdXRpb25UeXBlOiBudW1iZXI7XHJcbiAgICBleGVjQXBwb2ludERhdGU6IERhdGU7XHJcbiAgICBleGVjQXBwb2ludEhvdXI6IHN0cmluZztcclxuICAgIGV4ZWN1dGlvblNlcnZlcjogc3RyaW5nO1xyXG4gICAgcmVwZWF0RXhlY3V0aW9uOiBib29sZWFuO1xyXG4gICAgcmVwZWF0VHlwZTogbnVtYmVyO1xyXG4gICAgZnJlcXVlbmN5OiBzdHJpbmc7XHJcbiAgICBmcmVxdWVuY3lWYWx1ZTogbnVtYmVyO1xyXG4gICAgZnJlcXVlbmN5VHlwZTogc3RyaW5nO1xyXG4gICAgZXhlY0FwcG9pbnRIb3VySW5pdDogc3RyaW5nO1xyXG4gICAgZXhlY0FwcG9pbnRIb3VyRmluYWw6IHN0cmluZztcclxuICAgIHNlbGVjdFdlZWtseXM6IFtdO1xyXG4gICAgZGF5T2ZNb250aDogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElFeGVjdXRpb25TdGF0dXMge1xyXG4gICAgam9iU2NoZWR1bGVJRDogc3RyaW5nO1xyXG4gICAgZXhlY3V0aW9uSUQ6IHN0cmluZztcclxuICAgIHN0YXJ0ZWREYXRlOiBEYXRlO1xyXG4gICAgZXJyb3I6IHN0cmluZztcclxuICAgIHN0YXR1czogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgRXhlY3V0aW9uU3RhdHVzIGltcGxlbWVudHMgSUV4ZWN1dGlvblN0YXR1cyB7XHJcbiAgICBqb2JTY2hlZHVsZUlEOiBzdHJpbmc7XHJcbiAgICBleGVjdXRpb25JRDogc3RyaW5nO1xyXG4gICAgc3RhcnRlZERhdGU6IERhdGU7XHJcbiAgICBlcnJvcjogc3RyaW5nO1xyXG4gICAgc3RhdHVzOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUV4ZWN1dGlvblBhcmFtZXRlcnMge1xyXG4gICAgZXhlY3V0aW9uU2VydmVyOiBzdHJpbmc7XHJcbiAgICBwcm9ncmFtTmFtZTogc3RyaW5nO1xyXG4gICAgZXh0ZXJuYWxOYW1lOiBzdHJpbmc7XHJcbiAgICBwcm9ncmFtRU1TNTogYm9vbGVhbjtcclxuICAgIHByb2dyYW1WZXJzaW9uOiBzdHJpbmc7XHJcbiAgICBidXNpbmVzc1BhcmFtczogQXJyYXk8YW55PjtcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEV4ZWN1dGlvblBhcmFtZXRlcnMgaW1wbGVtZW50cyBJRXhlY3V0aW9uUGFyYW1ldGVycyB7XHJcbiAgICBleGVjdXRpb25TZXJ2ZXI6IHN0cmluZztcclxuICAgIHByb2dyYW1OYW1lOiBzdHJpbmc7XHJcbiAgICBleHRlcm5hbE5hbWU6IHN0cmluZztcclxuICAgIHByb2dyYW1FTVM1OiBib29sZWFuO1xyXG4gICAgcHJvZ3JhbVZlcnNpb246IHN0cmluZztcclxuICAgIGJ1c2luZXNzUGFyYW1zOiBBcnJheTxhbnk+O1xyXG59XHJcbiJdfQ==