@po-ui/ng-components 14.1.0 → 14.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/esm2020/lib/components/po-breadcrumb/po-breadcrumb-dropdown/po-breadcrumb-dropdown.component.mjs +5 -3
  2. package/esm2020/lib/components/po-button/po-button-base.component.mjs +58 -8
  3. package/esm2020/lib/components/po-button/po-button-size.enum.mjs +6 -0
  4. package/esm2020/lib/components/po-button/po-button.component.mjs +4 -4
  5. package/esm2020/lib/components/po-button-group/po-button-group-base.component.mjs +8 -1
  6. package/esm2020/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-field.interface.mjs +1 -1
  7. package/esm2020/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-fields/po-dynamic-form-fields.component.mjs +12 -12
  8. package/esm2020/lib/components/po-field/po-checkbox/po-checkbox-base.component.mjs +11 -2
  9. package/esm2020/lib/components/po-field/po-checkbox/po-checkbox.component.mjs +24 -12
  10. package/esm2020/lib/components/po-field/po-checkbox-group/po-checkbox-group.component.mjs +14 -20
  11. package/esm2020/lib/components/po-field/po-checkbox-group/po-checkbox-group.module.mjs +5 -4
  12. package/esm2020/lib/components/po-field/po-combo/po-combo-base.component.mjs +74 -43
  13. package/esm2020/lib/components/po-field/po-combo/po-combo.component.mjs +17 -15
  14. package/esm2020/lib/components/po-field/po-datepicker/po-datepicker-base.component.mjs +3 -8
  15. package/esm2020/lib/components/po-field/po-datepicker/po-datepicker.component.mjs +2 -1
  16. package/esm2020/lib/components/po-field/po-datepicker-range/po-datepicker-range-base.component.mjs +25 -2
  17. package/esm2020/lib/components/po-field/po-datepicker-range/po-datepicker-range.component.mjs +5 -5
  18. package/esm2020/lib/components/po-field/po-lookup/po-lookup-base.component.mjs +28 -2
  19. package/esm2020/lib/components/po-field/po-lookup/po-lookup-modal/po-lookup-modal-base.component.mjs +28 -2
  20. package/esm2020/lib/components/po-field/po-lookup/po-lookup-modal/po-lookup-modal.component.mjs +4 -4
  21. package/esm2020/lib/components/po-field/po-lookup/po-lookup.component.mjs +5 -3
  22. package/esm2020/lib/components/po-field/po-lookup/services/po-lookup-modal.service.mjs +6 -2
  23. package/esm2020/lib/components/po-field/po-multiselect/po-multiselect.component.mjs +2 -2
  24. package/esm2020/lib/components/po-field/po-rich-text/po-rich-text-toolbar/po-rich-text-toolbar.component.mjs +9 -9
  25. package/esm2020/lib/components/po-field/po-select/po-select.component.mjs +90 -25
  26. package/esm2020/lib/components/po-field/po-upload/po-upload-base.service.mjs +4 -2
  27. package/esm2020/lib/components/po-list-view/po-list-view.component.mjs +3 -3
  28. package/esm2020/lib/components/po-table/po-table-base.component.mjs +21 -2
  29. package/esm2020/lib/components/po-table/po-table-column-manager/po-table-column-manager.component.mjs +3 -3
  30. package/esm2020/lib/components/po-table/po-table.component.mjs +511 -476
  31. package/esm2020/lib/components/po-widget/po-widget-base.component.mjs +3 -2
  32. package/esm2020/lib/components/po-widget/po-widget.component.mjs +24 -12
  33. package/esm2020/lib/utils/util.mjs +21 -12
  34. package/fesm2015/po-ui-ng-components.mjs +1288 -952
  35. package/fesm2015/po-ui-ng-components.mjs.map +1 -1
  36. package/fesm2020/po-ui-ng-components.mjs +1266 -937
  37. package/fesm2020/po-ui-ng-components.mjs.map +1 -1
  38. package/lib/components/po-button/po-button-base.component.d.ts +29 -4
  39. package/lib/components/po-button/po-button-size.enum.d.ts +4 -0
  40. package/lib/components/po-button-group/po-button-group-base.component.d.ts +7 -0
  41. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-field.interface.d.ts +18 -0
  42. package/lib/components/po-field/po-checkbox/po-checkbox-base.component.d.ts +2 -1
  43. package/lib/components/po-field/po-checkbox-group/po-checkbox-group.module.d.ts +2 -1
  44. package/lib/components/po-field/po-combo/po-combo-base.component.d.ts +27 -22
  45. package/lib/components/po-field/po-datepicker-range/po-datepicker-range-base.component.d.ts +13 -1
  46. package/lib/components/po-field/po-lookup/po-lookup-base.component.d.ts +21 -1
  47. package/lib/components/po-field/po-lookup/po-lookup-modal/po-lookup-modal-base.component.d.ts +21 -1
  48. package/lib/components/po-field/po-lookup/services/po-lookup-modal.service.d.ts +4 -0
  49. package/lib/components/po-field/po-select/po-select.component.d.ts +36 -7
  50. package/lib/components/po-table/po-table-base.component.d.ts +12 -1
  51. package/lib/components/po-table/po-table.component.d.ts +6 -0
  52. package/lib/components/po-widget/po-widget-base.component.d.ts +1 -0
  53. package/lib/utils/util.d.ts +2 -1
  54. package/package.json +4 -4
  55. package/po-ui-ng-components-14.3.0.tgz +0 -0
  56. package/schematics/ng-add/index.js +1 -1
  57. package/schematics/ng-update/v14/index.js +1 -1
  58. package/schematics/ng-update/v2/index.js +1 -1
  59. package/schematics/ng-update/v3/index.js +1 -1
  60. package/schematics/ng-update/v4/index.js +1 -1
  61. package/schematics/ng-update/v5/index.js +1 -1
  62. package/schematics/ng-update/v6/index.js +1 -1
  63. package/po-ui-ng-components-14.1.0.tgz +0 -0
@@ -121,7 +121,7 @@ function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_combo_10_Template(
121
121
  function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_lookup_11_Template(rf, ctx) { if (rf & 1) {
122
122
  const _r90 = i0.ɵɵgetCurrentView();
123
123
  i0.ɵɵelementStart(0, "po-lookup", 28, 19);
124
- i0.ɵɵlistener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_lookup_11_Template_po_lookup_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r90); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r89 = i0.ɵɵnextContext(2); return i0.ɵɵresetView((ctx_r89.value[field_r2.property] = $event)); })("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_lookup_11_Template_po_lookup_p_change_0_listener() { i0.ɵɵrestoreView(_r90); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r92 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r92.onChangeField(field_r2)); });
124
+ i0.ɵɵlistener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_lookup_11_Template_po_lookup_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r90); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r89 = i0.ɵɵnextContext(2); return i0.ɵɵresetView((ctx_r89.value[field_r2.property] = $event)); })("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_lookup_11_Template_po_lookup_p_change_0_listener() { i0.ɵɵrestoreView(_r90); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r92 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r92.onChangeField(field_r2)); })("p-change-visible-columns", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_lookup_11_Template_po_lookup_p_change_visible_columns_0_listener($event) { i0.ɵɵrestoreView(_r90); const field_r2 = i0.ɵɵnextContext().$implicit; return i0.ɵɵresetView(field_r2.changeVisibleColumns($event)); })("p-restore-column-manager", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_lookup_11_Template_po_lookup_p_restore_column_manager_0_listener($event) { i0.ɵɵrestoreView(_r90); const field_r2 = i0.ɵɵnextContext().$implicit; return i0.ɵɵresetView(field_r2.columnRestoreManager($event)); });
125
125
  i0.ɵɵelementEnd();
126
126
  } if (rf & 2) {
127
127
  const field_r2 = i0.ɵɵnextContext().$implicit;
@@ -129,9 +129,9 @@ function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_lookup_11_Template
129
129
  i0.ɵɵproperty("name", field_r2.property)("ngModel", ctx_r13.value[field_r2.property])("ngClass", field_r2.componentClass)("p-clean", field_r2.clean)("p-columns", field_r2.columns)("p-disabled", ctx_r13.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-placeholder", field_r2.placeholder)("p-advanced-filters", field_r2.advancedFilters);
130
130
  } }
131
131
  function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_checkbox_group_12_Template(rf, ctx) { if (rf & 1) {
132
- const _r97 = i0.ɵɵgetCurrentView();
132
+ const _r101 = i0.ɵɵgetCurrentView();
133
133
  i0.ɵɵelementStart(0, "po-checkbox-group", 25, 19);
134
- i0.ɵɵlistener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_checkbox_group_12_Template_po_checkbox_group_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r97); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r96 = i0.ɵɵnextContext(2); return i0.ɵɵresetView((ctx_r96.value[field_r2.property] = $event)); })("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_checkbox_group_12_Template_po_checkbox_group_p_change_0_listener() { i0.ɵɵrestoreView(_r97); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r99 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r99.onChangeField(field_r2)); });
134
+ i0.ɵɵlistener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_checkbox_group_12_Template_po_checkbox_group_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r101); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r100 = i0.ɵɵnextContext(2); return i0.ɵɵresetView((ctx_r100.value[field_r2.property] = $event)); })("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_checkbox_group_12_Template_po_checkbox_group_p_change_0_listener() { i0.ɵɵrestoreView(_r101); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r103 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r103.onChangeField(field_r2)); });
135
135
  i0.ɵɵelementEnd();
136
136
  } if (rf & 2) {
137
137
  const field_r2 = i0.ɵɵnextContext().$implicit;
@@ -139,9 +139,9 @@ function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_checkbox_group_12_
139
139
  i0.ɵɵproperty("name", field_r2.property)("ngModel", ctx_r14.value[field_r2.property])("ngClass", field_r2.componentClass)("p-columns", field_r2.columns || 3)("p-auto-focus", field_r2.focus)("p-disabled", ctx_r14.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);
140
140
  } }
141
141
  function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_multiselect_13_Template(rf, ctx) { if (rf & 1) {
142
- const _r104 = i0.ɵɵgetCurrentView();
142
+ const _r108 = i0.ɵɵgetCurrentView();
143
143
  i0.ɵɵelementStart(0, "po-multiselect", 29, 19);
144
- i0.ɵɵlistener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_multiselect_13_Template_po_multiselect_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r104); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r103 = i0.ɵɵnextContext(2); return i0.ɵɵresetView((ctx_r103.value[field_r2.property] = $event)); })("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_multiselect_13_Template_po_multiselect_p_change_0_listener() { i0.ɵɵrestoreView(_r104); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r106 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r106.onChangeField(field_r2)); });
144
+ i0.ɵɵlistener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_multiselect_13_Template_po_multiselect_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r108); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r107 = i0.ɵɵnextContext(2); return i0.ɵɵresetView((ctx_r107.value[field_r2.property] = $event)); })("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_multiselect_13_Template_po_multiselect_p_change_0_listener() { i0.ɵɵrestoreView(_r108); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r110 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r110.onChangeField(field_r2)); });
145
145
  i0.ɵɵelementEnd();
146
146
  } if (rf & 2) {
147
147
  const field_r2 = i0.ɵɵnextContext().$implicit;
@@ -149,9 +149,9 @@ function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_multiselect_13_Tem
149
149
  i0.ɵɵproperty("name", field_r2.property)("ngModel", ctx_r15.value[field_r2.property])("ngClass", field_r2.componentClass)("p-disabled", ctx_r15.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-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);
150
150
  } }
151
151
  function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_textarea_14_Template(rf, ctx) { if (rf & 1) {
152
- const _r111 = i0.ɵɵgetCurrentView();
152
+ const _r115 = i0.ɵɵgetCurrentView();
153
153
  i0.ɵɵelementStart(0, "po-textarea", 30, 19);
154
- i0.ɵɵlistener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_textarea_14_Template_po_textarea_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r111); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r110 = i0.ɵɵnextContext(2); return i0.ɵɵresetView((ctx_r110.value[field_r2.property] = $event)); })("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_textarea_14_Template_po_textarea_p_change_0_listener() { i0.ɵɵrestoreView(_r111); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r113 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r113.onChangeField(field_r2)); })("p-change-model", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_textarea_14_Template_po_textarea_p_change_model_0_listener() { i0.ɵɵrestoreView(_r111); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r115 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r115.onChangeFieldModel(field_r2)); });
154
+ i0.ɵɵlistener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_textarea_14_Template_po_textarea_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r115); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r114 = i0.ɵɵnextContext(2); return i0.ɵɵresetView((ctx_r114.value[field_r2.property] = $event)); })("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_textarea_14_Template_po_textarea_p_change_0_listener() { i0.ɵɵrestoreView(_r115); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r117 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r117.onChangeField(field_r2)); })("p-change-model", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_textarea_14_Template_po_textarea_p_change_model_0_listener() { i0.ɵɵrestoreView(_r115); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r119 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r119.onChangeFieldModel(field_r2)); });
155
155
  i0.ɵɵelementEnd();
156
156
  } if (rf & 2) {
157
157
  const field_r2 = i0.ɵɵnextContext().$implicit;
@@ -159,9 +159,9 @@ function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_textarea_14_Templa
159
159
  i0.ɵɵproperty("name", field_r2.property)("ngModel", ctx_r16.value[field_r2.property])("ngClass", field_r2.componentClass)("p-disabled", ctx_r16.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-rows", field_r2.rows)("p-placeholder", field_r2.placeholder);
160
160
  } }
161
161
  function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_password_15_Template(rf, ctx) { if (rf & 1) {
162
- const _r120 = i0.ɵɵgetCurrentView();
162
+ const _r124 = i0.ɵɵgetCurrentView();
163
163
  i0.ɵɵelementStart(0, "po-password", 31, 19);
164
- i0.ɵɵlistener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_password_15_Template_po_password_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r120); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r119 = i0.ɵɵnextContext(2); return i0.ɵɵresetView((ctx_r119.value[field_r2.property] = $event)); })("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_password_15_Template_po_password_p_change_0_listener() { i0.ɵɵrestoreView(_r120); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r122 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r122.onChangeField(field_r2)); })("p-change-model", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_password_15_Template_po_password_p_change_model_0_listener() { i0.ɵɵrestoreView(_r120); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r124 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r124.onChangeFieldModel(field_r2)); });
164
+ i0.ɵɵlistener("ngModelChange", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_password_15_Template_po_password_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r124); const field_r2 = i0.ɵɵnextContext().$implicit; const ctx_r123 = i0.ɵɵnextContext(2); return i0.ɵɵresetView((ctx_r123.value[field_r2.property] = $event)); })("p-change", function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_password_15_Template_po_password_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_password_15_Template_po_password_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)); });
165
165
  i0.ɵɵelementEnd();
166
166
  } if (rf & 2) {
167
167
  const field_r2 = i0.ɵɵnextContext().$implicit;
@@ -343,16 +343,16 @@ PoDynamicFormFieldsComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type
343
343
  } if (rf & 2) {
344
344
  let _t;
345
345
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.components = _t);
346
- } }, 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-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", "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-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-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-placeholder", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-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", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-help", "p-label", "p-label-off", "p-label-on", "p-label-position", "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-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-placeholder", "p-advanced-filters", "ngModelChange", "p-change", 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-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-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-placeholder", "ngModelChange", "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-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", "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-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-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-placeholder", "ngModelChange", "p-change", "p-change-model"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-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", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-help", "p-label", "p-label-off", "p-label-on", "p-label-position", "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-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-placeholder", "p-advanced-filters", "ngModelChange", "p-change"], [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-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-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-placeholder", "ngModelChange", "p-change", "p-change-model"]], template: function PoDynamicFormFieldsComponent_Template(rf, ctx) { if (rf & 1) {
346
+ } }, 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-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", "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-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-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-placeholder", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-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", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-help", "p-label", "p-label-off", "p-label-on", "p-label-position", "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-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-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-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-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-placeholder", "ngModelChange", "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-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", "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-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-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-placeholder", "ngModelChange", "p-change", "p-change-model"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-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", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-help", "p-label", "p-label-off", "p-label-on", "p-label-position", "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-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-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-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-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-placeholder", "ngModelChange", "p-change", "p-change-model"]], template: function PoDynamicFormFieldsComponent_Template(rf, ctx) { if (rf & 1) {
347
347
  i0.ɵɵtemplate(0, PoDynamicFormFieldsComponent_div_0_Template, 2, 2, "div", 0);
348
348
  } if (rf & 2) {
349
349
  i0.ɵɵproperty("ngIf", ctx.visibleFields && ctx.visibleFields.length > 0);
350
350
  } }, dependencies: [i1.NgClass, i1.NgForOf, i1.NgIf, i3.NgControlStatus, i3.NgModel, i4.PoDividerComponent, i5.PoCheckboxGroupComponent, i6.PoDatepickerComponent, i7.PoComboComponent, i8.PoDecimalComponent, i9.PoDatepickerRangeComponent, i10.PoInputComponent, i11.PoLookupComponent, i12.PoMultiselectComponent, i13.PoNumberComponent, i14.PoPasswordComponent, i15.PoRadioGroupComponent, i16.PoSelectComponent, i17.PoSwitchComponent, i18.PoTextareaComponent], encapsulation: 2 });
351
351
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PoDynamicFormFieldsComponent, [{
352
352
  type: Component,
353
- 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-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-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-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-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-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-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-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-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-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-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-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-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-advanced-filters]=\"field.advancedFilters\"\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-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-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-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-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-password>\n </ng-container>\n</div>\n" }]
353
+ 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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-password>\n </ng-container>\n</div>\n" }]
354
354
  }], function () { return [{ type: i1.TitleCasePipe }, { type: i2.PoDynamicFormValidationService }, { type: i0.ChangeDetectorRef }, { type: i3.NgForm }]; }, { components: [{
355
355
  type: ViewChildren,
356
356
  args: ['component']
357
357
  }] }); })();
358
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZHluYW1pYy1mb3JtLWZpZWxkcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZHluYW1pYy9wby1keW5hbWljLWZvcm0vcG8tZHluYW1pYy1mb3JtLWZpZWxkcy9wby1keW5hbWljLWZvcm0tZmllbGRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1keW5hbWljL3BvLWR5bmFtaWMtZm9ybS9wby1keW5hbWljLWZvcm0tZmllbGRzL3BvLWR5bmFtaWMtZm9ybS1maWVsZHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBMEQsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUkxRCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUUzRixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQ0w5RyxpQ0FBb0c7OztJQUF4QywwQ0FBeUI7Ozs7SUFFckYsNkNBdUJDO0lBbkJDLHNWQUFtQywwUEFpQnZCLGVBQUEsK0JBQW9CLENBQUEsSUFqQkc7SUFvQnJDLGlCQUFnQjs7OztJQXJCZCx3Q0FBdUIsNENBQUEsb0NBQUEsMkJBQUEsMkNBQUEsMENBQUEsZ0NBQUEsNkJBQUEseUJBQUEsb0NBQUEsMkJBQUEsNkJBQUEsaUNBQUEsaUNBQUEsOENBQUEsaUNBQUEsaUNBQUEsaUNBQUEsdUNBQUE7Ozs7SUF1QnpCLG1EQW1CQztJQWZDLGtXQUFtQyxzUUFjdkIsZUFBQSwrQkFBb0IsQ0FBQSxJQWRHO0lB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QyxpQkFBaUIsS0FBSyxhQUFhLENBQUMsQ0FBQztJQUN2RixDQUFDO0lBRU8sS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUF5QixFQUFFLFVBQWtCLEVBQUUsWUFBZ0M7UUFDekcsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFekMsTUFBTSxnQkFBZ0IsR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDO1FBQy9DLFlBQVksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQzdCLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUM7UUFFN0IsSUFBSTtZQUNGLE1BQU0sY0FBYyxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDOUYsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFVBQVUsRUFBRSxjQUFjLENBQUMsQ0FBQztTQUN2RDtRQUFDLE1BQU07WUFDTixZQUFZLENBQUMsUUFBUSxHQUFHLGdCQUFnQixDQUFDO1NBQzFDO0lBQ0gsQ0FBQzs7d0dBaklVLDRCQUE0QjsrRUFBNUIsNEJBQTRCOzs7OzswQ0FGNUIsQ0FBQyw4QkFBOEIsQ0FBQyxFQUQ1QixDQUFDLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsQ0FBQztRQ25CckUsNkVBaVdNOztRQWpXZSx3RUFBK0M7O3VGRHNCdkQsNEJBQTRCO2NBTnhDLFNBQVM7MkJBQ0Usd0JBQXdCLGlCQUVuQixDQUFDLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsQ0FBQyxhQUN4RCxDQUFDLDhCQUE4QixDQUFDO2tLQUdoQixVQUFVO2tCQUFwQyxZQUFZO21CQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENoYW5nZURldGVjdG9yUmVmLCBPbkNoYW5nZXMsIFF1ZXJ5TGlzdCwgU2ltcGxlQ2hhbmdlcywgVmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sQ29udGFpbmVyLCBOZ0Zvcm0gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBUaXRsZUNhc2VQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgUG9EeW5hbWljRm9ybUZpZWxkIH0gZnJvbSAnLi4vcG8tZHluYW1pYy1mb3JtLWZpZWxkLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQb0R5bmFtaWNGb3JtRmllbGRzQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vcG8tZHluYW1pYy1mb3JtLWZpZWxkcy1iYXNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQb0R5bmFtaWNGb3JtRmllbGRWYWxpZGF0aW9uIH0gZnJvbSAnLi4vcG8tZHluYW1pYy1mb3JtLXZhbGlkYXRpb24vcG8tZHluYW1pYy1mb3JtLWZpZWxkLXZhbGlkYXRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IFBvRHluYW1pY0Zvcm1WYWxpZGF0aW9uU2VydmljZSB9IGZyb20gJy4uL3BvLWR5bmFtaWMtZm9ybS12YWxpZGF0aW9uL3BvLWR5bmFtaWMtZm9ybS12YWxpZGF0aW9uLnNlcnZpY2UnO1xuXG4vKipcbiAqIEBkb2NzUHJpdmF0ZVxuICpcbiAqIEBkZXNjcmlwdGlvblxuICpcbiAqIENvbXBvbmVudGUgZGUgY3JpYcOnw6NvIGRvcyBjYW1wb3MgZGluw6JtaWNvcy5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncG8tZHluYW1pYy1mb3JtLWZpZWxkcycsXG4gIHRlbXBsYXRlVXJsOiAncG8tZHluYW1pYy1mb3JtLWZpZWxkcy5jb21wb25lbnQuaHRtbCcsXG4gIHZpZXdQcm92aWRlcnM6IFt7IHByb3ZpZGU6IENvbnRyb2xDb250YWluZXIsIHVzZUV4aXN0aW5nOiBOZ0Zvcm0gfV0sXG4gIHByb3ZpZGVyczogW1BvRHluYW1pY0Zvcm1WYWxpZGF0aW9uU2VydmljZV1cbn0pXG5leHBvcnQgY2xhc3MgUG9EeW5hbWljRm9ybUZpZWxkc0NvbXBvbmVudCBleHRlbmRzIFBvRHluYW1pY0Zvcm1GaWVsZHNCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQFZpZXdDaGlsZHJlbignY29tcG9uZW50JykgY29tcG9uZW50czogUXVlcnlMaXN0PHsgbmFtZTogc3RyaW5nOyBmb2N1czogKCkgPT4gdm9pZCB9PjtcblxuICBwcml2YXRlIHByZXZpb3VzVmFsdWUgPSB7fTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICB0aXRsZUNhc2VQaXBlOiBUaXRsZUNhc2VQaXBlLFxuICAgIHByaXZhdGUgdmFsaWRhdGlvblNlcnZpY2U6IFBvRHluYW1pY0Zvcm1WYWxpZGF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGNoYW5nZXM6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgZm9ybTogTmdGb3JtXG4gICkge1xuICAgIHN1cGVyKHRpdGxlQ2FzZVBpcGUpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzLmZpZWxkcykge1xuICAgICAgdGhpcy52aXNpYmxlRmllbGRzID0gdGhpcy5nZXRWaXNpYmxlRmllbGRzKCk7XG4gICAgfVxuICB9XG5cbiAgZm9jdXMocHJvcGVydHk6IHN0cmluZykge1xuICAgIGNvbnN0IGZvdW5kQ29tcG9uZW50ID0gdGhpcy5jb21wb25lbnRzLmZpbmQoY29tcG9uZW50ID0+IGNvbXBvbmVudC5uYW1lID09PSBwcm9wZXJ0eSk7XG4gICAgaWYgKGZvdW5kQ29tcG9uZW50KSB7XG4gICAgICBmb3VuZENvbXBvbmVudC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIGlzRGlzYWJsZWQoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmaWVsZC5kaXNhYmxlZCB8fCB0aGlzLmRpc2FibGVkRm9ybTtcbiAgfVxuXG4gIGFzeW5jIG9uQ2hhbmdlRmllbGQodmlzaWJsZUZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGQsIG9iamVjdFZhbHVlPzogYW55KSB7XG4gICAgY29uc3QgeyBwcm9wZXJ0eSB9ID0gdmlzaWJsZUZpZWxkO1xuICAgIGNvbnN0IGlzQm9vbGVhblR5cGUgPSB2aXNpYmxlRmllbGQudHlwZSA9PT0gJ2Jvb2xlYW4nO1xuICAgIGNvbnN0IGlzQ2hhbmdlZFZhbHVlRmllbGQgPSB0aGlzLnByZXZpb3VzVmFsdWVbcHJvcGVydHldICE9PSB0aGlzLnZhbHVlW3Byb3BlcnR5XTtcblxuICAgIGlmICh2aXNpYmxlRmllbGQub3B0aW9uc1NlcnZpY2UpIHtcbiAgICAgIHRoaXMub2JqZWN0VmFsdWUuZW1pdChvYmplY3RWYWx1ZSk7XG4gICAgfVxuXG4gICAgLy8gdmVyaWZpY2Egc2UgbyBmb3JtdWxhcmlvIGVzdGEgdG91Y2hlZCBwYXJhIG7Do28gZGlzcGFyYXIgbyB2YWxpZGF0ZSBhbyBjYXJyZWdhciBhIHRlbGEuXG4gICAgaWYgKCh0aGlzLmZvcm0udG91Y2hlZCB8fCBpc0Jvb2xlYW5UeXBlKSAmJiBpc0NoYW5nZWRWYWx1ZUZpZWxkKSB7XG4gICAgICBjb25zdCB7IGNoYW5nZWRGaWVsZCwgY2hhbmdlZEZpZWxkSW5kZXggfSA9IHRoaXMuZ2V0RmllbGQocHJvcGVydHkpO1xuXG4gICAgICBpZiAoY2hhbmdlZEZpZWxkLnZhbGlkYXRlKSB7XG4gICAgICAgIGF3YWl0IHRoaXMudmFsaWRhdGVGaWVsZChjaGFuZ2VkRmllbGQsIGNoYW5nZWRGaWVsZEluZGV4LCB2aXNpYmxlRmllbGQpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnRyaWdnZXJWYWxpZGF0aW9uT25Gb3JtKGNoYW5nZWRGaWVsZEluZGV4KTtcbiAgICB9XG5cbiAgICB0aGlzLnVwZGF0ZVByZXZpb3VzVmFsdWUoKTtcbiAgfVxuXG4gIC8vZW1pdGUgbyB2YWxvciBhIGNhZGEgY2FyYWN0ZXJlIGRpZ2l0YWRvIG5vIGlucHV0XG4gIG9uQ2hhbmdlRmllbGRNb2RlbCh2aXNpYmxlRmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCkge1xuICAgIGlmICh0aGlzLnZhbGlkYXRlT25JbnB1dCkge1xuICAgICAgY29uc3QgeyBwcm9wZXJ0eSB9ID0gdmlzaWJsZUZpZWxkO1xuICAgICAgY29uc3QgeyBjaGFuZ2VkRmllbGRJbmRleCB9ID0gdGhpcy5nZXRGaWVsZChwcm9wZXJ0eSk7XG4gICAgICB0aGlzLnRyaWdnZXJWYWxpZGF0aW9uT25Gb3JtKGNoYW5nZWRGaWVsZEluZGV4KTtcbiAgICB9XG4gIH1cblxuICB1cGRhdGVQcmV2aW91c1ZhbHVlKCkge1xuICAgIHRoaXMucHJldmlvdXNWYWx1ZSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy52YWx1ZSkpO1xuICB9XG5cbiAgdHJhY2tCeShpbmRleCkge1xuICAgIHJldHVybiBpbmRleDtcbiAgfVxuXG4gIHByaXZhdGUgYXBwbHlGaWVsZFZhbGlkYXRpb24oaW5kZXg6IG51bWJlciwgdmFsaWRhdGVkRmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZFZhbGlkYXRpb24pIHtcbiAgICBjb25zdCBmaWVsZCA9IHRoaXMuZmllbGRzW2luZGV4XTtcblxuICAgIHRoaXMuZmllbGRzW2luZGV4XSA9IHsgLi4uZmllbGQsIC4uLnZhbGlkYXRlZEZpZWxkLmZpZWxkIH07XG4gICAgdGhpcy51cGRhdGVGaWVsZHMoKTtcblxuICAgIGlmICh2YWxpZGF0ZWRGaWVsZC5oYXNPd25Qcm9wZXJ0eSgndmFsdWUnKSkge1xuICAgICAgdGhpcy52YWx1ZVtmaWVsZC5wcm9wZXJ0eV0gPSB2YWxpZGF0ZWRGaWVsZC52YWx1ZTtcbiAgICB9XG5cbiAgICB0aGlzLmNoYW5nZXMuZGV0ZWN0Q2hhbmdlcygpO1xuXG4gICAgaWYgKHZhbGlkYXRlZEZpZWxkLmZvY3VzKSB7XG4gICAgICB0aGlzLmZvY3VzKGZpZWxkLnByb3BlcnR5KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldEZpZWxkKHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICBjb25zdCBjaGFuZ2VkRmllbGRJbmRleCA9IHRoaXMuZmllbGRzLmZpbmRJbmRleChmaWVsZCA9PiBmaWVsZC5wcm9wZXJ0eSA9PT0gcHJvcGVydHkpO1xuICAgIGNvbnN0IGNoYW5nZWRGaWVsZCA9IHRoaXMuZmllbGRzW2NoYW5nZWRGaWVsZEluZGV4XTtcblxuICAgIHJldHVybiB7IGNoYW5nZWRGaWVsZCwgY2hhbmdlZEZpZWxkSW5kZXggfTtcbiAgfVxuXG4gIHByaXZhdGUgdHJpZ2dlclZhbGlkYXRpb25PbkZvcm0oY2hhbmdlZEZpZWxkSW5kZXg6IG51bWJlcikge1xuICAgIGNvbnN0IGlzVmFsaWRhdGFibGVGaWVsZCA9IHRoaXMudmFsaWRhdGVGaWVsZHM/Lmxlbmd0aFxuICAgICAgPyB0aGlzLnZhbGlkYXRlRmllbGRzQ2hlY2tlcih0aGlzLnZhbGlkYXRlRmllbGRzLCB0aGlzLmZpZWxkc1tjaGFuZ2VkRmllbGRJbmRleF0ucHJvcGVydHkpXG4gICAgICA6IHRydWU7XG4gICAgY29uc3QgaGFzVmFsaWRhdGlvbkZvcm0gPSB0aGlzLnZhbGlkYXRlICYmIGlzVmFsaWRhdGFibGVGaWVsZCAmJiB0aGlzLmZvcm1WYWxpZGF0ZS5vYnNlcnZlcnMubGVuZ3RoO1xuXG4gICAgaWYgKGhhc1ZhbGlkYXRpb25Gb3JtKSB7XG4gICAgICBjb25zdCB1cGRhdGVkRmllbGQgPSB0aGlzLmZpZWxkc1tjaGFuZ2VkRmllbGRJbmRleF07XG4gICAgICB0aGlzLmZvcm1WYWxpZGF0ZS5lbWl0KHVwZGF0ZWRGaWVsZCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVGaWVsZHMoKSB7XG4gICAgdGhpcy5maWVsZHNDaGFuZ2UuZW1pdCh0aGlzLmZpZWxkcyk7XG4gICAgdGhpcy52aXNpYmxlRmllbGRzID0gdGhpcy5nZXRWaXNpYmxlRmllbGRzKCk7XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlRmllbGRzQ2hlY2tlcih2YWxpZGF0ZUZpZWxkczogQXJyYXk8c3RyaW5nPiwgcHJvcGVydHlGaWVsZDogUG9EeW5hbWljRm9ybUZpZWxkWydwcm9wZXJ0eSddKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHZhbGlkYXRlRmllbGRzLnNvbWUodmFsaWRhdGVGaWVsZEl0ZW0gPT4gdmFsaWRhdGVGaWVsZEl0ZW0gPT09IHByb3BlcnR5RmllbGQpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyB2YWxpZGF0ZUZpZWxkKGZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGQsIGZpZWxkSW5kZXg6IG51bWJlciwgdmlzaWJsZUZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGQpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMudmFsdWVbZmllbGQucHJvcGVydHldO1xuXG4gICAgY29uc3QgcHJldmlvdXNEaXNhYmxlZCA9IHZpc2libGVGaWVsZC5kaXNhYmxlZDtcbiAgICB2aXNpYmxlRmllbGQuZGlzYWJsZWQgPSB0cnVlO1xuICAgIHRoaXMuY2hhbmdlcy5kZXRlY3RDaGFuZ2VzKCk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgdmFsaWRhdGVkRmllbGQgPSBhd2FpdCB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLnNlbmRGaWVsZENoYW5nZShmaWVsZCwgdmFsdWUpLnRvUHJvbWlzZSgpO1xuICAgICAgdGhpcy5hcHBseUZpZWxkVmFsaWRhdGlvbihmaWVsZEluZGV4LCB2YWxpZGF0ZWRGaWVsZCk7XG4gICAgfSBjYXRjaCB7XG4gICAgICB2aXNpYmxlRmllbGQuZGlzYWJsZWQgPSBwcmV2aW91c0Rpc2FibGVkO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInBvLXJvd1wiICpuZ0lmPVwidmlzaWJsZUZpZWxkcyAmJiB2aXNpYmxlRmllbGRzLmxlbmd0aCA+IDBcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZmllbGQgb2YgdmlzaWJsZUZpZWxkczsgdHJhY2tCeTogdHJhY2tCeVwiPlxuICAgIDxwby1kaXZpZGVyICpuZ0lmPVwiZmllbGQ/LmRpdmlkZXI/LnRyaW0oKVwiIGNsYXNzPVwicG8tc20tMTJcIiBbcC1sYWJlbF09XCJmaWVsZC5kaXZpZGVyXCI+IDwvcG8tZGl2aWRlcj5cblxuICAgIDxwby1kYXRlcGlja2VyXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnZGF0ZXBpY2tlcicpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWVycm9yLXBhdHRlcm5dPVwiZmllbGQuZXJyb3JNZXNzYWdlXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtZm9ybWF0XT1cImZpZWxkLmZvcm1hdFwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtaXNvLWZvcm1hdF09XCJmaWVsZC5pc29Gb3JtYXRcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbG9jYWxlXT1cImZpZWxkLmxvY2FsZVwiXG4gICAgICBbcC1tYXgtZGF0ZV09XCJmaWVsZC5tYXhWYWx1ZVwiXG4gICAgICBbcC1taW4tZGF0ZV09XCJmaWVsZC5taW5WYWx1ZVwiXG4gICAgICBbcC1uby1hdXRvY29tcGxldGVdPVwiZmllbGQubm9BdXRvY29tcGxldGVcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICA+XG4gICAgPC9wby1kYXRlcGlja2VyPlxuXG4gICAgPHBvLWRhdGVwaWNrZXItcmFuZ2VcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdkYXRlcGlja2VycmFuZ2UnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1jbGVhbl09XCJmaWVsZC5jbGVhblwiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1saXRlcmFsc109XCJmaWVsZC5saXRlcmFsc1wiXG4gICAgICBbcC1tYXgtZGF0ZV09XCJmaWVsZC5tYXhWYWx1ZVwiXG4gICAgICBbcC1taW4tZGF0ZV09XCJmaWVsZC5taW5WYWx1ZVwiXG4gICAgICBbcC1uby1hdXRvY29tcGxldGVdPVwiZmllbGQubm9BdXRvY29tcGxldGVcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICA+XG4gICAgPC9wby1kYXRlcGlja2VyLXJhbmdlPlxuXG4gICAgPHBvLWlucHV0XG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnaW5wdXQnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1jbGVhbl09XCJmaWVsZC5jbGVhblwiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1lcnJvci1wYXR0ZXJuXT1cImZpZWxkLmVycm9yTWVzc2FnZVwiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1tYXNrLWZvcm1hdC1tb2RlbF09XCJmaWVsZC5tYXNrRm9ybWF0TW9kZWxcIlxuICAgICAgW3AtbWFza109XCJmaWVsZC5tYXNrXCJcbiAgICAgIFtwLW1heGxlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGhcIlxuICAgICAgW3AtbWlubGVuZ3RoXT1cImZpZWxkLm1pbkxlbmd0aFwiXG4gICAgICBbcC1uby1hdXRvY29tcGxldGVdPVwiZmllbGQubm9BdXRvY29tcGxldGVcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcGF0dGVybl09XCJmaWVsZC5wYXR0ZXJuXCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgICAocC1jaGFuZ2UtbW9kZWwpPVwib25DaGFuZ2VGaWVsZE1vZGVsKGZpZWxkKVwiXG4gICAgICBbcC1pY29uXT1cImZpZWxkLmljb25cIlxuICAgICAgW3AtcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgID5cbiAgICA8L3BvLWlucHV0PlxuXG4gICAgPHBvLW51bWJlclxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ251bWJlcicpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWVycm9yLXBhdHRlcm5dPVwiZmllbGQuZXJyb3JNZXNzYWdlXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLW1pbl09XCJmaWVsZC5taW5WYWx1ZVwiXG4gICAgICBbcC1tYXhdPVwiZmllbGQubWF4VmFsdWVcIlxuICAgICAgW3AtbWF4bGVuZ3RoXT1cImZpZWxkLm1heExlbmd0aFwiXG4gICAgICBbcC1taW5sZW5ndGhdPVwiZmllbGQubWluTGVuZ3RoXCJcbiAgICAgIFtwLW5vLWF1dG9jb21wbGV0ZV09XCJmaWVsZC5ub0F1dG9jb21wbGV0ZVwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1zdGVwXT1cImZpZWxkLnN0ZXBcIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIChwLWNoYW5nZS1tb2RlbCk9XCJvbkNoYW5nZUZpZWxkTW9kZWwoZmllbGQpXCJcbiAgICAgIFtwLWljb25dPVwiZmllbGQuaWNvblwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgPlxuICAgIDwvcG8tbnVtYmVyPlxuXG4gICAgPHBvLWRlY2ltYWxcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdkZWNpbWFsJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY2xlYW5dPVwiZmllbGQuY2xlYW5cIlxuICAgICAgW3AtZXJyb3ItcGF0dGVybl09XCJmaWVsZC5lcnJvck1lc3NhZ2VcIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtZGVjaW1hbHMtbGVuZ3RoXT1cImZpZWxkLmRlY2ltYWxzTGVuZ3RoXCJcbiAgICAgIFtwLXRob3VzYW5kLW1heGxlbmd0aF09XCJmaWVsZC50aG91c2FuZE1heGxlbmd0aFwiXG4gICAgICBbcC1pY29uXT1cImZpZWxkLmljb25cIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbG9jYWxlXT1cImZpZWxkLmxvY2FsZVwiXG4gICAgICBbcC1taW5dPVwiZmllbGQubWluVmFsdWVcIlxuICAgICAgW3AtbWF4XT1cImZpZWxkLm1heFZhbHVlXCJcbiAgICAgIFtwLW1heGxlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGhcIlxuICAgICAgW3AtbWlubGVuZ3RoXT1cImZpZWxkLm1pbkxlbmd0aFwiXG4gICAgICBbcC1uby1hdXRvY29tcGxldGVdPVwiZmllbGQubm9BdXRvY29tcGxldGVcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIChwLWNoYW5nZS1tb2RlbCk9XCJvbkNoYW5nZUZpZWxkTW9kZWwoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICA+XG4gICAgPC9wby1kZWNpbWFsPlxuXG4gICAgPHBvLXNlbGVjdFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ3NlbGVjdCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1vcHRpb25zXT1cImZpZWxkLm9wdGlvbnNcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICAgIFtwLXJlYWRvbmx5XT1cImZpZWxkLnJlYWRvbmx5XCJcbiAgICA+XG4gICAgPC9wby1zZWxlY3Q+XG5cbiAgICA8cG8tcmFkaW8tZ3JvdXBcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdyYWRpb0dyb3VwJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY29sdW1uc109XCJmaWVsZC5jb2x1bW5zIHx8IDNcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3Atb3B0aW9uc109XCJmaWVsZC5vcHRpb25zXCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgPlxuICAgIDwvcG8tcmFkaW8tZ3JvdXA+XG5cbiAgICA8cG8tc3dpdGNoXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnc3dpdGNoJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLWxhYmVsLW9mZl09XCJmaWVsZC5ib29sZWFuRmFsc2VcIlxuICAgICAgW3AtbGFiZWwtb25dPVwiZmllbGQuYm9vbGVhblRydWVcIlxuICAgICAgW3AtbGFiZWwtcG9zaXRpb25dPVwiZmllbGQubGFiZWxQb3NpdGlvblwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgID5cbiAgICA8L3BvLXN3aXRjaD5cblxuICAgIDxwby1jb21ib1xuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ2NvbWJvJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgcC1lbWl0LW9iamVjdC12YWx1ZVxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1jbGVhbl09XCJmaWVsZC5jbGVhblwiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1maWVsZC1sYWJlbF09XCJmaWVsZC5maWVsZExhYmVsXCJcbiAgICAgIFtwLWZpZWxkLXZhbHVlXT1cImZpZWxkLmZpZWxkVmFsdWVcIlxuICAgICAgW3AtZmlsdGVyLXBhcmFtc109XCJmaWVsZC5wYXJhbXNcIlxuICAgICAgW3AtZmlsdGVyLXNlcnZpY2VdPVwiZmllbGQub3B0aW9uc1NlcnZpY2VcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWluZmluaXRlLXNjcm9sbF09XCJmaWVsZC5pbmZpbml0ZVNjcm9sbFwiXG4gICAgICBbcC1pbmZpbml0ZS1zY3JvbGwtZGlzdGFuY2VdPVwiZmllbGQuaW5maW5pdGVTY3JvbGxEaXN0YW5jZSB8fCAxMDBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbGl0ZXJhbHNdPVwiZmllbGQubGl0ZXJhbHNcIlxuICAgICAgW3Atb3B0aW9uc109XCJmaWVsZC5vcHRpb25zXCJcbiAgICAgIFtwLW9wdGlvbmFsXT1cImZpZWxkLm9wdGlvbmFsXCJcbiAgICAgIFtwLXNvcnRdPVwiZmllbGQuc29ydFwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZCwgJGV2ZW50KVwiXG4gICAgICBbcC1pY29uXT1cImZpZWxkLmljb25cIlxuICAgICAgW3AtcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgW3AtZmlsdGVyLW1pbmxlbmd0aF09XCJmaWVsZC5maWx0ZXJNaW5sZW5ndGhcIlxuICAgICAgW3AtZmlsdGVyLW1vZGVdPVwiZmllbGQuZmlsdGVyTW9kZVwiXG4gICAgICBbcC1kaXNhYmxlZC1pbml0LWZpbHRlcl09XCJmaWVsZC5kaXNhYmxlZEluaXRGaWx0ZXJcIlxuICAgICAgW3AtZGlzYWJsZWQtdGFiLWZpbHRlcl09XCJmaWVsZC5kaXNhYmxlZFRhYkZpbHRlclwiXG4gICAgICBbcC1kZWJvdW5jZS10aW1lXT1cImZpZWxkLmRlYm91bmNlVGltZVwiXG4gICAgICBbcC1jaGFuZ2Utb24tZW50ZXJdPVwiZmllbGQuY2hhbmdlT25FbnRlclwiXG4gICAgPlxuICAgIDwvcG8tY29tYm8+XG5cbiAgICA8cG8tbG9va3VwXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnbG9va3VwJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgcC1maWVsZC1sYWJlbD1cImxhYmVsXCJcbiAgICAgIHAtZmllbGQtdmFsdWU9XCJ2YWx1ZVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1jbGVhbl09XCJmaWVsZC5jbGVhblwiXG4gICAgICBbcC1jb2x1bW5zXT1cImZpZWxkLmNvbHVtbnNcIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtZmllbGQtbGFiZWxdPVwiZmllbGQuZmllbGRMYWJlbCB8fCAnbGFiZWwnXCJcbiAgICAgIFtwLWZpZWxkLXZhbHVlXT1cImZpZWxkLmZpZWxkVmFsdWUgfHwgJ3ZhbHVlJ1wiXG4gICAgICBbcC1maWx0ZXItcGFyYW1zXT1cImZpZWxkLnBhcmFtc1wiXG4gICAgICBbcC1maWx0ZXItc2VydmljZV09XCJmaWVsZC5zZWFyY2hTZXJ2aWNlXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtYXV0by1oZWlnaHRdPVwiZmllbGQuYXV0b0hlaWdodFwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtZmllbGQtZm9ybWF0XT1cImZpZWxkLmZvcm1hdFwiXG4gICAgICBbcC1pbmZpbml0ZS1zY3JvbGxdPVwiZmllbGQuaW5maW5pdGVTY3JvbGxcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbGl0ZXJhbHNdPVwiZmllbGQubGl0ZXJhbHNcIlxuICAgICAgW3AtbXVsdGlwbGVdPVwiZmllbGQubXVsdGlwbGVcIlxuICAgICAgW3Atbm8tYXV0b2NvbXBsZXRlXT1cImZpZWxkLm5vQXV0b2NvbXBsZXRlXCJcbiAgICAgIFtwLW9wdGlvbmFsXT1cImZpZWxkLm9wdGlvbmFsXCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICBbcC1hZHZhbmNlZC1maWx0ZXJzXT1cImZpZWxkLmFkdmFuY2VkRmlsdGVyc1wiXG4gICAgPlxuICAgIDwvcG8tbG9va3VwPlxuXG4gICAgPHBvLWNoZWNrYm94LWdyb3VwXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnY2hlY2tib3hHcm91cCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNvbHVtbnNdPVwiZmllbGQuY29sdW1ucyB8fCAzXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLW9wdGlvbmFsXT1cImZpZWxkLm9wdGlvbmFsXCJcbiAgICAgIFtwLW9wdGlvbnNdPVwiZmllbGQub3B0aW9uc1wiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgID5cbiAgICA8L3BvLWNoZWNrYm94LWdyb3VwPlxuXG4gICAgPHBvLW11bHRpc2VsZWN0XG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnbXVsdGlzZWxlY3QnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWF1dG8taGVpZ2h0XT1cImZpZWxkLmF1dG9IZWlnaHRcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLWxpdGVyYWxzXT1cImZpZWxkLmxpdGVyYWxzXCJcbiAgICAgIFtwLW9wdGlvbmFsXT1cImZpZWxkLm9wdGlvbmFsXCJcbiAgICAgIFtwLW9wdGlvbnNdPVwiZmllbGQub3B0aW9uc1wiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgICAgW3AtcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgW3AtZmllbGQtbGFiZWxdPVwiZmllbGQuZmllbGRMYWJlbFwiXG4gICAgICBbcC1maWVsZC12YWx1ZV09XCJmaWVsZC5maWVsZFZhbHVlXCJcbiAgICAgIFtwLWZpbHRlci1zZXJ2aWNlXT1cImZpZWxkLm9wdGlvbnNTZXJ2aWNlXCJcbiAgICAgIFtwLWZpbHRlci1tb2RlXT1cImZpZWxkLmZpbHRlck1vZGVcIlxuICAgICAgW3AtZGVib3VuY2UtdGltZV09XCJmaWVsZC5kZWJvdW5jZVRpbWVcIlxuICAgICAgW3Atc29ydF09XCJmaWVsZC5zb3J0XCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyLXNlYXJjaF09XCJmaWVsZC5wbGFjZWhvbGRlclNlYXJjaFwiXG4gICAgICBbcC1oaWRlLXNlYXJjaF09XCJmaWVsZC5oaWRlU2VhcmNoXCJcbiAgICAgIFtwLWhpZGUtc2VsZWN0LWFsbF09XCJmaWVsZC5oaWRlU2VsZWN0QWxsXCJcbiAgICA+XG4gICAgPC9wby1tdWx0aXNlbGVjdD5cblxuICAgIDxwby10ZXh0YXJlYVxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ3RleHRhcmVhJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbWF4bGVuZ3RoXT1cImZpZWxkLm1heExlbmd0aFwiXG4gICAgICBbcC1taW5sZW5ndGhdPVwiZmllbGQubWluTGVuZ3RoXCJcbiAgICAgIFtwLW9wdGlvbmFsXT1cImZpZWxkLm9wdGlvbmFsXCJcbiAgICAgIFtwLXJlYWRvbmx5XT1cImZpZWxkLnJlYWRvbmx5XCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIFtwLXJvd3NdPVwiZmllbGQucm93c1wiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgICAgKHAtY2hhbmdlLW1vZGVsKT1cIm9uQ2hhbmdlRmllbGRNb2RlbChmaWVsZClcIlxuICAgICAgW3AtcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgID5cbiAgICA8L3BvLXRleHRhcmVhPlxuXG4gICAgPHBvLXBhc3N3b3JkXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAncGFzc3dvcmQnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1jbGVhbl09XCJmaWVsZC5jbGVhblwiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1lcnJvci1wYXR0ZXJuXT1cImZpZWxkLmVycm9yTWVzc2FnZVwiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1oaWRlLXBhc3N3b3JkLXBlZWtdPVwiZmllbGQuaGlkZVBhc3N3b3JkUGVla1wiXG4gICAgICBbcC1pY29uXT1cImZpZWxkLmljb25cIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbWF4bGVuZ3RoXT1cImZpZWxkLm1heExlbmd0aFwiXG4gICAgICBbcC1taW5sZW5ndGhdPVwiZmllbGQubWluTGVuZ3RoXCJcbiAgICAgIFtwLW5vLWF1dG9jb21wbGV0ZV09XCJmaWVsZC5ub0F1dG9jb21wbGV0ZVwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1wYXR0ZXJuXT1cImZpZWxkLnBhdHRlcm5cIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIChwLWNoYW5nZS1tb2RlbCk9XCJvbkNoYW5nZUZpZWxkTW9kZWwoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICA+XG4gICAgPC9wby1wYXNzd29yZD5cbiAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbiJdfQ==
358
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZHluYW1pYy1mb3JtLWZpZWxkcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZHluYW1pYy9wby1keW5hbWljLWZvcm0vcG8tZHluYW1pYy1mb3JtLWZpZWxkcy9wby1keW5hbWljLWZvcm0tZmllbGRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1keW5hbWljL3BvLWR5bmFtaWMtZm9ybS9wby1keW5hbWljLWZvcm0tZmllbGRzL3BvLWR5bmFtaWMtZm9ybS1maWVsZHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBMEQsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUkxRCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUUzRixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQ0w5RyxpQ0FBb0c7OztJQUF4QywwQ0FBeUI7Ozs7SUFFckYsNkNBdUJDO0lBbkJDLHNWQUFtQywwUEFpQnZCLGVBQUEsK0JBQW9CLENBQUEsSUFqQkc7SUFvQnJDLGlCQUFnQjs7OztJQXJCZCx3Q0FBdUIsNENBQUEsb0NBQUEsMkJBQUEsMkNBQUEsMENBQUEsZ0NBQUEsNkJBQUEseUJBQUEsb0NBQUEsMkJBQUEsNkJBQUEsaUNBQUEsaUNBQUEsOENBQUEsaUNBQUEsaUNBQUEsaUNBQUEsdUNBQUE7Ozs7SUF1QnpCLG1EQW1CQztJQWZDLGtXQUFtQyxzUUFjdkIsZUFBQSwrQkFBb0IsQ0FBQSxJQWRHO0lB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ImltcG9ydCB7IENvbXBvbmVudCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIE9uQ2hhbmdlcywgUXVlcnlMaXN0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGRyZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xDb250YWluZXIsIE5nRm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFRpdGxlQ2FzZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgeyBQb0R5bmFtaWNGb3JtRmllbGQgfSBmcm9tICcuLi9wby1keW5hbWljLWZvcm0tZmllbGQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFBvRHluYW1pY0Zvcm1GaWVsZHNCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi9wby1keW5hbWljLWZvcm0tZmllbGRzLWJhc2UuY29tcG9uZW50JztcbmltcG9ydCB7IFBvRHluYW1pY0Zvcm1GaWVsZFZhbGlkYXRpb24gfSBmcm9tICcuLi9wby1keW5hbWljLWZvcm0tdmFsaWRhdGlvbi9wby1keW5hbWljLWZvcm0tZmllbGQtdmFsaWRhdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUG9EeW5hbWljRm9ybVZhbGlkYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vcG8tZHluYW1pYy1mb3JtLXZhbGlkYXRpb24vcG8tZHluYW1pYy1mb3JtLXZhbGlkYXRpb24uc2VydmljZSc7XG5cbi8qKlxuICogQGRvY3NQcml2YXRlXG4gKlxuICogQGRlc2NyaXB0aW9uXG4gKlxuICogQ29tcG9uZW50ZSBkZSBjcmlhw6fDo28gZG9zIGNhbXBvcyBkaW7Dom1pY29zLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwby1keW5hbWljLWZvcm0tZmllbGRzJyxcbiAgdGVtcGxhdGVVcmw6ICdwby1keW5hbWljLWZvcm0tZmllbGRzLmNvbXBvbmVudC5odG1sJyxcbiAgdmlld1Byb3ZpZGVyczogW3sgcHJvdmlkZTogQ29udHJvbENvbnRhaW5lciwgdXNlRXhpc3Rpbmc6IE5nRm9ybSB9XSxcbiAgcHJvdmlkZXJzOiBbUG9EeW5hbWljRm9ybVZhbGlkYXRpb25TZXJ2aWNlXVxufSlcbmV4cG9ydCBjbGFzcyBQb0R5bmFtaWNGb3JtRmllbGRzQ29tcG9uZW50IGV4dGVuZHMgUG9EeW5hbWljRm9ybUZpZWxkc0Jhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBAVmlld0NoaWxkcmVuKCdjb21wb25lbnQnKSBjb21wb25lbnRzOiBRdWVyeUxpc3Q8eyBuYW1lOiBzdHJpbmc7IGZvY3VzOiAoKSA9PiB2b2lkIH0+O1xuXG4gIHByaXZhdGUgcHJldmlvdXNWYWx1ZSA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHRpdGxlQ2FzZVBpcGU6IFRpdGxlQ2FzZVBpcGUsXG4gICAgcHJpdmF0ZSB2YWxpZGF0aW9uU2VydmljZTogUG9EeW5hbWljRm9ybVZhbGlkYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgY2hhbmdlczogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBmb3JtOiBOZ0Zvcm1cbiAgKSB7XG4gICAgc3VwZXIodGl0bGVDYXNlUGlwZSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXMuZmllbGRzKSB7XG4gICAgICB0aGlzLnZpc2libGVGaWVsZHMgPSB0aGlzLmdldFZpc2libGVGaWVsZHMoKTtcbiAgICB9XG4gIH1cblxuICBmb2N1cyhwcm9wZXJ0eTogc3RyaW5nKSB7XG4gICAgY29uc3QgZm91bmRDb21wb25lbnQgPSB0aGlzLmNvbXBvbmVudHMuZmluZChjb21wb25lbnQgPT4gY29tcG9uZW50Lm5hbWUgPT09IHByb3BlcnR5KTtcbiAgICBpZiAoZm91bmRDb21wb25lbnQpIHtcbiAgICAgIGZvdW5kQ29tcG9uZW50LmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgaXNEaXNhYmxlZChmaWVsZDogUG9EeW5hbWljRm9ybUZpZWxkKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZpZWxkLmRpc2FibGVkIHx8IHRoaXMuZGlzYWJsZWRGb3JtO1xuICB9XG5cbiAgYXN5bmMgb25DaGFuZ2VGaWVsZCh2aXNpYmxlRmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCwgb2JqZWN0VmFsdWU/OiBhbnkpIHtcbiAgICBjb25zdCB7IHByb3BlcnR5IH0gPSB2aXNpYmxlRmllbGQ7XG4gICAgY29uc3QgaXNCb29sZWFuVHlwZSA9IHZpc2libGVGaWVsZC50eXBlID09PSAnYm9vbGVhbic7XG4gICAgY29uc3QgaXNDaGFuZ2VkVmFsdWVGaWVsZCA9IHRoaXMucHJldmlvdXNWYWx1ZVtwcm9wZXJ0eV0gIT09IHRoaXMudmFsdWVbcHJvcGVydHldO1xuXG4gICAgaWYgKHZpc2libGVGaWVsZC5vcHRpb25zU2VydmljZSkge1xuICAgICAgdGhpcy5vYmplY3RWYWx1ZS5lbWl0KG9iamVjdFZhbHVlKTtcbiAgICB9XG5cbiAgICAvLyB2ZXJpZmljYSBzZSBvIGZvcm11bGFyaW8gZXN0YSB0b3VjaGVkIHBhcmEgbsOjbyBkaXNwYXJhciBvIHZhbGlkYXRlIGFvIGNhcnJlZ2FyIGEgdGVsYS5cbiAgICBpZiAoKHRoaXMuZm9ybS50b3VjaGVkIHx8IGlzQm9vbGVhblR5cGUpICYmIGlzQ2hhbmdlZFZhbHVlRmllbGQpIHtcbiAgICAgIGNvbnN0IHsgY2hhbmdlZEZpZWxkLCBjaGFuZ2VkRmllbGRJbmRleCB9ID0gdGhpcy5nZXRGaWVsZChwcm9wZXJ0eSk7XG5cbiAgICAgIGlmIChjaGFuZ2VkRmllbGQudmFsaWRhdGUpIHtcbiAgICAgICAgYXdhaXQgdGhpcy52YWxpZGF0ZUZpZWxkKGNoYW5nZWRGaWVsZCwgY2hhbmdlZEZpZWxkSW5kZXgsIHZpc2libGVGaWVsZCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMudHJpZ2dlclZhbGlkYXRpb25PbkZvcm0oY2hhbmdlZEZpZWxkSW5kZXgpO1xuICAgIH1cblxuICAgIHRoaXMudXBkYXRlUHJldmlvdXNWYWx1ZSgpO1xuICB9XG5cbiAgLy9lbWl0ZSBvIHZhbG9yIGEgY2FkYSBjYXJhY3RlcmUgZGlnaXRhZG8gbm8gaW5wdXRcbiAgb25DaGFuZ2VGaWVsZE1vZGVsKHZpc2libGVGaWVsZDogUG9EeW5hbWljRm9ybUZpZWxkKSB7XG4gICAgaWYgKHRoaXMudmFsaWRhdGVPbklucHV0KSB7XG4gICAgICBjb25zdCB7IHByb3BlcnR5IH0gPSB2aXNpYmxlRmllbGQ7XG4gICAgICBjb25zdCB7IGNoYW5nZWRGaWVsZEluZGV4IH0gPSB0aGlzLmdldEZpZWxkKHByb3BlcnR5KTtcbiAgICAgIHRoaXMudHJpZ2dlclZhbGlkYXRpb25PbkZvcm0oY2hhbmdlZEZpZWxkSW5kZXgpO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZVByZXZpb3VzVmFsdWUoKSB7XG4gICAgdGhpcy5wcmV2aW91c1ZhbHVlID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLnZhbHVlKSk7XG4gIH1cblxuICB0cmFja0J5KGluZGV4KSB7XG4gICAgcmV0dXJuIGluZGV4O1xuICB9XG5cbiAgcHJpdmF0ZSBhcHBseUZpZWxkVmFsaWRhdGlvbihpbmRleDogbnVtYmVyLCB2YWxpZGF0ZWRGaWVsZDogUG9EeW5hbWljRm9ybUZpZWxkVmFsaWRhdGlvbikge1xuICAgIGNvbnN0IGZpZWxkID0gdGhpcy5maWVsZHNbaW5kZXhdO1xuXG4gICAgdGhpcy5maWVsZHNbaW5kZXhdID0geyAuLi5maWVsZCwgLi4udmFsaWRhdGVkRmllbGQuZmllbGQgfTtcbiAgICB0aGlzLnVwZGF0ZUZpZWxkcygpO1xuXG4gICAgaWYgKHZhbGlkYXRlZEZpZWxkLmhhc093blByb3BlcnR5KCd2YWx1ZScpKSB7XG4gICAgICB0aGlzLnZhbHVlW2ZpZWxkLnByb3BlcnR5XSA9IHZhbGlkYXRlZEZpZWxkLnZhbHVlO1xuICAgIH1cblxuICAgIHRoaXMuY2hhbmdlcy5kZXRlY3RDaGFuZ2VzKCk7XG5cbiAgICBpZiAodmFsaWRhdGVkRmllbGQuZm9jdXMpIHtcbiAgICAgIHRoaXMuZm9jdXMoZmllbGQucHJvcGVydHkpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0RmllbGQocHJvcGVydHk6IHN0cmluZykge1xuICAgIGNvbnN0IGNoYW5nZWRGaWVsZEluZGV4ID0gdGhpcy5maWVsZHMuZmluZEluZGV4KGZpZWxkID0+IGZpZWxkLnByb3BlcnR5ID09PSBwcm9wZXJ0eSk7XG4gICAgY29uc3QgY2hhbmdlZEZpZWxkID0gdGhpcy5maWVsZHNbY2hhbmdlZEZpZWxkSW5kZXhdO1xuXG4gICAgcmV0dXJuIHsgY2hhbmdlZEZpZWxkLCBjaGFuZ2VkRmllbGRJbmRleCB9O1xuICB9XG5cbiAgcHJpdmF0ZSB0cmlnZ2VyVmFsaWRhdGlvbk9uRm9ybShjaGFuZ2VkRmllbGRJbmRleDogbnVtYmVyKSB7XG4gICAgY29uc3QgaXNWYWxpZGF0YWJsZUZpZWxkID0gdGhpcy52YWxpZGF0ZUZpZWxkcz8ubGVuZ3RoXG4gICAgICA/IHRoaXMudmFsaWRhdGVGaWVsZHNDaGVja2VyKHRoaXMudmFsaWRhdGVGaWVsZHMsIHRoaXMuZmllbGRzW2NoYW5nZWRGaWVsZEluZGV4XS5wcm9wZXJ0eSlcbiAgICAgIDogdHJ1ZTtcbiAgICBjb25zdCBoYXNWYWxpZGF0aW9uRm9ybSA9IHRoaXMudmFsaWRhdGUgJiYgaXNWYWxpZGF0YWJsZUZpZWxkICYmIHRoaXMuZm9ybVZhbGlkYXRlLm9ic2VydmVycy5sZW5ndGg7XG5cbiAgICBpZiAoaGFzVmFsaWRhdGlvbkZvcm0pIHtcbiAgICAgIGNvbnN0IHVwZGF0ZWRGaWVsZCA9IHRoaXMuZmllbGRzW2NoYW5nZWRGaWVsZEluZGV4XTtcbiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlLmVtaXQodXBkYXRlZEZpZWxkKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUZpZWxkcygpIHtcbiAgICB0aGlzLmZpZWxkc0NoYW5nZS5lbWl0KHRoaXMuZmllbGRzKTtcbiAgICB0aGlzLnZpc2libGVGaWVsZHMgPSB0aGlzLmdldFZpc2libGVGaWVsZHMoKTtcbiAgfVxuXG4gIHByaXZhdGUgdmFsaWRhdGVGaWVsZHNDaGVja2VyKHZhbGlkYXRlRmllbGRzOiBBcnJheTxzdHJpbmc+LCBwcm9wZXJ0eUZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGRbJ3Byb3BlcnR5J10pOiBib29sZWFuIHtcbiAgICByZXR1cm4gdmFsaWRhdGVGaWVsZHMuc29tZSh2YWxpZGF0ZUZpZWxkSXRlbSA9PiB2YWxpZGF0ZUZpZWxkSXRlbSA9PT0gcHJvcGVydHlGaWVsZCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHZhbGlkYXRlRmllbGQoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCwgZmllbGRJbmRleDogbnVtYmVyLCB2aXNpYmxlRmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCkge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpcy52YWx1ZVtmaWVsZC5wcm9wZXJ0eV07XG5cbiAgICBjb25zdCBwcmV2aW91c0Rpc2FibGVkID0gdmlzaWJsZUZpZWxkLmRpc2FibGVkO1xuICAgIHZpc2libGVGaWVsZC5kaXNhYmxlZCA9IHRydWU7XG4gICAgdGhpcy5jaGFuZ2VzLmRldGVjdENoYW5nZXMoKTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCB2YWxpZGF0ZWRGaWVsZCA9IGF3YWl0IHRoaXMudmFsaWRhdGlvblNlcnZpY2Uuc2VuZEZpZWxkQ2hhbmdlKGZpZWxkLCB2YWx1ZSkudG9Qcm9taXNlKCk7XG4gICAgICB0aGlzLmFwcGx5RmllbGRWYWxpZGF0aW9uKGZpZWxkSW5kZXgsIHZhbGlkYXRlZEZpZWxkKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHZpc2libGVGaWVsZC5kaXNhYmxlZCA9IHByZXZpb3VzRGlzYWJsZWQ7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicG8tcm93XCIgKm5nSWY9XCJ2aXNpYmxlRmllbGRzICYmIHZpc2libGVGaWVsZHMubGVuZ3RoID4gMFwiPlxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBmaWVsZCBvZiB2aXNpYmxlRmllbGRzOyB0cmFja0J5OiB0cmFja0J5XCI+XG4gICAgPHBvLWRpdmlkZXIgKm5nSWY9XCJmaWVsZD8uZGl2aWRlcj8udHJpbSgpXCIgY2xhc3M9XCJwby1zbS0xMlwiIFtwLWxhYmVsXT1cImZpZWxkLmRpdmlkZXJcIj4gPC9wby1kaXZpZGVyPlxuXG4gICAgPHBvLWRhdGVwaWNrZXJcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdkYXRlcGlja2VyJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY2xlYW5dPVwiZmllbGQuY2xlYW5cIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtZXJyb3ItcGF0dGVybl09XCJmaWVsZC5lcnJvck1lc3NhZ2VcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1mb3JtYXRdPVwiZmllbGQuZm9ybWF0XCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1pc28tZm9ybWF0XT1cImZpZWxkLmlzb0Zvcm1hdFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1sb2NhbGVdPVwiZmllbGQubG9jYWxlXCJcbiAgICAgIFtwLW1heC1kYXRlXT1cImZpZWxkLm1heFZhbHVlXCJcbiAgICAgIFtwLW1pbi1kYXRlXT1cImZpZWxkLm1pblZhbHVlXCJcbiAgICAgIFtwLW5vLWF1dG9jb21wbGV0ZV09XCJmaWVsZC5ub0F1dG9jb21wbGV0ZVwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgICAgW3AtcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgID5cbiAgICA8L3BvLWRhdGVwaWNrZXI+XG5cbiAgICA8cG8tZGF0ZXBpY2tlci1yYW5nZVxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ2RhdGVwaWNrZXJyYW5nZScpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLWxpdGVyYWxzXT1cImZpZWxkLmxpdGVyYWxzXCJcbiAgICAgIFtwLW1heC1kYXRlXT1cImZpZWxkLm1heFZhbHVlXCJcbiAgICAgIFtwLW1pbi1kYXRlXT1cImZpZWxkLm1pblZhbHVlXCJcbiAgICAgIFtwLW5vLWF1dG9jb21wbGV0ZV09XCJmaWVsZC5ub0F1dG9jb21wbGV0ZVwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgID5cbiAgICA8L3BvLWRhdGVwaWNrZXItcmFuZ2U+XG5cbiAgICA8cG8taW5wdXRcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdpbnB1dCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWVycm9yLXBhdHRlcm5dPVwiZmllbGQuZXJyb3JNZXNzYWdlXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLW1hc2stZm9ybWF0LW1vZGVsXT1cImZpZWxkLm1hc2tGb3JtYXRNb2RlbFwiXG4gICAgICBbcC1tYXNrXT1cImZpZWxkLm1hc2tcIlxuICAgICAgW3AtbWF4bGVuZ3RoXT1cImZpZWxkLm1heExlbmd0aFwiXG4gICAgICBbcC1taW5sZW5ndGhdPVwiZmllbGQubWluTGVuZ3RoXCJcbiAgICAgIFtwLW5vLWF1dG9jb21wbGV0ZV09XCJmaWVsZC5ub0F1dG9jb21wbGV0ZVwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1wYXR0ZXJuXT1cImZpZWxkLnBhdHRlcm5cIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIChwLWNoYW5nZS1tb2RlbCk9XCJvbkNoYW5nZUZpZWxkTW9kZWwoZmllbGQpXCJcbiAgICAgIFtwLWljb25dPVwiZmllbGQuaWNvblwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgPlxuICAgIDwvcG8taW5wdXQ+XG5cbiAgICA8cG8tbnVtYmVyXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnbnVtYmVyJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY2xlYW5dPVwiZmllbGQuY2xlYW5cIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtZXJyb3ItcGF0dGVybl09XCJmaWVsZC5lcnJvck1lc3NhZ2VcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbWluXT1cImZpZWxkLm1pblZhbHVlXCJcbiAgICAgIFtwLW1heF09XCJmaWVsZC5tYXhWYWx1ZVwiXG4gICAgICBbcC1tYXhsZW5ndGhdPVwiZmllbGQubWF4TGVuZ3RoXCJcbiAgICAgIFtwLW1pbmxlbmd0aF09XCJmaWVsZC5taW5MZW5ndGhcIlxuICAgICAgW3Atbm8tYXV0b2NvbXBsZXRlXT1cImZpZWxkLm5vQXV0b2NvbXBsZXRlXCJcbiAgICAgIFtwLW9wdGlvbmFsXT1cImZpZWxkLm9wdGlvbmFsXCJcbiAgICAgIFtwLXN0ZXBdPVwiZmllbGQuc3RlcFwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgICAgKHAtY2hhbmdlLW1vZGVsKT1cIm9uQ2hhbmdlRmllbGRNb2RlbChmaWVsZClcIlxuICAgICAgW3AtaWNvbl09XCJmaWVsZC5pY29uXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICA+XG4gICAgPC9wby1udW1iZXI+XG5cbiAgICA8cG8tZGVjaW1hbFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ2RlY2ltYWwnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1jbGVhbl09XCJmaWVsZC5jbGVhblwiXG4gICAgICBbcC1lcnJvci1wYXR0ZXJuXT1cImZpZWxkLmVycm9yTWVzc2FnZVwiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1kZWNpbWFscy1sZW5ndGhdPVwiZmllbGQuZGVjaW1hbHNMZW5ndGhcIlxuICAgICAgW3AtdGhvdXNhbmQtbWF4bGVuZ3RoXT1cImZpZWxkLnRob3VzYW5kTWF4bGVuZ3RoXCJcbiAgICAgIFtwLWljb25dPVwiZmllbGQuaWNvblwiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1sb2NhbGVdPVwiZmllbGQubG9jYWxlXCJcbiAgICAgIFtwLW1pbl09XCJmaWVsZC5taW5WYWx1ZVwiXG4gICAgICBbcC1tYXhdPVwiZmllbGQubWF4VmFsdWVcIlxuICAgICAgW3AtbWF4bGVuZ3RoXT1cImZpZWxkLm1heExlbmd0aFwiXG4gICAgICBbcC1taW5sZW5ndGhdPVwiZmllbGQubWluTGVuZ3RoXCJcbiAgICAgIFtwLW5vLWF1dG9jb21wbGV0ZV09XCJmaWVsZC5ub0F1dG9jb21wbGV0ZVwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgICAgKHAtY2hhbmdlLW1vZGVsKT1cIm9uQ2hhbmdlRmllbGRNb2RlbChmaWVsZClcIlxuICAgICAgW3AtcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgID5cbiAgICA8L3BvLWRlY2ltYWw+XG5cbiAgICA8cG8tc2VsZWN0XG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnc2VsZWN0JylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLW9wdGlvbmFsXT1cImZpZWxkLm9wdGlvbmFsXCJcbiAgICAgIFtwLW9wdGlvbnNdPVwiZmllbGQub3B0aW9uc1wiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgICAgW3AtcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgID5cbiAgICA8L3BvLXNlbGVjdD5cblxuICAgIDxwby1yYWRpby1ncm91cFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ3JhZGlvR3JvdXAnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1jb2x1bW5zXT1cImZpZWxkLmNvbHVtbnMgfHwgM1wiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1vcHRpb25zXT1cImZpZWxkLm9wdGlvbnNcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICA+XG4gICAgPC9wby1yYWRpby1ncm91cD5cblxuICAgIDxwby1zd2l0Y2hcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdzd2l0Y2gnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbGFiZWwtb2ZmXT1cImZpZWxkLmJvb2xlYW5GYWxzZVwiXG4gICAgICBbcC1sYWJlbC1vbl09XCJmaWVsZC5ib29sZWFuVHJ1ZVwiXG4gICAgICBbcC1sYWJlbC1wb3NpdGlvbl09XCJmaWVsZC5sYWJlbFBvc2l0aW9uXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgPlxuICAgIDwvcG8tc3dpdGNoPlxuXG4gICAgPHBvLWNvbWJvXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnY29tYm8nKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBwLWVtaXQtb2JqZWN0LXZhbHVlXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWZpZWxkLWxhYmVsXT1cImZpZWxkLmZpZWxkTGFiZWxcIlxuICAgICAgW3AtZmllbGQtdmFsdWVdPVwiZmllbGQuZmllbGRWYWx1ZVwiXG4gICAgICBbcC1maWx0ZXItcGFyYW1zXT1cImZpZWxkLnBhcmFtc1wiXG4gICAgICBbcC1maWx0ZXItc2VydmljZV09XCJmaWVsZC5vcHRpb25zU2VydmljZVwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtaW5maW5pdGUtc2Nyb2xsXT1cImZpZWxkLmluZmluaXRlU2Nyb2xsXCJcbiAgICAgIFtwLWluZmluaXRlLXNjcm9sbC1kaXN0YW5jZV09XCJmaWVsZC5pbmZpbml0ZVNjcm9sbERpc3RhbmNlIHx8IDEwMFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1saXRlcmFsc109XCJmaWVsZC5saXRlcmFsc1wiXG4gICAgICBbcC1vcHRpb25zXT1cImZpZWxkLm9wdGlvbnNcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3Atc29ydF09XCJmaWVsZC5zb3J0XCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkLCAkZXZlbnQpXCJcbiAgICAgIFtwLWljb25dPVwiZmllbGQuaWNvblwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICBbcC1maWx0ZXItbWlubGVuZ3RoXT1cImZpZWxkLmZpbHRlck1pbmxlbmd0aFwiXG4gICAgICBbcC1maWx0ZXItbW9kZV09XCJmaWVsZC5maWx0ZXJNb2RlXCJcbiAgICAgIFtwLWRpc2FibGVkLWluaXQtZmlsdGVyXT1cImZpZWxkLmRpc2FibGVkSW5pdEZpbHRlclwiXG4gICAgICBbcC1kaXNhYmxlZC10YWItZmlsdGVyXT1cImZpZWxkLmRpc2FibGVkVGFiRmlsdGVyXCJcbiAgICAgIFtwLWRlYm91bmNlLXRpbWVdPVwiZmllbGQuZGVib3VuY2VUaW1lXCJcbiAgICAgIFtwLWNoYW5nZS1vbi1lbnRlcl09XCJmaWVsZC5jaGFuZ2VPbkVudGVyXCJcbiAgICA+XG4gICAgPC9wby1jb21ibz5cblxuICAgIDxwby1sb29rdXBcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdsb29rdXAnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBwLWZpZWxkLWxhYmVsPVwibGFiZWxcIlxuICAgICAgcC1maWVsZC12YWx1ZT1cInZhbHVlXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWNvbHVtbnNdPVwiZmllbGQuY29sdW1uc1wiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1maWVsZC1sYWJlbF09XCJmaWVsZC5maWVsZExhYmVsIHx8ICdsYWJlbCdcIlxuICAgICAgW3AtZmllbGQtdmFsdWVdPVwiZmllbGQuZmllbGRWYWx1ZSB8fCAndmFsdWUnXCJcbiAgICAgIFtwLWZpbHRlci1wYXJhbXNdPVwiZmllbGQucGFyYW1zXCJcbiAgICAgIFtwLWZpbHRlci1zZXJ2aWNlXT1cImZpZWxkLnNlYXJjaFNlcnZpY2VcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1hdXRvLWhlaWdodF09XCJmaWVsZC5hdXRvSGVpZ2h0XCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1maWVsZC1mb3JtYXRdPVwiZmllbGQuZm9ybWF0XCJcbiAgICAgIFtwLWluZmluaXRlLXNjcm9sbF09XCJmaWVsZC5pbmZpbml0ZVNjcm9sbFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1saXRlcmFsc109XCJmaWVsZC5saXRlcmFsc1wiXG4gICAgICBbcC1tdWx0aXBsZV09XCJmaWVsZC5tdWx0aXBsZVwiXG4gICAgICBbcC1uby1hdXRvY29tcGxldGVdPVwiZmllbGQubm9BdXRvY29tcGxldGVcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICAgIFtwLWFkdmFuY2VkLWZpbHRlcnNdPVwiZmllbGQuYWR2YW5jZWRGaWx0ZXJzXCJcbiAgICAgIChwLWNoYW5nZS12aXNpYmxlLWNvbHVtbnMpPVwiZmllbGQuY2hhbmdlVmlzaWJsZUNvbHVtbnMoJGV2ZW50KVwiXG4gICAgICAocC1yZXN0b3JlLWNvbHVtbi1tYW5hZ2VyKT1cImZpZWxkLmNvbHVtblJlc3RvcmVNYW5hZ2VyKCRldmVudClcIlxuICAgID5cbiAgICA8L3BvLWxvb2t1cD5cblxuICAgIDxwby1jaGVja2JveC1ncm91cFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ2NoZWNrYm94R3JvdXAnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1jb2x1bW5zXT1cImZpZWxkLmNvbHVtbnMgfHwgM1wiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1vcHRpb25zXT1cImZpZWxkLm9wdGlvbnNcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICA+XG4gICAgPC9wby1jaGVja2JveC1ncm91cD5cblxuICAgIDxwby1tdWx0aXNlbGVjdFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ211bHRpc2VsZWN0JylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1hdXRvLWhlaWdodF09XCJmaWVsZC5hdXRvSGVpZ2h0XCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1saXRlcmFsc109XCJmaWVsZC5saXRlcmFsc1wiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1vcHRpb25zXT1cImZpZWxkLm9wdGlvbnNcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICAgIFtwLWZpZWxkLWxhYmVsXT1cImZpZWxkLmZpZWxkTGFiZWxcIlxuICAgICAgW3AtZmllbGQtdmFsdWVdPVwiZmllbGQuZmllbGRWYWx1ZVwiXG4gICAgICBbcC1maWx0ZXItc2VydmljZV09XCJmaWVsZC5vcHRpb25zU2VydmljZVwiXG4gICAgICBbcC1maWx0ZXItbW9kZV09XCJmaWVsZC5maWx0ZXJNb2RlXCJcbiAgICAgIFtwLWRlYm91bmNlLXRpbWVdPVwiZmllbGQuZGVib3VuY2VUaW1lXCJcbiAgICAgIFtwLXNvcnRdPVwiZmllbGQuc29ydFwiXG4gICAgICBbcC1wbGFjZWhvbGRlci1zZWFyY2hdPVwiZmllbGQucGxhY2Vob2xkZXJTZWFyY2hcIlxuICAgICAgW3AtaGlkZS1zZWFyY2hdPVwiZmllbGQuaGlkZVNlYXJjaFwiXG4gICAgICBbcC1oaWRlLXNlbGVjdC1hbGxdPVwiZmllbGQuaGlkZVNlbGVjdEFsbFwiXG4gICAgPlxuICAgIDwvcG8tbXVsdGlzZWxlY3Q+XG5cbiAgICA8cG8tdGV4dGFyZWFcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICd0ZXh0YXJlYScpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLW1heGxlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGhcIlxuICAgICAgW3AtbWlubGVuZ3RoXT1cImZpZWxkLm1pbkxlbmd0aFwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICBbcC1yb3dzXT1cImZpZWxkLnJvd3NcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIChwLWNoYW5nZS1tb2RlbCk9XCJvbkNoYW5nZUZpZWxkTW9kZWwoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICA+XG4gICAgPC9wby10ZXh0YXJlYT5cblxuICAgIDxwby1wYXNzd29yZFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ3Bhc3N3b3JkJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY2xlYW5dPVwiZmllbGQuY2xlYW5cIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtZXJyb3ItcGF0dGVybl09XCJmaWVsZC5lcnJvck1lc3NhZ2VcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtaGlkZS1wYXNzd29yZC1wZWVrXT1cImZpZWxkLmhpZGVQYXNzd29yZFBlZWtcIlxuICAgICAgW3AtaWNvbl09XCJmaWVsZC5pY29uXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLW1heGxlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGhcIlxuICAgICAgW3AtbWlubGVuZ3RoXT1cImZpZWxkLm1pbkxlbmd0aFwiXG4gICAgICBbcC1uby1hdXRvY29tcGxldGVdPVwiZmllbGQubm9BdXRvY29tcGxldGVcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcGF0dGVybl09XCJmaWVsZC5wYXR0ZXJuXCJcbiAgICAgIFtwLXJlYWRvbmx5XT1cImZpZWxkLnJlYWRvbmx5XCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgICAocC1jaGFuZ2UtbW9kZWwpPVwib25DaGFuZ2VGaWVsZE1vZGVsKGZpZWxkKVwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgPlxuICAgIDwvcG8tcGFzc3dvcmQ+XG4gIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
@@ -92,10 +92,13 @@ export class PoCheckboxBaseComponent {
92
92
  }
93
93
  }
94
94
  PoCheckboxBaseComponent.ɵfac = function PoCheckboxBaseComponent_Factory(t) { return new (t || PoCheckboxBaseComponent)(); };
95
- PoCheckboxBaseComponent.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: PoCheckboxBaseComponent, inputs: { name: "name", autoFocus: ["p-auto-focus", "autoFocus"], label: ["p-label", "label"], disabled: ["p-disabled", "disabled"] }, outputs: { change: "p-change" } });
95
+ PoCheckboxBaseComponent.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: PoCheckboxBaseComponent, inputs: { name: "name", autoFocus: ["p-auto-focus", "autoFocus"], label: ["p-label", "label"], checkboxValue: ["p-checkboxValue", "checkboxValue"], checkBoxRequired: ["p-required", "checkBoxRequired"], disabled: ["p-disabled", "disabled"] }, outputs: { change: "p-change" } });
96
96
  __decorate([
97
97
  InputBoolean()
98
98
  ], PoCheckboxBaseComponent.prototype, "autoFocus", void 0);
99
+ __decorate([
100
+ InputBoolean()
101
+ ], PoCheckboxBaseComponent.prototype, "checkBoxRequired", void 0);
99
102
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PoCheckboxBaseComponent, [{
100
103
  type: Directive
101
104
  }], null, { name: [{
@@ -110,8 +113,14 @@ __decorate([
110
113
  }], change: [{
111
114
  type: Output,
112
115
  args: ['p-change']
116
+ }], checkboxValue: [{
117
+ type: Input,
118
+ args: ['p-checkboxValue']
119
+ }], checkBoxRequired: [{
120
+ type: Input,
121
+ args: ['p-required']
113
122
  }], disabled: [{
114
123
  type: Input,
115
124
  args: ['p-disabled']
116
125
  }] }); })();
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tY2hlY2tib3gtYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZmllbGQvcG8tY2hlY2tib3gvcG8tY2hlY2tib3gtYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBLE9BQU8sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFFbkQ7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCRztBQUVILE1BQU0sT0FBZ0IsdUJBQXVCO0lBRDdDO1FBS0U7Ozs7Ozs7Ozs7V0FVRztRQUNvQyxjQUFTLEdBQVksS0FBSyxDQUFDO1FBS2xFOzs7Ozs7V0FNRztRQUNpQixXQUFNLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFHeEUsT0FBRSxHQUFHLElBQUksRUFBRSxDQUFDO1FBSUosY0FBUyxHQUFhLEtBQUssQ0FBQztLQXVEckM7SUFyREM7Ozs7Ozs7O09BUUc7SUFDSCxJQUF5QixRQUFRLENBQUMsS0FBYztRQUM5QyxJQUFJLENBQUMsU0FBUyxHQUFHLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDeEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDMUM7UUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUE4QjtRQUN4QyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNsQixLQUFLLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2hGLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNwQjtJQUNILENBQUM7SUFFRCw4Q0FBOEM7SUFDOUMsZ0VBQWdFO0lBQ2hFLGdCQUFnQixDQUFDLFVBQW1CO1FBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO0lBQzdCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUFPO1FBQ3RCLElBQUksQ0FBQyxlQUFlLEdBQUcsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxFQUFPO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxVQUFVLENBQUMsS0FBVTtRQUNuQixJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ2hDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM5QjtJQUNILENBQUM7OzhGQXRGbUIsdUJBQXVCOzBFQUF2Qix1QkFBdUI7QUFlSjtJQUFmLFlBQVksRUFBRTswREFBNEI7dUZBZjlDLHVCQUF1QjtjQUQ1QyxTQUFTO2dCQUdPLElBQUk7a0JBQWxCLEtBQUs7bUJBQUMsTUFBTTtZQWEwQixTQUFTO2tCQUEvQyxLQUFLO21CQUFDLGNBQWM7WUFHSCxLQUFLO2tCQUF0QixLQUFLO21CQUFDLFNBQVM7WUFTSSxNQUFNO2tCQUF6QixNQUFNO21CQUFDLFVBQVU7WUFrQk8sUUFBUTtrQkFBaEMsS0FBSzttQkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBjb252ZXJ0VG9Cb29sZWFuLCB1dWlkIH0gZnJvbSAnLi8uLi8uLi8uLi91dGlscy91dGlsJztcbmltcG9ydCB7IElucHV0Qm9vbGVhbiB9IGZyb20gJy4uLy4uLy4uL2RlY29yYXRvcnMnO1xuXG4vKipcbiAqIEBkZXNjcmlwdGlvblxuICpcbiAqIE8gY29tcG9uZW50ZSBgcG8tY2hlY2tib3hgIGV4aWJlIHVtYSBjYWl4YSBkZSBvcMOnw6NvIGNvbSB1bSB0ZXh0byBhbyBsYWRvLCBuYSBxdWFsIMOpIHBvc3PDrXZlbCBtYXJjYXIgZSBkZXNtYXJjYXIgYXRyYXbDqXMgdGFudG9cbiAqIG5vICpjbGljayogZG8gKm1vdXNlKiBxdWFudG8gcG9yIG1laW8gZGEgdGVjbGEgKnNwYWNlKiBxdWFuZG8gZXN0aXZlciBjb20gZm9jby5cbiAqXG4gKiBDYWRhIG9ww6fDo28gcG9kZXLDoSByZWNlYmVyIHVtIGVzdGFkbyBkZSBtYXJjYWRvLCBkZXNtYXJjYWRvLCBpbmRldGVybWluYWRvL21peGVkIGUgZGVzYWJpbGl0YWRvLCBjb21vIHRhbWLDqW0gdW1hIGHDp8OjbyBxdWUgc2Vyw6EgZGlzcGFyYWRhIHF1YW5kb1xuICogb2NvcnJlciBtdWRhbsOnYXMgZG8gdmFsb3IuXG4gKlxuICogPiBPICptb2RlbCogZGVzdGUgY29tcG9uZW50ZSBhY2VpdGFyw6EgdmFsb3JlcyBpZ3VhbCDDoCBgdHJ1ZWAsIGBmYWxzZWAgb3UgYG51bGxgIHBhcmEgcXVhbmRvIGZvciBpbmRldGVybWluYWRvL21peGVkLlxuICpcbiAqICoqQWNlc3NpYmlsaWRhZGUgdHJhdGFkYSBubyBjb21wb25lbnRlOioqXG4gKlxuICogQWxndW1hcyBkaXJldHJpemVzIGRlIGFjZXNzaWJpbGlkYWRlIGrDoSBzw6NvIHRyYXRhZGFzIG5vIGNvbXBvbmVudGUsIGludGVybmFtZW50ZSwgZSBuw6NvIHBvZGVtIHNlciBhbHRlcmFkYXMgcGVsbyBwcm9wcmlldMOhcmlvIGRvIGNvbnRlw7pkby4gU8OjbyBlbGFzOlxuICpcbiAqIC0gTyBjb21wb25lbnRlIGZvaSBkZXNlbnZvbHZpZG8gdXRpbGl6YW5kbyBjb250cm9sZXMgcGFkcsO1ZXMgSFRNTCBwYXJhIHBlcm1pdGlyIGEgaWRlbnRpZmljYcOnw6NvIGRvIG1lc21vIG5hIGludGVyZmFjZSBwb3IgdGVjbm9sb2dpYXMgYXNzaXN0aXZhcy4gW1dDQUcgNC4xLjI6IE5hbWUsIFJvbGUsIFZhbHVlXShodHRwczovL3d3dy53My5vcmcvV0FJL1dDQUcyMS9VbmRlcnN0YW5kaW5nL25hbWUtcm9sZS12YWx1ZSlcbiAqIC0gQSDDoXJlYSBkbyBmb2NvIHByZWNpc2FyIHRlciB1bWEgZXNwZXNzdXJhIGRlIHBlbG8gbWVub3MgMiBwaXhlbHMgQ1NTIGUgbyBmb2NvIG7Do28gcG9kZSBmaWNhciBlc2NvbmRpZG8gcG9yIG91dHJvcyBlbGVtZW50b3MgZGEgdGVsYS4gW1dDQUcgMi40LjEyOiBGb2N1cyBBcHBlYXJhbmNlXShodHRwczovL3d3dy53My5vcmcvV0FJL1dDQUcyMi9VbmRlcnN0YW5kaW5nL2ZvY3VzLWFwcGVhcmFuY2UtZW5oYW5jZWQpXG4gKiAtIEEgY29yIG7Do28gZGV2ZSBzZXIgbyDDum5pY28gbWVpbyBwYXJhIGRpZmVyZW5jaWFyIG8gY29tcG9uZW50ZSBkbyBzZXUgZXN0YWRvIG1hcmNhZG8gZSBkZXNtYXJjYWRvLiBbV0dBRyAxLjQuMTogVXNlIG9mIENvbG9yLCAzLjIuNDogQ29uc2lzdGVudCBJZGVudGlmaWNhdGlvbl0oaHR0cHM6Ly93d3cudzMub3JnL1dBSS9XQ0FHMjEvVW5kZXJzdGFuZGluZy91c2Utb2YtY29sb3IpXG4gKi9cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFBvQ2hlY2tib3hCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICAvKiogRGVmaW5lIG8gbm9tZSBkbyAqY2hlY2tib3gqLiAqL1xuICBASW5wdXQoJ25hbWUnKSBuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogQXBsaWNhIGZvY28gbm8gZWxlbWVudG8gYW8gc2VyIGluaWNpYWRvLlxuICAgKlxuICAgKiA+IENhc28gbWFpcyBkZSB1bSBlbGVtZW50byBzZWphIGNvbmZpZ3VyYWRvIGNvbSBlc3NhIHByb3ByaWVkYWRlLCBhcGVuYXMgbyDDumx0aW1vIGVsZW1lbnRvIGRlY2xhcmFkbyBjb20gZWxhIHRlcsOhIG8gZm9jby5cbiAgICpcbiAgICogQGRlZmF1bHQgYGZhbHNlYFxuICAgKi9cbiAgQElucHV0KCdwLWF1dG8tZm9jdXMnKSBASW5wdXRCb29sZWFuKCkgYXV0b0ZvY3VzOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIFRleHRvIGRlIGV4aWJpw6fDo28gZG8gKmNoZWNrYm94Ki4gKi9cbiAgQElucHV0KCdwLWxhYmVsJykgbGFiZWw/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogRXZlbnRvIGRpc3BhcmFkbyBxdWFuZG8gbyB2YWxvciBkbyAqY2hlY2tib3gqIGZvciBhbHRlcmFkby5cbiAgICovXG4gIEBPdXRwdXQoJ3AtY2hhbmdlJykgY2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIGNoZWNrYm94VmFsdWU6IGJvb2xlYW4gfCBudWxsIHwgc3RyaW5nO1xuICBpZCA9IHV1aWQoKTtcbiAgcHJvcGFnYXRlQ2hhbmdlOiBhbnk7XG4gIG9uVG91Y2hlZDtcblxuICBwcml2YXRlIF9kaXNhYmxlZD86IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogQG9wdGlvbmFsXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKlxuICAgKiBEZWZpbmUgbyBlc3RhZG8gZG8gKmNoZWNrYm94KiBjb21vIGRlc2FiaWxpdGFkby5cbiAgICpcbiAgICogQGRlZmF1bHQgYGZhbHNlYFxuICAgKi9cbiAgQElucHV0KCdwLWRpc2FibGVkJykgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSBjb252ZXJ0VG9Cb29sZWFuKHZhbHVlKTtcbiAgfVxuXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gIH1cblxuICBjaGFuZ2VWYWx1ZSgpIHtcbiAgICBpZiAodGhpcy5wcm9wYWdhdGVDaGFuZ2UpIHtcbiAgICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlKHRoaXMuY2hlY2tib3hWYWx1ZSk7XG4gICAgfVxuXG4gICAgdGhpcy5jaGFuZ2UuZW1pdCh0aGlzLmNoZWNrYm94VmFsdWUpO1xuICB9XG5cbiAgY2hlY2tPcHRpb24odmFsdWU6IGJvb2xlYW4gfCBudWxsIHwgc3RyaW5nKSB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICB2YWx1ZSA9PT0gJ21peGVkJyA/IHRoaXMuY2hhbmdlTW9kZWxWYWx1ZSh0cnVlKSA6IHRoaXMuY2hhbmdlTW9kZWxWYWx1ZSghdmFsdWUpO1xuICAgICAgdGhpcy5jaGFuZ2VWYWx1ZSgpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEZ1bsOnw6NvIGltcGxlbWVudGFkYSBkbyBDb250cm9sVmFsdWVBY2Nlc3NvclxuICAvLyBVc2FkYSBwYXJhIGludGVyY2VwdGFyIG9zIGVzdGFkb3MgZGUgaGFiaWxpdGFkbyB2aWEgZm9ybXMgYXBpXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbikge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgaWYgKHZhbHVlICE9PSB0aGlzLmNoZWNrYm94VmFsdWUpIHtcbiAgICAgIHRoaXMuY2hhbmdlTW9kZWxWYWx1ZSh2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGNoYW5nZU1vZGVsVmFsdWUodmFsdWU6IGJvb2xlYW4gfCBudWxsKTtcbn1cbiJdfQ==
126
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tY2hlY2tib3gtYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZmllbGQvcG8tY2hlY2tib3gvcG8tY2hlY2tib3gtYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBLE9BQU8sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFFbkQ7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCRztBQUVILE1BQU0sT0FBZ0IsdUJBQXVCO0lBRDdDO1FBS0U7Ozs7Ozs7Ozs7V0FVRztRQUNvQyxjQUFTLEdBQVksS0FBSyxDQUFDO1FBS2xFOzs7Ozs7V0FNRztRQUNpQixXQUFNLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFReEUsT0FBRSxHQUFHLElBQUksRUFBRSxDQUFDO1FBSUosY0FBUyxHQUFhLEtBQUssQ0FBQztLQXVEckM7SUFyREM7Ozs7Ozs7O09BUUc7SUFDSCxJQUF5QixRQUFRLENBQUMsS0FBYztRQUM5QyxJQUFJLENBQUMsU0FBUyxHQUFHLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDeEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDMUM7UUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUE4QjtRQUN4QyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNsQixLQUFLLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2hGLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNwQjtJQUNILENBQUM7SUFFRCw4Q0FBOEM7SUFDOUMsZ0VBQWdFO0lBQ2hFLGdCQUFnQixDQUFDLFVBQW1CO1FBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO0lBQzdCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUFPO1FBQ3RCLElBQUksQ0FBQyxlQUFlLEdBQUcsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxFQUFPO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxVQUFVLENBQUMsS0FBVTtRQUNuQixJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ2hDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM5QjtJQUNILENBQUM7OzhGQTNGbUIsdUJBQXVCOzBFQUF2Qix1QkFBdUI7QUFlSjtJQUFmLFlBQVksRUFBRTswREFBNEI7QUFrQjdCO0lBQWYsWUFBWSxFQUFFO2lFQUEyQjt1RkFqQzNDLHVCQUF1QjtjQUQ1QyxTQUFTO2dCQUdPLElBQUk7a0JBQWxCLEtBQUs7bUJBQUMsTUFBTTtZQWEwQixTQUFTO2tCQUEvQyxLQUFLO21CQUFDLGNBQWM7WUFHSCxLQUFLO2tCQUF0QixLQUFLO21CQUFDLFNBQVM7WUFTSSxNQUFNO2tCQUF6QixNQUFNO21CQUFDLFVBQVU7WUFHUSxhQUFhO2tCQUF0QyxLQUFLO21CQUFDLGlCQUFpQjtZQUdhLGdCQUFnQjtrQkFBcEQsS0FBSzttQkFBQyxZQUFZO1lBaUJNLFFBQVE7a0JBQWhDLEtBQUs7bUJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgY29udmVydFRvQm9vbGVhbiwgdXVpZCB9IGZyb20gJy4vLi4vLi4vLi4vdXRpbHMvdXRpbCc7XG5pbXBvcnQgeyBJbnB1dEJvb2xlYW4gfSBmcm9tICcuLi8uLi8uLi9kZWNvcmF0b3JzJztcblxuLyoqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBPIGNvbXBvbmVudGUgYHBvLWNoZWNrYm94YCBleGliZSB1bWEgY2FpeGEgZGUgb3DDp8OjbyBjb20gdW0gdGV4dG8gYW8gbGFkbywgbmEgcXVhbCDDqSBwb3Nzw612ZWwgbWFyY2FyIGUgZGVzbWFyY2FyIGF0cmF2w6lzIHRhbnRvXG4gKiBubyAqY2xpY2sqIGRvICptb3VzZSogcXVhbnRvIHBvciBtZWlvIGRhIHRlY2xhICpzcGFjZSogcXVhbmRvIGVzdGl2ZXIgY29tIGZvY28uXG4gKlxuICogQ2FkYSBvcMOnw6NvIHBvZGVyw6EgcmVjZWJlciB1bSBlc3RhZG8gZGUgbWFyY2FkbywgZGVzbWFyY2FkbywgaW5kZXRlcm1pbmFkby9taXhlZCBlIGRlc2FiaWxpdGFkbywgY29tbyB0YW1iw6ltIHVtYSBhw6fDo28gcXVlIHNlcsOhIGRpc3BhcmFkYSBxdWFuZG9cbiAqIG9jb3JyZXIgbXVkYW7Dp2FzIGRvIHZhbG9yLlxuICpcbiAqID4gTyAqbW9kZWwqIGRlc3RlIGNvbXBvbmVudGUgYWNlaXRhcsOhIHZhbG9yZXMgaWd1YWwgw6AgYHRydWVgLCBgZmFsc2VgIG91IGBudWxsYCBwYXJhIHF1YW5kbyBmb3IgaW5kZXRlcm1pbmFkby9taXhlZC5cbiAqXG4gKiAqKkFjZXNzaWJpbGlkYWRlIHRyYXRhZGEgbm8gY29tcG9uZW50ZToqKlxuICpcbiAqIEFsZ3VtYXMgZGlyZXRyaXplcyBkZSBhY2Vzc2liaWxpZGFkZSBqw6Egc8OjbyB0cmF0YWRhcyBubyBjb21wb25lbnRlLCBpbnRlcm5hbWVudGUsIGUgbsOjbyBwb2RlbSBzZXIgYWx0ZXJhZGFzIHBlbG8gcHJvcHJpZXTDoXJpbyBkbyBjb250ZcO6ZG8uIFPDo28gZWxhczpcbiAqXG4gKiAtIE8gY29tcG9uZW50ZSBmb2kgZGVzZW52b2x2aWRvIHV0aWxpemFuZG8gY29udHJvbGVzIHBhZHLDtWVzIEhUTUwgcGFyYSBwZXJtaXRpciBhIGlkZW50aWZpY2HDp8OjbyBkbyBtZXNtbyBuYSBpbnRlcmZhY2UgcG9yIHRlY25vbG9naWFzIGFzc2lzdGl2YXMuIFtXQ0FHIDQuMS4yOiBOYW1lLCBSb2xlLCBWYWx1ZV0oaHR0cHM6Ly93d3cudzMub3JnL1dBSS9XQ0FHMjEvVW5kZXJzdGFuZGluZy9uYW1lLXJvbGUtdmFsdWUpXG4gKiAtIEEgw6FyZWEgZG8gZm9jbyBwcmVjaXNhciB0ZXIgdW1hIGVzcGVzc3VyYSBkZSBwZWxvIG1lbm9zIDIgcGl4ZWxzIENTUyBlIG8gZm9jbyBuw6NvIHBvZGUgZmljYXIgZXNjb25kaWRvIHBvciBvdXRyb3MgZWxlbWVudG9zIGRhIHRlbGEuIFtXQ0FHIDIuNC4xMjogRm9jdXMgQXBwZWFyYW5jZV0oaHR0cHM6Ly93d3cudzMub3JnL1dBSS9XQ0FHMjIvVW5kZXJzdGFuZGluZy9mb2N1cy1hcHBlYXJhbmNlLWVuaGFuY2VkKVxuICogLSBBIGNvciBuw6NvIGRldmUgc2VyIG8gw7puaWNvIG1laW8gcGFyYSBkaWZlcmVuY2lhciBvIGNvbXBvbmVudGUgZG8gc2V1IGVzdGFkbyBtYXJjYWRvIGUgZGVzbWFyY2Fkby4gW1dHQUcgMS40LjE6IFVzZSBvZiBDb2xvciwgMy4yLjQ6IENvbnNpc3RlbnQgSWRlbnRpZmljYXRpb25dKGh0dHBzOi8vd3d3LnczLm9yZy9XQUkvV0NBRzIxL1VuZGVyc3RhbmRpbmcvdXNlLW9mLWNvbG9yKVxuICovXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBQb0NoZWNrYm94QmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgLyoqIERlZmluZSBvIG5vbWUgZG8gKmNoZWNrYm94Ki4gKi9cbiAgQElucHV0KCduYW1lJykgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIEFwbGljYSBmb2NvIG5vIGVsZW1lbnRvIGFvIHNlciBpbmljaWFkby5cbiAgICpcbiAgICogPiBDYXNvIG1haXMgZGUgdW0gZWxlbWVudG8gc2VqYSBjb25maWd1cmFkbyBjb20gZXNzYSBwcm9wcmllZGFkZSwgYXBlbmFzIG8gw7psdGltbyBlbGVtZW50byBkZWNsYXJhZG8gY29tIGVsYSB0ZXLDoSBvIGZvY28uXG4gICAqXG4gICAqIEBkZWZhdWx0IGBmYWxzZWBcbiAgICovXG4gIEBJbnB1dCgncC1hdXRvLWZvY3VzJykgQElucHV0Qm9vbGVhbigpIGF1dG9Gb2N1czogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBUZXh0byBkZSBleGliacOnw6NvIGRvICpjaGVja2JveCouICovXG4gIEBJbnB1dCgncC1sYWJlbCcpIGxhYmVsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAb3B0aW9uYWxcbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqXG4gICAqIEV2ZW50byBkaXNwYXJhZG8gcXVhbmRvIG8gdmFsb3IgZG8gKmNoZWNrYm94KiBmb3IgYWx0ZXJhZG8uXG4gICAqL1xuICBAT3V0cHV0KCdwLWNoYW5nZScpIGNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAvL3Byb3ByaWVkYWRlIGludGVybmEgcmVjZWJpZGEgZG8gY2hlY2tib3gtZ3JvdXAgcGFyYSB2ZXJpZmljYXIgc2UgbyBjaGVja2JveCBlc3TDoSBhdGl2bywgaW5hdGl2byBvdSBpbmRldGVybWluYXRlXG4gIEBJbnB1dCgncC1jaGVja2JveFZhbHVlJykgY2hlY2tib3hWYWx1ZTogYm9vbGVhbiB8IG51bGwgfCBzdHJpbmc7XG5cbiAgLy9wcm9wcmllZGFkZSBpbnRlcm5hIHJlY2ViaWRhIGRvIGNoZWNrYm94LWdyb3VwIHBhcmEgdmVyaWZpY2FyIHNlIG8gY2hlY2tib3ggw6kgcmVxdWlyZWRcbiAgQElucHV0KCdwLXJlcXVpcmVkJykgQElucHV0Qm9vbGVhbigpIGNoZWNrQm94UmVxdWlyZWQ6IGJvb2xlYW47XG5cbiAgaWQgPSB1dWlkKCk7XG4gIHByb3BhZ2F0ZUNoYW5nZTogYW55O1xuICBvblRvdWNoZWQ7XG5cbiAgcHJpdmF0ZSBfZGlzYWJsZWQ/OiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEBvcHRpb25hbFxuICAgKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICpcbiAgICogRGVmaW5lIG8gZXN0YWRvIGRvICpjaGVja2JveCogY29tbyBkZXNhYmlsaXRhZG8uXG4gICAqXG4gICAqIEBkZWZhdWx0IGBmYWxzZWBcbiAgICovXG4gIEBJbnB1dCgncC1kaXNhYmxlZCcpIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2Rpc2FibGVkID0gY29udmVydFRvQm9vbGVhbih2YWx1ZSk7XG4gIH1cblxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICB9XG5cbiAgY2hhbmdlVmFsdWUoKSB7XG4gICAgaWYgKHRoaXMucHJvcGFnYXRlQ2hhbmdlKSB7XG4gICAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLmNoZWNrYm94VmFsdWUpO1xuICAgIH1cblxuICAgIHRoaXMuY2hhbmdlLmVtaXQodGhpcy5jaGVja2JveFZhbHVlKTtcbiAgfVxuXG4gIGNoZWNrT3B0aW9uKHZhbHVlOiBib29sZWFuIHwgbnVsbCB8IHN0cmluZykge1xuICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdmFsdWUgPT09ICdtaXhlZCcgPyB0aGlzLmNoYW5nZU1vZGVsVmFsdWUodHJ1ZSkgOiB0aGlzLmNoYW5nZU1vZGVsVmFsdWUoIXZhbHVlKTtcbiAgICAgIHRoaXMuY2hhbmdlVmFsdWUoKTtcbiAgICB9XG4gIH1cblxuICAvLyBGdW7Dp8OjbyBpbXBsZW1lbnRhZGEgZG8gQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgLy8gVXNhZGEgcGFyYSBpbnRlcmNlcHRhciBvcyBlc3RhZG9zIGRlIGhhYmlsaXRhZG8gdmlhIGZvcm1zIGFwaVxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xuICAgIGlmICh2YWx1ZSAhPT0gdGhpcy5jaGVja2JveFZhbHVlKSB7XG4gICAgICB0aGlzLmNoYW5nZU1vZGVsVmFsdWUodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBjaGFuZ2VNb2RlbFZhbHVlKHZhbHVlOiBib29sZWFuIHwgbnVsbCk7XG59XG4iXX0=
@@ -3,7 +3,18 @@ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
3
  import { PoKeyCodeEnum } from './../../../enums/po-key-code.enum';
4
4
  import { PoCheckboxBaseComponent } from './po-checkbox-base.component';
5
5
  import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common";
6
7
  const _c0 = ["checkboxLabel"];
8
+ function PoCheckboxComponent_label_3_Template(rf, ctx) { if (rf & 1) {
9
+ i0.ɵɵelementStart(0, "label", 4, 5);
10
+ i0.ɵɵtext(2);
11
+ i0.ɵɵelementEnd();
12
+ } if (rf & 2) {
13
+ const ctx_r0 = i0.ɵɵnextContext();
14
+ i0.ɵɵproperty("for", ctx_r0.id);
15
+ i0.ɵɵadvance(2);
16
+ i0.ɵɵtextInterpolate1(" ", ctx_r0.label, " ");
17
+ } }
7
18
  /**
8
19
  * @docsExtends PoCheckboxBaseComponent
9
20
  *
@@ -89,23 +100,24 @@ PoCheckboxComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PoCheck
89
100
  useExisting: forwardRef(() => PoCheckboxComponent),
90
101
  multi: true
91
102
  }
92
- ]), i0.ɵɵInheritDefinitionFeature], decls: 5, vars: 8, consts: [[1, "container-po-checkbox", 3, "click", "keydown"], ["role", "checkbox", 1, "po-checkbox", 3, "id", "tabindex"], ["tabindex", "-1", 1, "po-checkbox-label", 3, "for"], ["checkboxLabel", ""]], template: function PoCheckboxComponent_Template(rf, ctx) { if (rf & 1) {
103
+ ]), i0.ɵɵInheritDefinitionFeature], decls: 4, vars: 8, consts: [[1, "container-po-checkbox", 3, "click", "keydown"], ["role", "checkbox", 1, "po-checkbox-outline", 3, "tabindex"], ["aria-label", " ", 1, "po-checkbox", 3, "id"], ["class", "po-checkbox-label", "tabindex", "-1", 3, "for", 4, "ngIf"], ["tabindex", "-1", 1, "po-checkbox-label", 3, "for"], ["checkboxLabel", ""]], template: function PoCheckboxComponent_Template(rf, ctx) { if (rf & 1) {
93
104
  i0.ɵɵelementStart(0, "div", 0);
94
105
  i0.ɵɵlistener("click", function PoCheckboxComponent_Template_div_click_0_listener() { return ctx.checkOption(ctx.checkboxValue); })("keydown", function PoCheckboxComponent_Template_div_keydown_0_listener($event) { return ctx.onKeyDown($event, ctx.checkboxValue); });
95
- i0.ɵɵelement(1, "span", 1);
96
- i0.ɵɵelementStart(2, "label", 2, 3);
97
- i0.ɵɵtext(4);
106
+ i0.ɵɵelementStart(1, "div", 1);
107
+ i0.ɵɵelement(2, "span", 2);
108
+ i0.ɵɵtemplate(3, PoCheckboxComponent_label_3_Template, 3, 2, "label", 3);
98
109
  i0.ɵɵelementEnd()();
99
110
  } if (rf & 2) {
100
111
  i0.ɵɵattribute("checked", ctx.checkboxValue);
101
112
  i0.ɵɵadvance(1);
102
- i0.ɵɵproperty("id", ctx.id)("tabindex", ctx.disabled ? -1 : 0);
103
- i0.ɵɵattribute("aria-checked", ctx.checkboxValue)("aria-label", ctx.label)("aria-disabled", ctx.disabled);
113
+ i0.ɵɵproperty("tabindex", ctx.disabled ? -1 : 0);
114
+ i0.ɵɵattribute("aria-checked", ctx.checkboxValue);
104
115
  i0.ɵɵadvance(1);
105
- i0.ɵɵproperty("for", ctx.id);
106
- i0.ɵɵadvance(2);
107
- i0.ɵɵtextInterpolate1(" ", ctx.label, " ");
108
- } }, encapsulation: 2, changeDetection: 0 });
116
+ i0.ɵɵproperty("id", ctx.id);
117
+ i0.ɵɵattribute("aria-checked", ctx.checkboxValue)("aria-disabled", ctx.disabled)("required", ctx.checkBoxRequired);
118
+ i0.ɵɵadvance(1);
119
+ i0.ɵɵproperty("ngIf", ctx.label);
120
+ } }, dependencies: [i1.NgIf], encapsulation: 2, changeDetection: 0 });
109
121
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PoCheckboxComponent, [{
110
122
  type: Component,
111
123
  args: [{ selector: 'po-checkbox', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
@@ -114,9 +126,9 @@ PoCheckboxComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PoCheck
114
126
  useExisting: forwardRef(() => PoCheckboxComponent),
115
127
  multi: true
116
128
  }
117
- ], template: "<div\n class=\"container-po-checkbox\"\n [attr.checked]=\"checkboxValue\"\n (click)=\"checkOption(checkboxValue)\"\n (keydown)=\"onKeyDown($event, checkboxValue)\"\n>\n <span\n [attr.aria-checked]=\"checkboxValue\"\n [attr.aria-label]=\"label\"\n [id]=\"id\"\n class=\"po-checkbox\"\n role=\"checkbox\"\n [attr.aria-disabled]=\"disabled\"\n [tabindex]=\"disabled ? -1 : 0\"\n >\n </span>\n\n <label #checkboxLabel [for]=\"id\" class=\"po-checkbox-label\" tabindex=\"-1\">\n {{ label }}\n </label>\n</div>\n" }]
129
+ ], template: "<div\n class=\"container-po-checkbox\"\n [attr.checked]=\"checkboxValue\"\n (click)=\"checkOption(checkboxValue)\"\n (keydown)=\"onKeyDown($event, checkboxValue)\"\n>\n <div role=\"checkbox\" class=\"po-checkbox-outline\" [tabindex]=\"disabled ? -1 : 0\" [attr.aria-checked]=\"checkboxValue\">\n <span\n [attr.aria-checked]=\"checkboxValue\"\n aria-label=\" \"\n [id]=\"id\"\n class=\"po-checkbox\"\n [attr.aria-disabled]=\"disabled\"\n [attr.required]=\"checkBoxRequired\"\n >\n </span>\n\n <label *ngIf=\"label\" #checkboxLabel [for]=\"id\" class=\"po-checkbox-label\" tabindex=\"-1\">\n {{ label }}\n </label>\n </div>\n</div>\n" }]
118
130
  }], function () { return [{ type: i0.ChangeDetectorRef }]; }, { checkboxLabel: [{
119
131
  type: ViewChild,
120
132
  args: ['checkboxLabel', { static: true }]
121
133
  }] }); })();
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9jb21wb25lbnRzL3BvLWZpZWxkL3BvLWNoZWNrYm94L3BvLWNoZWNrYm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1jaGVja2JveC9wby1jaGVja2JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxVQUFVLEVBQ1YsU0FBUyxFQUVWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUVsRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7O0FBRXZFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUJHO0FBYUgsTUFBTSxPQUFPLG1CQUFvQixTQUFRLHVCQUF1QjtJQUc5RCxZQUFvQixjQUFpQztRQUNuRCxLQUFLLEVBQUUsQ0FBQztRQURVLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtJQUVyRCxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQWtCRztJQUNILEtBQUs7UUFDSCxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ3hDLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQzFDO0lBQ0gsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNsQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDZDtJQUNILENBQUM7SUFFRCxTQUFTLENBQUMsS0FBb0IsRUFBRSxLQUF1QjtRQUNyRCxJQUFJLEtBQUssQ0FBQyxLQUFLLEtBQUssYUFBYSxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLGFBQWEsQ0FBQyxLQUFLLEVBQUU7WUFDaEYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUV4QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDeEI7SUFDSCxDQUFDO0lBRVMsZ0JBQWdCLENBQUMsS0FBOEI7UUFDdkQsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxhQUFhLEdBQUcsT0FBTyxDQUFDO1NBQzlCO2FBQU07WUFDTCxJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztTQUNuRjtRQUNELElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdEMsQ0FBQzs7c0ZBekRVLG1CQUFtQjtzRUFBbkIsbUJBQW1COzs7OzswQ0FSbkI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLG1CQUFtQixDQUFDO2dCQUNsRCxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0Y7UUM3Q0gsOEJBS0M7UUFGQyw2RkFBUyxrQ0FBMEIsSUFBQywwRkFDekIsd0NBQWdDLElBRFA7UUFHcEMsMEJBU087UUFFUCxtQ0FBeUU7UUFDdkUsWUFDRjtRQUFBLGlCQUFRLEVBQUE7O1FBakJSLDRDQUE4QjtRQU81QixlQUFTO1FBQVQsMkJBQVMsbUNBQUE7UUFGVCxpREFBbUMseUJBQUEsK0JBQUE7UUFVZixlQUFVO1FBQVYsNEJBQVU7UUFDOUIsZUFDRjtRQURFLDBDQUNGOzt1RkQ0QlcsbUJBQW1CO2NBWi9CLFNBQVM7MkJBQ0UsYUFBYSxtQkFFTix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO29CQUNUO3dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7d0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLG9CQUFvQixDQUFDO3dCQUNsRCxLQUFLLEVBQUUsSUFBSTtxQkFDWjtpQkFDRjtvRUFHNkMsYUFBYTtrQkFBMUQsU0FBUzttQkFBQyxlQUFlLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIFZpZXdDaGlsZCxcbiAgQWZ0ZXJWaWV3SW5pdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBQb0tleUNvZGVFbnVtIH0gZnJvbSAnLi8uLi8uLi8uLi9lbnVtcy9wby1rZXktY29kZS5lbnVtJztcblxuaW1wb3J0IHsgUG9DaGVja2JveEJhc2VDb21wb25lbnQgfSBmcm9tICcuL3BvLWNoZWNrYm94LWJhc2UuY29tcG9uZW50JztcblxuLyoqXG4gKiBAZG9jc0V4dGVuZHMgUG9DaGVja2JveEJhc2VDb21wb25lbnRcbiAqXG4gKiBAZXhhbXBsZVxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1jaGVja2JveC1iYXNpY1wiIHRpdGxlPVwiUE8gQ2hlY2tib3ggQmFzaWNcIj5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1jaGVja2JveC1iYXNpYy9zYW1wbGUtcG8tY2hlY2tib3gtYmFzaWMuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWNoZWNrYm94LWJhc2ljL3NhbXBsZS1wby1jaGVja2JveC1iYXNpYy5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1jaGVja2JveC1sYWJzXCIgdGl0bGU9XCJQTyBDaGVja2JveCBMYWJzXCI+XG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tY2hlY2tib3gtbGFicy9zYW1wbGUtcG8tY2hlY2tib3gtbGFicy5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tY2hlY2tib3gtbGFicy9zYW1wbGUtcG8tY2hlY2tib3gtbGFicy5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1jaGVja2JveC1hY2NlcHRhbmNlLXRlcm1cIiB0aXRsZT1cIlBPIENoZWNrYm94IC0gQWNjZXB0YW5jZSBUZXJtXCI+XG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tY2hlY2tib3gtYWNjZXB0YW5jZS10ZXJtL3NhbXBsZS1wby1jaGVja2JveC1hY2NlcHRhbmNlLXRlcm0uY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWNoZWNrYm94LWFjY2VwdGFuY2UtdGVybS9zYW1wbGUtcG8tY2hlY2tib3gtYWNjZXB0YW5jZS10ZXJtLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BvLWNoZWNrYm94JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BvLWNoZWNrYm94LmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUG9DaGVja2JveENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBQb0NoZWNrYm94Q29tcG9uZW50IGV4dGVuZHMgUG9DaGVja2JveEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQFZpZXdDaGlsZCgnY2hlY2tib3hMYWJlbCcsIHsgc3RhdGljOiB0cnVlIH0pIGNoZWNrYm94TGFiZWw6IEVsZW1lbnRSZWY7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZ1bsOnw6NvIHF1ZSBhdHJpYnVpIGZvY28gYW8gKmNoZWNrYm94Ki5cbiAgICpcbiAgICogUGFyYSB1dGlsaXrDoS1sYSDDqSBuZWNlc3PDoXJpbyBjYXB0dXJhciBhIHJlZmVyw6puY2lhIGRvIGNvbXBvbmVudGUgbm8gRE9NIGF0cmF2w6lzIGRvIGBWaWV3Q2hpbGRgLCBjb21vIHBvciBleGVtcGxvOlxuICAgKlxuICAgKiBgYGBcbiAgICogLi4uXG4gICAqIGltcG9ydCB7IFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuICAgKiBpbXBvcnQgeyBQb0NoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnQHBvLXVpL25nLWNvbXBvbmVudHMnO1xuICAgKlxuICAgKiAuLi5cbiAgICpcbiAgICogQFZpZXdDaGlsZChQb0NoZWNrYm94Q29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KSBjaGVja2JveDogUG9DaGVja2JveENvbXBvbmVudDtcbiAgICpcbiAgICogZm9jdXNDaGVja2JveCgpIHtcbiAgICogICB0aGlzLmNoZWNrYm94LmZvY3VzKCk7XG4gICAqIH1cbiAgICogYGBgXG4gICAqL1xuICBmb2N1cygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jaGVja2JveExhYmVsICYmICF0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLmNoZWNrYm94TGFiZWwubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIG9uQmx1cigpIHtcbiAgICB0aGlzLm9uVG91Y2hlZD8uKCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgaWYgKHRoaXMuYXV0b0ZvY3VzKSB7XG4gICAgICB0aGlzLmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50LCB2YWx1ZTogYm9vbGVhbiB8IHN0cmluZykge1xuICAgIGlmIChldmVudC53aGljaCA9PT0gUG9LZXlDb2RlRW51bS5zcGFjZSB8fCBldmVudC5rZXlDb2RlID09PSBQb0tleUNvZGVFbnVtLnNwYWNlKSB7XG4gICAgICB0aGlzLmNoZWNrT3B0aW9uKHZhbHVlKTtcblxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgY2hhbmdlTW9kZWxWYWx1ZSh2YWx1ZTogYm9vbGVhbiB8IG51bGwgfCBzdHJpbmcpIHtcbiAgICBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICAgIHRoaXMuY2hlY2tib3hWYWx1ZSA9ICdtaXhlZCc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2hlY2tib3hWYWx1ZSA9IHR5cGVvZiB2YWx1ZSA9PT0gJ2Jvb2xlYW4nIHx8IHZhbHVlID09PSBudWxsID8gdmFsdWUgOiBmYWxzZTtcbiAgICB9XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJjb250YWluZXItcG8tY2hlY2tib3hcIlxuICBbYXR0ci5jaGVja2VkXT1cImNoZWNrYm94VmFsdWVcIlxuICAoY2xpY2spPVwiY2hlY2tPcHRpb24oY2hlY2tib3hWYWx1ZSlcIlxuICAoa2V5ZG93bik9XCJvbktleURvd24oJGV2ZW50LCBjaGVja2JveFZhbHVlKVwiXG4+XG4gIDxzcGFuXG4gICAgW2F0dHIuYXJpYS1jaGVja2VkXT1cImNoZWNrYm94VmFsdWVcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwibGFiZWxcIlxuICAgIFtpZF09XCJpZFwiXG4gICAgY2xhc3M9XCJwby1jaGVja2JveFwiXG4gICAgcm9sZT1cImNoZWNrYm94XCJcbiAgICBbYXR0ci5hcmlhLWRpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbdGFiaW5kZXhdPVwiZGlzYWJsZWQgPyAtMSA6IDBcIlxuICA+XG4gIDwvc3Bhbj5cblxuICA8bGFiZWwgI2NoZWNrYm94TGFiZWwgW2Zvcl09XCJpZFwiIGNsYXNzPVwicG8tY2hlY2tib3gtbGFiZWxcIiB0YWJpbmRleD1cIi0xXCI+XG4gICAge3sgbGFiZWwgfX1cbiAgPC9sYWJlbD5cbjwvZGl2PlxuIl19
134
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9jb21wb25lbnRzL3BvLWZpZWxkL3BvLWNoZWNrYm94L3BvLWNoZWNrYm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1maWVsZC9wby1jaGVja2JveC9wby1jaGVja2JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxVQUFVLEVBQ1YsU0FBUyxFQUVWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUVsRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7SUNJbkUsbUNBQXVGO0lBQ3JGLFlBQ0Y7SUFBQSxpQkFBUTs7O0lBRjRCLCtCQUFVO0lBQzVDLGVBQ0Y7SUFERSw2Q0FDRjs7QURKSjs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1CRztBQWFILE1BQU0sT0FBTyxtQkFBb0IsU0FBUSx1QkFBdUI7SUFHOUQsWUFBb0IsY0FBaUM7UUFDbkQsS0FBSyxFQUFFLENBQUM7UUFEVSxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7SUFFckQsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FrQkc7SUFDSCxLQUFLO1FBQ0gsSUFBSSxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUN4QyxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUMxQztJQUNILENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbEIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ2Q7SUFDSCxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQW9CLEVBQUUsS0FBdUI7UUFDckQsSUFBSSxLQUFLLENBQUMsS0FBSyxLQUFLLGFBQWEsQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxhQUFhLENBQUMsS0FBSyxFQUFFO1lBQ2hGLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFeEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQ3hCO0lBQ0gsQ0FBQztJQUVTLGdCQUFnQixDQUFDLEtBQThCO1FBQ3ZELElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtZQUNsQixJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sQ0FBQztTQUM5QjthQUFNO1lBQ0wsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLEtBQUssS0FBSyxTQUFTLElBQUksS0FBSyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7U0FDbkY7UUFDRCxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3RDLENBQUM7O3NGQXpEVSxtQkFBbUI7c0VBQW5CLG1CQUFtQjs7Ozs7MENBUm5CO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztnQkFDbEQsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGO1FDN0NILDhCQUtDO1FBRkMsNkZBQVMsa0NBQTBCLElBQUMsMEZBQ3pCLHdDQUFnQyxJQURQO1FBR3BDLDhCQUFvSDtRQUNsSCwwQkFRTztRQUVQLHdFQUVRO1FBQ1YsaUJBQU0sRUFBQTs7UUFsQk4sNENBQThCO1FBSW1CLGVBQThCO1FBQTlCLGdEQUE4QjtRQUFDLGlEQUFtQztRQUkvRyxlQUFTO1FBQVQsMkJBQVM7UUFGVCxpREFBbUMsK0JBQUEsa0NBQUE7UUFTN0IsZUFBVztRQUFYLGdDQUFXOzt1RkQ4QlYsbUJBQW1CO2NBWi9CLFNBQVM7MkJBQ0UsYUFBYSxtQkFFTix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO29CQUNUO3dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7d0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLG9CQUFvQixDQUFDO3dCQUNsRCxLQUFLLEVBQUUsSUFBSTtxQkFDWjtpQkFDRjtvRUFHNkMsYUFBYTtrQkFBMUQsU0FBUzttQkFBQyxlQUFlLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIFZpZXdDaGlsZCxcbiAgQWZ0ZXJWaWV3SW5pdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBQb0tleUNvZGVFbnVtIH0gZnJvbSAnLi8uLi8uLi8uLi9lbnVtcy9wby1rZXktY29kZS5lbnVtJztcblxuaW1wb3J0IHsgUG9DaGVja2JveEJhc2VDb21wb25lbnQgfSBmcm9tICcuL3BvLWNoZWNrYm94LWJhc2UuY29tcG9uZW50JztcblxuLyoqXG4gKiBAZG9jc0V4dGVuZHMgUG9DaGVja2JveEJhc2VDb21wb25lbnRcbiAqXG4gKiBAZXhhbXBsZVxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1jaGVja2JveC1iYXNpY1wiIHRpdGxlPVwiUE8gQ2hlY2tib3ggQmFzaWNcIj5cbiAqICAgPGZpbGUgbmFtZT1cInNhbXBsZS1wby1jaGVja2JveC1iYXNpYy9zYW1wbGUtcG8tY2hlY2tib3gtYmFzaWMuY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWNoZWNrYm94LWJhc2ljL3NhbXBsZS1wby1jaGVja2JveC1iYXNpYy5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1jaGVja2JveC1sYWJzXCIgdGl0bGU9XCJQTyBDaGVja2JveCBMYWJzXCI+XG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tY2hlY2tib3gtbGFicy9zYW1wbGUtcG8tY2hlY2tib3gtbGFicy5jb21wb25lbnQuaHRtbFwiPiA8L2ZpbGU+XG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tY2hlY2tib3gtbGFicy9zYW1wbGUtcG8tY2hlY2tib3gtbGFicy5jb21wb25lbnQudHNcIj4gPC9maWxlPlxuICogPC9leGFtcGxlPlxuICpcbiAqIDxleGFtcGxlIG5hbWU9XCJwby1jaGVja2JveC1hY2NlcHRhbmNlLXRlcm1cIiB0aXRsZT1cIlBPIENoZWNrYm94IC0gQWNjZXB0YW5jZSBUZXJtXCI+XG4gKiAgIDxmaWxlIG5hbWU9XCJzYW1wbGUtcG8tY2hlY2tib3gtYWNjZXB0YW5jZS10ZXJtL3NhbXBsZS1wby1jaGVja2JveC1hY2NlcHRhbmNlLXRlcm0uY29tcG9uZW50Lmh0bWxcIj4gPC9maWxlPlxuICogICA8ZmlsZSBuYW1lPVwic2FtcGxlLXBvLWNoZWNrYm94LWFjY2VwdGFuY2UtdGVybS9zYW1wbGUtcG8tY2hlY2tib3gtYWNjZXB0YW5jZS10ZXJtLmNvbXBvbmVudC50c1wiPiA8L2ZpbGU+XG4gKiA8L2V4YW1wbGU+XG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BvLWNoZWNrYm94JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BvLWNoZWNrYm94LmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUG9DaGVja2JveENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBQb0NoZWNrYm94Q29tcG9uZW50IGV4dGVuZHMgUG9DaGVja2JveEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQFZpZXdDaGlsZCgnY2hlY2tib3hMYWJlbCcsIHsgc3RhdGljOiB0cnVlIH0pIGNoZWNrYm94TGFiZWw6IEVsZW1lbnRSZWY7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZ1bsOnw6NvIHF1ZSBhdHJpYnVpIGZvY28gYW8gKmNoZWNrYm94Ki5cbiAgICpcbiAgICogUGFyYSB1dGlsaXrDoS1sYSDDqSBuZWNlc3PDoXJpbyBjYXB0dXJhciBhIHJlZmVyw6puY2lhIGRvIGNvbXBvbmVudGUgbm8gRE9NIGF0cmF2w6lzIGRvIGBWaWV3Q2hpbGRgLCBjb21vIHBvciBleGVtcGxvOlxuICAgKlxuICAgKiBgYGBcbiAgICogLi4uXG4gICAqIGltcG9ydCB7IFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuICAgKiBpbXBvcnQgeyBQb0NoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnQHBvLXVpL25nLWNvbXBvbmVudHMnO1xuICAgKlxuICAgKiAuLi5cbiAgICpcbiAgICogQFZpZXdDaGlsZChQb0NoZWNrYm94Q29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KSBjaGVja2JveDogUG9DaGVja2JveENvbXBvbmVudDtcbiAgICpcbiAgICogZm9jdXNDaGVja2JveCgpIHtcbiAgICogICB0aGlzLmNoZWNrYm94LmZvY3VzKCk7XG4gICAqIH1cbiAgICogYGBgXG4gICAqL1xuICBmb2N1cygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jaGVja2JveExhYmVsICYmICF0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLmNoZWNrYm94TGFiZWwubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIG9uQmx1cigpIHtcbiAgICB0aGlzLm9uVG91Y2hlZD8uKCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgaWYgKHRoaXMuYXV0b0ZvY3VzKSB7XG4gICAgICB0aGlzLmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50LCB2YWx1ZTogYm9vbGVhbiB8IHN0cmluZykge1xuICAgIGlmIChldmVudC53aGljaCA9PT0gUG9LZXlDb2RlRW51bS5zcGFjZSB8fCBldmVudC5rZXlDb2RlID09PSBQb0tleUNvZGVFbnVtLnNwYWNlKSB7XG4gICAgICB0aGlzLmNoZWNrT3B0aW9uKHZhbHVlKTtcblxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgY2hhbmdlTW9kZWxWYWx1ZSh2YWx1ZTogYm9vbGVhbiB8IG51bGwgfCBzdHJpbmcpIHtcbiAgICBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICAgIHRoaXMuY2hlY2tib3hWYWx1ZSA9ICdtaXhlZCc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2hlY2tib3hWYWx1ZSA9IHR5cGVvZiB2YWx1ZSA9PT0gJ2Jvb2xlYW4nIHx8IHZhbHVlID09PSBudWxsID8gdmFsdWUgOiBmYWxzZTtcbiAgICB9XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJjb250YWluZXItcG8tY2hlY2tib3hcIlxuICBbYXR0ci5jaGVja2VkXT1cImNoZWNrYm94VmFsdWVcIlxuICAoY2xpY2spPVwiY2hlY2tPcHRpb24oY2hlY2tib3hWYWx1ZSlcIlxuICAoa2V5ZG93bik9XCJvbktleURvd24oJGV2ZW50LCBjaGVja2JveFZhbHVlKVwiXG4+XG4gIDxkaXYgcm9sZT1cImNoZWNrYm94XCIgY2xhc3M9XCJwby1jaGVja2JveC1vdXRsaW5lXCIgW3RhYmluZGV4XT1cImRpc2FibGVkID8gLTEgOiAwXCIgW2F0dHIuYXJpYS1jaGVja2VkXT1cImNoZWNrYm94VmFsdWVcIj5cbiAgICA8c3BhblxuICAgICAgW2F0dHIuYXJpYS1jaGVja2VkXT1cImNoZWNrYm94VmFsdWVcIlxuICAgICAgYXJpYS1sYWJlbD1cIiBcIlxuICAgICAgW2lkXT1cImlkXCJcbiAgICAgIGNsYXNzPVwicG8tY2hlY2tib3hcIlxuICAgICAgW2F0dHIuYXJpYS1kaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICBbYXR0ci5yZXF1aXJlZF09XCJjaGVja0JveFJlcXVpcmVkXCJcbiAgICA+XG4gICAgPC9zcGFuPlxuXG4gICAgPGxhYmVsICpuZ0lmPVwibGFiZWxcIiAjY2hlY2tib3hMYWJlbCBbZm9yXT1cImlkXCIgY2xhc3M9XCJwby1jaGVja2JveC1sYWJlbFwiIHRhYmluZGV4PVwiLTFcIj5cbiAgICAgIHt7IGxhYmVsIH19XG4gICAgPC9sYWJlbD5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==