@po-ui/ng-components 17.4.0 → 17.6.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 (44) hide show
  1. package/esm2022/lib/components/po-dynamic/index.mjs +3 -1
  2. package/esm2022/lib/components/po-dynamic/po-dynamic-container/po-dynamic-container.component.mjs +56 -0
  3. package/esm2022/lib/components/po-dynamic/po-dynamic-field.interface.mjs +1 -1
  4. package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-fields/po-dynamic-form-fields-base.component.mjs +8 -5
  5. package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-fields/po-dynamic-form-fields.component.mjs +221 -196
  6. package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form.component.mjs +9 -2
  7. package/esm2022/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view-base.component.mjs +17 -6
  8. package/esm2022/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view.component.mjs +68 -39
  9. package/esm2022/lib/components/po-dynamic/po-dynamic.module.mjs +20 -7
  10. package/esm2022/lib/components/po-dynamic/shared/po-dynamic-shared-base.mjs +41 -0
  11. package/esm2022/lib/components/po-field/po-combo/po-combo.component.mjs +8 -1
  12. package/esm2022/lib/components/po-search/interfaces/po-search-option.interface.mjs +2 -0
  13. package/esm2022/lib/components/po-search/po-search-base.component.mjs +27 -2
  14. package/esm2022/lib/components/po-search/po-search.component.mjs +264 -48
  15. package/esm2022/lib/components/po-search/po-search.module.mjs +25 -4
  16. package/fesm2022/po-ui-ng-components.mjs +1001 -564
  17. package/fesm2022/po-ui-ng-components.mjs.map +1 -1
  18. package/lib/components/po-dynamic/index.d.ts +2 -0
  19. package/lib/components/po-dynamic/po-dynamic-container/po-dynamic-container.component.d.ts +8 -0
  20. package/lib/components/po-dynamic/po-dynamic-field.interface.d.ts +7 -0
  21. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-fields/po-dynamic-form-fields-base.component.d.ts +2 -3
  22. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form.component.d.ts +7 -0
  23. package/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view-base.component.d.ts +5 -3
  24. package/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view.component.d.ts +5 -0
  25. package/lib/components/po-dynamic/po-dynamic.module.d.ts +11 -9
  26. package/lib/components/po-dynamic/shared/po-dynamic-shared-base.d.ts +18 -0
  27. package/lib/components/po-field/po-combo/po-combo.component.d.ts +1 -0
  28. package/lib/components/po-search/interfaces/po-search-option.interface.d.ts +21 -0
  29. package/lib/components/po-search/po-search-base.component.d.ts +20 -1
  30. package/lib/components/po-search/po-search.component.d.ts +53 -4
  31. package/lib/components/po-search/po-search.module.d.ts +2 -1
  32. package/package.json +4 -4
  33. package/po-ui-ng-components-17.6.0.tgz +0 -0
  34. package/schematics/ng-add/index.js +1 -1
  35. package/schematics/ng-update/v14/index.js +1 -1
  36. package/schematics/ng-update/v15/index.js +1 -1
  37. package/schematics/ng-update/v16/index.js +1 -1
  38. package/schematics/ng-update/v17/index.js +1 -1
  39. package/schematics/ng-update/v2/index.js +1 -1
  40. package/schematics/ng-update/v3/index.js +1 -1
  41. package/schematics/ng-update/v4/index.js +1 -1
  42. package/schematics/ng-update/v5/index.js +1 -1
  43. package/schematics/ng-update/v6/index.js +1 -1
  44. package/po-ui-ng-components-17.4.0.tgz +0 -0
@@ -23,270 +23,293 @@ import * as i17 from "../../../po-field/po-textarea/po-textarea.component";
23
23
  import * as i18 from "../../../po-field/po-upload/po-upload.component";
24
24
  import * as i19 from "../../../po-field/po-checkbox/po-checkbox.component";
25
25
  import * as i20 from "../../../po-field/po-switch/po-switch.component";
26
+ import * as i21 from "../../po-dynamic-container/po-dynamic-container.component";
26
27
  const _c0 = ["component"];
27
- function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_divider_1_Template(rf, ctx) { if (rf & 1) {
28
- i0.ɵɵelement(0, "po-divider", 19);
28
+ function PoDynamicFormFieldsComponent_div_0_ng_container_1_Template(rf, ctx) { if (rf & 1) {
29
+ i0.ɵɵelementContainer(0);
30
+ } }
31
+ const _c1 = a0 => ({ $implicit: a0 });
32
+ function PoDynamicFormFieldsComponent_div_0_Template(rf, ctx) { if (rf & 1) {
33
+ i0.ɵɵelementStart(0, "div", 3);
34
+ i0.ɵɵtemplate(1, PoDynamicFormFieldsComponent_div_0_ng_container_1_Template, 1, 0, "ng-container", 4);
35
+ i0.ɵɵelementEnd();
36
+ } if (rf & 2) {
37
+ const ctx_r0 = i0.ɵɵnextContext();
38
+ const _r4 = i0.ɵɵreference(4);
39
+ const _r2 = i0.ɵɵreference(2);
40
+ i0.ɵɵclassProp("po-dynamic", ctx_r0.hasContainers);
41
+ i0.ɵɵadvance();
42
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r0.hasContainers ? _r4 : _r2)("ngTemplateOutletContext", i0.ɵɵpureFunction1(4, _c1, ctx_r0.hasContainers ? ctx_r0.containerFields : ctx_r0.visibleFields));
43
+ } }
44
+ function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_divider_1_Template(rf, ctx) { if (rf & 1) {
45
+ i0.ɵɵelement(0, "po-divider", 22);
29
46
  } if (rf & 2) {
30
- const field_r2 = i0.ɵɵnextContext().$implicit;
31
- i0.ɵɵproperty("p-label", field_r2.divider);
47
+ const field_r8 = i0.ɵɵnextContext().$implicit;
48
+ i0.ɵɵproperty("p-label", field_r8.divider);
32
49
  } }
33
- function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_datepicker_2_Template(rf, ctx) { if (rf & 1) {
34
- const _r23 = i0.ɵɵgetCurrentView();
35
- i0.ɵɵelementStart(0, "po-datepicker", 20, 21);
36
- i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_datepicker_2_Template_po_datepicker_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r23); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r22 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r22.value[field_r2.property], $event) || (ctx_r22.value[field_r2.property] = $event); return i0.ɵɵresetView($event); });
37
- i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_datepicker_2_Template_po_datepicker_p_change_0_listener() { i0.ɵɵrestoreView(_r23); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r25 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r25.onChangeField(field_r2)); });
50
+ function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_datepicker_2_Template(rf, ctx) { if (rf & 1) {
51
+ const _r29 = i0.ɵɵgetCurrentView();
52
+ i0.ɵɵelementStart(0, "po-datepicker", 23, 24);
53
+ i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_datepicker_2_Template_po_datepicker_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r29); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r28 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r28.value[field_r8.property], $event) || (ctx_r28.value[field_r8.property] = $event); return i0.ɵɵresetView($event); });
54
+ i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_datepicker_2_Template_po_datepicker_p_change_0_listener() { i0.ɵɵrestoreView(_r29); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r31 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r31.onChangeField(field_r8)); });
38
55
  i0.ɵɵelementEnd();
39
56
  } if (rf & 2) {
40
- const field_r2 = i0.ɵɵnextContext().$implicit;
41
- const ctx_r4 = i0.ɵɵnextContext(2);
42
- i0.ɵɵproperty("name", field_r2.property);
43
- i0.ɵɵtwoWayProperty("ngModel", ctx_r4.value[field_r2.property]);
44
- i0.ɵɵproperty("ngClass", field_r2.componentClass)("p-clean", field_r2.clean)("p-disabled", ctx_r4.isDisabled(field_r2))("p-error-pattern", field_r2.errorMessage)("p-auto-focus", field_r2.focus)("p-format", field_r2.format)("p-help", field_r2.help)("p-iso-format", field_r2.isoFormat)("p-label", field_r2.label)("p-locale", field_r2.locale)("p-max-date", field_r2.maxValue)("p-min-date", field_r2.minValue)("p-no-autocomplete", field_r2.noAutocomplete)("p-optional", field_r2.optional)("p-readonly", field_r2.readonly)("p-required", field_r2.required)("p-show-required", field_r2.showRequired)("p-placeholder", field_r2.placeholder);
57
+ const field_r8 = i0.ɵɵnextContext().$implicit;
58
+ const ctx_r10 = i0.ɵɵnextContext(2);
59
+ i0.ɵɵproperty("name", field_r8.property);
60
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r10.value[field_r8.property]);
61
+ i0.ɵɵproperty("ngClass", field_r8.componentClass)("p-clean", field_r8.clean)("p-disabled", ctx_r10.isDisabled(field_r8))("p-error-pattern", field_r8.errorMessage)("p-auto-focus", field_r8.focus)("p-format", field_r8.format)("p-help", field_r8.help)("p-iso-format", field_r8.isoFormat)("p-label", field_r8.label)("p-locale", field_r8.locale)("p-max-date", field_r8.maxValue)("p-min-date", field_r8.minValue)("p-no-autocomplete", field_r8.noAutocomplete)("p-optional", field_r8.optional)("p-readonly", field_r8.readonly)("p-required", field_r8.required)("p-show-required", field_r8.showRequired)("p-placeholder", field_r8.placeholder);
45
62
  } }
46
- function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_datepicker_range_3_Template(rf, ctx) { if (rf & 1) {
47
- const _r30 = i0.ɵɵgetCurrentView();
48
- i0.ɵɵelementStart(0, "po-datepicker-range", 22, 21);
49
- i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_datepicker_range_3_Template_po_datepicker_range_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r30); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r29 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r29.value[field_r2.property], $event) || (ctx_r29.value[field_r2.property] = $event); return i0.ɵɵresetView($event); });
50
- i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_datepicker_range_3_Template_po_datepicker_range_p_change_0_listener() { i0.ɵɵrestoreView(_r30); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r32 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r32.onChangeField(field_r2)); });
63
+ function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_datepicker_range_3_Template(rf, ctx) { if (rf & 1) {
64
+ const _r36 = i0.ɵɵgetCurrentView();
65
+ i0.ɵɵelementStart(0, "po-datepicker-range", 25, 24);
66
+ i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_datepicker_range_3_Template_po_datepicker_range_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r36); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r35 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r35.value[field_r8.property], $event) || (ctx_r35.value[field_r8.property] = $event); return i0.ɵɵresetView($event); });
67
+ i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_datepicker_range_3_Template_po_datepicker_range_p_change_0_listener() { i0.ɵɵrestoreView(_r36); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r38 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r38.onChangeField(field_r8)); });
51
68
  i0.ɵɵelementEnd();
52
69
  } if (rf & 2) {
53
- const field_r2 = i0.ɵɵnextContext().$implicit;
54
- const ctx_r5 = i0.ɵɵnextContext(2);
55
- i0.ɵɵproperty("name", field_r2.property);
56
- i0.ɵɵtwoWayProperty("ngModel", ctx_r5.value[field_r2.property]);
57
- i0.ɵɵproperty("ngClass", field_r2.componentClass)("p-clean", field_r2.clean)("p-disabled", ctx_r5.isDisabled(field_r2))("p-auto-focus", field_r2.focus)("p-help", field_r2.help)("p-label", field_r2.label)("p-literals", field_r2.literals)("p-max-date", field_r2.maxValue)("p-min-date", field_r2.minValue)("p-no-autocomplete", field_r2.noAutocomplete)("p-optional", field_r2.optional)("p-readonly", field_r2.readonly)("p-required", field_r2.required)("p-show-required", field_r2.showRequired);
70
+ const field_r8 = i0.ɵɵnextContext().$implicit;
71
+ const ctx_r11 = i0.ɵɵnextContext(2);
72
+ i0.ɵɵproperty("name", field_r8.property);
73
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r11.value[field_r8.property]);
74
+ i0.ɵɵproperty("ngClass", field_r8.componentClass)("p-clean", field_r8.clean)("p-disabled", ctx_r11.isDisabled(field_r8))("p-auto-focus", field_r8.focus)("p-help", field_r8.help)("p-label", field_r8.label)("p-literals", field_r8.literals)("p-max-date", field_r8.maxValue)("p-min-date", field_r8.minValue)("p-no-autocomplete", field_r8.noAutocomplete)("p-optional", field_r8.optional)("p-readonly", field_r8.readonly)("p-required", field_r8.required)("p-show-required", field_r8.showRequired);
58
75
  } }
59
- function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_input_4_Template(rf, ctx) { if (rf & 1) {
60
- const _r37 = i0.ɵɵgetCurrentView();
61
- i0.ɵɵelementStart(0, "po-input", 23, 21);
62
- i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_input_4_Template_po_input_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r37); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r36 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r36.value[field_r2.property], $event) || (ctx_r36.value[field_r2.property] = $event); return i0.ɵɵresetView($event); });
63
- i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_input_4_Template_po_input_p_change_0_listener() { i0.ɵɵrestoreView(_r37); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r39 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r39.onChangeField(field_r2)); })("p-change-model", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_input_4_Template_po_input_p_change_model_0_listener() { i0.ɵɵrestoreView(_r37); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r41 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r41.onChangeFieldModel(field_r2)); });
76
+ function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_input_4_Template(rf, ctx) { if (rf & 1) {
77
+ const _r43 = i0.ɵɵgetCurrentView();
78
+ i0.ɵɵelementStart(0, "po-input", 26, 24);
79
+ i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_input_4_Template_po_input_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r43); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r42 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r42.value[field_r8.property], $event) || (ctx_r42.value[field_r8.property] = $event); return i0.ɵɵresetView($event); });
80
+ i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_input_4_Template_po_input_p_change_0_listener() { i0.ɵɵrestoreView(_r43); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r45 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r45.onChangeField(field_r8)); })("p-change-model", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_input_4_Template_po_input_p_change_model_0_listener() { i0.ɵɵrestoreView(_r43); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r47 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r47.onChangeFieldModel(field_r8)); });
64
81
  i0.ɵɵelementEnd();
65
82
  } if (rf & 2) {
66
- const field_r2 = i0.ɵɵnextContext().$implicit;
67
- const ctx_r6 = i0.ɵɵnextContext(2);
68
- i0.ɵɵproperty("name", field_r2.property);
69
- i0.ɵɵtwoWayProperty("ngModel", ctx_r6.value[field_r2.property]);
70
- i0.ɵɵproperty("ngClass", field_r2.componentClass)("p-clean", field_r2.clean)("p-disabled", ctx_r6.isDisabled(field_r2))("p-error-pattern", field_r2.errorMessage)("p-auto-focus", field_r2.focus)("p-help", field_r2.help)("p-label", field_r2.label)("p-mask-format-model", field_r2.maskFormatModel)("p-mask", field_r2.mask)("p-maxlength", field_r2.maxLength)("p-minlength", field_r2.minLength)("p-no-autocomplete", field_r2.noAutocomplete)("p-optional", field_r2.optional)("p-pattern", field_r2.pattern)("p-required", field_r2.required)("p-show-required", field_r2.showRequired)("p-icon", field_r2.icon)("p-placeholder", field_r2.placeholder)("p-readonly", field_r2.readonly);
83
+ const field_r8 = i0.ɵɵnextContext().$implicit;
84
+ const ctx_r12 = i0.ɵɵnextContext(2);
85
+ i0.ɵɵproperty("name", field_r8.property);
86
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r12.value[field_r8.property]);
87
+ i0.ɵɵproperty("ngClass", field_r8.componentClass)("p-clean", field_r8.clean)("p-disabled", ctx_r12.isDisabled(field_r8))("p-error-pattern", field_r8.errorMessage)("p-auto-focus", field_r8.focus)("p-help", field_r8.help)("p-label", field_r8.label)("p-mask-format-model", field_r8.maskFormatModel)("p-mask", field_r8.mask)("p-maxlength", field_r8.maxLength)("p-minlength", field_r8.minLength)("p-no-autocomplete", field_r8.noAutocomplete)("p-optional", field_r8.optional)("p-pattern", field_r8.pattern)("p-required", field_r8.required)("p-show-required", field_r8.showRequired)("p-icon", field_r8.icon)("p-placeholder", field_r8.placeholder)("p-readonly", field_r8.readonly);
71
88
  } }
72
- function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_number_5_Template(rf, ctx) { if (rf & 1) {
73
- const _r46 = i0.ɵɵgetCurrentView();
74
- i0.ɵɵelementStart(0, "po-number", 24, 21);
75
- i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_number_5_Template_po_number_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r46); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r45 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r45.value[field_r2.property], $event) || (ctx_r45.value[field_r2.property] = $event); return i0.ɵɵresetView($event); });
76
- i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_number_5_Template_po_number_p_change_0_listener() { i0.ɵɵrestoreView(_r46); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r48 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r48.onChangeField(field_r2)); })("p-change-model", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_number_5_Template_po_number_p_change_model_0_listener() { i0.ɵɵrestoreView(_r46); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r50 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r50.onChangeFieldModel(field_r2)); });
89
+ function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_number_5_Template(rf, ctx) { if (rf & 1) {
90
+ const _r52 = i0.ɵɵgetCurrentView();
91
+ i0.ɵɵelementStart(0, "po-number", 27, 24);
92
+ i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_number_5_Template_po_number_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r52); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r51 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r51.value[field_r8.property], $event) || (ctx_r51.value[field_r8.property] = $event); return i0.ɵɵresetView($event); });
93
+ i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_number_5_Template_po_number_p_change_0_listener() { i0.ɵɵrestoreView(_r52); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r54 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r54.onChangeField(field_r8)); })("p-change-model", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_number_5_Template_po_number_p_change_model_0_listener() { i0.ɵɵrestoreView(_r52); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r56 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r56.onChangeFieldModel(field_r8)); });
77
94
  i0.ɵɵelementEnd();
78
95
  } if (rf & 2) {
79
- const field_r2 = i0.ɵɵnextContext().$implicit;
80
- const ctx_r7 = i0.ɵɵnextContext(2);
81
- i0.ɵɵproperty("name", field_r2.property);
82
- i0.ɵɵtwoWayProperty("ngModel", ctx_r7.value[field_r2.property]);
83
- i0.ɵɵproperty("ngClass", field_r2.componentClass)("p-clean", field_r2.clean)("p-disabled", ctx_r7.isDisabled(field_r2))("p-error-pattern", field_r2.errorMessage)("p-auto-focus", field_r2.focus)("p-help", field_r2.help)("p-label", field_r2.label)("p-min", field_r2.minValue)("p-max", field_r2.maxValue)("p-maxlength", field_r2.maxLength)("p-minlength", field_r2.minLength)("p-no-autocomplete", field_r2.noAutocomplete)("p-optional", field_r2.optional)("p-step", field_r2.step)("p-readonly", field_r2.readonly)("p-required", field_r2.required)("p-show-required", field_r2.showRequired)("p-icon", field_r2.icon)("p-placeholder", field_r2.placeholder);
96
+ const field_r8 = i0.ɵɵnextContext().$implicit;
97
+ const ctx_r13 = i0.ɵɵnextContext(2);
98
+ i0.ɵɵproperty("name", field_r8.property);
99
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r13.value[field_r8.property]);
100
+ i0.ɵɵproperty("ngClass", field_r8.componentClass)("p-clean", field_r8.clean)("p-disabled", ctx_r13.isDisabled(field_r8))("p-error-pattern", field_r8.errorMessage)("p-auto-focus", field_r8.focus)("p-help", field_r8.help)("p-label", field_r8.label)("p-min", field_r8.minValue)("p-max", field_r8.maxValue)("p-maxlength", field_r8.maxLength)("p-minlength", field_r8.minLength)("p-no-autocomplete", field_r8.noAutocomplete)("p-optional", field_r8.optional)("p-step", field_r8.step)("p-readonly", field_r8.readonly)("p-required", field_r8.required)("p-show-required", field_r8.showRequired)("p-icon", field_r8.icon)("p-placeholder", field_r8.placeholder);
84
101
  } }
85
- function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_decimal_6_Template(rf, ctx) { if (rf & 1) {
86
- const _r55 = i0.ɵɵgetCurrentView();
87
- i0.ɵɵelementStart(0, "po-decimal", 25, 21);
88
- i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_decimal_6_Template_po_decimal_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r55); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r54 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r54.value[field_r2.property], $event) || (ctx_r54.value[field_r2.property] = $event); return i0.ɵɵresetView($event); });
89
- i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_decimal_6_Template_po_decimal_p_change_0_listener() { i0.ɵɵrestoreView(_r55); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r57 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r57.onChangeField(field_r2)); })("p-change-model", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_decimal_6_Template_po_decimal_p_change_model_0_listener() { i0.ɵɵrestoreView(_r55); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r59 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r59.onChangeFieldModel(field_r2)); });
102
+ function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_decimal_6_Template(rf, ctx) { if (rf & 1) {
103
+ const _r61 = i0.ɵɵgetCurrentView();
104
+ i0.ɵɵelementStart(0, "po-decimal", 28, 24);
105
+ i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_decimal_6_Template_po_decimal_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r61); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r60 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r60.value[field_r8.property], $event) || (ctx_r60.value[field_r8.property] = $event); return i0.ɵɵresetView($event); });
106
+ i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_decimal_6_Template_po_decimal_p_change_0_listener() { i0.ɵɵrestoreView(_r61); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r63 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r63.onChangeField(field_r8)); })("p-change-model", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_decimal_6_Template_po_decimal_p_change_model_0_listener() { i0.ɵɵrestoreView(_r61); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r65 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r65.onChangeFieldModel(field_r8)); });
90
107
  i0.ɵɵelementEnd();
91
108
  } if (rf & 2) {
92
- const field_r2 = i0.ɵɵnextContext().$implicit;
93
- const ctx_r8 = i0.ɵɵnextContext(2);
94
- i0.ɵɵproperty("name", field_r2.property);
95
- i0.ɵɵtwoWayProperty("ngModel", ctx_r8.value[field_r2.property]);
96
- i0.ɵɵproperty("ngClass", field_r2.componentClass)("p-clean", field_r2.clean)("p-error-pattern", field_r2.errorMessage)("p-disabled", ctx_r8.isDisabled(field_r2))("p-decimals-length", field_r2.decimalsLength)("p-thousand-maxlength", field_r2.thousandMaxlength)("p-icon", field_r2.icon)("p-auto-focus", field_r2.focus)("p-help", field_r2.help)("p-label", field_r2.label)("p-locale", field_r2.locale)("p-min", field_r2.minValue)("p-max", field_r2.maxValue)("p-maxlength", field_r2.maxLength)("p-minlength", field_r2.minLength)("p-no-autocomplete", field_r2.noAutocomplete)("p-optional", field_r2.optional)("p-readonly", field_r2.readonly)("p-required", field_r2.required)("p-show-required", field_r2.showRequired)("p-placeholder", field_r2.placeholder);
109
+ const field_r8 = i0.ɵɵnextContext().$implicit;
110
+ const ctx_r14 = i0.ɵɵnextContext(2);
111
+ i0.ɵɵproperty("name", field_r8.property);
112
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r14.value[field_r8.property]);
113
+ i0.ɵɵproperty("ngClass", field_r8.componentClass)("p-clean", field_r8.clean)("p-error-pattern", field_r8.errorMessage)("p-disabled", ctx_r14.isDisabled(field_r8))("p-decimals-length", field_r8.decimalsLength)("p-thousand-maxlength", field_r8.thousandMaxlength)("p-icon", field_r8.icon)("p-auto-focus", field_r8.focus)("p-help", field_r8.help)("p-label", field_r8.label)("p-locale", field_r8.locale)("p-min", field_r8.minValue)("p-max", field_r8.maxValue)("p-maxlength", field_r8.maxLength)("p-minlength", field_r8.minLength)("p-no-autocomplete", field_r8.noAutocomplete)("p-optional", field_r8.optional)("p-readonly", field_r8.readonly)("p-required", field_r8.required)("p-show-required", field_r8.showRequired)("p-placeholder", field_r8.placeholder);
97
114
  } }
98
- function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_select_7_Template(rf, ctx) { if (rf & 1) {
99
- const _r64 = i0.ɵɵgetCurrentView();
100
- i0.ɵɵelementStart(0, "po-select", 26, 21);
101
- i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_select_7_Template_po_select_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r64); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r63 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r63.value[field_r2.property], $event) || (ctx_r63.value[field_r2.property] = $event); return i0.ɵɵresetView($event); });
102
- i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_select_7_Template_po_select_p_change_0_listener() { i0.ɵɵrestoreView(_r64); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r66 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r66.onChangeField(field_r2)); });
115
+ function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_select_7_Template(rf, ctx) { if (rf & 1) {
116
+ const _r70 = i0.ɵɵgetCurrentView();
117
+ i0.ɵɵelementStart(0, "po-select", 29, 24);
118
+ i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_select_7_Template_po_select_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r70); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r69 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r69.value[field_r8.property], $event) || (ctx_r69.value[field_r8.property] = $event); return i0.ɵɵresetView($event); });
119
+ i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_select_7_Template_po_select_p_change_0_listener() { i0.ɵɵrestoreView(_r70); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r72 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r72.onChangeField(field_r8)); });
103
120
  i0.ɵɵelementEnd();
104
121
  } if (rf & 2) {
105
- const field_r2 = i0.ɵɵnextContext().$implicit;
106
- const ctx_r9 = i0.ɵɵnextContext(2);
107
- i0.ɵɵproperty("name", field_r2.property);
108
- i0.ɵɵtwoWayProperty("ngModel", ctx_r9.value[field_r2.property]);
109
- i0.ɵɵproperty("ngClass", field_r2.componentClass)("p-field-label", field_r2.fieldLabel)("p-field-value", field_r2.fieldValue)("p-disabled", ctx_r9.isDisabled(field_r2))("p-help", field_r2.help)("p-label", field_r2.label)("p-optional", field_r2.optional)("p-options", field_r2.options)("p-required", field_r2.required)("p-show-required", field_r2.showRequired)("p-placeholder", field_r2.placeholder)("p-readonly", field_r2.readonly);
122
+ const field_r8 = i0.ɵɵnextContext().$implicit;
123
+ const ctx_r15 = i0.ɵɵnextContext(2);
124
+ i0.ɵɵproperty("name", field_r8.property);
125
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r15.value[field_r8.property]);
126
+ i0.ɵɵproperty("ngClass", field_r8.componentClass)("p-field-label", field_r8.fieldLabel)("p-field-value", field_r8.fieldValue)("p-disabled", ctx_r15.isDisabled(field_r8))("p-help", field_r8.help)("p-label", field_r8.label)("p-optional", field_r8.optional)("p-options", field_r8.options)("p-required", field_r8.required)("p-show-required", field_r8.showRequired)("p-placeholder", field_r8.placeholder)("p-readonly", field_r8.readonly);
110
127
  } }
111
- function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_radio_group_8_Template(rf, ctx) { if (rf & 1) {
112
- const _r71 = i0.ɵɵgetCurrentView();
113
- i0.ɵɵelementStart(0, "po-radio-group", 27, 21);
114
- i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_radio_group_8_Template_po_radio_group_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r71); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r70 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r70.value[field_r2.property], $event) || (ctx_r70.value[field_r2.property] = $event); return i0.ɵɵresetView($event); });
115
- i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_radio_group_8_Template_po_radio_group_p_change_0_listener() { i0.ɵɵrestoreView(_r71); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r73 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r73.onChangeField(field_r2)); });
128
+ function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_radio_group_8_Template(rf, ctx) { if (rf & 1) {
129
+ const _r77 = i0.ɵɵgetCurrentView();
130
+ i0.ɵɵelementStart(0, "po-radio-group", 30, 24);
131
+ i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_radio_group_8_Template_po_radio_group_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r77); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r76 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r76.value[field_r8.property], $event) || (ctx_r76.value[field_r8.property] = $event); return i0.ɵɵresetView($event); });
132
+ i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_radio_group_8_Template_po_radio_group_p_change_0_listener() { i0.ɵɵrestoreView(_r77); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r79 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r79.onChangeField(field_r8)); });
116
133
  i0.ɵɵelementEnd();
117
134
  } if (rf & 2) {
118
- const field_r2 = i0.ɵɵnextContext().$implicit;
119
- const ctx_r10 = i0.ɵɵnextContext(2);
120
- i0.ɵɵproperty("name", field_r2.property);
121
- i0.ɵɵtwoWayProperty("ngModel", ctx_r10.value[field_r2.property]);
122
- i0.ɵɵproperty("ngClass", field_r2.componentClass)("p-columns", field_r2.columns || 3)("p-auto-focus", field_r2.focus)("p-disabled", ctx_r10.isDisabled(field_r2))("p-help", field_r2.help)("p-label", field_r2.label)("p-optional", field_r2.optional)("p-options", field_r2.options)("p-required", field_r2.required)("p-show-required", field_r2.showRequired);
135
+ const field_r8 = i0.ɵɵnextContext().$implicit;
136
+ const ctx_r16 = i0.ɵɵnextContext(2);
137
+ i0.ɵɵproperty("name", field_r8.property);
138
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r16.value[field_r8.property]);
139
+ i0.ɵɵproperty("ngClass", field_r8.componentClass)("p-columns", field_r8.columns || 3)("p-auto-focus", field_r8.focus)("p-disabled", ctx_r16.isDisabled(field_r8))("p-help", field_r8.help)("p-label", field_r8.label)("p-optional", field_r8.optional)("p-options", field_r8.options)("p-required", field_r8.required)("p-show-required", field_r8.showRequired);
123
140
  } }
124
- function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_switch_9_Template(rf, ctx) { if (rf & 1) {
125
- const _r78 = i0.ɵɵgetCurrentView();
126
- i0.ɵɵelementStart(0, "po-switch", 28, 21);
127
- i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_switch_9_Template_po_switch_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r78); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r77 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r77.value[field_r2.property], $event) || (ctx_r77.value[field_r2.property] = $event); return i0.ɵɵresetView($event); });
128
- i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_switch_9_Template_po_switch_p_change_0_listener() { i0.ɵɵrestoreView(_r78); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r80 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r80.onChangeField(field_r2)); });
141
+ function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_switch_9_Template(rf, ctx) { if (rf & 1) {
142
+ const _r84 = i0.ɵɵgetCurrentView();
143
+ i0.ɵɵelementStart(0, "po-switch", 31, 24);
144
+ i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_switch_9_Template_po_switch_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r84); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r83 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r83.value[field_r8.property], $event) || (ctx_r83.value[field_r8.property] = $event); return i0.ɵɵresetView($event); });
145
+ i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_switch_9_Template_po_switch_p_change_0_listener() { i0.ɵɵrestoreView(_r84); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r86 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r86.onChangeField(field_r8)); });
129
146
  i0.ɵɵelementEnd();
130
147
  } if (rf & 2) {
131
- const field_r2 = i0.ɵɵnextContext().$implicit;
132
- const ctx_r11 = i0.ɵɵnextContext(2);
133
- i0.ɵɵproperty("name", field_r2.property);
134
- i0.ɵɵtwoWayProperty("ngModel", ctx_r11.value[field_r2.property]);
135
- i0.ɵɵproperty("ngClass", field_r2.componentClass)("p-disabled", ctx_r11.isDisabled(field_r2))("p-format-model", field_r2.formatModel)("p-help", field_r2.help)("p-label", field_r2.label)("p-label-off", field_r2.booleanFalse)("p-label-on", field_r2.booleanTrue)("p-label-position", field_r2.labelPosition);
148
+ const field_r8 = i0.ɵɵnextContext().$implicit;
149
+ const ctx_r17 = i0.ɵɵnextContext(2);
150
+ i0.ɵɵproperty("name", field_r8.property);
151
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r17.value[field_r8.property]);
152
+ i0.ɵɵproperty("ngClass", field_r8.componentClass)("p-disabled", ctx_r17.isDisabled(field_r8))("p-format-model", field_r8.formatModel)("p-help", field_r8.help)("p-label", field_r8.label)("p-label-off", field_r8.booleanFalse)("p-label-on", field_r8.booleanTrue)("p-label-position", field_r8.labelPosition);
136
153
  } }
137
- function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_checkbox_10_Template(rf, ctx) { if (rf & 1) {
138
- const _r85 = i0.ɵɵgetCurrentView();
139
- i0.ɵɵelementStart(0, "po-checkbox", 29, 21);
140
- i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_checkbox_10_Template_po_checkbox_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r85); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r84 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r84.value[field_r2.property], $event) || (ctx_r84.value[field_r2.property] = $event); return i0.ɵɵresetView($event); });
141
- i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_checkbox_10_Template_po_checkbox_p_change_0_listener() { i0.ɵɵrestoreView(_r85); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r87 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r87.onChangeField(field_r2)); });
154
+ function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_checkbox_10_Template(rf, ctx) { if (rf & 1) {
155
+ const _r91 = i0.ɵɵgetCurrentView();
156
+ i0.ɵɵelementStart(0, "po-checkbox", 32, 24);
157
+ i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_checkbox_10_Template_po_checkbox_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r91); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r90 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r90.value[field_r8.property], $event) || (ctx_r90.value[field_r8.property] = $event); return i0.ɵɵresetView($event); });
158
+ i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_checkbox_10_Template_po_checkbox_p_change_0_listener() { i0.ɵɵrestoreView(_r91); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r93 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r93.onChangeField(field_r8)); });
142
159
  i0.ɵɵelementEnd();
143
160
  } if (rf & 2) {
144
- const field_r2 = i0.ɵɵnextContext().$implicit;
145
- const ctx_r12 = i0.ɵɵnextContext(2);
146
- i0.ɵɵproperty("name", field_r2.property);
147
- i0.ɵɵtwoWayProperty("ngModel", ctx_r12.value[field_r2.property]);
148
- i0.ɵɵproperty("ngClass", field_r2.componentClass)("p-auto-focus", field_r2.focus)("p-disabled", ctx_r12.isDisabled(field_r2))("p-label", field_r2.label)("p-size", field_r2.size);
161
+ const field_r8 = i0.ɵɵnextContext().$implicit;
162
+ const ctx_r18 = i0.ɵɵnextContext(2);
163
+ i0.ɵɵproperty("name", field_r8.property);
164
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r18.value[field_r8.property]);
165
+ i0.ɵɵproperty("ngClass", field_r8.componentClass)("p-auto-focus", field_r8.focus)("p-disabled", ctx_r18.isDisabled(field_r8))("p-label", field_r8.label)("p-size", field_r8.size);
149
166
  } }
150
- function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_combo_11_Template(rf, ctx) { if (rf & 1) {
151
- const _r92 = i0.ɵɵgetCurrentView();
152
- i0.ɵɵelementStart(0, "po-combo", 30, 21);
153
- i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_combo_11_Template_po_combo_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r92); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r91 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r91.value[field_r2.property], $event) || (ctx_r91.value[field_r2.property] = $event); return i0.ɵɵresetView($event); });
154
- i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_combo_11_Template_po_combo_p_change_0_listener($event) { i0.ɵɵrestoreView(_r92); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r94 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r94.onChangeField(field_r2, $event)); });
167
+ function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_combo_11_Template(rf, ctx) { if (rf & 1) {
168
+ const _r98 = i0.ɵɵgetCurrentView();
169
+ i0.ɵɵelementStart(0, "po-combo", 33, 24);
170
+ i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_combo_11_Template_po_combo_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r98); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r97 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r97.value[field_r8.property], $event) || (ctx_r97.value[field_r8.property] = $event); return i0.ɵɵresetView($event); });
171
+ i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_combo_11_Template_po_combo_p_change_0_listener($event) { i0.ɵɵrestoreView(_r98); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r100 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r100.onChangeField(field_r8, $event)); });
155
172
  i0.ɵɵelementEnd();
156
173
  } if (rf & 2) {
157
- const field_r2 = i0.ɵɵnextContext().$implicit;
158
- const ctx_r13 = i0.ɵɵnextContext(2);
159
- i0.ɵɵproperty("name", field_r2.property);
160
- i0.ɵɵtwoWayProperty("ngModel", ctx_r13.value[field_r2.property]);
161
- i0.ɵɵproperty("ngClass", field_r2.componentClass)("p-auto-focus", field_r2.focus)("p-clean", field_r2.clean)("p-disabled", ctx_r13.isDisabled(field_r2))("p-field-label", field_r2.fieldLabel)("p-field-value", field_r2.fieldValue)("p-filter-params", field_r2.params)("p-filter-service", field_r2.optionsService)("p-help", field_r2.help)("p-infinite-scroll", field_r2.infiniteScroll)("p-infinite-scroll-distance", field_r2.infiniteScrollDistance || 100)("p-label", field_r2.label)("p-literals", field_r2.literals)("p-options", field_r2.options)("p-optional", field_r2.optional)("p-sort", field_r2.sort)("p-required", field_r2.required)("p-show-required", field_r2.showRequired)("p-icon", field_r2.icon)("p-placeholder", field_r2.placeholder)("p-filter-minlength", field_r2.filterMinlength)("p-filter-mode", field_r2.filterMode)("p-disabled-init-filter", field_r2.disabledInitFilter)("p-disabled-tab-filter", field_r2.disabledTabFilter)("p-debounce-time", field_r2.debounceTime)("p-change-on-enter", field_r2.changeOnEnter);
174
+ const field_r8 = i0.ɵɵnextContext().$implicit;
175
+ const ctx_r19 = i0.ɵɵnextContext(2);
176
+ i0.ɵɵproperty("name", field_r8.property);
177
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r19.value[field_r8.property]);
178
+ i0.ɵɵproperty("ngClass", field_r8.componentClass)("p-auto-focus", field_r8.focus)("p-clean", field_r8.clean)("p-disabled", ctx_r19.isDisabled(field_r8))("p-field-label", field_r8.fieldLabel)("p-field-value", field_r8.fieldValue)("p-filter-params", field_r8.params)("p-filter-service", field_r8.optionsService)("p-help", field_r8.help)("p-infinite-scroll", field_r8.infiniteScroll)("p-infinite-scroll-distance", field_r8.infiniteScrollDistance || 100)("p-label", field_r8.label)("p-literals", field_r8.literals)("p-options", field_r8.options)("p-optional", field_r8.optional)("p-sort", field_r8.sort)("p-required", field_r8.required)("p-show-required", field_r8.showRequired)("p-icon", field_r8.icon)("p-placeholder", field_r8.placeholder)("p-filter-minlength", field_r8.filterMinlength)("p-filter-mode", field_r8.filterMode)("p-disabled-init-filter", field_r8.disabledInitFilter)("p-disabled-tab-filter", field_r8.disabledTabFilter)("p-debounce-time", field_r8.debounceTime)("p-change-on-enter", field_r8.changeOnEnter);
162
179
  } }
163
- function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_lookup_12_Template(rf, ctx) { if (rf & 1) {
164
- const _r99 = i0.ɵɵgetCurrentView();
165
- i0.ɵɵelementStart(0, "po-lookup", 31, 21);
166
- i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_lookup_12_Template_po_lookup_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r99); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r98 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r98.value[field_r2.property], $event) || (ctx_r98.value[field_r2.property] = $event); return i0.ɵɵresetView($event); });
167
- i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_lookup_12_Template_po_lookup_p_change_0_listener() { i0.ɵɵrestoreView(_r99); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r101 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r101.onChangeField(field_r2)); })("p-change-visible-columns", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_lookup_12_Template_po_lookup_p_change_visible_columns_0_listener($event) { i0.ɵɵrestoreView(_r99); const field_r2 = i0.ɵɵnextContext().$implicit; return i0.ɵɵresetView(field_r2.changeVisibleColumns == null ? null : field_r2.changeVisibleColumns($event)); })("p-restore-column-manager", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_lookup_12_Template_po_lookup_p_restore_column_manager_0_listener($event) { i0.ɵɵrestoreView(_r99); const field_r2 = i0.ɵɵnextContext().$implicit; return i0.ɵɵresetView(field_r2.columnRestoreManager == null ? null : field_r2.columnRestoreManager($event)); });
180
+ function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_lookup_12_Template(rf, ctx) { if (rf & 1) {
181
+ const _r105 = i0.ɵɵgetCurrentView();
182
+ i0.ɵɵelementStart(0, "po-lookup", 34, 24);
183
+ i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_lookup_12_Template_po_lookup_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r105); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r104 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r104.value[field_r8.property], $event) || (ctx_r104.value[field_r8.property] = $event); return i0.ɵɵresetView($event); });
184
+ i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_lookup_12_Template_po_lookup_p_change_0_listener() { i0.ɵɵrestoreView(_r105); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r107 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r107.onChangeField(field_r8)); })("p-change-visible-columns", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_lookup_12_Template_po_lookup_p_change_visible_columns_0_listener($event) { i0.ɵɵrestoreView(_r105); const field_r8 = i0.ɵɵnextContext().$implicit; return i0.ɵɵresetView(field_r8.changeVisibleColumns == null ? null : field_r8.changeVisibleColumns($event)); })("p-restore-column-manager", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_lookup_12_Template_po_lookup_p_restore_column_manager_0_listener($event) { i0.ɵɵrestoreView(_r105); const field_r8 = i0.ɵɵnextContext().$implicit; return i0.ɵɵresetView(field_r8.columnRestoreManager == null ? null : field_r8.columnRestoreManager($event)); });
168
185
  i0.ɵɵelementEnd();
169
186
  } if (rf & 2) {
170
- const field_r2 = i0.ɵɵnextContext().$implicit;
171
- const ctx_r14 = i0.ɵɵnextContext(2);
172
- i0.ɵɵproperty("name", field_r2.property);
173
- i0.ɵɵtwoWayProperty("ngModel", ctx_r14.value[field_r2.property]);
174
- i0.ɵɵproperty("ngClass", field_r2.componentClass)("p-clean", field_r2.clean)("p-columns", field_r2.columns)("p-disabled", ctx_r14.isDisabled(field_r2))("p-field-label", field_r2.fieldLabel || "label")("p-field-value", field_r2.fieldValue || "value")("p-filter-params", field_r2.params)("p-filter-service", field_r2.searchService)("p-auto-focus", field_r2.focus)("p-auto-height", field_r2.autoHeight)("p-help", field_r2.help)("p-field-format", field_r2.format)("p-infinite-scroll", field_r2.infiniteScroll)("p-label", field_r2.label)("p-literals", field_r2.literals)("p-multiple", field_r2.multiple)("p-no-autocomplete", field_r2.noAutocomplete)("p-optional", field_r2.optional)("p-required", field_r2.required)("p-show-required", field_r2.showRequired)("p-placeholder", field_r2.placeholder)("p-advanced-filters", field_r2.advancedFilters);
187
+ const field_r8 = i0.ɵɵnextContext().$implicit;
188
+ const ctx_r20 = i0.ɵɵnextContext(2);
189
+ i0.ɵɵproperty("name", field_r8.property);
190
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r20.value[field_r8.property]);
191
+ i0.ɵɵproperty("ngClass", field_r8.componentClass)("p-clean", field_r8.clean)("p-columns", field_r8.columns)("p-disabled", ctx_r20.isDisabled(field_r8))("p-field-label", field_r8.fieldLabel || "label")("p-field-value", field_r8.fieldValue || "value")("p-filter-params", field_r8.params)("p-filter-service", field_r8.searchService)("p-auto-focus", field_r8.focus)("p-auto-height", field_r8.autoHeight)("p-help", field_r8.help)("p-field-format", field_r8.format)("p-infinite-scroll", field_r8.infiniteScroll)("p-label", field_r8.label)("p-literals", field_r8.literals)("p-multiple", field_r8.multiple)("p-no-autocomplete", field_r8.noAutocomplete)("p-optional", field_r8.optional)("p-required", field_r8.required)("p-show-required", field_r8.showRequired)("p-placeholder", field_r8.placeholder)("p-advanced-filters", field_r8.advancedFilters);
175
192
  } }
176
- function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_checkbox_group_13_Template(rf, ctx) { if (rf & 1) {
177
- const _r110 = i0.ɵɵgetCurrentView();
178
- i0.ɵɵelementStart(0, "po-checkbox-group", 27, 21);
179
- i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_checkbox_group_13_Template_po_checkbox_group_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r110); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r109 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r109.value[field_r2.property], $event) || (ctx_r109.value[field_r2.property] = $event); return i0.ɵɵresetView($event); });
180
- i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_checkbox_group_13_Template_po_checkbox_group_p_change_0_listener() { i0.ɵɵrestoreView(_r110); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r112 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r112.onChangeField(field_r2)); });
193
+ function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_checkbox_group_13_Template(rf, ctx) { if (rf & 1) {
194
+ const _r116 = i0.ɵɵgetCurrentView();
195
+ i0.ɵɵelementStart(0, "po-checkbox-group", 30, 24);
196
+ i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_checkbox_group_13_Template_po_checkbox_group_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r116); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r115 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r115.value[field_r8.property], $event) || (ctx_r115.value[field_r8.property] = $event); return i0.ɵɵresetView($event); });
197
+ i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_checkbox_group_13_Template_po_checkbox_group_p_change_0_listener() { i0.ɵɵrestoreView(_r116); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r118 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r118.onChangeField(field_r8)); });
181
198
  i0.ɵɵelementEnd();
182
199
  } if (rf & 2) {
183
- const field_r2 = i0.ɵɵnextContext().$implicit;
184
- const ctx_r15 = i0.ɵɵnextContext(2);
185
- i0.ɵɵproperty("name", field_r2.property);
186
- i0.ɵɵtwoWayProperty("ngModel", ctx_r15.value[field_r2.property]);
187
- i0.ɵɵproperty("ngClass", field_r2.componentClass)("p-columns", field_r2.columns || 3)("p-auto-focus", field_r2.focus)("p-disabled", ctx_r15.isDisabled(field_r2))("p-help", field_r2.help)("p-label", field_r2.label)("p-optional", field_r2.optional)("p-options", field_r2.options)("p-required", field_r2.required)("p-show-required", field_r2.showRequired);
200
+ const field_r8 = i0.ɵɵnextContext().$implicit;
201
+ const ctx_r21 = i0.ɵɵnextContext(2);
202
+ i0.ɵɵproperty("name", field_r8.property);
203
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r21.value[field_r8.property]);
204
+ i0.ɵɵproperty("ngClass", field_r8.componentClass)("p-columns", field_r8.columns || 3)("p-auto-focus", field_r8.focus)("p-disabled", ctx_r21.isDisabled(field_r8))("p-help", field_r8.help)("p-label", field_r8.label)("p-optional", field_r8.optional)("p-options", field_r8.options)("p-required", field_r8.required)("p-show-required", field_r8.showRequired);
188
205
  } }
189
- function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_multiselect_14_Template(rf, ctx) { if (rf & 1) {
190
- const _r117 = i0.ɵɵgetCurrentView();
191
- i0.ɵɵelementStart(0, "po-multiselect", 32, 21);
192
- i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_multiselect_14_Template_po_multiselect_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r117); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r116 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r116.value[field_r2.property], $event) || (ctx_r116.value[field_r2.property] = $event); return i0.ɵɵresetView($event); });
193
- i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_multiselect_14_Template_po_multiselect_p_change_0_listener() { i0.ɵɵrestoreView(_r117); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r119 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r119.onChangeField(field_r2)); });
206
+ function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_multiselect_14_Template(rf, ctx) { if (rf & 1) {
207
+ const _r123 = i0.ɵɵgetCurrentView();
208
+ i0.ɵɵelementStart(0, "po-multiselect", 35, 24);
209
+ i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_multiselect_14_Template_po_multiselect_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r123); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r122 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r122.value[field_r8.property], $event) || (ctx_r122.value[field_r8.property] = $event); return i0.ɵɵresetView($event); });
210
+ i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_multiselect_14_Template_po_multiselect_p_change_0_listener() { i0.ɵɵrestoreView(_r123); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r125 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r125.onChangeField(field_r8)); });
194
211
  i0.ɵɵelementEnd();
195
212
  } if (rf & 2) {
196
- const field_r2 = i0.ɵɵnextContext().$implicit;
197
- const ctx_r16 = i0.ɵɵnextContext(2);
198
- i0.ɵɵproperty("name", field_r2.property);
199
- i0.ɵɵtwoWayProperty("ngModel", ctx_r16.value[field_r2.property]);
200
- i0.ɵɵproperty("ngClass", field_r2.componentClass)("p-disabled", ctx_r16.isDisabled(field_r2))("p-auto-focus", field_r2.focus)("p-auto-height", field_r2.autoHeight)("p-help", field_r2.help)("p-label", field_r2.label)("p-literals", field_r2.literals)("p-optional", field_r2.optional)("p-options", field_r2.options)("p-required", field_r2.required)("p-show-required", field_r2.showRequired)("p-placeholder", field_r2.placeholder)("p-field-label", field_r2.fieldLabel)("p-field-value", field_r2.fieldValue)("p-filter-service", field_r2.optionsService)("p-filter-mode", field_r2.filterMode)("p-debounce-time", field_r2.debounceTime)("p-sort", field_r2.sort)("p-placeholder-search", field_r2.placeholderSearch)("p-hide-search", field_r2.hideSearch)("p-hide-select-all", field_r2.hideSelectAll);
213
+ const field_r8 = i0.ɵɵnextContext().$implicit;
214
+ const ctx_r22 = i0.ɵɵnextContext(2);
215
+ i0.ɵɵproperty("name", field_r8.property);
216
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r22.value[field_r8.property]);
217
+ i0.ɵɵproperty("ngClass", field_r8.componentClass)("p-disabled", ctx_r22.isDisabled(field_r8))("p-auto-focus", field_r8.focus)("p-auto-height", field_r8.autoHeight)("p-help", field_r8.help)("p-label", field_r8.label)("p-literals", field_r8.literals)("p-optional", field_r8.optional)("p-options", field_r8.options)("p-required", field_r8.required)("p-show-required", field_r8.showRequired)("p-placeholder", field_r8.placeholder)("p-field-label", field_r8.fieldLabel)("p-field-value", field_r8.fieldValue)("p-filter-service", field_r8.optionsService)("p-filter-mode", field_r8.filterMode)("p-debounce-time", field_r8.debounceTime)("p-sort", field_r8.sort)("p-placeholder-search", field_r8.placeholderSearch)("p-hide-search", field_r8.hideSearch)("p-hide-select-all", field_r8.hideSelectAll);
201
218
  } }
202
- function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_textarea_15_Template(rf, ctx) { if (rf & 1) {
203
- const _r124 = i0.ɵɵgetCurrentView();
204
- i0.ɵɵelementStart(0, "po-textarea", 33, 21);
205
- i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_textarea_15_Template_po_textarea_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r124); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r123 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r123.value[field_r2.property], $event) || (ctx_r123.value[field_r2.property] = $event); return i0.ɵɵresetView($event); });
206
- i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_textarea_15_Template_po_textarea_p_change_0_listener() { i0.ɵɵrestoreView(_r124); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r126 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r126.onChangeField(field_r2)); })("p-change-model", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_textarea_15_Template_po_textarea_p_change_model_0_listener() { i0.ɵɵrestoreView(_r124); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r128 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r128.onChangeFieldModel(field_r2)); });
219
+ function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_textarea_15_Template(rf, ctx) { if (rf & 1) {
220
+ const _r130 = i0.ɵɵgetCurrentView();
221
+ i0.ɵɵelementStart(0, "po-textarea", 36, 24);
222
+ i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_textarea_15_Template_po_textarea_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r130); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r129 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r129.value[field_r8.property], $event) || (ctx_r129.value[field_r8.property] = $event); return i0.ɵɵresetView($event); });
223
+ i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_textarea_15_Template_po_textarea_p_change_0_listener() { i0.ɵɵrestoreView(_r130); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r132 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r132.onChangeField(field_r8)); })("p-change-model", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_textarea_15_Template_po_textarea_p_change_model_0_listener() { i0.ɵɵrestoreView(_r130); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r134 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r134.onChangeFieldModel(field_r8)); });
207
224
  i0.ɵɵelementEnd();
208
225
  } if (rf & 2) {
209
- const field_r2 = i0.ɵɵnextContext().$implicit;
210
- const ctx_r17 = i0.ɵɵnextContext(2);
211
- i0.ɵɵproperty("name", field_r2.property);
212
- i0.ɵɵtwoWayProperty("ngModel", ctx_r17.value[field_r2.property]);
213
- i0.ɵɵproperty("ngClass", field_r2.componentClass)("p-disabled", ctx_r17.isDisabled(field_r2))("p-auto-focus", field_r2.focus)("p-help", field_r2.help)("p-label", field_r2.label)("p-maxlength", field_r2.maxLength)("p-minlength", field_r2.minLength)("p-optional", field_r2.optional)("p-readonly", field_r2.readonly)("p-required", field_r2.required)("p-show-required", field_r2.showRequired)("p-rows", field_r2.rows)("p-placeholder", field_r2.placeholder);
226
+ const field_r8 = i0.ɵɵnextContext().$implicit;
227
+ const ctx_r23 = i0.ɵɵnextContext(2);
228
+ i0.ɵɵproperty("name", field_r8.property);
229
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r23.value[field_r8.property]);
230
+ i0.ɵɵproperty("ngClass", field_r8.componentClass)("p-disabled", ctx_r23.isDisabled(field_r8))("p-auto-focus", field_r8.focus)("p-help", field_r8.help)("p-label", field_r8.label)("p-maxlength", field_r8.maxLength)("p-minlength", field_r8.minLength)("p-optional", field_r8.optional)("p-readonly", field_r8.readonly)("p-required", field_r8.required)("p-show-required", field_r8.showRequired)("p-rows", field_r8.rows)("p-placeholder", field_r8.placeholder);
214
231
  } }
215
- function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_password_16_Template(rf, ctx) { if (rf & 1) {
216
- const _r133 = i0.ɵɵgetCurrentView();
217
- i0.ɵɵelementStart(0, "po-password", 34, 21);
218
- i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_password_16_Template_po_password_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r133); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r132 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r132.value[field_r2.property], $event) || (ctx_r132.value[field_r2.property] = $event); return i0.ɵɵresetView($event); });
219
- i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_password_16_Template_po_password_p_change_0_listener() { i0.ɵɵrestoreView(_r133); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r135 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r135.onChangeField(field_r2)); })("p-change-model", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_password_16_Template_po_password_p_change_model_0_listener() { i0.ɵɵrestoreView(_r133); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r137 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r137.onChangeFieldModel(field_r2)); });
232
+ function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_password_16_Template(rf, ctx) { if (rf & 1) {
233
+ const _r139 = i0.ɵɵgetCurrentView();
234
+ i0.ɵɵelementStart(0, "po-password", 37, 24);
235
+ i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_password_16_Template_po_password_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r139); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r138 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r138.value[field_r8.property], $event) || (ctx_r138.value[field_r8.property] = $event); return i0.ɵɵresetView($event); });
236
+ i0.ɵɵlistener("p-change", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_password_16_Template_po_password_p_change_0_listener() { i0.ɵɵrestoreView(_r139); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r141 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r141.onChangeField(field_r8)); })("p-change-model", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_password_16_Template_po_password_p_change_model_0_listener() { i0.ɵɵrestoreView(_r139); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r143 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r143.onChangeFieldModel(field_r8)); });
220
237
  i0.ɵɵelementEnd();
221
238
  } if (rf & 2) {
222
- const field_r2 = i0.ɵɵnextContext().$implicit;
223
- const ctx_r18 = i0.ɵɵnextContext(2);
224
- i0.ɵɵproperty("name", field_r2.property);
225
- i0.ɵɵtwoWayProperty("ngModel", ctx_r18.value[field_r2.property]);
226
- i0.ɵɵproperty("ngClass", field_r2.componentClass)("p-clean", field_r2.clean)("p-disabled", ctx_r18.isDisabled(field_r2))("p-error-pattern", field_r2.errorMessage)("p-auto-focus", field_r2.focus)("p-help", field_r2.help)("p-hide-password-peek", field_r2.hidePasswordPeek)("p-icon", field_r2.icon)("p-label", field_r2.label)("p-maxlength", field_r2.maxLength)("p-minlength", field_r2.minLength)("p-no-autocomplete", field_r2.noAutocomplete)("p-optional", field_r2.optional)("p-pattern", field_r2.pattern)("p-readonly", field_r2.readonly)("p-required", field_r2.required)("p-show-required", field_r2.showRequired)("p-placeholder", field_r2.placeholder);
239
+ const field_r8 = i0.ɵɵnextContext().$implicit;
240
+ const ctx_r24 = i0.ɵɵnextContext(2);
241
+ i0.ɵɵproperty("name", field_r8.property);
242
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r24.value[field_r8.property]);
243
+ i0.ɵɵproperty("ngClass", field_r8.componentClass)("p-clean", field_r8.clean)("p-disabled", ctx_r24.isDisabled(field_r8))("p-error-pattern", field_r8.errorMessage)("p-auto-focus", field_r8.focus)("p-help", field_r8.help)("p-hide-password-peek", field_r8.hidePasswordPeek)("p-icon", field_r8.icon)("p-label", field_r8.label)("p-maxlength", field_r8.maxLength)("p-minlength", field_r8.minLength)("p-no-autocomplete", field_r8.noAutocomplete)("p-optional", field_r8.optional)("p-pattern", field_r8.pattern)("p-readonly", field_r8.readonly)("p-required", field_r8.required)("p-show-required", field_r8.showRequired)("p-placeholder", field_r8.placeholder);
227
244
  } }
228
- function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_upload_17_Template(rf, ctx) { if (rf & 1) {
229
- const _r142 = i0.ɵɵgetCurrentView();
230
- i0.ɵɵelementStart(0, "po-upload", 35, 21);
231
- i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_upload_17_Template_po_upload_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r142); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r141 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r141.value[field_r2.property], $event) || (ctx_r141.value[field_r2.property] = $event); return i0.ɵɵresetView($event); });
232
- i0.ɵɵlistener("p-error", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_upload_17_Template_po_upload_p_error_0_listener($event) { i0.ɵɵrestoreView(_r142); const field_r2 = i0.ɵɵnextContext().$implicit; return i0.ɵɵresetView(field_r2.onError($event)); })("p-success", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_upload_17_Template_po_upload_p_success_0_listener($event) { i0.ɵɵrestoreView(_r142); const field_r2 = i0.ɵɵnextContext().$implicit; return i0.ɵɵresetView(field_r2.onSuccess($event)); })("p-upload", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_upload_17_Template_po_upload_p_upload_0_listener($event) { i0.ɵɵrestoreView(_r142); const field_r2 = i0.ɵɵnextContext().$implicit; return i0.ɵɵresetView(field_r2.onUpload($event)); })("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_upload_17_Template_po_upload_p_change_0_listener() { i0.ɵɵrestoreView(_r142); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r150 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r150.onChangeField(field_r2)); })("p-change-model", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_upload_17_Template_po_upload_p_change_model_0_listener() { i0.ɵɵrestoreView(_r142); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r152 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r152.onChangeFieldModel(field_r2)); });
245
+ function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_upload_17_Template(rf, ctx) { if (rf & 1) {
246
+ const _r148 = i0.ɵɵgetCurrentView();
247
+ i0.ɵɵelementStart(0, "po-upload", 38, 24);
248
+ i0.ɵɵtwoWayListener("ngModelChange", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_upload_17_Template_po_upload_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r148); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r147 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r147.value[field_r8.property], $event) || (ctx_r147.value[field_r8.property] = $event); return i0.ɵɵresetView($event); });
249
+ i0.ɵɵlistener("p-error", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_upload_17_Template_po_upload_p_error_0_listener($event) { i0.ɵɵrestoreView(_r148); const field_r8 = i0.ɵɵnextContext().$implicit; return i0.ɵɵresetView(field_r8.onError($event)); })("p-success", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_upload_17_Template_po_upload_p_success_0_listener($event) { i0.ɵɵrestoreView(_r148); const field_r8 = i0.ɵɵnextContext().$implicit; return i0.ɵɵresetView(field_r8.onSuccess($event)); })("p-upload", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_upload_17_Template_po_upload_p_upload_0_listener($event) { i0.ɵɵrestoreView(_r148); const field_r8 = i0.ɵɵnextContext().$implicit; return i0.ɵɵresetView(field_r8.onUpload($event)); })("p-change", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_upload_17_Template_po_upload_p_change_0_listener() { i0.ɵɵrestoreView(_r148); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r156 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r156.onChangeField(field_r8)); })("p-change-model", function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_upload_17_Template_po_upload_p_change_model_0_listener() { i0.ɵɵrestoreView(_r148); const field_r8 = i0.ɵɵnextContext().$implicit; const ctx_r158 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r158.onChangeFieldModel(field_r8)); });
233
250
  i0.ɵɵelementEnd();
234
251
  } if (rf & 2) {
235
- const field_r2 = i0.ɵɵnextContext().$implicit;
236
- const ctx_r19 = i0.ɵɵnextContext(2);
237
- i0.ɵɵtwoWayProperty("ngModel", ctx_r19.value[field_r2.property]);
238
- i0.ɵɵproperty("ngClass", field_r2.componentClass)("p-auto-upload", field_r2.autoUpload)("p-directory", field_r2.directory)("p-disabled", ctx_r19.isDisabled(field_r2))("p-drag-drop", field_r2.dragDrop)("p-drag-drop-height", field_r2.dragDropHeight)("p-restrictions", field_r2.restrictions)("p-form-field", field_r2.formField)("p-headers", field_r2.headers)("p-help", field_r2.help)("p-hide-restrictions-info", field_r2.hideRestrictionsInfo)("p-hide-select-button", field_r2.hideSelectButton)("p-hide-send-button", field_r2.hideSendButton)("p-multiple", field_r2.multiple)("p-label", field_r2.label)("p-literals", field_r2.literals)("name", field_r2.property)("p-optional", field_r2.optional)("p-required", field_r2.required)("p-show-required", field_r2.showRequired)("p-url", field_r2.url);
252
+ const field_r8 = i0.ɵɵnextContext().$implicit;
253
+ const ctx_r25 = i0.ɵɵnextContext(2);
254
+ i0.ɵɵtwoWayProperty("ngModel", ctx_r25.value[field_r8.property]);
255
+ i0.ɵɵproperty("ngClass", field_r8.componentClass)("p-auto-upload", field_r8.autoUpload)("p-directory", field_r8.directory)("p-disabled", ctx_r25.isDisabled(field_r8))("p-drag-drop", field_r8.dragDrop)("p-drag-drop-height", field_r8.dragDropHeight)("p-restrictions", field_r8.restrictions)("p-form-field", field_r8.formField)("p-headers", field_r8.headers)("p-help", field_r8.help)("p-hide-restrictions-info", field_r8.hideRestrictionsInfo)("p-hide-select-button", field_r8.hideSelectButton)("p-hide-send-button", field_r8.hideSendButton)("p-multiple", field_r8.multiple)("p-label", field_r8.label)("p-literals", field_r8.literals)("name", field_r8.property)("p-optional", field_r8.optional)("p-required", field_r8.required)("p-show-required", field_r8.showRequired)("p-url", field_r8.url);
239
256
  } }
240
- function PoDynamicFormFieldsComponent_div_0_ng_container_1_Template(rf, ctx) { if (rf & 1) {
257
+ function PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_Template(rf, ctx) { if (rf & 1) {
241
258
  i0.ɵɵelementContainerStart(0);
242
- i0.ɵɵtemplate(1, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_divider_1_Template, 1, 1, "po-divider", 3)(2, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_datepicker_2_Template, 2, 20, "po-datepicker", 4)(3, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_datepicker_range_3_Template, 2, 16, "po-datepicker-range", 5)(4, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_input_4_Template, 2, 21, "po-input", 6)(5, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_number_5_Template, 2, 21, "po-number", 7)(6, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_decimal_6_Template, 2, 23, "po-decimal", 8)(7, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_select_7_Template, 2, 14, "po-select", 9)(8, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_radio_group_8_Template, 2, 12, "po-radio-group", 10)(9, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_switch_9_Template, 2, 10, "po-switch", 11)(10, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_checkbox_10_Template, 2, 7, "po-checkbox", 12)(11, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_combo_11_Template, 2, 28, "po-combo", 13)(12, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_lookup_12_Template, 2, 24, "po-lookup", 14)(13, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_checkbox_group_13_Template, 2, 12, "po-checkbox-group", 10)(14, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_multiselect_14_Template, 2, 23, "po-multiselect", 15)(15, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_textarea_15_Template, 2, 15, "po-textarea", 16)(16, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_password_16_Template, 2, 20, "po-password", 17)(17, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_upload_17_Template, 2, 22, "po-upload", 18);
259
+ i0.ɵɵtemplate(1, PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_divider_1_Template, 1, 1, "po-divider", 6)(2, PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_datepicker_2_Template, 2, 20, "po-datepicker", 7)(3, PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_datepicker_range_3_Template, 2, 16, "po-datepicker-range", 8)(4, PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_input_4_Template, 2, 21, "po-input", 9)(5, PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_number_5_Template, 2, 21, "po-number", 10)(6, PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_decimal_6_Template, 2, 23, "po-decimal", 11)(7, PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_select_7_Template, 2, 14, "po-select", 12)(8, PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_radio_group_8_Template, 2, 12, "po-radio-group", 13)(9, PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_switch_9_Template, 2, 10, "po-switch", 14)(10, PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_checkbox_10_Template, 2, 7, "po-checkbox", 15)(11, PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_combo_11_Template, 2, 28, "po-combo", 16)(12, PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_lookup_12_Template, 2, 24, "po-lookup", 17)(13, PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_checkbox_group_13_Template, 2, 12, "po-checkbox-group", 13)(14, PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_multiselect_14_Template, 2, 23, "po-multiselect", 18)(15, PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_textarea_15_Template, 2, 15, "po-textarea", 19)(16, PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_password_16_Template, 2, 20, "po-password", 20)(17, PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_po_upload_17_Template, 2, 22, "po-upload", 21);
243
260
  i0.ɵɵelementContainerEnd();
244
261
  } if (rf & 2) {
245
- const field_r2 = ctx.$implicit;
246
- const ctx_r1 = i0.ɵɵnextContext(2);
262
+ const field_r8 = ctx.$implicit;
263
+ const ctx_r7 = i0.ɵɵnextContext(2);
247
264
  i0.ɵɵadvance();
248
- i0.ɵɵproperty("ngIf", field_r2 == null ? null : field_r2.divider == null ? null : field_r2.divider.trim());
265
+ i0.ɵɵproperty("ngIf", field_r8 == null ? null : field_r8.divider == null ? null : field_r8.divider.trim());
249
266
  i0.ɵɵadvance();
250
- i0.ɵɵproperty("ngIf", ctx_r1.compareTo(field_r2.control, "datepicker"));
267
+ i0.ɵɵproperty("ngIf", ctx_r7.compareTo(field_r8.control, "datepicker"));
251
268
  i0.ɵɵadvance();
252
- i0.ɵɵproperty("ngIf", ctx_r1.compareTo(field_r2.control, "datepickerrange"));
269
+ i0.ɵɵproperty("ngIf", ctx_r7.compareTo(field_r8.control, "datepickerrange"));
253
270
  i0.ɵɵadvance();
254
- i0.ɵɵproperty("ngIf", ctx_r1.compareTo(field_r2.control, "input"));
271
+ i0.ɵɵproperty("ngIf", ctx_r7.compareTo(field_r8.control, "input"));
255
272
  i0.ɵɵadvance();
256
- i0.ɵɵproperty("ngIf", ctx_r1.compareTo(field_r2.control, "number"));
273
+ i0.ɵɵproperty("ngIf", ctx_r7.compareTo(field_r8.control, "number"));
257
274
  i0.ɵɵadvance();
258
- i0.ɵɵproperty("ngIf", ctx_r1.compareTo(field_r2.control, "decimal"));
275
+ i0.ɵɵproperty("ngIf", ctx_r7.compareTo(field_r8.control, "decimal"));
259
276
  i0.ɵɵadvance();
260
- i0.ɵɵproperty("ngIf", ctx_r1.compareTo(field_r2.control, "select"));
277
+ i0.ɵɵproperty("ngIf", ctx_r7.compareTo(field_r8.control, "select"));
261
278
  i0.ɵɵadvance();
262
- i0.ɵɵproperty("ngIf", ctx_r1.compareTo(field_r2.control, "radioGroup"));
279
+ i0.ɵɵproperty("ngIf", ctx_r7.compareTo(field_r8.control, "radioGroup"));
263
280
  i0.ɵɵadvance();
264
- i0.ɵɵproperty("ngIf", ctx_r1.compareTo(field_r2.control, "switch"));
281
+ i0.ɵɵproperty("ngIf", ctx_r7.compareTo(field_r8.control, "switch"));
265
282
  i0.ɵɵadvance();
266
- i0.ɵɵproperty("ngIf", ctx_r1.compareTo(field_r2.control, "checkbox"));
283
+ i0.ɵɵproperty("ngIf", ctx_r7.compareTo(field_r8.control, "checkbox"));
267
284
  i0.ɵɵadvance();
268
- i0.ɵɵproperty("ngIf", ctx_r1.compareTo(field_r2.control, "combo"));
285
+ i0.ɵɵproperty("ngIf", ctx_r7.compareTo(field_r8.control, "combo"));
269
286
  i0.ɵɵadvance();
270
- i0.ɵɵproperty("ngIf", ctx_r1.compareTo(field_r2.control, "lookup"));
287
+ i0.ɵɵproperty("ngIf", ctx_r7.compareTo(field_r8.control, "lookup"));
271
288
  i0.ɵɵadvance();
272
- i0.ɵɵproperty("ngIf", ctx_r1.compareTo(field_r2.control, "checkboxGroup"));
289
+ i0.ɵɵproperty("ngIf", ctx_r7.compareTo(field_r8.control, "checkboxGroup"));
273
290
  i0.ɵɵadvance();
274
- i0.ɵɵproperty("ngIf", ctx_r1.compareTo(field_r2.control, "multiselect"));
291
+ i0.ɵɵproperty("ngIf", ctx_r7.compareTo(field_r8.control, "multiselect"));
275
292
  i0.ɵɵadvance();
276
- i0.ɵɵproperty("ngIf", ctx_r1.compareTo(field_r2.control, "textarea"));
293
+ i0.ɵɵproperty("ngIf", ctx_r7.compareTo(field_r8.control, "textarea"));
277
294
  i0.ɵɵadvance();
278
- i0.ɵɵproperty("ngIf", ctx_r1.compareTo(field_r2.control, "password"));
295
+ i0.ɵɵproperty("ngIf", ctx_r7.compareTo(field_r8.control, "password"));
279
296
  i0.ɵɵadvance();
280
- i0.ɵɵproperty("ngIf", ctx_r1.compareTo(field_r2.control, "upload"));
297
+ i0.ɵɵproperty("ngIf", ctx_r7.compareTo(field_r8.control, "upload"));
281
298
  } }
282
- function PoDynamicFormFieldsComponent_div_0_Template(rf, ctx) { if (rf & 1) {
283
- i0.ɵɵelementStart(0, "div", 1);
284
- i0.ɵɵtemplate(1, PoDynamicFormFieldsComponent_div_0_ng_container_1_Template, 18, 17, "ng-container", 2);
285
- i0.ɵɵelementEnd();
299
+ function PoDynamicFormFieldsComponent_ng_template_1_Template(rf, ctx) { if (rf & 1) {
300
+ i0.ɵɵtemplate(0, PoDynamicFormFieldsComponent_ng_template_1_ng_container_0_Template, 18, 17, "ng-container", 5);
286
301
  } if (rf & 2) {
287
- const ctx_r0 = i0.ɵɵnextContext();
288
- i0.ɵɵadvance();
289
- i0.ɵɵproperty("ngForOf", ctx_r0.visibleFields)("ngForTrackBy", ctx_r0.trackBy);
302
+ const fields_r6 = ctx.$implicit;
303
+ const ctx_r1 = i0.ɵɵnextContext();
304
+ i0.ɵɵproperty("ngForOf", fields_r6)("ngForTrackBy", ctx_r1.trackBy);
305
+ } }
306
+ function PoDynamicFormFieldsComponent_ng_template_3_Template(rf, ctx) { if (rf & 1) {
307
+ i0.ɵɵelement(0, "po-dynamic-container", 39);
308
+ } if (rf & 2) {
309
+ const fields_r161 = ctx.$implicit;
310
+ i0.ɵɵnextContext();
311
+ const _r2 = i0.ɵɵreference(2);
312
+ i0.ɵɵproperty("p-fields", fields_r161)("p-content", _r2);
290
313
  } }
291
314
  /**
292
315
  * @docsPrivate
@@ -310,6 +333,7 @@ export class PoDynamicFormFieldsComponent extends PoDynamicFormFieldsBaseCompone
310
333
  ngOnChanges(changes) {
311
334
  if (changes.fields) {
312
335
  this.visibleFields = this.getVisibleFields();
336
+ this.setContainerFields();
313
337
  }
314
338
  }
315
339
  focus(property) {
@@ -382,6 +406,7 @@ export class PoDynamicFormFieldsComponent extends PoDynamicFormFieldsBaseCompone
382
406
  updateFields() {
383
407
  this.fieldsChange.emit(this.fields);
384
408
  this.visibleFields = this.getVisibleFields();
409
+ this.setContainerFields();
385
410
  }
386
411
  validateFieldsChecker(validateFields, propertyField) {
387
412
  return validateFields.some(validateFieldItem => validateFieldItem === propertyField);
@@ -405,18 +430,18 @@ export class PoDynamicFormFieldsComponent extends PoDynamicFormFieldsBaseCompone
405
430
  } if (rf & 2) {
406
431
  let _t;
407
432
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.components = _t);
408
- } }, features: [i0.ɵɵProvidersFeature([PoDynamicFormValidationService], [{ provide: ControlContainer, useExisting: NgForm }]), i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], decls: 1, vars: 1, consts: [["class", "po-row", 4, "ngIf"], [1, "po-row"], [4, "ngFor", "ngForOf", "ngForTrackBy"], ["class", "po-sm-12", 3, "p-label", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-format", "p-help", "p-iso-format", "p-label", "p-locale", "p-max-date", "p-min-date", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-auto-focus", "p-help", "p-label", "p-literals", "p-max-date", "p-min-date", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-label", "p-mask-format-model", "p-mask", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-pattern", "p-required", "p-show-required", "p-icon", "p-placeholder", "p-readonly", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-label", "p-min", "p-max", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-step", "p-readonly", "p-required", "p-show-required", "p-icon", "p-placeholder", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-error-pattern", "p-disabled", "p-decimals-length", "p-thousand-maxlength", "p-icon", "p-auto-focus", "p-help", "p-label", "p-locale", "p-min", "p-max", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-field-label", "p-field-value", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-required", "p-show-required", "p-placeholder", "p-readonly", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-columns", "p-auto-focus", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-required", "p-show-required", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-format-model", "p-help", "p-label", "p-label-off", "p-label-on", "p-label-position", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-auto-focus", "p-disabled", "p-label", "p-size", "ngModelChange", "p-change", 4, "ngIf"], ["p-emit-object-value", "", 3, "name", "ngModel", "ngClass", "p-auto-focus", "p-clean", "p-disabled", "p-field-label", "p-field-value", "p-filter-params", "p-filter-service", "p-help", "p-infinite-scroll", "p-infinite-scroll-distance", "p-label", "p-literals", "p-options", "p-optional", "p-sort", "p-required", "p-show-required", "p-icon", "p-placeholder", "p-filter-minlength", "p-filter-mode", "p-disabled-init-filter", "p-disabled-tab-filter", "p-debounce-time", "p-change-on-enter", "ngModelChange", "p-change", 4, "ngIf"], ["p-field-label", "label", "p-field-value", "value", 3, "name", "ngModel", "ngClass", "p-clean", "p-columns", "p-disabled", "p-field-label", "p-field-value", "p-filter-params", "p-filter-service", "p-auto-focus", "p-auto-height", "p-help", "p-field-format", "p-infinite-scroll", "p-label", "p-literals", "p-multiple", "p-no-autocomplete", "p-optional", "p-required", "p-show-required", "p-placeholder", "p-advanced-filters", "ngModelChange", "p-change", "p-change-visible-columns", "p-restore-column-manager", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-auto-focus", "p-auto-height", "p-help", "p-label", "p-literals", "p-optional", "p-options", "p-required", "p-show-required", "p-placeholder", "p-field-label", "p-field-value", "p-filter-service", "p-filter-mode", "p-debounce-time", "p-sort", "p-placeholder-search", "p-hide-search", "p-hide-select-all", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-auto-focus", "p-help", "p-label", "p-maxlength", "p-minlength", "p-optional", "p-readonly", "p-required", "p-show-required", "p-rows", "p-placeholder", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-hide-password-peek", "p-icon", "p-label", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-pattern", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "ngModel", "ngClass", "p-auto-upload", "p-directory", "p-disabled", "p-drag-drop", "p-drag-drop-height", "p-restrictions", "p-form-field", "p-headers", "p-help", "p-hide-restrictions-info", "p-hide-select-button", "p-hide-send-button", "p-multiple", "p-label", "p-literals", "name", "p-optional", "p-required", "p-show-required", "p-url", "ngModelChange", "p-error", "p-success", "p-upload", "p-change", "p-change-model", 4, "ngIf"], [1, "po-sm-12", 3, "p-label"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-format", "p-help", "p-iso-format", "p-label", "p-locale", "p-max-date", "p-min-date", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change"], ["component", ""], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-auto-focus", "p-help", "p-label", "p-literals", "p-max-date", "p-min-date", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-label", "p-mask-format-model", "p-mask", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-pattern", "p-required", "p-show-required", "p-icon", "p-placeholder", "p-readonly", "ngModelChange", "p-change", "p-change-model"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-label", "p-min", "p-max", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-step", "p-readonly", "p-required", "p-show-required", "p-icon", "p-placeholder", "ngModelChange", "p-change", "p-change-model"], [3, "name", "ngModel", "ngClass", "p-clean", "p-error-pattern", "p-disabled", "p-decimals-length", "p-thousand-maxlength", "p-icon", "p-auto-focus", "p-help", "p-label", "p-locale", "p-min", "p-max", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", "p-change-model"], [3, "name", "ngModel", "ngClass", "p-field-label", "p-field-value", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-required", "p-show-required", "p-placeholder", "p-readonly", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-columns", "p-auto-focus", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-required", "p-show-required", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-format-model", "p-help", "p-label", "p-label-off", "p-label-on", "p-label-position", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-auto-focus", "p-disabled", "p-label", "p-size", "ngModelChange", "p-change"], ["p-emit-object-value", "", 3, "name", "ngModel", "ngClass", "p-auto-focus", "p-clean", "p-disabled", "p-field-label", "p-field-value", "p-filter-params", "p-filter-service", "p-help", "p-infinite-scroll", "p-infinite-scroll-distance", "p-label", "p-literals", "p-options", "p-optional", "p-sort", "p-required", "p-show-required", "p-icon", "p-placeholder", "p-filter-minlength", "p-filter-mode", "p-disabled-init-filter", "p-disabled-tab-filter", "p-debounce-time", "p-change-on-enter", "ngModelChange", "p-change"], ["p-field-label", "label", "p-field-value", "value", 3, "name", "ngModel", "ngClass", "p-clean", "p-columns", "p-disabled", "p-field-label", "p-field-value", "p-filter-params", "p-filter-service", "p-auto-focus", "p-auto-height", "p-help", "p-field-format", "p-infinite-scroll", "p-label", "p-literals", "p-multiple", "p-no-autocomplete", "p-optional", "p-required", "p-show-required", "p-placeholder", "p-advanced-filters", "ngModelChange", "p-change", "p-change-visible-columns", "p-restore-column-manager"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-auto-focus", "p-auto-height", "p-help", "p-label", "p-literals", "p-optional", "p-options", "p-required", "p-show-required", "p-placeholder", "p-field-label", "p-field-value", "p-filter-service", "p-filter-mode", "p-debounce-time", "p-sort", "p-placeholder-search", "p-hide-search", "p-hide-select-all", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-auto-focus", "p-help", "p-label", "p-maxlength", "p-minlength", "p-optional", "p-readonly", "p-required", "p-show-required", "p-rows", "p-placeholder", "ngModelChange", "p-change", "p-change-model"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-hide-password-peek", "p-icon", "p-label", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-pattern", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", "p-change-model"], [3, "ngModel", "ngClass", "p-auto-upload", "p-directory", "p-disabled", "p-drag-drop", "p-drag-drop-height", "p-restrictions", "p-form-field", "p-headers", "p-help", "p-hide-restrictions-info", "p-hide-select-button", "p-hide-send-button", "p-multiple", "p-label", "p-literals", "name", "p-optional", "p-required", "p-show-required", "p-url", "ngModelChange", "p-error", "p-success", "p-upload", "p-change", "p-change-model"]], template: function PoDynamicFormFieldsComponent_Template(rf, ctx) { if (rf & 1) {
409
- i0.ɵɵtemplate(0, PoDynamicFormFieldsComponent_div_0_Template, 2, 2, "div", 0);
433
+ } }, features: [i0.ɵɵProvidersFeature([PoDynamicFormValidationService], [{ provide: ControlContainer, useExisting: NgForm }]), i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], decls: 5, vars: 1, consts: [["class", "po-row", 3, "po-dynamic", 4, "ngIf"], ["poContent", ""], ["poContentContainer", ""], [1, "po-row"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], [4, "ngFor", "ngForOf", "ngForTrackBy"], ["class", "po-sm-12", 3, "p-label", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-format", "p-help", "p-iso-format", "p-label", "p-locale", "p-max-date", "p-min-date", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-auto-focus", "p-help", "p-label", "p-literals", "p-max-date", "p-min-date", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-label", "p-mask-format-model", "p-mask", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-pattern", "p-required", "p-show-required", "p-icon", "p-placeholder", "p-readonly", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-label", "p-min", "p-max", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-step", "p-readonly", "p-required", "p-show-required", "p-icon", "p-placeholder", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-error-pattern", "p-disabled", "p-decimals-length", "p-thousand-maxlength", "p-icon", "p-auto-focus", "p-help", "p-label", "p-locale", "p-min", "p-max", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-field-label", "p-field-value", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-required", "p-show-required", "p-placeholder", "p-readonly", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-columns", "p-auto-focus", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-required", "p-show-required", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-format-model", "p-help", "p-label", "p-label-off", "p-label-on", "p-label-position", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-auto-focus", "p-disabled", "p-label", "p-size", "ngModelChange", "p-change", 4, "ngIf"], ["p-emit-object-value", "", 3, "name", "ngModel", "ngClass", "p-auto-focus", "p-clean", "p-disabled", "p-field-label", "p-field-value", "p-filter-params", "p-filter-service", "p-help", "p-infinite-scroll", "p-infinite-scroll-distance", "p-label", "p-literals", "p-options", "p-optional", "p-sort", "p-required", "p-show-required", "p-icon", "p-placeholder", "p-filter-minlength", "p-filter-mode", "p-disabled-init-filter", "p-disabled-tab-filter", "p-debounce-time", "p-change-on-enter", "ngModelChange", "p-change", 4, "ngIf"], ["p-field-label", "label", "p-field-value", "value", 3, "name", "ngModel", "ngClass", "p-clean", "p-columns", "p-disabled", "p-field-label", "p-field-value", "p-filter-params", "p-filter-service", "p-auto-focus", "p-auto-height", "p-help", "p-field-format", "p-infinite-scroll", "p-label", "p-literals", "p-multiple", "p-no-autocomplete", "p-optional", "p-required", "p-show-required", "p-placeholder", "p-advanced-filters", "ngModelChange", "p-change", "p-change-visible-columns", "p-restore-column-manager", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-auto-focus", "p-auto-height", "p-help", "p-label", "p-literals", "p-optional", "p-options", "p-required", "p-show-required", "p-placeholder", "p-field-label", "p-field-value", "p-filter-service", "p-filter-mode", "p-debounce-time", "p-sort", "p-placeholder-search", "p-hide-search", "p-hide-select-all", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-auto-focus", "p-help", "p-label", "p-maxlength", "p-minlength", "p-optional", "p-readonly", "p-required", "p-show-required", "p-rows", "p-placeholder", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-hide-password-peek", "p-icon", "p-label", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-pattern", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "ngModel", "ngClass", "p-auto-upload", "p-directory", "p-disabled", "p-drag-drop", "p-drag-drop-height", "p-restrictions", "p-form-field", "p-headers", "p-help", "p-hide-restrictions-info", "p-hide-select-button", "p-hide-send-button", "p-multiple", "p-label", "p-literals", "name", "p-optional", "p-required", "p-show-required", "p-url", "ngModelChange", "p-error", "p-success", "p-upload", "p-change", "p-change-model", 4, "ngIf"], [1, "po-sm-12", 3, "p-label"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-format", "p-help", "p-iso-format", "p-label", "p-locale", "p-max-date", "p-min-date", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change"], ["component", ""], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-auto-focus", "p-help", "p-label", "p-literals", "p-max-date", "p-min-date", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-label", "p-mask-format-model", "p-mask", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-pattern", "p-required", "p-show-required", "p-icon", "p-placeholder", "p-readonly", "ngModelChange", "p-change", "p-change-model"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-label", "p-min", "p-max", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-step", "p-readonly", "p-required", "p-show-required", "p-icon", "p-placeholder", "ngModelChange", "p-change", "p-change-model"], [3, "name", "ngModel", "ngClass", "p-clean", "p-error-pattern", "p-disabled", "p-decimals-length", "p-thousand-maxlength", "p-icon", "p-auto-focus", "p-help", "p-label", "p-locale", "p-min", "p-max", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", "p-change-model"], [3, "name", "ngModel", "ngClass", "p-field-label", "p-field-value", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-required", "p-show-required", "p-placeholder", "p-readonly", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-columns", "p-auto-focus", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-required", "p-show-required", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-format-model", "p-help", "p-label", "p-label-off", "p-label-on", "p-label-position", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-auto-focus", "p-disabled", "p-label", "p-size", "ngModelChange", "p-change"], ["p-emit-object-value", "", 3, "name", "ngModel", "ngClass", "p-auto-focus", "p-clean", "p-disabled", "p-field-label", "p-field-value", "p-filter-params", "p-filter-service", "p-help", "p-infinite-scroll", "p-infinite-scroll-distance", "p-label", "p-literals", "p-options", "p-optional", "p-sort", "p-required", "p-show-required", "p-icon", "p-placeholder", "p-filter-minlength", "p-filter-mode", "p-disabled-init-filter", "p-disabled-tab-filter", "p-debounce-time", "p-change-on-enter", "ngModelChange", "p-change"], ["p-field-label", "label", "p-field-value", "value", 3, "name", "ngModel", "ngClass", "p-clean", "p-columns", "p-disabled", "p-field-label", "p-field-value", "p-filter-params", "p-filter-service", "p-auto-focus", "p-auto-height", "p-help", "p-field-format", "p-infinite-scroll", "p-label", "p-literals", "p-multiple", "p-no-autocomplete", "p-optional", "p-required", "p-show-required", "p-placeholder", "p-advanced-filters", "ngModelChange", "p-change", "p-change-visible-columns", "p-restore-column-manager"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-auto-focus", "p-auto-height", "p-help", "p-label", "p-literals", "p-optional", "p-options", "p-required", "p-show-required", "p-placeholder", "p-field-label", "p-field-value", "p-filter-service", "p-filter-mode", "p-debounce-time", "p-sort", "p-placeholder-search", "p-hide-search", "p-hide-select-all", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-auto-focus", "p-help", "p-label", "p-maxlength", "p-minlength", "p-optional", "p-readonly", "p-required", "p-show-required", "p-rows", "p-placeholder", "ngModelChange", "p-change", "p-change-model"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-hide-password-peek", "p-icon", "p-label", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-pattern", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", "p-change-model"], [3, "ngModel", "ngClass", "p-auto-upload", "p-directory", "p-disabled", "p-drag-drop", "p-drag-drop-height", "p-restrictions", "p-form-field", "p-headers", "p-help", "p-hide-restrictions-info", "p-hide-select-button", "p-hide-send-button", "p-multiple", "p-label", "p-literals", "name", "p-optional", "p-required", "p-show-required", "p-url", "ngModelChange", "p-error", "p-success", "p-upload", "p-change", "p-change-model"], [3, "p-fields", "p-content"]], template: function PoDynamicFormFieldsComponent_Template(rf, ctx) { if (rf & 1) {
434
+ i0.ɵɵtemplate(0, PoDynamicFormFieldsComponent_div_0_Template, 2, 6, "div", 0)(1, PoDynamicFormFieldsComponent_ng_template_1_Template, 1, 2, "ng-template", null, 1, i0.ɵɵtemplateRefExtractor)(3, PoDynamicFormFieldsComponent_ng_template_3_Template, 1, 2, "ng-template", null, 2, i0.ɵɵtemplateRefExtractor);
410
435
  } if (rf & 2) {
411
436
  i0.ɵɵproperty("ngIf", ctx.visibleFields && ctx.visibleFields.length > 0);
412
- } }, dependencies: [i1.NgClass, i1.NgForOf, i1.NgIf, i3.NgControlStatus, i3.NgModel, i4.PoDividerComponent, i5.PoCheckboxGroupComponent, i6.PoRadioGroupComponent, i7.PoDatepickerComponent, i8.PoComboComponent, i9.PoDecimalComponent, i10.PoDatepickerRangeComponent, i11.PoInputComponent, i12.PoLookupComponent, i13.PoMultiselectComponent, i14.PoNumberComponent, i15.PoPasswordComponent, i16.PoSelectComponent, i17.PoTextareaComponent, i18.PoUploadComponent, i19.PoCheckboxComponent, i20.PoSwitchComponent], encapsulation: 2 });
437
+ } }, dependencies: [i1.NgClass, i1.NgForOf, i1.NgIf, i1.NgTemplateOutlet, i3.NgControlStatus, i3.NgModel, i4.PoDividerComponent, i5.PoCheckboxGroupComponent, i6.PoRadioGroupComponent, i7.PoDatepickerComponent, i8.PoComboComponent, i9.PoDecimalComponent, i10.PoDatepickerRangeComponent, i11.PoInputComponent, i12.PoLookupComponent, i13.PoMultiselectComponent, i14.PoNumberComponent, i15.PoPasswordComponent, i16.PoSelectComponent, i17.PoTextareaComponent, i18.PoUploadComponent, i19.PoCheckboxComponent, i20.PoSwitchComponent, i21.PoDynamicContainerComponent], encapsulation: 2 });
413
438
  }
414
439
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PoDynamicFormFieldsComponent, [{
415
440
  type: Component,
416
- args: [{ selector: 'po-dynamic-form-fields', viewProviders: [{ provide: ControlContainer, useExisting: NgForm }], providers: [PoDynamicFormValidationService], template: "<div class=\"po-row\" *ngIf=\"visibleFields && visibleFields.length > 0\">\n <ng-container *ngFor=\"let field of visibleFields; trackBy: trackBy\">\n <po-divider *ngIf=\"field?.divider?.trim()\" class=\"po-sm-12\" [p-label]=\"field.divider\"> </po-divider>\n\n <po-datepicker\n #component\n *ngIf=\"compareTo(field.control, 'datepicker')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-auto-focus]=\"field.focus\"\n [p-format]=\"field.format\"\n [p-help]=\"field.help\"\n [p-iso-format]=\"field.isoFormat\"\n [p-label]=\"field.label\"\n [p-locale]=\"field.locale\"\n [p-max-date]=\"field.maxValue\"\n [p-min-date]=\"field.minValue\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-datepicker>\n\n <po-datepicker-range\n #component\n *ngIf=\"compareTo(field.control, 'datepickerrange')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-max-date]=\"field.maxValue\"\n [p-min-date]=\"field.minValue\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n >\n </po-datepicker-range>\n\n <po-input\n #component\n *ngIf=\"compareTo(field.control, 'input')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-mask-format-model]=\"field.maskFormatModel\"\n [p-mask]=\"field.mask\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-pattern]=\"field.pattern\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n [p-readonly]=\"field.readonly\"\n >\n </po-input>\n\n <po-number\n #component\n *ngIf=\"compareTo(field.control, 'number')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-min]=\"field.minValue\"\n [p-max]=\"field.maxValue\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-step]=\"field.step\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-number>\n\n <po-decimal\n #component\n *ngIf=\"compareTo(field.control, 'decimal')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-disabled]=\"isDisabled(field)\"\n [p-decimals-length]=\"field.decimalsLength\"\n [p-thousand-maxlength]=\"field.thousandMaxlength\"\n [p-icon]=\"field.icon\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-locale]=\"field.locale\"\n [p-min]=\"field.minValue\"\n [p-max]=\"field.maxValue\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-decimal>\n\n <po-select\n #component\n *ngIf=\"compareTo(field.control, 'select')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-readonly]=\"field.readonly\"\n >\n </po-select>\n\n <po-radio-group\n #component\n *ngIf=\"compareTo(field.control, 'radioGroup')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-columns]=\"field.columns || 3\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n >\n </po-radio-group>\n\n <po-switch\n #component\n *ngIf=\"compareTo(field.control, 'switch')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-disabled]=\"isDisabled(field)\"\n [p-format-model]=\"field.formatModel\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-label-off]=\"field.booleanFalse\"\n [p-label-on]=\"field.booleanTrue\"\n [p-label-position]=\"field.labelPosition\"\n (p-change)=\"onChangeField(field)\"\n >\n </po-switch>\n\n <po-checkbox\n #component\n *ngIf=\"compareTo(field.control, 'checkbox')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-label]=\"field.label\"\n [p-size]=\"field.size\"\n (p-change)=\"onChangeField(field)\"\n >\n </po-checkbox>\n\n <po-combo\n #component\n *ngIf=\"compareTo(field.control, 'combo')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n p-emit-object-value\n [p-auto-focus]=\"field.focus\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-filter-params]=\"field.params\"\n [p-filter-service]=\"field.optionsService\"\n [p-help]=\"field.help\"\n [p-infinite-scroll]=\"field.infiniteScroll\"\n [p-infinite-scroll-distance]=\"field.infiniteScrollDistance || 100\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-options]=\"field.options\"\n [p-optional]=\"field.optional\"\n [p-sort]=\"field.sort\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field, $event)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n [p-filter-minlength]=\"field.filterMinlength\"\n [p-filter-mode]=\"field.filterMode\"\n [p-disabled-init-filter]=\"field.disabledInitFilter\"\n [p-disabled-tab-filter]=\"field.disabledTabFilter\"\n [p-debounce-time]=\"field.debounceTime\"\n [p-change-on-enter]=\"field.changeOnEnter\"\n >\n </po-combo>\n\n <po-lookup\n #component\n *ngIf=\"compareTo(field.control, 'lookup')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n p-field-label=\"label\"\n p-field-value=\"value\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-columns]=\"field.columns\"\n [p-disabled]=\"isDisabled(field)\"\n [p-field-label]=\"field.fieldLabel || 'label'\"\n [p-field-value]=\"field.fieldValue || 'value'\"\n [p-filter-params]=\"field.params\"\n [p-filter-service]=\"field.searchService\"\n [p-auto-focus]=\"field.focus\"\n [p-auto-height]=\"field.autoHeight\"\n [p-help]=\"field.help\"\n [p-field-format]=\"field.format\"\n [p-infinite-scroll]=\"field.infiniteScroll\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-multiple]=\"field.multiple\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-advanced-filters]=\"field.advancedFilters\"\n (p-change-visible-columns)=\"field.changeVisibleColumns?.($event)\"\n (p-restore-column-manager)=\"field.columnRestoreManager?.($event)\"\n >\n </po-lookup>\n\n <po-checkbox-group\n #component\n *ngIf=\"compareTo(field.control, 'checkboxGroup')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-columns]=\"field.columns || 3\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n >\n </po-checkbox-group>\n\n <po-multiselect\n #component\n *ngIf=\"compareTo(field.control, 'multiselect')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-auto-height]=\"field.autoHeight\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-filter-service]=\"field.optionsService\"\n [p-filter-mode]=\"field.filterMode\"\n [p-debounce-time]=\"field.debounceTime\"\n [p-sort]=\"field.sort\"\n [p-placeholder-search]=\"field.placeholderSearch\"\n [p-hide-search]=\"field.hideSearch\"\n [p-hide-select-all]=\"field.hideSelectAll\"\n >\n </po-multiselect>\n\n <po-textarea\n #component\n *ngIf=\"compareTo(field.control, 'textarea')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n [p-rows]=\"field.rows\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-textarea>\n\n <po-password\n #component\n *ngIf=\"compareTo(field.control, 'password')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-hide-password-peek]=\"field.hidePasswordPeek\"\n [p-icon]=\"field.icon\"\n [p-label]=\"field.label\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-pattern]=\"field.pattern\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-password>\n\n <po-upload\n #component\n *ngIf=\"compareTo(field.control, 'upload')\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-auto-upload]=\"field.autoUpload\"\n [p-directory]=\"field.directory\"\n [p-disabled]=\"isDisabled(field)\"\n [p-drag-drop]=\"field.dragDrop\"\n [p-drag-drop-height]=\"field.dragDropHeight\"\n [p-restrictions]=\"field.restrictions\"\n [p-form-field]=\"field.formField\"\n [p-headers]=\"field.headers\"\n [p-help]=\"field.help\"\n [p-hide-restrictions-info]=\"field.hideRestrictionsInfo\"\n [p-hide-select-button]=\"field.hideSelectButton\"\n [p-hide-send-button]=\"field.hideSendButton\"\n [p-multiple]=\"field.multiple\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [name]=\"field.property\"\n (p-error)=\"field.onError($event)\"\n (p-success)=\"field.onSuccess($event)\"\n (p-upload)=\"field.onUpload($event)\"\n [p-optional]=\"field.optional\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-url]=\"field.url\"\n >\n </po-upload>\n </ng-container>\n</div>\n" }]
441
+ args: [{ selector: 'po-dynamic-form-fields', viewProviders: [{ provide: ControlContainer, useExisting: NgForm }], providers: [PoDynamicFormValidationService], template: "<div class=\"po-row\" [class.po-dynamic]=\"hasContainers\" *ngIf=\"visibleFields && visibleFields.length > 0\">\n <ng-container\n *ngTemplateOutlet=\"\n hasContainers ? poContentContainer : poContent;\n context: { $implicit: hasContainers ? containerFields : visibleFields }\n \"\n ></ng-container>\n</div>\n\n<ng-template #poContent let-fields>\n <ng-container *ngFor=\"let field of fields; trackBy: trackBy\">\n <po-divider *ngIf=\"field?.divider?.trim()\" class=\"po-sm-12\" [p-label]=\"field.divider\"> </po-divider>\n\n <po-datepicker\n #component\n *ngIf=\"compareTo(field.control, 'datepicker')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-auto-focus]=\"field.focus\"\n [p-format]=\"field.format\"\n [p-help]=\"field.help\"\n [p-iso-format]=\"field.isoFormat\"\n [p-label]=\"field.label\"\n [p-locale]=\"field.locale\"\n [p-max-date]=\"field.maxValue\"\n [p-min-date]=\"field.minValue\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-datepicker>\n\n <po-datepicker-range\n #component\n *ngIf=\"compareTo(field.control, 'datepickerrange')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-max-date]=\"field.maxValue\"\n [p-min-date]=\"field.minValue\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n >\n </po-datepicker-range>\n\n <po-input\n #component\n *ngIf=\"compareTo(field.control, 'input')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-mask-format-model]=\"field.maskFormatModel\"\n [p-mask]=\"field.mask\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-pattern]=\"field.pattern\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n [p-readonly]=\"field.readonly\"\n >\n </po-input>\n\n <po-number\n #component\n *ngIf=\"compareTo(field.control, 'number')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-min]=\"field.minValue\"\n [p-max]=\"field.maxValue\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-step]=\"field.step\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-number>\n\n <po-decimal\n #component\n *ngIf=\"compareTo(field.control, 'decimal')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-disabled]=\"isDisabled(field)\"\n [p-decimals-length]=\"field.decimalsLength\"\n [p-thousand-maxlength]=\"field.thousandMaxlength\"\n [p-icon]=\"field.icon\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-locale]=\"field.locale\"\n [p-min]=\"field.minValue\"\n [p-max]=\"field.maxValue\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-decimal>\n\n <po-select\n #component\n *ngIf=\"compareTo(field.control, 'select')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-readonly]=\"field.readonly\"\n >\n </po-select>\n\n <po-radio-group\n #component\n *ngIf=\"compareTo(field.control, 'radioGroup')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-columns]=\"field.columns || 3\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n >\n </po-radio-group>\n\n <po-switch\n #component\n *ngIf=\"compareTo(field.control, 'switch')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-disabled]=\"isDisabled(field)\"\n [p-format-model]=\"field.formatModel\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-label-off]=\"field.booleanFalse\"\n [p-label-on]=\"field.booleanTrue\"\n [p-label-position]=\"field.labelPosition\"\n (p-change)=\"onChangeField(field)\"\n >\n </po-switch>\n\n <po-checkbox\n #component\n *ngIf=\"compareTo(field.control, 'checkbox')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-label]=\"field.label\"\n [p-size]=\"field.size\"\n (p-change)=\"onChangeField(field)\"\n >\n </po-checkbox>\n\n <po-combo\n #component\n *ngIf=\"compareTo(field.control, 'combo')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n p-emit-object-value\n [p-auto-focus]=\"field.focus\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-filter-params]=\"field.params\"\n [p-filter-service]=\"field.optionsService\"\n [p-help]=\"field.help\"\n [p-infinite-scroll]=\"field.infiniteScroll\"\n [p-infinite-scroll-distance]=\"field.infiniteScrollDistance || 100\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-options]=\"field.options\"\n [p-optional]=\"field.optional\"\n [p-sort]=\"field.sort\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field, $event)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n [p-filter-minlength]=\"field.filterMinlength\"\n [p-filter-mode]=\"field.filterMode\"\n [p-disabled-init-filter]=\"field.disabledInitFilter\"\n [p-disabled-tab-filter]=\"field.disabledTabFilter\"\n [p-debounce-time]=\"field.debounceTime\"\n [p-change-on-enter]=\"field.changeOnEnter\"\n >\n </po-combo>\n\n <po-lookup\n #component\n *ngIf=\"compareTo(field.control, 'lookup')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n p-field-label=\"label\"\n p-field-value=\"value\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-columns]=\"field.columns\"\n [p-disabled]=\"isDisabled(field)\"\n [p-field-label]=\"field.fieldLabel || 'label'\"\n [p-field-value]=\"field.fieldValue || 'value'\"\n [p-filter-params]=\"field.params\"\n [p-filter-service]=\"field.searchService\"\n [p-auto-focus]=\"field.focus\"\n [p-auto-height]=\"field.autoHeight\"\n [p-help]=\"field.help\"\n [p-field-format]=\"field.format\"\n [p-infinite-scroll]=\"field.infiniteScroll\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-multiple]=\"field.multiple\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-advanced-filters]=\"field.advancedFilters\"\n (p-change-visible-columns)=\"field.changeVisibleColumns?.($event)\"\n (p-restore-column-manager)=\"field.columnRestoreManager?.($event)\"\n >\n </po-lookup>\n\n <po-checkbox-group\n #component\n *ngIf=\"compareTo(field.control, 'checkboxGroup')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-columns]=\"field.columns || 3\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n >\n </po-checkbox-group>\n\n <po-multiselect\n #component\n *ngIf=\"compareTo(field.control, 'multiselect')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-auto-height]=\"field.autoHeight\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-filter-service]=\"field.optionsService\"\n [p-filter-mode]=\"field.filterMode\"\n [p-debounce-time]=\"field.debounceTime\"\n [p-sort]=\"field.sort\"\n [p-placeholder-search]=\"field.placeholderSearch\"\n [p-hide-search]=\"field.hideSearch\"\n [p-hide-select-all]=\"field.hideSelectAll\"\n >\n </po-multiselect>\n\n <po-textarea\n #component\n *ngIf=\"compareTo(field.control, 'textarea')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n [p-rows]=\"field.rows\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-textarea>\n\n <po-password\n #component\n *ngIf=\"compareTo(field.control, 'password')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-hide-password-peek]=\"field.hidePasswordPeek\"\n [p-icon]=\"field.icon\"\n [p-label]=\"field.label\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-pattern]=\"field.pattern\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-password>\n\n <po-upload\n #component\n *ngIf=\"compareTo(field.control, 'upload')\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-auto-upload]=\"field.autoUpload\"\n [p-directory]=\"field.directory\"\n [p-disabled]=\"isDisabled(field)\"\n [p-drag-drop]=\"field.dragDrop\"\n [p-drag-drop-height]=\"field.dragDropHeight\"\n [p-restrictions]=\"field.restrictions\"\n [p-form-field]=\"field.formField\"\n [p-headers]=\"field.headers\"\n [p-help]=\"field.help\"\n [p-hide-restrictions-info]=\"field.hideRestrictionsInfo\"\n [p-hide-select-button]=\"field.hideSelectButton\"\n [p-hide-send-button]=\"field.hideSendButton\"\n [p-multiple]=\"field.multiple\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [name]=\"field.property\"\n (p-error)=\"field.onError($event)\"\n (p-success)=\"field.onSuccess($event)\"\n (p-upload)=\"field.onUpload($event)\"\n [p-optional]=\"field.optional\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-url]=\"field.url\"\n >\n </po-upload>\n </ng-container>\n</ng-template>\n\n<ng-template #poContentContainer let-fields>\n <po-dynamic-container [p-fields]=\"fields\" [p-content]=\"poContent\"></po-dynamic-container>\n</ng-template>\n" }]
417
442
  }], () => [{ type: i1.TitleCasePipe }, { type: i2.PoDynamicFormValidationService }, { type: i0.ChangeDetectorRef }, { type: i3.NgForm }], { components: [{
418
443
  type: ViewChildren,
419
444
  args: ['component']
420
445
  }] }); })();
421
446
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PoDynamicFormFieldsComponent, { className: "PoDynamicFormFieldsComponent", filePath: "lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-fields/po-dynamic-form-fields.component.ts", lineNumber: 23 }); })();
422
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZHluYW1pYy1mb3JtLWZpZWxkcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZHluYW1pYy9wby1keW5hbWljLWZvcm0vcG8tZHluYW1pYy1mb3JtLWZpZWxkcy9wby1keW5hbWljLWZvcm0tZmllbGRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1keW5hbWljL3BvLWR5bmFtaWMtZm9ybS9wby1keW5hbWljLWZvcm0tZmllbGRzL3BvLWR5bmFtaWMtZm9ybS1maWVsZHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBMEQsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUkxRCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUUzRixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lDTDlHLGlDQUFvRzs7O0lBQXhDLDBDQUF5Qjs7OztJQUVyRiw2Q0F3QkM7SUFwQkMsdWFBQW1DO0lBa0JuQyx1UUFBWSxlQUFBLCtCQUFvQixDQUFBLElBQUM7SUFHbkMsaUJBQWdCOzs7O0lBdEJkLHdDQUF1QjtJQUN2QiwrREFBbUM7SUFDbkMsaURBQWdDLDJCQUFBLDJDQUFBLDBDQUFBLGdDQUFBLDZCQUFBLHlCQUFBLG9DQUFBLDJCQUFBLDZCQUFBLGlDQUFBLGlDQUFBLDhDQUFBLGlDQUFBLGlDQUFBLGlDQUFBLDBDQUFBLHVDQUFBOzs7O0lBc0JsQyxtREFvQkM7SUFoQkMsbWJBQW1DO0lBZW5D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O0lBRU8sS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUF5QixFQUFFLFVBQWtCLEVBQUUsWUFBZ0M7UUFDekcsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFekMsTUFBTSxnQkFBZ0IsR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDO1FBQy9DLFlBQVksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQzdCLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUM7UUFFN0IsSUFBSTtZQUNGLE1BQU0sY0FBYyxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDOUYsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFVBQVUsRUFBRSxjQUFjLENBQUMsQ0FBQztTQUN2RDtRQUFDLE1BQU07WUFDTixZQUFZLENBQUMsUUFBUSxHQUFHLGdCQUFnQixDQUFDO1NBQzFDO0lBQ0gsQ0FBQztzRkFqSVUsNEJBQTRCOzZEQUE1Qiw0QkFBNEI7Ozs7OzhDQUY1QixDQUFDLDhCQUE4QixDQUFDLEVBRDVCLENBQUMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lDbkJyRSw2RUFrYU07O1lBbGFlLHdFQUErQzs7O2lGRHNCdkQsNEJBQTRCO2NBTnhDLFNBQVM7MkJBQ0Usd0JBQXdCLGlCQUVuQixDQUFDLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsQ0FBQyxhQUN4RCxDQUFDLDhCQUE4QixDQUFDO2dKQUdoQixVQUFVO2tCQUFwQyxZQUFZO21CQUFDLFdBQVc7O2tGQURkLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIE9uQ2hhbmdlcywgUXVlcnlMaXN0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGRyZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xDb250YWluZXIsIE5nRm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFRpdGxlQ2FzZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgeyBQb0R5bmFtaWNGb3JtRmllbGQgfSBmcm9tICcuLi9wby1keW5hbWljLWZvcm0tZmllbGQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFBvRHluYW1pY0Zvcm1GaWVsZHNCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi9wby1keW5hbWljLWZvcm0tZmllbGRzLWJhc2UuY29tcG9uZW50JztcbmltcG9ydCB7IFBvRHluYW1pY0Zvcm1GaWVsZFZhbGlkYXRpb24gfSBmcm9tICcuLi9wby1keW5hbWljLWZvcm0tdmFsaWRhdGlvbi9wby1keW5hbWljLWZvcm0tZmllbGQtdmFsaWRhdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUG9EeW5hbWljRm9ybVZhbGlkYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vcG8tZHluYW1pYy1mb3JtLXZhbGlkYXRpb24vcG8tZHluYW1pYy1mb3JtLXZhbGlkYXRpb24uc2VydmljZSc7XG5cbi8qKlxuICogQGRvY3NQcml2YXRlXG4gKlxuICogQGRlc2NyaXB0aW9uXG4gKlxuICogQ29tcG9uZW50ZSBkZSBjcmlhw6fDo28gZG9zIGNhbXBvcyBkaW7Dom1pY29zLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwby1keW5hbWljLWZvcm0tZmllbGRzJyxcbiAgdGVtcGxhdGVVcmw6ICdwby1keW5hbWljLWZvcm0tZmllbGRzLmNvbXBvbmVudC5odG1sJyxcbiAgdmlld1Byb3ZpZGVyczogW3sgcHJvdmlkZTogQ29udHJvbENvbnRhaW5lciwgdXNlRXhpc3Rpbmc6IE5nRm9ybSB9XSxcbiAgcHJvdmlkZXJzOiBbUG9EeW5hbWljRm9ybVZhbGlkYXRpb25TZXJ2aWNlXVxufSlcbmV4cG9ydCBjbGFzcyBQb0R5bmFtaWNGb3JtRmllbGRzQ29tcG9uZW50IGV4dGVuZHMgUG9EeW5hbWljRm9ybUZpZWxkc0Jhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBAVmlld0NoaWxkcmVuKCdjb21wb25lbnQnKSBjb21wb25lbnRzOiBRdWVyeUxpc3Q8eyBuYW1lOiBzdHJpbmc7IGZvY3VzOiAoKSA9PiB2b2lkIH0+O1xuXG4gIHByaXZhdGUgcHJldmlvdXNWYWx1ZSA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHRpdGxlQ2FzZVBpcGU6IFRpdGxlQ2FzZVBpcGUsXG4gICAgcHJpdmF0ZSB2YWxpZGF0aW9uU2VydmljZTogUG9EeW5hbWljRm9ybVZhbGlkYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgY2hhbmdlczogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBmb3JtOiBOZ0Zvcm1cbiAgKSB7XG4gICAgc3VwZXIodGl0bGVDYXNlUGlwZSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXMuZmllbGRzKSB7XG4gICAgICB0aGlzLnZpc2libGVGaWVsZHMgPSB0aGlzLmdldFZpc2libGVGaWVsZHMoKTtcbiAgICB9XG4gIH1cblxuICBmb2N1cyhwcm9wZXJ0eTogc3RyaW5nKSB7XG4gICAgY29uc3QgZm91bmRDb21wb25lbnQgPSB0aGlzLmNvbXBvbmVudHMuZmluZChjb21wb25lbnQgPT4gY29tcG9uZW50Lm5hbWUgPT09IHByb3BlcnR5KTtcbiAgICBpZiAoZm91bmRDb21wb25lbnQpIHtcbiAgICAgIGZvdW5kQ29tcG9uZW50LmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgaXNEaXNhYmxlZChmaWVsZDogUG9EeW5hbWljRm9ybUZpZWxkKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZpZWxkLmRpc2FibGVkIHx8IHRoaXMuZGlzYWJsZWRGb3JtO1xuICB9XG5cbiAgYXN5bmMgb25DaGFuZ2VGaWVsZCh2aXNpYmxlRmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCwgb2JqZWN0VmFsdWU/OiBhbnkpIHtcbiAgICBjb25zdCB7IHByb3BlcnR5IH0gPSB2aXNpYmxlRmllbGQ7XG4gICAgY29uc3QgaXNCb29sZWFuVHlwZSA9IHZpc2libGVGaWVsZC50eXBlID09PSAnYm9vbGVhbic7XG4gICAgY29uc3QgaXNDaGFuZ2VkVmFsdWVGaWVsZCA9IHRoaXMucHJldmlvdXNWYWx1ZVtwcm9wZXJ0eV0gIT09IHRoaXMudmFsdWVbcHJvcGVydHldO1xuXG4gICAgaWYgKHZpc2libGVGaWVsZC5vcHRpb25zU2VydmljZSkge1xuICAgICAgdGhpcy5vYmplY3RWYWx1ZS5lbWl0KG9iamVjdFZhbHVlKTtcbiAgICB9XG5cbiAgICAvLyB2ZXJpZmljYSBzZSBvIGZvcm11bGFyaW8gZXN0YSB0b3VjaGVkIHBhcmEgbsOjbyBkaXNwYXJhciBvIHZhbGlkYXRlIGFvIGNhcnJlZ2FyIGEgdGVsYS5cbiAgICBpZiAoKHRoaXMuZm9ybS50b3VjaGVkIHx8IGlzQm9vbGVhblR5cGUpICYmIGlzQ2hhbmdlZFZhbHVlRmllbGQpIHtcbiAgICAgIGNvbnN0IHsgY2hhbmdlZEZpZWxkLCBjaGFuZ2VkRmllbGRJbmRleCB9ID0gdGhpcy5nZXRGaWVsZChwcm9wZXJ0eSk7XG5cbiAgICAgIGlmIChjaGFuZ2VkRmllbGQudmFsaWRhdGUpIHtcbiAgICAgICAgYXdhaXQgdGhpcy52YWxpZGF0ZUZpZWxkKGNoYW5nZWRGaWVsZCwgY2hhbmdlZEZpZWxkSW5kZXgsIHZpc2libGVGaWVsZCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMudHJpZ2dlclZhbGlkYXRpb25PbkZvcm0oY2hhbmdlZEZpZWxkSW5kZXgpO1xuICAgIH1cblxuICAgIHRoaXMudXBkYXRlUHJldmlvdXNWYWx1ZSgpO1xuICB9XG5cbiAgLy9lbWl0ZSBvIHZhbG9yIGEgY2FkYSBjYXJhY3RlcmUgZGlnaXRhZG8gbm8gaW5wdXRcbiAgb25DaGFuZ2VGaWVsZE1vZGVsKHZpc2libGVGaWVsZDogUG9EeW5hbWljRm9ybUZpZWxkKSB7XG4gICAgaWYgKHRoaXMudmFsaWRhdGVPbklucHV0KSB7XG4gICAgICBjb25zdCB7IHByb3BlcnR5IH0gPSB2aXNpYmxlRmllbGQ7XG4gICAgICBjb25zdCB7IGNoYW5nZWRGaWVsZEluZGV4IH0gPSB0aGlzLmdldEZpZWxkKHByb3BlcnR5KTtcbiAgICAgIHRoaXMudHJpZ2dlclZhbGlkYXRpb25PbkZvcm0oY2hhbmdlZEZpZWxkSW5kZXgpO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZVByZXZpb3VzVmFsdWUoKSB7XG4gICAgdGhpcy5wcmV2aW91c1ZhbHVlID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLnZhbHVlKSk7XG4gIH1cblxuICB0cmFja0J5KGluZGV4KSB7XG4gICAgcmV0dXJuIGluZGV4O1xuICB9XG5cbiAgcHJpdmF0ZSBhcHBseUZpZWxkVmFsaWRhdGlvbihpbmRleDogbnVtYmVyLCB2YWxpZGF0ZWRGaWVsZDogUG9EeW5hbWljRm9ybUZpZWxkVmFsaWRhdGlvbikge1xuICAgIGNvbnN0IGZpZWxkID0gdGhpcy5maWVsZHNbaW5kZXhdO1xuXG4gICAgdGhpcy5maWVsZHNbaW5kZXhdID0geyAuLi5maWVsZCwgLi4udmFsaWRhdGVkRmllbGQuZmllbGQgfTtcbiAgICB0aGlzLnVwZGF0ZUZpZWxkcygpO1xuXG4gICAgaWYgKHZhbGlkYXRlZEZpZWxkLmhhc093blByb3BlcnR5KCd2YWx1ZScpKSB7XG4gICAgICB0aGlzLnZhbHVlW2ZpZWxkLnByb3BlcnR5XSA9IHZhbGlkYXRlZEZpZWxkLnZhbHVlO1xuICAgIH1cblxuICAgIHRoaXMuY2hhbmdlcy5kZXRlY3RDaGFuZ2VzKCk7XG5cbiAgICBpZiAodmFsaWRhdGVkRmllbGQuZm9jdXMpIHtcbiAgICAgIHRoaXMuZm9jdXMoZmllbGQucHJvcGVydHkpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0RmllbGQocHJvcGVydHk6IHN0cmluZykge1xuICAgIGNvbnN0IGNoYW5nZWRGaWVsZEluZGV4ID0gdGhpcy5maWVsZHMuZmluZEluZGV4KGZpZWxkID0+IGZpZWxkLnByb3BlcnR5ID09PSBwcm9wZXJ0eSk7XG4gICAgY29uc3QgY2hhbmdlZEZpZWxkID0gdGhpcy5maWVsZHNbY2hhbmdlZEZpZWxkSW5kZXhdO1xuXG4gICAgcmV0dXJuIHsgY2hhbmdlZEZpZWxkLCBjaGFuZ2VkRmllbGRJbmRleCB9O1xuICB9XG5cbiAgcHJpdmF0ZSB0cmlnZ2VyVmFsaWRhdGlvbk9uRm9ybShjaGFuZ2VkRmllbGRJbmRleDogbnVtYmVyKSB7XG4gICAgY29uc3QgaXNWYWxpZGF0YWJsZUZpZWxkID0gdGhpcy52YWxpZGF0ZUZpZWxkcz8ubGVuZ3RoXG4gICAgICA/IHRoaXMudmFsaWRhdGVGaWVsZHNDaGVja2VyKHRoaXMudmFsaWRhdGVGaWVsZHMsIHRoaXMuZmllbGRzW2NoYW5nZWRGaWVsZEluZGV4XS5wcm9wZXJ0eSlcbiAgICAgIDogdHJ1ZTtcbiAgICBjb25zdCBoYXNWYWxpZGF0aW9uRm9ybSA9IHRoaXMudmFsaWRhdGUgJiYgaXNWYWxpZGF0YWJsZUZpZWxkICYmIHRoaXMuZm9ybVZhbGlkYXRlLm9ic2VydmVycy5sZW5ndGg7XG5cbiAgICBpZiAoaGFzVmFsaWRhdGlvbkZvcm0pIHtcbiAgICAgIGNvbnN0IHVwZGF0ZWRGaWVsZCA9IHRoaXMuZmllbGRzW2NoYW5nZWRGaWVsZEluZGV4XTtcbiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlLmVtaXQodXBkYXRlZEZpZWxkKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUZpZWxkcygpIHtcbiAgICB0aGlzLmZpZWxkc0NoYW5nZS5lbWl0KHRoaXMuZmllbGRzKTtcbiAgICB0aGlzLnZpc2libGVGaWVsZHMgPSB0aGlzLmdldFZpc2libGVGaWVsZHMoKTtcbiAgfVxuXG4gIHByaXZhdGUgdmFsaWRhdGVGaWVsZHNDaGVja2VyKHZhbGlkYXRlRmllbGRzOiBBcnJheTxzdHJpbmc+LCBwcm9wZXJ0eUZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGRbJ3Byb3BlcnR5J10pOiBib29sZWFuIHtcbiAgICByZXR1cm4gdmFsaWRhdGVGaWVsZHMuc29tZSh2YWxpZGF0ZUZpZWxkSXRlbSA9PiB2YWxpZGF0ZUZpZWxkSXRlbSA9PT0gcHJvcGVydHlGaWVsZCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHZhbGlkYXRlRmllbGQoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCwgZmllbGRJbmRleDogbnVtYmVyLCB2aXNpYmxlRmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCkge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpcy52YWx1ZVtmaWVsZC5wcm9wZXJ0eV07XG5cbiAgICBjb25zdCBwcmV2aW91c0Rpc2FibGVkID0gdmlzaWJsZUZpZWxkLmRpc2FibGVkO1xuICAgIHZpc2libGVGaWVsZC5kaXNhYmxlZCA9IHRydWU7XG4gICAgdGhpcy5jaGFuZ2VzLmRldGVjdENoYW5nZXMoKTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCB2YWxpZGF0ZWRGaWVsZCA9IGF3YWl0IHRoaXMudmFsaWRhdGlvblNlcnZpY2Uuc2VuZEZpZWxkQ2hhbmdlKGZpZWxkLCB2YWx1ZSkudG9Qcm9taXNlKCk7XG4gICAgICB0aGlzLmFwcGx5RmllbGRWYWxpZGF0aW9uKGZpZWxkSW5kZXgsIHZhbGlkYXRlZEZpZWxkKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHZpc2libGVGaWVsZC5kaXNhYmxlZCA9IHByZXZpb3VzRGlzYWJsZWQ7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicG8tcm93XCIgKm5nSWY9XCJ2aXNpYmxlRmllbGRzICYmIHZpc2libGVGaWVsZHMubGVuZ3RoID4gMFwiPlxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBmaWVsZCBvZiB2aXNpYmxlRmllbGRzOyB0cmFja0J5OiB0cmFja0J5XCI+XG4gICAgPHBvLWRpdmlkZXIgKm5nSWY9XCJmaWVsZD8uZGl2aWRlcj8udHJpbSgpXCIgY2xhc3M9XCJwby1zbS0xMlwiIFtwLWxhYmVsXT1cImZpZWxkLmRpdmlkZXJcIj4gPC9wby1kaXZpZGVyPlxuXG4gICAgPHBvLWRhdGVwaWNrZXJcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdkYXRlcGlja2VyJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY2xlYW5dPVwiZmllbGQuY2xlYW5cIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtZXJyb3ItcGF0dGVybl09XCJmaWVsZC5lcnJvck1lc3NhZ2VcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1mb3JtYXRdPVwiZmllbGQuZm9ybWF0XCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1pc28tZm9ybWF0XT1cImZpZWxkLmlzb0Zvcm1hdFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1sb2NhbGVdPVwiZmllbGQubG9jYWxlXCJcbiAgICAgIFtwLW1heC1kYXRlXT1cImZpZWxkLm1heFZhbHVlXCJcbiAgICAgIFtwLW1pbi1kYXRlXT1cImZpZWxkLm1pblZhbHVlXCJcbiAgICAgIFtwLW5vLWF1dG9jb21wbGV0ZV09XCJmaWVsZC5ub0F1dG9jb21wbGV0ZVwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICBbcC1zaG93LXJlcXVpcmVkXT1cImZpZWxkLnNob3dSZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgICAgW3AtcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgID5cbiAgICA8L3BvLWRhdGVwaWNrZXI+XG5cbiAgICA8cG8tZGF0ZXBpY2tlci1yYW5nZVxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ2RhdGVwaWNrZXJyYW5nZScpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLWxpdGVyYWxzXT1cImZpZWxkLmxpdGVyYWxzXCJcbiAgICAgIFtwLW1heC1kYXRlXT1cImZpZWxkLm1heFZhbHVlXCJcbiAgICAgIFtwLW1pbi1kYXRlXT1cImZpZWxkLm1pblZhbHVlXCJcbiAgICAgIFtwLW5vLWF1dG9jb21wbGV0ZV09XCJmaWVsZC5ub0F1dG9jb21wbGV0ZVwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICBbcC1zaG93LXJlcXVpcmVkXT1cImZpZWxkLnNob3dSZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgID5cbiAgICA8L3BvLWRhdGVwaWNrZXItcmFuZ2U+XG5cbiAgICA8cG8taW5wdXRcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdpbnB1dCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWVycm9yLXBhdHRlcm5dPVwiZmllbGQuZXJyb3JNZXNzYWdlXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLW1hc2stZm9ybWF0LW1vZGVsXT1cImZpZWxkLm1hc2tGb3JtYXRNb2RlbFwiXG4gICAgICBbcC1tYXNrXT1cImZpZWxkLm1hc2tcIlxuICAgICAgW3AtbWF4bGVuZ3RoXT1cImZpZWxkLm1heExlbmd0aFwiXG4gICAgICBbcC1taW5sZW5ndGhdPVwiZmllbGQubWluTGVuZ3RoXCJcbiAgICAgIFtwLW5vLWF1dG9jb21wbGV0ZV09XCJmaWVsZC5ub0F1dG9jb21wbGV0ZVwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1wYXR0ZXJuXT1cImZpZWxkLnBhdHRlcm5cIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIChwLWNoYW5nZS1tb2RlbCk9XCJvbkNoYW5nZUZpZWxkTW9kZWwoZmllbGQpXCJcbiAgICAgIFtwLWljb25dPVwiZmllbGQuaWNvblwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgPlxuICAgIDwvcG8taW5wdXQ+XG5cbiAgICA8cG8tbnVtYmVyXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnbnVtYmVyJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY2xlYW5dPVwiZmllbGQuY2xlYW5cIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtZXJyb3ItcGF0dGVybl09XCJmaWVsZC5lcnJvck1lc3NhZ2VcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbWluXT1cImZpZWxkLm1pblZhbHVlXCJcbiAgICAgIFtwLW1heF09XCJmaWVsZC5tYXhWYWx1ZVwiXG4gICAgICBbcC1tYXhsZW5ndGhdPVwiZmllbGQubWF4TGVuZ3RoXCJcbiAgICAgIFtwLW1pbmxlbmd0aF09XCJmaWVsZC5taW5MZW5ndGhcIlxuICAgICAgW3Atbm8tYXV0b2NvbXBsZXRlXT1cImZpZWxkLm5vQXV0b2NvbXBsZXRlXCJcbiAgICAgIFtwLW9wdGlvbmFsXT1cImZpZWxkLm9wdGlvbmFsXCJcbiAgICAgIFtwLXN0ZXBdPVwiZmllbGQuc3RlcFwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICBbcC1zaG93LXJlcXVpcmVkXT1cImZpZWxkLnNob3dSZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgICAgKHAtY2hhbmdlLW1vZGVsKT1cIm9uQ2hhbmdlRmllbGRNb2RlbChmaWVsZClcIlxuICAgICAgW3AtaWNvbl09XCJmaWVsZC5pY29uXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICA+XG4gICAgPC9wby1udW1iZXI+XG5cbiAgICA8cG8tZGVjaW1hbFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ2RlY2ltYWwnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1jbGVhbl09XCJmaWVsZC5jbGVhblwiXG4gICAgICBbcC1lcnJvci1wYXR0ZXJuXT1cImZpZWxkLmVycm9yTWVzc2FnZVwiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1kZWNpbWFscy1sZW5ndGhdPVwiZmllbGQuZGVjaW1hbHNMZW5ndGhcIlxuICAgICAgW3AtdGhvdXNhbmQtbWF4bGVuZ3RoXT1cImZpZWxkLnRob3VzYW5kTWF4bGVuZ3RoXCJcbiAgICAgIFtwLWljb25dPVwiZmllbGQuaWNvblwiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1sb2NhbGVdPVwiZmllbGQubG9jYWxlXCJcbiAgICAgIFtwLW1pbl09XCJmaWVsZC5taW5WYWx1ZVwiXG4gICAgICBbcC1tYXhdPVwiZmllbGQubWF4VmFsdWVcIlxuICAgICAgW3AtbWF4bGVuZ3RoXT1cImZpZWxkLm1heExlbmd0aFwiXG4gICAgICBbcC1taW5sZW5ndGhdPVwiZmllbGQubWluTGVuZ3RoXCJcbiAgICAgIFtwLW5vLWF1dG9jb21wbGV0ZV09XCJmaWVsZC5ub0F1dG9jb21wbGV0ZVwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICBbcC1zaG93LXJlcXVpcmVkXT1cImZpZWxkLnNob3dSZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgICAgKHAtY2hhbmdlLW1vZGVsKT1cIm9uQ2hhbmdlRmllbGRNb2RlbChmaWVsZClcIlxuICAgICAgW3AtcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgID5cbiAgICA8L3BvLWRlY2ltYWw+XG5cbiAgICA8cG8tc2VsZWN0XG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnc2VsZWN0JylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtZmllbGQtbGFiZWxdPVwiZmllbGQuZmllbGRMYWJlbFwiXG4gICAgICBbcC1maWVsZC12YWx1ZV09XCJmaWVsZC5maWVsZFZhbHVlXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1vcHRpb25zXT1cImZpZWxkLm9wdGlvbnNcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICAgIFtwLXJlYWRvbmx5XT1cImZpZWxkLnJlYWRvbmx5XCJcbiAgICA+XG4gICAgPC9wby1zZWxlY3Q+XG5cbiAgICA8cG8tcmFkaW8tZ3JvdXBcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdyYWRpb0dyb3VwJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY29sdW1uc109XCJmaWVsZC5jb2x1bW5zIHx8IDNcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3Atb3B0aW9uc109XCJmaWVsZC5vcHRpb25zXCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIFtwLXNob3ctcmVxdWlyZWRdPVwiZmllbGQuc2hvd1JlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgPlxuICAgIDwvcG8tcmFkaW8tZ3JvdXA+XG5cbiAgICA8cG8tc3dpdGNoXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnc3dpdGNoJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtZm9ybWF0LW1vZGVsXT1cImZpZWxkLmZvcm1hdE1vZGVsXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1sYWJlbC1vZmZdPVwiZmllbGQuYm9vbGVhbkZhbHNlXCJcbiAgICAgIFtwLWxhYmVsLW9uXT1cImZpZWxkLmJvb2xlYW5UcnVlXCJcbiAgICAgIFtwLWxhYmVsLXBvc2l0aW9uXT1cImZpZWxkLmxhYmVsUG9zaXRpb25cIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICA+XG4gICAgPC9wby1zd2l0Y2g+XG5cbiAgICA8cG8tY2hlY2tib3hcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdjaGVja2JveCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3Atc2l6ZV09XCJmaWVsZC5zaXplXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgPlxuICAgIDwvcG8tY2hlY2tib3g+XG5cbiAgICA8cG8tY29tYm9cbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdjb21ibycpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIHAtZW1pdC1vYmplY3QtdmFsdWVcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtY2xlYW5dPVwiZmllbGQuY2xlYW5cIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtZmllbGQtbGFiZWxdPVwiZmllbGQuZmllbGRMYWJlbFwiXG4gICAgICBbcC1maWVsZC12YWx1ZV09XCJmaWVsZC5maWVsZFZhbHVlXCJcbiAgICAgIFtwLWZpbHRlci1wYXJhbXNdPVwiZmllbGQucGFyYW1zXCJcbiAgICAgIFtwLWZpbHRlci1zZXJ2aWNlXT1cImZpZWxkLm9wdGlvbnNTZXJ2aWNlXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1pbmZpbml0ZS1zY3JvbGxdPVwiZmllbGQuaW5maW5pdGVTY3JvbGxcIlxuICAgICAgW3AtaW5maW5pdGUtc2Nyb2xsLWRpc3RhbmNlXT1cImZpZWxkLmluZmluaXRlU2Nyb2xsRGlzdGFuY2UgfHwgMTAwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLWxpdGVyYWxzXT1cImZpZWxkLmxpdGVyYWxzXCJcbiAgICAgIFtwLW9wdGlvbnNdPVwiZmllbGQub3B0aW9uc1wiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1zb3J0XT1cImZpZWxkLnNvcnRcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQsICRldmVudClcIlxuICAgICAgW3AtaWNvbl09XCJmaWVsZC5pY29uXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICAgIFtwLWZpbHRlci1taW5sZW5ndGhdPVwiZmllbGQuZmlsdGVyTWlubGVuZ3RoXCJcbiAgICAgIFtwLWZpbHRlci1tb2RlXT1cImZpZWxkLmZpbHRlck1vZGVcIlxuICAgICAgW3AtZGlzYWJsZWQtaW5pdC1maWx0ZXJdPVwiZmllbGQuZGlzYWJsZWRJbml0RmlsdGVyXCJcbiAgICAgIFtwLWRpc2FibGVkLXRhYi1maWx0ZXJdPVwiZmllbGQuZGlzYWJsZWRUYWJGaWx0ZXJcIlxuICAgICAgW3AtZGVib3VuY2UtdGltZV09XCJmaWVsZC5kZWJvdW5jZVRpbWVcIlxuICAgICAgW3AtY2hhbmdlLW9uLWVudGVyXT1cImZpZWxkLmNoYW5nZU9uRW50ZXJcIlxuICAgID5cbiAgICA8L3BvLWNvbWJvPlxuXG4gICAgPHBvLWxvb2t1cFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ2xvb2t1cCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIHAtZmllbGQtbGFiZWw9XCJsYWJlbFwiXG4gICAgICBwLWZpZWxkLXZhbHVlPVwidmFsdWVcIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY2xlYW5dPVwiZmllbGQuY2xlYW5cIlxuICAgICAgW3AtY29sdW1uc109XCJmaWVsZC5jb2x1bW5zXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWZpZWxkLWxhYmVsXT1cImZpZWxkLmZpZWxkTGFiZWwgfHwgJ2xhYmVsJ1wiXG4gICAgICBbcC1maWVsZC12YWx1ZV09XCJmaWVsZC5maWVsZFZhbHVlIHx8ICd2YWx1ZSdcIlxuICAgICAgW3AtZmlsdGVyLXBhcmFtc109XCJmaWVsZC5wYXJhbXNcIlxuICAgICAgW3AtZmlsdGVyLXNlcnZpY2VdPVwiZmllbGQuc2VhcmNoU2VydmljZVwiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWF1dG8taGVpZ2h0XT1cImZpZWxkLmF1dG9IZWlnaHRcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWZpZWxkLWZvcm1hdF09XCJmaWVsZC5mb3JtYXRcIlxuICAgICAgW3AtaW5maW5pdGUtc2Nyb2xsXT1cImZpZWxkLmluZmluaXRlU2Nyb2xsXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLWxpdGVyYWxzXT1cImZpZWxkLmxpdGVyYWxzXCJcbiAgICAgIFtwLW11bHRpcGxlXT1cImZpZWxkLm11bHRpcGxlXCJcbiAgICAgIFtwLW5vLWF1dG9jb21wbGV0ZV09XCJmaWVsZC5ub0F1dG9jb21wbGV0ZVwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICBbcC1zaG93LXJlcXVpcmVkXT1cImZpZWxkLnNob3dSZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgICAgW3AtcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgW3AtYWR2YW5jZWQtZmlsdGVyc109XCJmaWVsZC5hZHZhbmNlZEZpbHRlcnNcIlxuICAgICAgKHAtY2hhbmdlLXZpc2libGUtY29sdW1ucyk9XCJmaWVsZC5jaGFuZ2VWaXNpYmxlQ29sdW1ucz8uKCRldmVudClcIlxuICAgICAgKHAtcmVzdG9yZS1jb2x1bW4tbWFuYWdlcik9XCJmaWVsZC5jb2x1bW5SZXN0b3JlTWFuYWdlcj8uKCRldmVudClcIlxuICAgID5cbiAgICA8L3BvLWxvb2t1cD5cblxuICAgIDxwby1jaGVja2JveC1ncm91cFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ2NoZWNrYm94R3JvdXAnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1jb2x1bW5zXT1cImZpZWxkLmNvbHVtbnMgfHwgM1wiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1vcHRpb25zXT1cImZpZWxkLm9wdGlvbnNcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICA+XG4gICAgPC9wby1jaGVja2JveC1ncm91cD5cblxuICAgIDxwby1tdWx0aXNlbGVjdFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ211bHRpc2VsZWN0JylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1hdXRvLWhlaWdodF09XCJmaWVsZC5hdXRvSGVpZ2h0XCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1saXRlcmFsc109XCJmaWVsZC5saXRlcmFsc1wiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1vcHRpb25zXT1cImZpZWxkLm9wdGlvbnNcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICAgIFtwLWZpZWxkLWxhYmVsXT1cImZpZWxkLmZpZWxkTGFiZWxcIlxuICAgICAgW3AtZmllbGQtdmFsdWVdPVwiZmllbGQuZmllbGRWYWx1ZVwiXG4gICAgICBbcC1maWx0ZXItc2VydmljZV09XCJmaWVsZC5vcHRpb25zU2VydmljZVwiXG4gICAgICBbcC1maWx0ZXItbW9kZV09XCJmaWVsZC5maWx0ZXJNb2RlXCJcbiAgICAgIFtwLWRlYm91bmNlLXRpbWVdPVwiZmllbGQuZGVib3VuY2VUaW1lXCJcbiAgICAgIFtwLXNvcnRdPVwiZmllbGQuc29ydFwiXG4gICAgICBbcC1wbGFjZWhvbGRlci1zZWFyY2hdPVwiZmllbGQucGxhY2Vob2xkZXJTZWFyY2hcIlxuICAgICAgW3AtaGlkZS1zZWFyY2hdPVwiZmllbGQuaGlkZVNlYXJjaFwiXG4gICAgICBbcC1oaWRlLXNlbGVjdC1hbGxdPVwiZmllbGQuaGlkZVNlbGVjdEFsbFwiXG4gICAgPlxuICAgIDwvcG8tbXVsdGlzZWxlY3Q+XG5cbiAgICA8cG8tdGV4dGFyZWFcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICd0ZXh0YXJlYScpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLW1heGxlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGhcIlxuICAgICAgW3AtbWlubGVuZ3RoXT1cImZpZWxkLm1pbkxlbmd0aFwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICBbcC1zaG93LXJlcXVpcmVkXT1cImZpZWxkLnNob3dSZXF1aXJlZFwiXG4gICAgICBbcC1yb3dzXT1cImZpZWxkLnJvd3NcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIChwLWNoYW5nZS1tb2RlbCk9XCJvbkNoYW5nZUZpZWxkTW9kZWwoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICA+XG4gICAgPC9wby10ZXh0YXJlYT5cblxuICAgIDxwby1wYXNzd29yZFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ3Bhc3N3b3JkJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY2xlYW5dPVwiZmllbGQuY2xlYW5cIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtZXJyb3ItcGF0dGVybl09XCJmaWVsZC5lcnJvck1lc3NhZ2VcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtaGlkZS1wYXNzd29yZC1wZWVrXT1cImZpZWxkLmhpZGVQYXNzd29yZFBlZWtcIlxuICAgICAgW3AtaWNvbl09XCJmaWVsZC5pY29uXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLW1heGxlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGhcIlxuICAgICAgW3AtbWlubGVuZ3RoXT1cImZpZWxkLm1pbkxlbmd0aFwiXG4gICAgICBbcC1uby1hdXRvY29tcGxldGVdPVwiZmllbGQubm9BdXRvY29tcGxldGVcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcGF0dGVybl09XCJmaWVsZC5wYXR0ZXJuXCJcbiAgICAgIFtwLXJlYWRvbmx5XT1cImZpZWxkLnJlYWRvbmx5XCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIFtwLXNob3ctcmVxdWlyZWRdPVwiZmllbGQuc2hvd1JlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgICAocC1jaGFuZ2UtbW9kZWwpPVwib25DaGFuZ2VGaWVsZE1vZGVsKGZpZWxkKVwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgPlxuICAgIDwvcG8tcGFzc3dvcmQ+XG5cbiAgICA8cG8tdXBsb2FkXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAndXBsb2FkJylcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtYXV0by11cGxvYWRdPVwiZmllbGQuYXV0b1VwbG9hZFwiXG4gICAgICBbcC1kaXJlY3RvcnldPVwiZmllbGQuZGlyZWN0b3J5XCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWRyYWctZHJvcF09XCJmaWVsZC5kcmFnRHJvcFwiXG4gICAgICBbcC1kcmFnLWRyb3AtaGVpZ2h0XT1cImZpZWxkLmRyYWdEcm9wSGVpZ2h0XCJcbiAgICAgIFtwLXJlc3RyaWN0aW9uc109XCJmaWVsZC5yZXN0cmljdGlvbnNcIlxuICAgICAgW3AtZm9ybS1maWVsZF09XCJmaWVsZC5mb3JtRmllbGRcIlxuICAgICAgW3AtaGVhZGVyc109XCJmaWVsZC5oZWFkZXJzXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1oaWRlLXJlc3RyaWN0aW9ucy1pbmZvXT1cImZpZWxkLmhpZGVSZXN0cmljdGlvbnNJbmZvXCJcbiAgICAgIFtwLWhpZGUtc2VsZWN0LWJ1dHRvbl09XCJmaWVsZC5oaWRlU2VsZWN0QnV0dG9uXCJcbiAgICAgIFtwLWhpZGUtc2VuZC1idXR0b25dPVwiZmllbGQuaGlkZVNlbmRCdXR0b25cIlxuICAgICAgW3AtbXVsdGlwbGVdPVwiZmllbGQubXVsdGlwbGVcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbGl0ZXJhbHNdPVwiZmllbGQubGl0ZXJhbHNcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgKHAtZXJyb3IpPVwiZmllbGQub25FcnJvcigkZXZlbnQpXCJcbiAgICAgIChwLXN1Y2Nlc3MpPVwiZmllbGQub25TdWNjZXNzKCRldmVudClcIlxuICAgICAgKHAtdXBsb2FkKT1cImZpZWxkLm9uVXBsb2FkKCRldmVudClcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIChwLWNoYW5nZS1tb2RlbCk9XCJvbkNoYW5nZUZpZWxkTW9kZWwoZmllbGQpXCJcbiAgICAgIFtwLXVybF09XCJmaWVsZC51cmxcIlxuICAgID5cbiAgICA8L3BvLXVwbG9hZD5cbiAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbiJdfQ==
447
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZHluYW1pYy1mb3JtLWZpZWxkcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZHluYW1pYy9wby1keW5hbWljLWZvcm0vcG8tZHluYW1pYy1mb3JtLWZpZWxkcy9wby1keW5hbWljLWZvcm0tZmllbGRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1keW5hbWljL3BvLWR5bmFtaWMtZm9ybS9wby1keW5hbWljLWZvcm0tZmllbGRzL3BvLWR5bmFtaWMtZm9ybS1maWVsZHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBMEQsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUkxRCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUUzRixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQ05oSCx3QkFLZ0I7Ozs7SUFObEIsOEJBQXlHO0lBQ3ZHLHFHQUtnQjtJQUNsQixpQkFBTTs7Ozs7SUFQYyxrREFBa0M7SUFFakQsY0FFUTtJQUZSLG1FQUVRLDZIQUFBOzs7SUFPVCxpQ0FBb0c7OztJQUF4QywwQ0FBeUI7Ozs7SUFFckYsNkNBd0JDO0lBcEJDLCthQUFtQztJQWtCbkMsK1FBQVksZUFBQSwrQkFBb0IsQ0FBQSxJQUFDO0lBR25DLGlCQUFnQjs7OztJQXRCZCx3Q0FBdUI7SUFDdkIsZ0VBQW1DO0lBQ25DLGlEQUFnQywyQkFBQSw0Q0FBQSwwQ0FBQSxnQ0FBQSw2QkFBQSx5QkFBQSxv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QyxhQUN4RCxDQUFDLDhCQUE4QixDQUFDO2dKQUdoQixVQUFVO2tCQUFwQyxZQUFZO21CQUFDLFdBQVc7O2tGQURkLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIE9uQ2hhbmdlcywgUXVlcnlMaXN0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGRyZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xDb250YWluZXIsIE5nRm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFRpdGxlQ2FzZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgeyBQb0R5bmFtaWNGb3JtRmllbGQgfSBmcm9tICcuLi9wby1keW5hbWljLWZvcm0tZmllbGQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFBvRHluYW1pY0Zvcm1GaWVsZHNCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi9wby1keW5hbWljLWZvcm0tZmllbGRzLWJhc2UuY29tcG9uZW50JztcbmltcG9ydCB7IFBvRHluYW1pY0Zvcm1GaWVsZFZhbGlkYXRpb24gfSBmcm9tICcuLi9wby1keW5hbWljLWZvcm0tdmFsaWRhdGlvbi9wby1keW5hbWljLWZvcm0tZmllbGQtdmFsaWRhdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUG9EeW5hbWljRm9ybVZhbGlkYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vcG8tZHluYW1pYy1mb3JtLXZhbGlkYXRpb24vcG8tZHluYW1pYy1mb3JtLXZhbGlkYXRpb24uc2VydmljZSc7XG5cbi8qKlxuICogQGRvY3NQcml2YXRlXG4gKlxuICogQGRlc2NyaXB0aW9uXG4gKlxuICogQ29tcG9uZW50ZSBkZSBjcmlhw6fDo28gZG9zIGNhbXBvcyBkaW7Dom1pY29zLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwby1keW5hbWljLWZvcm0tZmllbGRzJyxcbiAgdGVtcGxhdGVVcmw6ICdwby1keW5hbWljLWZvcm0tZmllbGRzLmNvbXBvbmVudC5odG1sJyxcbiAgdmlld1Byb3ZpZGVyczogW3sgcHJvdmlkZTogQ29udHJvbENvbnRhaW5lciwgdXNlRXhpc3Rpbmc6IE5nRm9ybSB9XSxcbiAgcHJvdmlkZXJzOiBbUG9EeW5hbWljRm9ybVZhbGlkYXRpb25TZXJ2aWNlXVxufSlcbmV4cG9ydCBjbGFzcyBQb0R5bmFtaWNGb3JtRmllbGRzQ29tcG9uZW50IGV4dGVuZHMgUG9EeW5hbWljRm9ybUZpZWxkc0Jhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBAVmlld0NoaWxkcmVuKCdjb21wb25lbnQnKSBjb21wb25lbnRzOiBRdWVyeUxpc3Q8eyBuYW1lOiBzdHJpbmc7IGZvY3VzOiAoKSA9PiB2b2lkIH0+O1xuXG4gIHByaXZhdGUgcHJldmlvdXNWYWx1ZSA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHRpdGxlQ2FzZVBpcGU6IFRpdGxlQ2FzZVBpcGUsXG4gICAgcHJpdmF0ZSB2YWxpZGF0aW9uU2VydmljZTogUG9EeW5hbWljRm9ybVZhbGlkYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgY2hhbmdlczogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBmb3JtOiBOZ0Zvcm1cbiAgKSB7XG4gICAgc3VwZXIodGl0bGVDYXNlUGlwZSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXMuZmllbGRzKSB7XG4gICAgICB0aGlzLnZpc2libGVGaWVsZHMgPSB0aGlzLmdldFZpc2libGVGaWVsZHMoKTtcbiAgICAgIHRoaXMuc2V0Q29udGFpbmVyRmllbGRzKCk7XG4gICAgfVxuICB9XG5cbiAgZm9jdXMocHJvcGVydHk6IHN0cmluZykge1xuICAgIGNvbnN0IGZvdW5kQ29tcG9uZW50ID0gdGhpcy5jb21wb25lbnRzLmZpbmQoY29tcG9uZW50ID0+IGNvbXBvbmVudC5uYW1lID09PSBwcm9wZXJ0eSk7XG4gICAgaWYgKGZvdW5kQ29tcG9uZW50KSB7XG4gICAgICBmb3VuZENvbXBvbmVudC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIGlzRGlzYWJsZWQoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmaWVsZC5kaXNhYmxlZCB8fCB0aGlzLmRpc2FibGVkRm9ybTtcbiAgfVxuXG4gIGFzeW5jIG9uQ2hhbmdlRmllbGQodmlzaWJsZUZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGQsIG9iamVjdFZhbHVlPzogYW55KSB7XG4gICAgY29uc3QgeyBwcm9wZXJ0eSB9ID0gdmlzaWJsZUZpZWxkO1xuICAgIGNvbnN0IGlzQm9vbGVhblR5cGUgPSB2aXNpYmxlRmllbGQudHlwZSA9PT0gJ2Jvb2xlYW4nO1xuICAgIGNvbnN0IGlzQ2hhbmdlZFZhbHVlRmllbGQgPSB0aGlzLnByZXZpb3VzVmFsdWVbcHJvcGVydHldICE9PSB0aGlzLnZhbHVlW3Byb3BlcnR5XTtcblxuICAgIGlmICh2aXNpYmxlRmllbGQub3B0aW9uc1NlcnZpY2UpIHtcbiAgICAgIHRoaXMub2JqZWN0VmFsdWUuZW1pdChvYmplY3RWYWx1ZSk7XG4gICAgfVxuXG4gICAgLy8gdmVyaWZpY2Egc2UgbyBmb3JtdWxhcmlvIGVzdGEgdG91Y2hlZCBwYXJhIG7Do28gZGlzcGFyYXIgbyB2YWxpZGF0ZSBhbyBjYXJyZWdhciBhIHRlbGEuXG4gICAgaWYgKCh0aGlzLmZvcm0udG91Y2hlZCB8fCBpc0Jvb2xlYW5UeXBlKSAmJiBpc0NoYW5nZWRWYWx1ZUZpZWxkKSB7XG4gICAgICBjb25zdCB7IGNoYW5nZWRGaWVsZCwgY2hhbmdlZEZpZWxkSW5kZXggfSA9IHRoaXMuZ2V0RmllbGQocHJvcGVydHkpO1xuXG4gICAgICBpZiAoY2hhbmdlZEZpZWxkLnZhbGlkYXRlKSB7XG4gICAgICAgIGF3YWl0IHRoaXMudmFsaWRhdGVGaWVsZChjaGFuZ2VkRmllbGQsIGNoYW5nZWRGaWVsZEluZGV4LCB2aXNpYmxlRmllbGQpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnRyaWdnZXJWYWxpZGF0aW9uT25Gb3JtKGNoYW5nZWRGaWVsZEluZGV4KTtcbiAgICB9XG5cbiAgICB0aGlzLnVwZGF0ZVByZXZpb3VzVmFsdWUoKTtcbiAgfVxuXG4gIC8vZW1pdGUgbyB2YWxvciBhIGNhZGEgY2FyYWN0ZXJlIGRpZ2l0YWRvIG5vIGlucHV0XG4gIG9uQ2hhbmdlRmllbGRNb2RlbCh2aXNpYmxlRmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCkge1xuICAgIGlmICh0aGlzLnZhbGlkYXRlT25JbnB1dCkge1xuICAgICAgY29uc3QgeyBwcm9wZXJ0eSB9ID0gdmlzaWJsZUZpZWxkO1xuICAgICAgY29uc3QgeyBjaGFuZ2VkRmllbGRJbmRleCB9ID0gdGhpcy5nZXRGaWVsZChwcm9wZXJ0eSk7XG4gICAgICB0aGlzLnRyaWdnZXJWYWxpZGF0aW9uT25Gb3JtKGNoYW5nZWRGaWVsZEluZGV4KTtcbiAgICB9XG4gIH1cblxuICB1cGRhdGVQcmV2aW91c1ZhbHVlKCkge1xuICAgIHRoaXMucHJldmlvdXNWYWx1ZSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy52YWx1ZSkpO1xuICB9XG5cbiAgdHJhY2tCeShpbmRleCkge1xuICAgIHJldHVybiBpbmRleDtcbiAgfVxuXG4gIHByaXZhdGUgYXBwbHlGaWVsZFZhbGlkYXRpb24oaW5kZXg6IG51bWJlciwgdmFsaWRhdGVkRmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZFZhbGlkYXRpb24pIHtcbiAgICBjb25zdCBmaWVsZCA9IHRoaXMuZmllbGRzW2luZGV4XTtcblxuICAgIHRoaXMuZmllbGRzW2luZGV4XSA9IHsgLi4uZmllbGQsIC4uLnZhbGlkYXRlZEZpZWxkLmZpZWxkIH07XG4gICAgdGhpcy51cGRhdGVGaWVsZHMoKTtcblxuICAgIGlmICh2YWxpZGF0ZWRGaWVsZC5oYXNPd25Qcm9wZXJ0eSgndmFsdWUnKSkge1xuICAgICAgdGhpcy52YWx1ZVtmaWVsZC5wcm9wZXJ0eV0gPSB2YWxpZGF0ZWRGaWVsZC52YWx1ZTtcbiAgICB9XG5cbiAgICB0aGlzLmNoYW5nZXMuZGV0ZWN0Q2hhbmdlcygpO1xuXG4gICAgaWYgKHZhbGlkYXRlZEZpZWxkLmZvY3VzKSB7XG4gICAgICB0aGlzLmZvY3VzKGZpZWxkLnByb3BlcnR5KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldEZpZWxkKHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICBjb25zdCBjaGFuZ2VkRmllbGRJbmRleCA9IHRoaXMuZmllbGRzLmZpbmRJbmRleChmaWVsZCA9PiBmaWVsZC5wcm9wZXJ0eSA9PT0gcHJvcGVydHkpO1xuICAgIGNvbnN0IGNoYW5nZWRGaWVsZCA9IHRoaXMuZmllbGRzW2NoYW5nZWRGaWVsZEluZGV4XTtcblxuICAgIHJldHVybiB7IGNoYW5nZWRGaWVsZCwgY2hhbmdlZEZpZWxkSW5kZXggfTtcbiAgfVxuXG4gIHByaXZhdGUgdHJpZ2dlclZhbGlkYXRpb25PbkZvcm0oY2hhbmdlZEZpZWxkSW5kZXg6IG51bWJlcikge1xuICAgIGNvbnN0IGlzVmFsaWRhdGFibGVGaWVsZCA9IHRoaXMudmFsaWRhdGVGaWVsZHM/Lmxlbmd0aFxuICAgICAgPyB0aGlzLnZhbGlkYXRlRmllbGRzQ2hlY2tlcih0aGlzLnZhbGlkYXRlRmllbGRzLCB0aGlzLmZpZWxkc1tjaGFuZ2VkRmllbGRJbmRleF0ucHJvcGVydHkpXG4gICAgICA6IHRydWU7XG4gICAgY29uc3QgaGFzVmFsaWRhdGlvbkZvcm0gPSB0aGlzLnZhbGlkYXRlICYmIGlzVmFsaWRhdGFibGVGaWVsZCAmJiB0aGlzLmZvcm1WYWxpZGF0ZS5vYnNlcnZlcnMubGVuZ3RoO1xuXG4gICAgaWYgKGhhc1ZhbGlkYXRpb25Gb3JtKSB7XG4gICAgICBjb25zdCB1cGRhdGVkRmllbGQgPSB0aGlzLmZpZWxkc1tjaGFuZ2VkRmllbGRJbmRleF07XG4gICAgICB0aGlzLmZvcm1WYWxpZGF0ZS5lbWl0KHVwZGF0ZWRGaWVsZCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVGaWVsZHMoKSB7XG4gICAgdGhpcy5maWVsZHNDaGFuZ2UuZW1pdCh0aGlzLmZpZWxkcyk7XG4gICAgdGhpcy52aXNpYmxlRmllbGRzID0gdGhpcy5nZXRWaXNpYmxlRmllbGRzKCk7XG4gICAgdGhpcy5zZXRDb250YWluZXJGaWVsZHMoKTtcbiAgfVxuXG4gIHByaXZhdGUgdmFsaWRhdGVGaWVsZHNDaGVja2VyKHZhbGlkYXRlRmllbGRzOiBBcnJheTxzdHJpbmc+LCBwcm9wZXJ0eUZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGRbJ3Byb3BlcnR5J10pOiBib29sZWFuIHtcbiAgICByZXR1cm4gdmFsaWRhdGVGaWVsZHMuc29tZSh2YWxpZGF0ZUZpZWxkSXRlbSA9PiB2YWxpZGF0ZUZpZWxkSXRlbSA9PT0gcHJvcGVydHlGaWVsZCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHZhbGlkYXRlRmllbGQoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCwgZmllbGRJbmRleDogbnVtYmVyLCB2aXNpYmxlRmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCkge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpcy52YWx1ZVtmaWVsZC5wcm9wZXJ0eV07XG5cbiAgICBjb25zdCBwcmV2aW91c0Rpc2FibGVkID0gdmlzaWJsZUZpZWxkLmRpc2FibGVkO1xuICAgIHZpc2libGVGaWVsZC5kaXNhYmxlZCA9IHRydWU7XG4gICAgdGhpcy5jaGFuZ2VzLmRldGVjdENoYW5nZXMoKTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCB2YWxpZGF0ZWRGaWVsZCA9IGF3YWl0IHRoaXMudmFsaWRhdGlvblNlcnZpY2Uuc2VuZEZpZWxkQ2hhbmdlKGZpZWxkLCB2YWx1ZSkudG9Qcm9taXNlKCk7XG4gICAgICB0aGlzLmFwcGx5RmllbGRWYWxpZGF0aW9uKGZpZWxkSW5kZXgsIHZhbGlkYXRlZEZpZWxkKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHZpc2libGVGaWVsZC5kaXNhYmxlZCA9IHByZXZpb3VzRGlzYWJsZWQ7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicG8tcm93XCIgW2NsYXNzLnBvLWR5bmFtaWNdPVwiaGFzQ29udGFpbmVyc1wiICpuZ0lmPVwidmlzaWJsZUZpZWxkcyAmJiB2aXNpYmxlRmllbGRzLmxlbmd0aCA+IDBcIj5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICBoYXNDb250YWluZXJzID8gcG9Db250ZW50Q29udGFpbmVyIDogcG9Db250ZW50O1xuICAgICAgY29udGV4dDogeyAkaW1wbGljaXQ6IGhhc0NvbnRhaW5lcnMgPyBjb250YWluZXJGaWVsZHMgOiB2aXNpYmxlRmllbGRzIH1cbiAgICBcIlxuICA+PC9uZy1jb250YWluZXI+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNwb0NvbnRlbnQgbGV0LWZpZWxkcz5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZmllbGQgb2YgZmllbGRzOyB0cmFja0J5OiB0cmFja0J5XCI+XG4gICAgPHBvLWRpdmlkZXIgKm5nSWY9XCJmaWVsZD8uZGl2aWRlcj8udHJpbSgpXCIgY2xhc3M9XCJwby1zbS0xMlwiIFtwLWxhYmVsXT1cImZpZWxkLmRpdmlkZXJcIj4gPC9wby1kaXZpZGVyPlxuXG4gICAgPHBvLWRhdGVwaWNrZXJcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdkYXRlcGlja2VyJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY2xlYW5dPVwiZmllbGQuY2xlYW5cIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtZXJyb3ItcGF0dGVybl09XCJmaWVsZC5lcnJvck1lc3NhZ2VcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1mb3JtYXRdPVwiZmllbGQuZm9ybWF0XCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1pc28tZm9ybWF0XT1cImZpZWxkLmlzb0Zvcm1hdFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1sb2NhbGVdPVwiZmllbGQubG9jYWxlXCJcbiAgICAgIFtwLW1heC1kYXRlXT1cImZpZWxkLm1heFZhbHVlXCJcbiAgICAgIFtwLW1pbi1kYXRlXT1cImZpZWxkLm1pblZhbHVlXCJcbiAgICAgIFtwLW5vLWF1dG9jb21wbGV0ZV09XCJmaWVsZC5ub0F1dG9jb21wbGV0ZVwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICBbcC1zaG93LXJlcXVpcmVkXT1cImZpZWxkLnNob3dSZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgICAgW3AtcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgID5cbiAgICA8L3BvLWRhdGVwaWNrZXI+XG5cbiAgICA8cG8tZGF0ZXBpY2tlci1yYW5nZVxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ2RhdGVwaWNrZXJyYW5nZScpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLWxpdGVyYWxzXT1cImZpZWxkLmxpdGVyYWxzXCJcbiAgICAgIFtwLW1heC1kYXRlXT1cImZpZWxkLm1heFZhbHVlXCJcbiAgICAgIFtwLW1pbi1kYXRlXT1cImZpZWxkLm1pblZhbHVlXCJcbiAgICAgIFtwLW5vLWF1dG9jb21wbGV0ZV09XCJmaWVsZC5ub0F1dG9jb21wbGV0ZVwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICBbcC1zaG93LXJlcXVpcmVkXT1cImZpZWxkLnNob3dSZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgID5cbiAgICA8L3BvLWRhdGVwaWNrZXItcmFuZ2U+XG5cbiAgICA8cG8taW5wdXRcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdpbnB1dCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWVycm9yLXBhdHRlcm5dPVwiZmllbGQuZXJyb3JNZXNzYWdlXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLW1hc2stZm9ybWF0LW1vZGVsXT1cImZpZWxkLm1hc2tGb3JtYXRNb2RlbFwiXG4gICAgICBbcC1tYXNrXT1cImZpZWxkLm1hc2tcIlxuICAgICAgW3AtbWF4bGVuZ3RoXT1cImZpZWxkLm1heExlbmd0aFwiXG4gICAgICBbcC1taW5sZW5ndGhdPVwiZmllbGQubWluTGVuZ3RoXCJcbiAgICAgIFtwLW5vLWF1dG9jb21wbGV0ZV09XCJmaWVsZC5ub0F1dG9jb21wbGV0ZVwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1wYXR0ZXJuXT1cImZpZWxkLnBhdHRlcm5cIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIChwLWNoYW5nZS1tb2RlbCk9XCJvbkNoYW5nZUZpZWxkTW9kZWwoZmllbGQpXCJcbiAgICAgIFtwLWljb25dPVwiZmllbGQuaWNvblwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgPlxuICAgIDwvcG8taW5wdXQ+XG5cbiAgICA8cG8tbnVtYmVyXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnbnVtYmVyJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY2xlYW5dPVwiZmllbGQuY2xlYW5cIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtZXJyb3ItcGF0dGVybl09XCJmaWVsZC5lcnJvck1lc3NhZ2VcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbWluXT1cImZpZWxkLm1pblZhbHVlXCJcbiAgICAgIFtwLW1heF09XCJmaWVsZC5tYXhWYWx1ZVwiXG4gICAgICBbcC1tYXhsZW5ndGhdPVwiZmllbGQubWF4TGVuZ3RoXCJcbiAgICAgIFtwLW1pbmxlbmd0aF09XCJmaWVsZC5taW5MZW5ndGhcIlxuICAgICAgW3Atbm8tYXV0b2NvbXBsZXRlXT1cImZpZWxkLm5vQXV0b2NvbXBsZXRlXCJcbiAgICAgIFtwLW9wdGlvbmFsXT1cImZpZWxkLm9wdGlvbmFsXCJcbiAgICAgIFtwLXN0ZXBdPVwiZmllbGQuc3RlcFwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICBbcC1zaG93LXJlcXVpcmVkXT1cImZpZWxkLnNob3dSZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgICAgKHAtY2hhbmdlLW1vZGVsKT1cIm9uQ2hhbmdlRmllbGRNb2RlbChmaWVsZClcIlxuICAgICAgW3AtaWNvbl09XCJmaWVsZC5pY29uXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICA+XG4gICAgPC9wby1udW1iZXI+XG5cbiAgICA8cG8tZGVjaW1hbFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ2RlY2ltYWwnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1jbGVhbl09XCJmaWVsZC5jbGVhblwiXG4gICAgICBbcC1lcnJvci1wYXR0ZXJuXT1cImZpZWxkLmVycm9yTWVzc2FnZVwiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1kZWNpbWFscy1sZW5ndGhdPVwiZmllbGQuZGVjaW1hbHNMZW5ndGhcIlxuICAgICAgW3AtdGhvdXNhbmQtbWF4bGVuZ3RoXT1cImZpZWxkLnRob3VzYW5kTWF4bGVuZ3RoXCJcbiAgICAgIFtwLWljb25dPVwiZmllbGQuaWNvblwiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1sb2NhbGVdPVwiZmllbGQubG9jYWxlXCJcbiAgICAgIFtwLW1pbl09XCJmaWVsZC5taW5WYWx1ZVwiXG4gICAgICBbcC1tYXhdPVwiZmllbGQubWF4VmFsdWVcIlxuICAgICAgW3AtbWF4bGVuZ3RoXT1cImZpZWxkLm1heExlbmd0aFwiXG4gICAgICBbcC1taW5sZW5ndGhdPVwiZmllbGQubWluTGVuZ3RoXCJcbiAgICAgIFtwLW5vLWF1dG9jb21wbGV0ZV09XCJmaWVsZC5ub0F1dG9jb21wbGV0ZVwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICBbcC1zaG93LXJlcXVpcmVkXT1cImZpZWxkLnNob3dSZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgICAgKHAtY2hhbmdlLW1vZGVsKT1cIm9uQ2hhbmdlRmllbGRNb2RlbChmaWVsZClcIlxuICAgICAgW3AtcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgID5cbiAgICA8L3BvLWRlY2ltYWw+XG5cbiAgICA8cG8tc2VsZWN0XG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnc2VsZWN0JylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtZmllbGQtbGFiZWxdPVwiZmllbGQuZmllbGRMYWJlbFwiXG4gICAgICBbcC1maWVsZC12YWx1ZV09XCJmaWVsZC5maWVsZFZhbHVlXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1vcHRpb25zXT1cImZpZWxkLm9wdGlvbnNcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICAgIFtwLXJlYWRvbmx5XT1cImZpZWxkLnJlYWRvbmx5XCJcbiAgICA+XG4gICAgPC9wby1zZWxlY3Q+XG5cbiAgICA8cG8tcmFkaW8tZ3JvdXBcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdyYWRpb0dyb3VwJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY29sdW1uc109XCJmaWVsZC5jb2x1bW5zIHx8IDNcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3Atb3B0aW9uc109XCJmaWVsZC5vcHRpb25zXCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIFtwLXNob3ctcmVxdWlyZWRdPVwiZmllbGQuc2hvd1JlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgPlxuICAgIDwvcG8tcmFkaW8tZ3JvdXA+XG5cbiAgICA8cG8tc3dpdGNoXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnc3dpdGNoJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtZm9ybWF0LW1vZGVsXT1cImZpZWxkLmZvcm1hdE1vZGVsXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1sYWJlbC1vZmZdPVwiZmllbGQuYm9vbGVhbkZhbHNlXCJcbiAgICAgIFtwLWxhYmVsLW9uXT1cImZpZWxkLmJvb2xlYW5UcnVlXCJcbiAgICAgIFtwLWxhYmVsLXBvc2l0aW9uXT1cImZpZWxkLmxhYmVsUG9zaXRpb25cIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICA+XG4gICAgPC9wby1zd2l0Y2g+XG5cbiAgICA8cG8tY2hlY2tib3hcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdjaGVja2JveCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3Atc2l6ZV09XCJmaWVsZC5zaXplXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgPlxuICAgIDwvcG8tY2hlY2tib3g+XG5cbiAgICA8cG8tY29tYm9cbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdjb21ibycpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIHAtZW1pdC1vYmplY3QtdmFsdWVcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtY2xlYW5dPVwiZmllbGQuY2xlYW5cIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtZmllbGQtbGFiZWxdPVwiZmllbGQuZmllbGRMYWJlbFwiXG4gICAgICBbcC1maWVsZC12YWx1ZV09XCJmaWVsZC5maWVsZFZhbHVlXCJcbiAgICAgIFtwLWZpbHRlci1wYXJhbXNdPVwiZmllbGQucGFyYW1zXCJcbiAgICAgIFtwLWZpbHRlci1zZXJ2aWNlXT1cImZpZWxkLm9wdGlvbnNTZXJ2aWNlXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1pbmZpbml0ZS1zY3JvbGxdPVwiZmllbGQuaW5maW5pdGVTY3JvbGxcIlxuICAgICAgW3AtaW5maW5pdGUtc2Nyb2xsLWRpc3RhbmNlXT1cImZpZWxkLmluZmluaXRlU2Nyb2xsRGlzdGFuY2UgfHwgMTAwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLWxpdGVyYWxzXT1cImZpZWxkLmxpdGVyYWxzXCJcbiAgICAgIFtwLW9wdGlvbnNdPVwiZmllbGQub3B0aW9uc1wiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1zb3J0XT1cImZpZWxkLnNvcnRcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQsICRldmVudClcIlxuICAgICAgW3AtaWNvbl09XCJmaWVsZC5pY29uXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICAgIFtwLWZpbHRlci1taW5sZW5ndGhdPVwiZmllbGQuZmlsdGVyTWlubGVuZ3RoXCJcbiAgICAgIFtwLWZpbHRlci1tb2RlXT1cImZpZWxkLmZpbHRlck1vZGVcIlxuICAgICAgW3AtZGlzYWJsZWQtaW5pdC1maWx0ZXJdPVwiZmllbGQuZGlzYWJsZWRJbml0RmlsdGVyXCJcbiAgICAgIFtwLWRpc2FibGVkLXRhYi1maWx0ZXJdPVwiZmllbGQuZGlzYWJsZWRUYWJGaWx0ZXJcIlxuICAgICAgW3AtZGVib3VuY2UtdGltZV09XCJmaWVsZC5kZWJvdW5jZVRpbWVcIlxuICAgICAgW3AtY2hhbmdlLW9uLWVudGVyXT1cImZpZWxkLmNoYW5nZU9uRW50ZXJcIlxuICAgID5cbiAgICA8L3BvLWNvbWJvPlxuXG4gICAgPHBvLWxvb2t1cFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ2xvb2t1cCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIHAtZmllbGQtbGFiZWw9XCJsYWJlbFwiXG4gICAgICBwLWZpZWxkLXZhbHVlPVwidmFsdWVcIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY2xlYW5dPVwiZmllbGQuY2xlYW5cIlxuICAgICAgW3AtY29sdW1uc109XCJmaWVsZC5jb2x1bW5zXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWZpZWxkLWxhYmVsXT1cImZpZWxkLmZpZWxkTGFiZWwgfHwgJ2xhYmVsJ1wiXG4gICAgICBbcC1maWVsZC12YWx1ZV09XCJmaWVsZC5maWVsZFZhbHVlIHx8ICd2YWx1ZSdcIlxuICAgICAgW3AtZmlsdGVyLXBhcmFtc109XCJmaWVsZC5wYXJhbXNcIlxuICAgICAgW3AtZmlsdGVyLXNlcnZpY2VdPVwiZmllbGQuc2VhcmNoU2VydmljZVwiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWF1dG8taGVpZ2h0XT1cImZpZWxkLmF1dG9IZWlnaHRcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWZpZWxkLWZvcm1hdF09XCJmaWVsZC5mb3JtYXRcIlxuICAgICAgW3AtaW5maW5pdGUtc2Nyb2xsXT1cImZpZWxkLmluZmluaXRlU2Nyb2xsXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLWxpdGVyYWxzXT1cImZpZWxkLmxpdGVyYWxzXCJcbiAgICAgIFtwLW11bHRpcGxlXT1cImZpZWxkLm11bHRpcGxlXCJcbiAgICAgIFtwLW5vLWF1dG9jb21wbGV0ZV09XCJmaWVsZC5ub0F1dG9jb21wbGV0ZVwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICBbcC1zaG93LXJlcXVpcmVkXT1cImZpZWxkLnNob3dSZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgICAgW3AtcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgW3AtYWR2YW5jZWQtZmlsdGVyc109XCJmaWVsZC5hZHZhbmNlZEZpbHRlcnNcIlxuICAgICAgKHAtY2hhbmdlLXZpc2libGUtY29sdW1ucyk9XCJmaWVsZC5jaGFuZ2VWaXNpYmxlQ29sdW1ucz8uKCRldmVudClcIlxuICAgICAgKHAtcmVzdG9yZS1jb2x1bW4tbWFuYWdlcik9XCJmaWVsZC5jb2x1bW5SZXN0b3JlTWFuYWdlcj8uKCRldmVudClcIlxuICAgID5cbiAgICA8L3BvLWxvb2t1cD5cblxuICAgIDxwby1jaGVja2JveC1ncm91cFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ2NoZWNrYm94R3JvdXAnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1jb2x1bW5zXT1cImZpZWxkLmNvbHVtbnMgfHwgM1wiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1vcHRpb25zXT1cImZpZWxkLm9wdGlvbnNcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICA+XG4gICAgPC9wby1jaGVja2JveC1ncm91cD5cblxuICAgIDxwby1tdWx0aXNlbGVjdFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ211bHRpc2VsZWN0JylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1hdXRvLWhlaWdodF09XCJmaWVsZC5hdXRvSGVpZ2h0XCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1saXRlcmFsc109XCJmaWVsZC5saXRlcmFsc1wiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1vcHRpb25zXT1cImZpZWxkLm9wdGlvbnNcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICAgIFtwLWZpZWxkLWxhYmVsXT1cImZpZWxkLmZpZWxkTGFiZWxcIlxuICAgICAgW3AtZmllbGQtdmFsdWVdPVwiZmllbGQuZmllbGRWYWx1ZVwiXG4gICAgICBbcC1maWx0ZXItc2VydmljZV09XCJmaWVsZC5vcHRpb25zU2VydmljZVwiXG4gICAgICBbcC1maWx0ZXItbW9kZV09XCJmaWVsZC5maWx0ZXJNb2RlXCJcbiAgICAgIFtwLWRlYm91bmNlLXRpbWVdPVwiZmllbGQuZGVib3VuY2VUaW1lXCJcbiAgICAgIFtwLXNvcnRdPVwiZmllbGQuc29ydFwiXG4gICAgICBbcC1wbGFjZWhvbGRlci1zZWFyY2hdPVwiZmllbGQucGxhY2Vob2xkZXJTZWFyY2hcIlxuICAgICAgW3AtaGlkZS1zZWFyY2hdPVwiZmllbGQuaGlkZVNlYXJjaFwiXG4gICAgICBbcC1oaWRlLXNlbGVjdC1hbGxdPVwiZmllbGQuaGlkZVNlbGVjdEFsbFwiXG4gICAgPlxuICAgIDwvcG8tbXVsdGlzZWxlY3Q+XG5cbiAgICA8cG8tdGV4dGFyZWFcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICd0ZXh0YXJlYScpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLW1heGxlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGhcIlxuICAgICAgW3AtbWlubGVuZ3RoXT1cImZpZWxkLm1pbkxlbmd0aFwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICBbcC1zaG93LXJlcXVpcmVkXT1cImZpZWxkLnNob3dSZXF1aXJlZFwiXG4gICAgICBbcC1yb3dzXT1cImZpZWxkLnJvd3NcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIChwLWNoYW5nZS1tb2RlbCk9XCJvbkNoYW5nZUZpZWxkTW9kZWwoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICA+XG4gICAgPC9wby10ZXh0YXJlYT5cblxuICAgIDxwby1wYXNzd29yZFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ3Bhc3N3b3JkJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY2xlYW5dPVwiZmllbGQuY2xlYW5cIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtZXJyb3ItcGF0dGVybl09XCJmaWVsZC5lcnJvck1lc3NhZ2VcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtaGlkZS1wYXNzd29yZC1wZWVrXT1cImZpZWxkLmhpZGVQYXNzd29yZFBlZWtcIlxuICAgICAgW3AtaWNvbl09XCJmaWVsZC5pY29uXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLW1heGxlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGhcIlxuICAgICAgW3AtbWlubGVuZ3RoXT1cImZpZWxkLm1pbkxlbmd0aFwiXG4gICAgICBbcC1uby1hdXRvY29tcGxldGVdPVwiZmllbGQubm9BdXRvY29tcGxldGVcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcGF0dGVybl09XCJmaWVsZC5wYXR0ZXJuXCJcbiAgICAgIFtwLXJlYWRvbmx5XT1cImZpZWxkLnJlYWRvbmx5XCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIFtwLXNob3ctcmVxdWlyZWRdPVwiZmllbGQuc2hvd1JlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgICAocC1jaGFuZ2UtbW9kZWwpPVwib25DaGFuZ2VGaWVsZE1vZGVsKGZpZWxkKVwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgPlxuICAgIDwvcG8tcGFzc3dvcmQ+XG5cbiAgICA8cG8tdXBsb2FkXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAndXBsb2FkJylcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtYXV0by11cGxvYWRdPVwiZmllbGQuYXV0b1VwbG9hZFwiXG4gICAgICBbcC1kaXJlY3RvcnldPVwiZmllbGQuZGlyZWN0b3J5XCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWRyYWctZHJvcF09XCJmaWVsZC5kcmFnRHJvcFwiXG4gICAgICBbcC1kcmFnLWRyb3AtaGVpZ2h0XT1cImZpZWxkLmRyYWdEcm9wSGVpZ2h0XCJcbiAgICAgIFtwLXJlc3RyaWN0aW9uc109XCJmaWVsZC5yZXN0cmljdGlvbnNcIlxuICAgICAgW3AtZm9ybS1maWVsZF09XCJmaWVsZC5mb3JtRmllbGRcIlxuICAgICAgW3AtaGVhZGVyc109XCJmaWVsZC5oZWFkZXJzXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1oaWRlLXJlc3RyaWN0aW9ucy1pbmZvXT1cImZpZWxkLmhpZGVSZXN0cmljdGlvbnNJbmZvXCJcbiAgICAgIFtwLWhpZGUtc2VsZWN0LWJ1dHRvbl09XCJmaWVsZC5oaWRlU2VsZWN0QnV0dG9uXCJcbiAgICAgIFtwLWhpZGUtc2VuZC1idXR0b25dPVwiZmllbGQuaGlkZVNlbmRCdXR0b25cIlxuICAgICAgW3AtbXVsdGlwbGVdPVwiZmllbGQubXVsdGlwbGVcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbGl0ZXJhbHNdPVwiZmllbGQubGl0ZXJhbHNcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgKHAtZXJyb3IpPVwiZmllbGQub25FcnJvcigkZXZlbnQpXCJcbiAgICAgIChwLXN1Y2Nlc3MpPVwiZmllbGQub25TdWNjZXNzKCRldmVudClcIlxuICAgICAgKHAtdXBsb2FkKT1cImZpZWxkLm9uVXBsb2FkKCRldmVudClcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIChwLWNoYW5nZS1tb2RlbCk9XCJvbkNoYW5nZUZpZWxkTW9kZWwoZmllbGQpXCJcbiAgICAgIFtwLXVybF09XCJmaWVsZC51cmxcIlxuICAgID5cbiAgICA8L3BvLXVwbG9hZD5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3BvQ29udGVudENvbnRhaW5lciBsZXQtZmllbGRzPlxuICA8cG8tZHluYW1pYy1jb250YWluZXIgW3AtZmllbGRzXT1cImZpZWxkc1wiIFtwLWNvbnRlbnRdPVwicG9Db250ZW50XCI+PC9wby1keW5hbWljLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=