novo-elements 9.0.0-next.1 → 9.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/addons/ace-editor/AceEditor.d.ts +4 -2
- package/addons/ace-editor/AceEditor.scss +1 -1
- package/addons/ckeditor/CKEditor.scss +8 -5
- package/addons/code-editor/CodeEditor.d.ts +31 -0
- package/addons/code-editor/CodeEditor.module.d.ts +9 -0
- package/addons/code-editor/CodeEditor.scss +5 -0
- package/addons/code-editor/index.d.ts +2 -0
- package/addons/code-editor/novo-elements-addons-code-editor.d.ts +5 -0
- package/addons/code-editor/package.json +10 -0
- package/addons/index.d.ts +1 -0
- package/elements/aside/aside.component.scss +1 -1
- package/elements/calendar/Calendar.module.d.ts +2 -3
- package/elements/category-dropdown/CategoryDropdown.scss +3 -1
- package/elements/checkbox/CheckList.scss +1 -1
- package/elements/checkbox/Checkbox.scss +1 -1
- package/elements/chips/Chip.scss +0 -21
- package/elements/chips/Chips.d.ts +2 -1
- package/elements/chips/Chips.scss +14 -98
- package/elements/chips/RowChips.scss +70 -0
- package/elements/common/overlay/Overlay.d.ts +1 -0
- package/elements/data-table/data-table.component.scss +3 -121
- package/elements/data-table/pagination/data-table-pagination.component.scss +124 -0
- package/elements/date-picker/DatePicker.module.d.ts +2 -2
- package/elements/date-picker/DatePickerInput.d.ts +8 -5
- package/elements/date-picker/MultiDateInput.d.ts +0 -1
- package/elements/date-picker/MultiDateInput.scss +0 -3
- package/elements/date-time-picker/DateTimePicker.module.d.ts +2 -3
- package/elements/drag-drop/drag-drop-box.d.ts +45 -0
- package/elements/drag-drop/drag-drop.module.d.ts +7 -0
- package/elements/drag-drop/index.d.ts +2 -0
- package/elements/drag-drop/novo-elements-elements-drag-drop.d.ts +5 -0
- package/elements/drag-drop/package.json +10 -0
- package/elements/dropdown/Dropdown.d.ts +7 -1
- package/elements/dropdown/Dropdown.scss +27 -2
- package/elements/field/formats/date-time-format.d.ts +2 -2
- package/elements/form/Control.d.ts +9 -6
- package/elements/form/ControlGroup.scss +2 -0
- package/elements/form/ControlTemplates.d.ts +1 -1
- package/elements/form/Form.module.d.ts +6 -6
- package/elements/form/Form.scss +25 -43
- package/elements/form/controls/code-editor/CodeEditorControl.d.ts +5 -0
- package/elements/form/controls/code-editor/index.d.ts +1 -0
- package/elements/form/controls/index.d.ts +2 -1
- package/elements/form/extras/FormExtras.module.d.ts +4 -4
- package/elements/form/extras/address/Address.scss +15 -13
- package/elements/form/extras/file/FileInput.d.ts +15 -16
- package/elements/form/extras/file/FileInput.scss +60 -30
- package/elements/form/fieldset-header.scss +17 -0
- package/elements/header/Header.scss +10 -1
- package/elements/index.d.ts +1 -0
- package/elements/list/list-item-content.scss +3 -3
- package/elements/list/list-item-header-avatar.scss +1 -1
- package/elements/list/list-item-header-title.scss +2 -1
- package/elements/modal/modal.component.scss +1 -1
- package/elements/multi-picker/_MultiPicker.scss +3 -3
- package/elements/picker/Picker.d.ts +2 -1
- package/elements/picker/Picker.scss +10 -351
- package/elements/picker/extras/base-picker-results/BasePickerResults.d.ts +1 -0
- package/elements/picker/extras/grouped-multi-picker-results/GroupedMultiPickerResults.scss +6 -6
- package/elements/picker/extras/mixed-multi-picker-results/MixedMultiPickerResults.scss +3 -3
- package/elements/picker/extras/picker-results/PickerResult.scss +12 -0
- package/elements/picker/extras/picker-results/PickerResults.scss +302 -0
- package/elements/picker/extras/skills-picker-results/SkillsSpecialtyPickerResults.scss +3 -1
- package/elements/popover/PopOver.scss +1 -1
- package/elements/query-builder/condition-builder/condition-builder.component.scss +1 -1
- package/elements/query-builder/condition-definitions/address-condition.definition.d.ts +1 -1
- package/elements/radio/Radio.scss +1 -1
- package/elements/select-search/select-search.component.scss +1 -1
- package/elements/simple-table/table.scss +3 -0
- package/elements/table/Table.module.d.ts +5 -6
- package/elements/table/Table.scss +7 -5
- package/elements/table/extras/pagination/Pagination.scss +3 -1
- package/elements/tabs/tab-content.scss +1 -1
- package/elements/tabs/tab-outlet.scss +1 -1
- package/elements/time-picker/TimePicker.d.ts +2 -3
- package/elements/time-picker/TimePicker.module.d.ts +3 -4
- package/elements/time-picker/TimePicker.scss +2 -2
- package/elements/time-picker/TimePickerInput.d.ts +5 -4
- package/elements/tip-well/TipWell.scss +0 -1
- package/esm2020/addons/ace-editor/AceEditor.mjs +10 -10
- package/esm2020/addons/ckeditor/CKEditor.mjs +10 -7
- package/esm2020/addons/code-editor/CodeEditor.mjs +129 -0
- package/esm2020/addons/code-editor/CodeEditor.module.mjs +19 -0
- package/esm2020/addons/code-editor/index.mjs +3 -0
- package/esm2020/addons/code-editor/novo-elements-addons-code-editor.mjs +5 -0
- package/esm2020/addons/index.mjs +2 -1
- package/esm2020/elements/breadcrumbs/breadcrumb-item/BreadcrumbItem.mjs +1 -1
- package/esm2020/elements/calendar/Calendar.module.mjs +5 -7
- package/esm2020/elements/calendar/calendar.component.mjs +3 -3
- package/esm2020/elements/calendar/month-select/month-select.component.mjs +3 -3
- package/esm2020/elements/calendar/month-view/month-view.component.mjs +3 -3
- package/esm2020/elements/calendar/year-select/year-select.component.mjs +3 -3
- package/esm2020/elements/category-dropdown/CategoryDropdown.mjs +5 -9
- package/esm2020/elements/chips/Chip.mjs +2 -2
- package/esm2020/elements/chips/ChipList.mjs +5 -14
- package/esm2020/elements/chips/Chips.mjs +11 -12
- package/esm2020/elements/chips/RowChips.mjs +5 -10
- package/esm2020/elements/common/overlay/Overlay.mjs +11 -5
- package/esm2020/elements/data-table/cell-headers/data-table-header-cell.component.mjs +1 -1
- package/esm2020/elements/data-table/data-table-clear-button.component.mjs +1 -1
- package/esm2020/elements/data-table/data-table.component.mjs +7 -13
- package/esm2020/elements/data-table/pagination/data-table-pagination.component.mjs +6 -8
- package/esm2020/elements/date-picker/DatePicker.module.mjs +6 -6
- package/esm2020/elements/date-picker/DatePickerInput.mjs +50 -29
- package/esm2020/elements/date-picker/DateRangeInput.mjs +10 -16
- package/esm2020/elements/date-picker/MultiDateInput.mjs +3 -19
- package/esm2020/elements/date-time-picker/DateTimePicker.module.mjs +4 -5
- package/esm2020/elements/date-time-picker/DateTimePickerInput.mjs +1 -1
- package/esm2020/elements/drag-drop/drag-drop-box.mjs +224 -0
- package/esm2020/elements/drag-drop/drag-drop.module.mjs +16 -0
- package/esm2020/elements/drag-drop/index.mjs +3 -0
- package/esm2020/elements/drag-drop/novo-elements-elements-drag-drop.mjs +5 -0
- package/esm2020/elements/dropdown/Dropdown.mjs +31 -6
- package/esm2020/elements/field/formats/date-format.mjs +5 -5
- package/esm2020/elements/field/formats/date-range-format.mjs +5 -5
- package/esm2020/elements/field/formats/date-time-format.mjs +12 -12
- package/esm2020/elements/field/formats/time-format.mjs +6 -6
- package/esm2020/elements/form/Control.mjs +20 -8
- package/esm2020/elements/form/ControlGroup.mjs +5 -5
- package/esm2020/elements/form/ControlTemplates.mjs +58 -27
- package/esm2020/elements/form/DynamicForm.mjs +9 -17
- package/esm2020/elements/form/Form.mjs +5 -9
- package/esm2020/elements/form/Form.module.mjs +12 -13
- package/esm2020/elements/form/NovoFormControl.mjs +1 -2
- package/esm2020/elements/form/controls/code-editor/CodeEditorControl.mjs +9 -0
- package/esm2020/elements/form/controls/code-editor/index.mjs +2 -0
- package/esm2020/elements/form/controls/index.mjs +3 -2
- package/esm2020/elements/form/controls/timezone/TimezoneControl.mjs +2 -2
- package/esm2020/elements/form/extras/FormExtras.module.mjs +8 -9
- package/esm2020/elements/form/extras/address/Address.mjs +4 -8
- package/esm2020/elements/form/extras/file/FileInput.mjs +38 -265
- package/esm2020/elements/header/Header.mjs +2 -2
- package/esm2020/elements/index.mjs +2 -1
- package/esm2020/elements/list/List.mjs +6 -6
- package/esm2020/elements/modal/modal.component.mjs +2 -2
- package/esm2020/elements/multi-picker/MultiPicker.mjs +5 -10
- package/esm2020/elements/picker/Picker.mjs +18 -10
- package/esm2020/elements/picker/extras/base-picker-results/BasePickerResults.mjs +4 -3
- package/esm2020/elements/picker/extras/entity-picker-results/EntityPickerResults.mjs +9 -16
- package/esm2020/elements/picker/extras/grouped-multi-picker-results/GroupedMultiPickerResults.mjs +4 -7
- package/esm2020/elements/picker/extras/mixed-multi-picker-results/MixedMultiPickerResults.mjs +4 -7
- package/esm2020/elements/picker/extras/picker-results/PickerResults.mjs +6 -10
- package/esm2020/elements/picker/extras/skills-picker-results/SkillsSpecialtyPickerResults.mjs +4 -7
- package/esm2020/elements/popover/PopOverContent.mjs +4 -7
- package/esm2020/elements/query-builder/condition-definitions/address-condition.definition.mjs +2 -2
- package/esm2020/elements/query-builder/condition-group/condition-group.component.mjs +3 -3
- package/esm2020/elements/radio/Radio.mjs +2 -2
- package/esm2020/elements/simple-table/cell-header.mjs +2 -2
- package/esm2020/elements/simple-table/cell.mjs +1 -1
- package/esm2020/elements/simple-table/table.mjs +7 -17
- package/esm2020/elements/tabbed-group-picker/TabbedGroupPicker.mjs +1 -1
- package/esm2020/elements/table/Table.mjs +6 -11
- package/esm2020/elements/table/Table.module.mjs +1 -6
- package/esm2020/elements/table/extras/dropdown-cell/DropdownCell.mjs +5 -8
- package/esm2020/elements/table/extras/pagination/Pagination.mjs +7 -8
- package/esm2020/elements/tabs/Tabs.mjs +6 -6
- package/esm2020/elements/time-picker/TimePicker.mjs +5 -6
- package/esm2020/elements/time-picker/TimePicker.module.mjs +4 -5
- package/esm2020/elements/time-picker/TimePickerInput.mjs +32 -75
- package/esm2020/elements/tip-well/TipWell.mjs +5 -5
- package/esm2020/index.mjs +1 -1
- package/esm2020/novo-elements.module.mjs +9 -3
- package/esm2020/novo-elements.providers.mjs +2 -2
- package/esm2020/services/date-format/DateFormat.mjs +153 -47
- package/esm2020/services/global/global.service.mjs +7 -1
- package/esm2020/utils/date/Date.mjs +1 -1
- package/esm2020/utils/date/index.mjs +3 -2
- package/esm2020/utils/date/timezone-support.mjs +87 -0
- package/fesm2015/novo-elements-addons-ace-editor.mjs +9 -9
- package/fesm2015/novo-elements-addons-ace-editor.mjs.map +1 -1
- package/fesm2015/novo-elements-addons-ckeditor.mjs +9 -6
- package/fesm2015/novo-elements-addons-ckeditor.mjs.map +1 -1
- package/fesm2015/novo-elements-addons-code-editor.mjs +150 -0
- package/fesm2015/novo-elements-addons-code-editor.mjs.map +1 -0
- package/fesm2015/novo-elements-addons.mjs +159 -17
- package/fesm2015/novo-elements-addons.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-breadcrumbs.mjs +1 -1
- package/fesm2015/novo-elements-elements-breadcrumbs.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-calendar.mjs +12 -13
- package/fesm2015/novo-elements-elements-calendar.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-category-dropdown.mjs +4 -8
- package/fesm2015/novo-elements-elements-category-dropdown.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-chips.mjs +20 -35
- package/fesm2015/novo-elements-elements-chips.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-common.mjs +10 -2
- package/fesm2015/novo-elements-elements-common.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-data-table.mjs +13 -21
- package/fesm2015/novo-elements-elements-data-table.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-date-picker.mjs +66 -64
- package/fesm2015/novo-elements-elements-date-picker.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-date-time-picker.mjs +4 -5
- package/fesm2015/novo-elements-elements-date-time-picker.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-drag-drop.mjs +245 -0
- package/fesm2015/novo-elements-elements-drag-drop.mjs.map +1 -0
- package/fesm2015/novo-elements-elements-dropdown.mjs +30 -5
- package/fesm2015/novo-elements-elements-dropdown.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-field.mjs +19 -19
- package/fesm2015/novo-elements-elements-field.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-form.mjs +141 -333
- package/fesm2015/novo-elements-elements-form.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-header.mjs +2 -2
- package/fesm2015/novo-elements-elements-header.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-list.mjs +6 -6
- package/fesm2015/novo-elements-elements-list.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-modal.mjs +2 -2
- package/fesm2015/novo-elements-elements-modal.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-multi-picker.mjs +4 -9
- package/fesm2015/novo-elements-elements-multi-picker.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-picker.mjs +40 -51
- package/fesm2015/novo-elements-elements-picker.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-popover.mjs +3 -6
- package/fesm2015/novo-elements-elements-popover.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-query-builder.mjs +2 -2
- package/fesm2015/novo-elements-elements-query-builder.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-radio.mjs +2 -2
- package/fesm2015/novo-elements-elements-radio.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-simple-table.mjs +8 -18
- package/fesm2015/novo-elements-elements-simple-table.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-tabbed-group-picker.mjs +1 -1
- package/fesm2015/novo-elements-elements-tabbed-group-picker.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-table.mjs +13 -26
- package/fesm2015/novo-elements-elements-table.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-tabs.mjs +5 -5
- package/fesm2015/novo-elements-elements-tabs.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-time-picker.mjs +37 -81
- package/fesm2015/novo-elements-elements-time-picker.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-tip-well.mjs +4 -4
- package/fesm2015/novo-elements-elements-tip-well.mjs.map +1 -1
- package/fesm2015/novo-elements-elements.mjs +1 -0
- package/fesm2015/novo-elements-elements.mjs.map +1 -1
- package/fesm2015/novo-elements-services.mjs +158 -46
- package/fesm2015/novo-elements-services.mjs.map +1 -1
- package/fesm2015/novo-elements-utils.mjs +88 -1
- package/fesm2015/novo-elements-utils.mjs.map +1 -1
- package/fesm2015/novo-elements.mjs +8 -2
- package/fesm2015/novo-elements.mjs.map +1 -1
- package/fesm2020/novo-elements-addons-ace-editor.mjs +9 -9
- package/fesm2020/novo-elements-addons-ace-editor.mjs.map +1 -1
- package/fesm2020/novo-elements-addons-ckeditor.mjs +9 -6
- package/fesm2020/novo-elements-addons-ckeditor.mjs.map +1 -1
- package/fesm2020/novo-elements-addons-code-editor.mjs +150 -0
- package/fesm2020/novo-elements-addons-code-editor.mjs.map +1 -0
- package/fesm2020/novo-elements-addons.mjs +159 -17
- package/fesm2020/novo-elements-addons.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-breadcrumbs.mjs +1 -1
- package/fesm2020/novo-elements-elements-breadcrumbs.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-calendar.mjs +12 -13
- package/fesm2020/novo-elements-elements-calendar.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-category-dropdown.mjs +4 -8
- package/fesm2020/novo-elements-elements-category-dropdown.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-chips.mjs +20 -35
- package/fesm2020/novo-elements-elements-chips.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-common.mjs +8 -2
- package/fesm2020/novo-elements-elements-common.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-data-table.mjs +13 -21
- package/fesm2020/novo-elements-elements-data-table.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-date-picker.mjs +64 -64
- package/fesm2020/novo-elements-elements-date-picker.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-date-time-picker.mjs +4 -5
- package/fesm2020/novo-elements-elements-date-time-picker.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-drag-drop.mjs +244 -0
- package/fesm2020/novo-elements-elements-drag-drop.mjs.map +1 -0
- package/fesm2020/novo-elements-elements-dropdown.mjs +30 -5
- package/fesm2020/novo-elements-elements-dropdown.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-field.mjs +19 -19
- package/fesm2020/novo-elements-elements-field.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-form.mjs +142 -335
- package/fesm2020/novo-elements-elements-form.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-header.mjs +2 -2
- package/fesm2020/novo-elements-elements-header.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-list.mjs +6 -6
- package/fesm2020/novo-elements-elements-list.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-modal.mjs +2 -2
- package/fesm2020/novo-elements-elements-modal.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-multi-picker.mjs +4 -9
- package/fesm2020/novo-elements-elements-multi-picker.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-picker.mjs +40 -51
- package/fesm2020/novo-elements-elements-picker.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-popover.mjs +3 -6
- package/fesm2020/novo-elements-elements-popover.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-query-builder.mjs +2 -2
- package/fesm2020/novo-elements-elements-query-builder.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-radio.mjs +2 -2
- package/fesm2020/novo-elements-elements-radio.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-simple-table.mjs +8 -18
- package/fesm2020/novo-elements-elements-simple-table.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-tabbed-group-picker.mjs +1 -1
- package/fesm2020/novo-elements-elements-tabbed-group-picker.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-table.mjs +13 -26
- package/fesm2020/novo-elements-elements-table.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-tabs.mjs +5 -5
- package/fesm2020/novo-elements-elements-tabs.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-time-picker.mjs +36 -81
- package/fesm2020/novo-elements-elements-time-picker.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-tip-well.mjs +4 -4
- package/fesm2020/novo-elements-elements-tip-well.mjs.map +1 -1
- package/fesm2020/novo-elements-elements.mjs +1 -0
- package/fesm2020/novo-elements-elements.mjs.map +1 -1
- package/fesm2020/novo-elements-services.mjs +158 -46
- package/fesm2020/novo-elements-services.mjs.map +1 -1
- package/fesm2020/novo-elements-utils.mjs +88 -1
- package/fesm2020/novo-elements-utils.mjs.map +1 -1
- package/fesm2020/novo-elements.mjs +8 -2
- package/fesm2020/novo-elements.mjs.map +1 -1
- package/novo-elements.module.d.ts +1 -1
- package/novo-elements.scss +3 -22
- package/package.json +23 -4
- package/services/date-format/DateFormat.d.ts +62 -3
- package/services/global/global.service.d.ts +3 -0
- package/styles/content/root.scss +1 -1
- package/styles/themes/light-test.scss +1 -1
- package/styles/themes/light.scss +1 -1
- package/styles/variables.scss +1 -1
- package/utils/date/index.d.ts +2 -1
- package/utils/date/timezone-support.d.ts +5 -0
|
@@ -502,13 +502,10 @@ NovoAddressElement.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
|
|
|
502
502
|
[disablePickerInput]="disabled.countryID"
|
|
503
503
|
></novo-picker>
|
|
504
504
|
</span>
|
|
505
|
-
`, isInline: true, components: [{ type: i2.NovoPickerElement, selector: "novo-picker", inputs: ["config", "placeholder", "clearValueOnSelect", "closeOnSelect", "selected", "appendToBody", "parentScrollSelector", "parentScrollAction", "containerClass", "side", "autoSelectFirstOption", "overrideElement", "maxlength", "disablePickerInput"], outputs: ["changed", "select", "focus", "blur", "typing"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.TooltipDirective, selector: "[tooltip]", inputs: ["tooltip", "tooltipPosition", "tooltipType", "tooltipSize", "tooltipBounce", "tooltipNoAnimate", "tooltipRounded", "tooltipAlways", "tooltipActive", "tooltipPreline", "removeTooltipArrow", "tooltipAutoPosition", "tooltipIsHTML"] }] });
|
|
505
|
+
`, isInline: true, styles: [":host{display:flex;flex-flow:row wrap;align-items:center}:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .street-address.invalid ::ng-deep input,:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .street-address.invalid ::ng-deep novo-select div[type=button],:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .apt.invalid ::ng-deep input,:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .apt.invalid ::ng-deep novo-select div[type=button],:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .city.invalid ::ng-deep input,:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .city.invalid ::ng-deep novo-select div[type=button],:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .state.invalid ::ng-deep input,:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .state.invalid ::ng-deep novo-select div[type=button],:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .zip.invalid ::ng-deep input,:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .zip.invalid ::ng-deep novo-select div[type=button],:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .country-name.invalid ::ng-deep input,:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .country-name.invalid ::ng-deep novo-select div[type=button]{border-bottom:1px solid #da4453!important}:host ::ng-deep novo-picker i{padding:0 5px}:host input{min-width:10px}:host .street-address,:host .apt,:host .city,:host .state,:host .zip,:host .country-name{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-end}:host .street-address input.invalid,:host .apt input.invalid,:host .city input.invalid,:host .state input.invalid,:host .zip input.invalid,:host .country-name input.invalid{border-bottom:1px solid #da4453}:host .street-address{flex:3 3 75%;padding:0 0 5px!important}:host .street-address.disabled{padding:0 2px 5px 0!important}:host .apt{flex:1 1 25%;padding:0 0 5px!important;align-self:flex-end}:host .city{flex:2 2 28%;padding:5px 0!important}:host .city.disabled{padding:5px 2px 5px 0!important}:host .state{flex:1 1 30%;align-items:center}:host .state.disabled{padding-right:2px}:host .state>div{padding:19px 29px 17px 0!important}:host .zip{flex:1 0 19.4%;padding:5px 0!important}:host .country-name{flex:4 4 100%;padding:10px 0 0!important}:host .disabled{pointer-events:none}:host .disabled i.required-indicator.bhi-circle,:host .disabled i.required-indicator.bhi-check{display:none!important}:host .disabled input{border-bottom-style:dashed!important}:host .disabled input::-moz-placeholder{color:#85939e!important}:host .disabled input::placeholder{color:#85939e!important}:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-check{border-bottom:1px solid #5f6d78}:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-check{border-bottom:1px solid #4a89dc}:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator{height:19px;width:20px;display:flex;border-bottom:1px solid #afb9c0;margin-right:0;margin-top:0;align-self:flex-end}:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator.bhi-circle{height:15px}:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator{border-bottom:1px solid #da4453}\n"], components: [{ type: i2.NovoPickerElement, selector: "novo-picker", inputs: ["config", "placeholder", "clearValueOnSelect", "closeOnSelect", "selected", "appendToBody", "parentScrollSelector", "parentScrollAction", "containerClass", "side", "autoSelectFirstOption", "overrideElement", "maxlength", "allowCustomValues", "disablePickerInput"], outputs: ["changed", "select", "focus", "blur", "typing"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.TooltipDirective, selector: "[tooltip]", inputs: ["tooltip", "tooltipPosition", "tooltipType", "tooltipSize", "tooltipBounce", "tooltipNoAnimate", "tooltipRounded", "tooltipAlways", "tooltipActive", "tooltipPreline", "removeTooltipArrow", "tooltipAutoPosition", "tooltipIsHTML"] }] });
|
|
506
506
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NovoAddressElement, decorators: [{
|
|
507
507
|
type: Component,
|
|
508
|
-
args: [{
|
|
509
|
-
selector: 'novo-address',
|
|
510
|
-
providers: [ADDRESS_VALUE_ACCESSOR],
|
|
511
|
-
template: `
|
|
508
|
+
args: [{ selector: 'novo-address', providers: [ADDRESS_VALUE_ACCESSOR], template: `
|
|
512
509
|
<span
|
|
513
510
|
*ngIf="!config?.address1?.hidden"
|
|
514
511
|
class="street-address"
|
|
@@ -655,8 +652,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
655
652
|
[disablePickerInput]="disabled.countryID"
|
|
656
653
|
></novo-picker>
|
|
657
654
|
</span>
|
|
658
|
-
`,
|
|
659
|
-
}]
|
|
655
|
+
`, styles: [":host{display:flex;flex-flow:row wrap;align-items:center}:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .street-address.invalid ::ng-deep input,:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .street-address.invalid ::ng-deep novo-select div[type=button],:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .apt.invalid ::ng-deep input,:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .apt.invalid ::ng-deep novo-select div[type=button],:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .city.invalid ::ng-deep input,:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .city.invalid ::ng-deep novo-select div[type=button],:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .state.invalid ::ng-deep input,:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .state.invalid ::ng-deep novo-select div[type=button],:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .zip.invalid ::ng-deep input,:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .zip.invalid ::ng-deep novo-select div[type=button],:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .country-name.invalid ::ng-deep input,:host.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container) .country-name.invalid ::ng-deep novo-select div[type=button]{border-bottom:1px solid #da4453!important}:host ::ng-deep novo-picker i{padding:0 5px}:host input{min-width:10px}:host .street-address,:host .apt,:host .city,:host .state,:host .zip,:host .country-name{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-end}:host .street-address input.invalid,:host .apt input.invalid,:host .city input.invalid,:host .state input.invalid,:host .zip input.invalid,:host .country-name input.invalid{border-bottom:1px solid #da4453}:host .street-address{flex:3 3 75%;padding:0 0 5px!important}:host .street-address.disabled{padding:0 2px 5px 0!important}:host .apt{flex:1 1 25%;padding:0 0 5px!important;align-self:flex-end}:host .city{flex:2 2 28%;padding:5px 0!important}:host .city.disabled{padding:5px 2px 5px 0!important}:host .state{flex:1 1 30%;align-items:center}:host .state.disabled{padding-right:2px}:host .state>div{padding:19px 29px 17px 0!important}:host .zip{flex:1 0 19.4%;padding:5px 0!important}:host .country-name{flex:4 4 100%;padding:10px 0 0!important}:host .disabled{pointer-events:none}:host .disabled i.required-indicator.bhi-circle,:host .disabled i.required-indicator.bhi-check{display:none!important}:host .disabled input{border-bottom-style:dashed!important}:host .disabled input::-moz-placeholder{color:#85939e!important}:host .disabled input::placeholder{color:#85939e!important}:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip:hover:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name:hover:not(.invalid) i.required-indicator.bhi-check{border-bottom:1px solid #5f6d78}:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .street-address.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .apt.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .city.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .state.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .zip.focus:not(.invalid) i.required-indicator.bhi-check,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .country-name.focus:not(.invalid) i.required-indicator.bhi-check{border-bottom:1px solid #4a89dc}:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator{height:19px;width:20px;display:flex;border-bottom:1px solid #afb9c0;margin-right:0;margin-top:0;align-self:flex-end}:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator.bhi-circle,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator.bhi-circle,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) i.required-indicator.bhi-circle{height:15px}:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form[layout=vertical] .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form .novo-form-container form) :host-context(div.novo-control-group-control novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator,:host-context(novo-dynamic-form .novo-form-container form) :host-context(td.novo-form-row novo-control > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container novo-address) .invalid i.required-indicator{border-bottom:1px solid #da4453}\n"] }]
|
|
660
656
|
}], ctorParameters: function () { return [{ type: i1.NovoLabelService }]; }, propDecorators: { config: [{
|
|
661
657
|
type: Input
|
|
662
658
|
}], readOnly: [{
|
|
@@ -670,4 +666,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
670
666
|
}], validityChange: [{
|
|
671
667
|
type: Output
|
|
672
668
|
}] } });
|
|
673
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWRkcmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25vdm8tZWxlbWVudHMvc3JjL2VsZW1lbnRzL2Zvcm0vZXh0cmFzL2FkZHJlc3MvQWRkcmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNO0FBQ04sT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE1BQU07QUFDTixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7QUFFOUMsc0RBQXNEO0FBQ3RELE1BQU0sc0JBQXNCLEdBQUc7SUFDN0IsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDO0lBQ2pELEtBQUssRUFBRSxJQUFJO0NBQ1osQ0FBQztBQStLRixNQUFNLE9BQU8sa0JBQWtCO0lBdUM3QixZQUFtQixNQUF3QjtRQUF4QixXQUFNLEdBQU4sTUFBTSxDQUFrQjtRQXBDbkMsY0FBUyxHQUFHLEtBQUssQ0FBQztRQWMxQixXQUFNLEdBQWUsRUFBRSxDQUFDO1FBQ3hCLGNBQVMsR0FBa0IsQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBRXpGLGtCQUFhLEdBQWEsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ25DLG1CQUFjLEdBQWEsR0FBRyxFQUFFLEdB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R1AsS0FBSztzQkFESixNQUFNO2dCQUdQLElBQUk7c0JBREgsTUFBTTtnQkFHUCxjQUFjO3NCQURiLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvLyBORzJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbi8vIEFQUFxuaW1wb3J0IHsgTm92b0xhYmVsU2VydmljZSB9IGZyb20gJ25vdm8tZWxlbWVudHMvc2VydmljZXMnO1xuaW1wb3J0IHsgQ09VTlRSSUVTLCBmaW5kQnlDb3VudHJ5SWQsIGdldFN0YXRlcyB9IGZyb20gJ25vdm8tZWxlbWVudHMvdXRpbHMnO1xuaW1wb3J0IHsgSGVscGVycyB9IGZyb20gJ25vdm8tZWxlbWVudHMvdXRpbHMnO1xuXG4vLyBWYWx1ZSBhY2Nlc3NvciBmb3IgdGhlIGNvbXBvbmVudCAoc3VwcG9ydHMgbmdNb2RlbClcbmNvbnN0IEFERFJFU1NfVkFMVUVfQUNDRVNTT1IgPSB7XG4gIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBOb3ZvQWRkcmVzc0VsZW1lbnQpLFxuICBtdWx0aTogdHJ1ZSxcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgTm92b0FkZHJlc3NTdWJmaWVsZENvbmZpZyB7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIHJlcXVpcmVkOiBib29sZWFuO1xuICBtYXhsZW5ndGg6IG51bWJlcjtcbiAgcGlja2VyQ29uZmlnPzogYW55O1xuICBoaWRkZW46IGJvb2xlYW47XG4gIHVwZGF0ZWQ/OiBib29sZWFuO1xuICByZWFkT25seT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTm92b0FkZHJlc3NDb25maWcge1xuICByZXF1aXJlZD86IGJvb2xlYW47XG4gIHJlYWRPbmx5PzogYm9vbGVhbjtcbiAgYWRkcmVzczE/OiBOb3ZvQWRkcmVzc1N1YmZpZWxkQ29uZmlnO1xuICBhZGRyZXNzMj86IE5vdm9BZGRyZXNzU3ViZmllbGRDb25maWc7XG4gIGNpdHk/OiBOb3ZvQWRkcmVzc1N1YmZpZWxkQ29uZmlnO1xuICBzdGF0ZT86IE5vdm9BZGRyZXNzU3ViZmllbGRDb25maWc7XG4gIHppcD86IE5vdm9BZGRyZXNzU3ViZmllbGRDb25maWc7XG4gIGNvdW50cnlJRD86IE5vdm9BZGRyZXNzU3ViZmllbGRDb25maWc7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25vdm8tYWRkcmVzcycsXG4gIHByb3ZpZGVyczogW0FERFJFU1NfVkFMVUVfQUNDRVNTT1JdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxzcGFuXG4gICAgICAqbmdJZj1cIiFjb25maWc/LmFkZHJlc3MxPy5oaWRkZW5cIlxuICAgICAgY2xhc3M9XCJzdHJlZXQtYWRkcmVzc1wiXG4gICAgICBbY2xhc3MuaW52YWxpZF09XCJpbnZhbGlkLmFkZHJlc3MxXCJcbiAgICAgIFtjbGFzcy5mb2N1c109XCJmb2N1c2VkLmFkZHJlc3MxXCJcbiAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJkaXNhYmxlZC5hZGRyZXNzMVwiXG4gICAgPlxuICAgICAgPGlcbiAgICAgICAgKm5nSWY9XCJjb25maWcuYWRkcmVzczEucmVxdWlyZWRcIlxuICAgICAgICBjbGFzcz1cInJlcXVpcmVkLWluZGljYXRvciBhZGRyZXNzMVwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgJ2JoaS1jaXJjbGUnOiAhdmFsaWQuYWRkcmVzczEsICdiaGktY2hlY2snOiB2YWxpZC5hZGRyZXNzMSB9XCJcbiAgICAgID5cbiAgICAgIDwvaT5cbiAgICAgIDxpbnB1dFxuICAgICAgICBbY2xhc3MubWF4bGVuZ3RoLWVycm9yXT1cImludmFsaWRNYXhsZW5ndGguYWRkcmVzczFcIlxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIGlkPVwiYWRkcmVzczFcIlxuICAgICAgICBuYW1lPVwiYWRkcmVzczFcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiY29uZmlnLmFkZHJlc3MxLmxhYmVsXCJcbiAgICAgICAgW21heGxlbmd0aF09XCJjb25maWc/LmFkZHJlc3MxPy5tYXhsZW5ndGhcIlxuICAgICAgICBhdXRvY29tcGxldGU9XCJzaGlwcGluZyBzdHJlZXQtYWRkcmVzcyBhZGRyZXNzLWxpbmUtMVwiXG4gICAgICAgIFsobmdNb2RlbCldPVwibW9kZWwuYWRkcmVzczFcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ1cGRhdGVDb250cm9sKClcIlxuICAgICAgICAoZm9jdXMpPVwiaXNGb2N1c2VkKCRldmVudCwgJ2FkZHJlc3MxJylcIlxuICAgICAgICAoYmx1cik9XCJpc0JsdXJyZWQoJGV2ZW50LCAnYWRkcmVzczEnKVwiXG4gICAgICAgIChpbnB1dCk9XCJvbklucHV0KCRldmVudCwgJ2FkZHJlc3MxJylcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQuYWRkcmVzczFcIlxuICAgICAgLz5cbiAgICA8L3NwYW4+XG4gICAgPHNwYW5cbiAgICAgICpuZ0lmPVwiIWNvbmZpZz8uYWRkcmVzczI/LmhpZGRlblwiXG4gICAgICBjbGFzcz1cImFwdCBzdWl0ZVwiXG4gICAgICBbY2xhc3MuaW52YWxpZF09XCJpbnZhbGlkLmFkZHJlc3MyXCJcbiAgICAgIFtjbGFzcy5mb2N1c109XCJmb2N1c2VkLmFkZHJlc3MyXCJcbiAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJkaXNhYmxlZC5hZGRyZXNzMlwiXG4gICAgPlxuICAgICAgPGlcbiAgICAgICAgKm5nSWY9XCJjb25maWcuYWRkcmVzczIucmVxdWlyZWRcIlxuICAgICAgICBjbGFzcz1cInJlcXVpcmVkLWluZGljYXRvciBhZGRyZXNzMlwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgJ2JoaS1jaXJjbGUnOiAhdmFsaWQuYWRkcmVzczIsICdiaGktY2hlY2snOiB2YWxpZC5hZGRyZXNzMiB9XCJcbiAgICAgID5cbiAgICAgIDwvaT5cbiAgICAgIDxpbnB1dFxuICAgICAgICBbY2xhc3MubWF4bGVuZ3RoLWVycm9yXT1cImludmFsaWRNYXhsZW5ndGguYWRkcmVzczJcIlxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIGlkPVwiYWRkcmVzczJcIlxuICAgICAgICBuYW1lPVwiYWRkcmVzczJcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiY29uZmlnLmFkZHJlc3MyLmxhYmVsXCJcbiAgICAgICAgW21heGxlbmd0aF09XCJjb25maWc/LmFkZHJlc3MyPy5tYXhsZW5ndGhcIlxuICAgICAgICBhdXRvY29tcGxldGU9XCJzaGlwcGluZyBhZGRyZXNzLWxpbmUtMlwiXG4gICAgICAgIFsobmdNb2RlbCldPVwibW9kZWwuYWRkcmVzczJcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ1cGRhdGVDb250cm9sKClcIlxuICAgICAgICAoZm9jdXMpPVwiaXNGb2N1c2VkKCRldmVudCwgJ2FkZHJlc3MyJylcIlxuICAgICAgICAoYmx1cik9XCJpc0JsdXJyZWQoJGV2ZW50LCAnYWRkcmVzczInKVwiXG4gICAgICAgIChpbnB1dCk9XCJvbklucHV0KCRldmVudCwgJ2FkZHJlc3MyJylcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQuYWRkcmVzczJcIlxuICAgICAgLz5cbiAgICA8L3NwYW4+XG4gICAgPHNwYW5cbiAgICAgICpuZ0lmPVwiIWNvbmZpZz8uY2l0eT8uaGlkZGVuXCJcbiAgICAgIGNsYXNzPVwiY2l0eSBsb2NhbGl0eVwiXG4gICAgICBbY2xhc3MuaW52YWxpZF09XCJpbnZhbGlkLmNpdHlcIlxuICAgICAgW2NsYXNzLmZvY3VzXT1cImZvY3VzZWQuY2l0eVwiXG4gICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiZGlzYWJsZWQuY2l0eVwiXG4gICAgPlxuICAgICAgPGkgKm5nSWY9XCJjb25maWcuY2l0eS5yZXF1aXJlZFwiIGNsYXNzPVwicmVxdWlyZWQtaW5kaWNhdG9yXCIgW25nQ2xhc3NdPVwieyAnYmhpLWNpcmNsZSc6ICF2YWxpZC5jaXR5LCAnYmhpLWNoZWNrJzogdmFsaWQuY2l0eSB9XCI+IDwvaT5cbiAgICAgIDxpbnB1dFxuICAgICAgICBbY2xhc3MubWF4bGVuZ3RoLWVycm9yXT1cImludmFsaWRNYXhsZW5ndGguY2l0eVwiXG4gICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgaWQ9XCJjaXR5XCJcbiAgICAgICAgbmFtZT1cImNpdHlcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiY29uZmlnLmNpdHkubGFiZWxcIlxuICAgICAgICBhdXRvY29tcGxldGU9XCJzaGlwcGluZyBjaXR5IGxvY2FsaXR5XCJcbiAgICAgICAgW21heGxlbmd0aF09XCJjb25maWc/LmNpdHk/Lm1heGxlbmd0aFwiXG4gICAgICAgIFsobmdNb2RlbCldPVwibW9kZWwuY2l0eVwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInVwZGF0ZUNvbnRyb2woKVwiXG4gICAgICAgIChmb2N1cyk9XCJpc0ZvY3VzZWQoJGV2ZW50LCAnY2l0eScpXCJcbiAgICAgICAgKGJsdXIpPVwiaXNCbHVycmVkKCRldmVudCwgJ2NpdHknKVwiXG4gICAgICAgIChpbnB1dCk9XCJvbklucHV0KCRldmVudCwgJ2NpdHknKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZC5jaXR5XCJcbiAgICAgIC8+XG4gICAgPC9zcGFuPlxuICAgIDxzcGFuXG4gICAgICAqbmdJZj1cIiFjb25maWc/LnN0YXRlPy5oaWRkZW5cIlxuICAgICAgY2xhc3M9XCJzdGF0ZSByZWdpb25cIlxuICAgICAgW2NsYXNzLmludmFsaWRdPVwiaW52YWxpZC5zdGF0ZVwiXG4gICAgICBbY2xhc3MuZm9jdXNdPVwiZm9jdXNlZC5zdGF0ZVwiXG4gICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiZGlzYWJsZWQuc3RhdGVcIlxuICAgICAgW3Rvb2x0aXBdPVwidG9vbHRpcC5zdGF0ZVwiXG4gICAgPlxuICAgICAgPGkgKm5nSWY9XCJjb25maWcuc3RhdGUucmVxdWlyZWRcIiBjbGFzcz1cInJlcXVpcmVkLWluZGljYXRvclwiIFtuZ0NsYXNzXT1cInsgJ2JoaS1jaXJjbGUnOiAhdmFsaWQuc3RhdGUsICdiaGktY2hlY2snOiB2YWxpZC5zdGF0ZSB9XCI+IDwvaT5cbiAgICAgIDxub3ZvLXBpY2tlclxuICAgICAgICBbY29uZmlnXT1cImNvbmZpZz8uc3RhdGU/LnBpY2tlckNvbmZpZ1wiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJjb25maWc/LnN0YXRlPy5sYWJlbFwiXG4gICAgICAgIChjaGFuZ2VkKT1cIm9uU3RhdGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIGF1dG9jb21wbGV0ZT1cInNoaXBwaW5nIHJlZ2lvblwiXG4gICAgICAgIFsobmdNb2RlbCldPVwibW9kZWwuc3RhdGVcIlxuICAgICAgICBbZGlzYWJsZVBpY2tlcklucHV0XT1cImRpc2FibGVkLnN0YXRlXCJcbiAgICAgID48L25vdm8tcGlja2VyPlxuICAgIDwvc3Bhbj5cbiAgICA8c3BhblxuICAgICAgKm5nSWY9XCIhY29uZmlnPy56aXA/LmhpZGRlblwiXG4gICAgICBjbGFzcz1cInppcCBwb3N0YWwtY29kZVwiXG4gICAgICBbY2xhc3MuaW52YWxpZF09XCJpbnZhbGlkLnppcFwiXG4gICAgICBbY2xhc3MuZm9jdXNdPVwiZm9jdXNlZC56aXBcIlxuICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImRpc2FibGVkLnppcFwiXG4gICAgPlxuICAgICAgPGkgKm5nSWY9XCJjb25maWcuemlwLnJlcXVpcmVkXCIgY2xhc3M9XCJyZXF1aXJlZC1pbmRpY2F0b3JcIiBbbmdDbGFzc109XCJ7ICdiaGktY2lyY2xlJzogIXZhbGlkLnppcCwgJ2JoaS1jaGVjayc6IHZhbGlkLnppcCB9XCI+IDwvaT5cbiAgICAgIDxpbnB1dFxuICAgICAgICBbY2xhc3MubWF4bGVuZ3RoLWVycm9yXT1cImludmFsaWRNYXhsZW5ndGguemlwXCJcbiAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICBpZD1cInppcFwiXG4gICAgICAgIG5hbWU9XCJ6aXBcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiY29uZmlnLnppcC5sYWJlbFwiXG4gICAgICAgIGF1dG9jb21wbGV0ZT1cInNoaXBwaW5nIHBvc3RhbC1jb2RlXCJcbiAgICAgICAgW21heGxlbmd0aF09XCJjb25maWc/LnppcD8ubWF4bGVuZ3RoXCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJtb2RlbC56aXBcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ1cGRhdGVDb250cm9sKClcIlxuICAgICAgICAoZm9jdXMpPVwiaXNGb2N1c2VkKCRldmVudCwgJ3ppcCcpXCJcbiAgICAgICAgKGJsdXIpPVwiaXNCbHVycmVkKCRldmVudCwgJ3ppcCcpXCJcbiAgICAgICAgKGlucHV0KT1cIm9uSW5wdXQoJGV2ZW50LCAnemlwJylcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQuemlwXCJcbiAgICAgIC8+XG4gICAgPC9zcGFuPlxuICAgIDxzcGFuXG4gICAgICAqbmdJZj1cIiFjb25maWc/LmNvdW50cnlJRD8uaGlkZGVuXCJcbiAgICAgIGNsYXNzPVwiY291bnRyeS1uYW1lXCJcbiAgICAgIFtjbGFzcy5pbnZhbGlkXT1cImludmFsaWQuY291bnRyeUlEXCJcbiAgICAgIFtjbGFzcy5mb2N1c109XCJmb2N1c2VkLmNvdW50cnlJRFwiXG4gICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiZGlzYWJsZWQuY291bnRyeUlEXCJcbiAgICA+XG4gICAgICA8aVxuICAgICAgICAqbmdJZj1cImNvbmZpZy5jb3VudHJ5SUQucmVxdWlyZWRcIlxuICAgICAgICBjbGFzcz1cInJlcXVpcmVkLWluZGljYXRvclwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgJ2JoaS1jaXJjbGUnOiAhdmFsaWQuY291bnRyeUlELCAnYmhpLWNoZWNrJzogdmFsaWQuY291bnRyeUlEIH1cIlxuICAgICAgPlxuICAgICAgPC9pPlxuICAgICAgPG5vdm8tcGlja2VyXG4gICAgICAgIFtjb25maWddPVwiY29uZmlnPy5jb3VudHJ5SUQ/LnBpY2tlckNvbmZpZ1wiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJjb25maWcuY291bnRyeUlELmxhYmVsXCJcbiAgICAgICAgKGNoYW5nZWQpPVwib25Db3VudHJ5Q2hhbmdlKCRldmVudClcIlxuICAgICAgICBhdXRvY29tcGxldGU9XCJzaGlwcGluZyBjb3VudHJ5XCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJtb2RlbC5jb3VudHJ5SURcIlxuICAgICAgICBbZGlzYWJsZVBpY2tlcklucHV0XT1cImRpc2FibGVkLmNvdW50cnlJRFwiXG4gICAgICA+PC9ub3ZvLXBpY2tlcj5cbiAgICA8L3NwYW4+XG4gIGAsXG59KVxuZXhwb3J0IGNsYXNzIE5vdm9BZGRyZXNzRWxlbWVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQge1xuICBASW5wdXQoKVxuICBjb25maWc6IE5vdm9BZGRyZXNzQ29uZmlnO1xuICBwcml2YXRlIF9yZWFkT25seSA9IGZhbHNlO1xuICBASW5wdXQoKVxuICBzZXQgcmVhZE9ubHkocmVhZE9ubHk6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9yZWFkT25seSA9IHJlYWRPbmx5O1xuICAgIHRoaXMuZmllbGRMaXN0LmZvckVhY2goKGZpZWxkOiBzdHJpbmcpID0+IHtcbiAgICAgIHRoaXMuZGlzYWJsZWRbZmllbGRdID0gdGhpcy5fcmVhZE9ubHk7XG4gICAgfSk7XG4gICAgaWYgKHRoaXMubW9kZWwpIHtcbiAgICAgIHRoaXMudXBkYXRlU3RhdGVzKCk7XG4gICAgfVxuICB9XG4gIGdldCByZWFkT25seSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcmVhZE9ubHk7XG4gIH1cbiAgc3RhdGVzOiBBcnJheTxhbnk+ID0gW107XG4gIGZpZWxkTGlzdDogQXJyYXk8c3RyaW5nPiA9IFsnYWRkcmVzczEnLCAnYWRkcmVzczInLCAnY2l0eScsICdzdGF0ZScsICd6aXAnLCAnY291bnRyeUlEJ107XG4gIG1vZGVsOiBhbnk7XG4gIG9uTW9kZWxDaGFuZ2U6IEZ1bmN0aW9uID0gKCkgPT4ge307XG4gIG9uTW9kZWxUb3VjaGVkOiBGdW5jdGlvbiA9ICgpID0+IHt9O1xuICBmb2N1c2VkOiBhbnkgPSB7fTtcbiAgaW52YWxpZDogYW55ID0ge307XG4gIGRpc2FibGVkOiBhbnkgPSB7fTtcbiAgaW52YWxpZE1heGxlbmd0aDogYW55ID0ge307XG4gIHZhbGlkOiBhbnkgPSB7fTtcbiAgc3RhdGVPcHRpb25zOiBhbnk7XG4gIHRvb2x0aXA6IGFueSA9IHt9O1xuICBpbml0Q29tcGxldGUgPSBmYWxzZTtcbiAgQE91dHB1dCgpXG4gIGNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKVxuICBmb2N1czogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKVxuICBibHVyOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpXG4gIHZhbGlkaXR5Q2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgbGFiZWxzOiBOb3ZvTGFiZWxTZXJ2aWNlKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICghdGhpcy5jb25maWcpIHtcbiAgICAgIHRoaXMuY29uZmlnID0ge307XG4gICAgfVxuICAgIHRoaXMuaW5pdENvbmZpZygpO1xuICAgIGlmICh0aGlzLm1vZGVsKSB7XG4gICAgICB0aGlzLndyaXRlVmFsdWUodGhpcy5tb2RlbCk7XG4gICAgICB0aGlzLnVwZGF0ZUNvbnRyb2woKTtcbiAgICB9IGVsc2UgaWYgKCF0aGlzLm1vZGVsKSB7XG4gICAgICB0aGlzLm1vZGVsID0ge307XG4gICAgfVxuICAgIGlmIChIZWxwZXJzLmlzQmxhbmsodGhpcy5tb2RlbC5jb3VudHJ5SUQpKSB7XG4gICAgICB0aGlzLnVwZGF0ZVN0YXRlcygpO1xuICAgIH1cbiAgfVxuXG4gIGluaXRDb25maWcoKTogdm9pZCB7XG4gICAgdGhpcy5maWVsZExpc3QuZm9yRWFjaCgoZmllbGQ6IHN0cmluZykgPT4ge1xuICAgICAgaWYgKCF0aGlzLmNvbmZpZy5oYXNPd25Qcm9wZXJ0eShmaWVsZCkpIHtcbiAgICAgICAgdGhpcy5jb25maWdbZmllbGRdID0ge1xuICAgICAgICAgIGhpZGRlbjogdHJ1ZSxcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICAgIGlmICghdGhpcy5jb25maWdbZmllbGRdLmhhc093blByb3BlcnR5KCdsYWJlbCcpKSB7XG4gICAgICAgIHRoaXMuY29uZmlnW2ZpZWxkXS5sYWJlbCA9IHRoaXMubGFiZWxzW2ZpZWxkXTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmNvbmZpZy5yZXF1aXJlZCkge1xuICAgICAgICB0aGlzLmNvbmZpZ1tmaWVsZF0ucmVxdWlyZWQgPSB0cnVlO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuY29uZmlnW2ZpZWxkXS5yZWFkT25seSB8fCB0aGlzLmNvbmZpZy5yZWFkT25seSkge1xuICAgICAgICB0aGlzLmNvbmZpZ1tmaWVsZF0ucmVhZE9ubHkgPSB0cnVlO1xuICAgICAgICB0aGlzLmRpc2FibGVkW2ZpZWxkXSA9IHRydWU7XG4gICAgICB9XG4gICAgICBpZiAoZmllbGQgPT09ICdjb3VudHJ5SUQnKSB7XG4gICAgICAgIGlmICghdGhpcy5jb25maWdbZmllbGRdLnBpY2tlckNvbmZpZykge1xuICAgICAgICAgIHRoaXMuY29uZmlnLmNvdW50cnlJRC5waWNrZXJDb25maWcgPSB0aGlzLmdldERlZmF1bHRDb3VudHJ5Q29uZmlnKCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jb25maWdbZmllbGRdLnBpY2tlckNvbmZpZy5kZWZhdWx0T3B0aW9ucyA9IHRoaXMuY29uZmlnLmNvdW50cnlJRC5waWNrZXJDb25maWcub3B0aW9ucztcbiAgICAgIH1cbiAgICAgIGlmIChmaWVsZCA9PT0gJ3N0YXRlJykge1xuICAgICAgICBpZiAoIXRoaXMuY29uZmlnW2ZpZWxkXS5waWNrZXJDb25maWcpIHtcbiAgICAgICAgICB0aGlzLmNvbmZpZy5zdGF0ZS5waWNrZXJDb25maWcgPSB0aGlzLmdldERlZmF1bHRTdGF0ZUNvbmZpZygpO1xuICAgICAgICAgIHRoaXMuY29uZmlnW2ZpZWxkXS5waWNrZXJDb25maWcuZGVmYXVsdE9wdGlvbnMgPSB0aGlzLmNvbmZpZ1tmaWVsZF0ucGlja2VyQ29uZmlnLm9wdGlvbnM7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zdGF0ZU9wdGlvbnMgPSB0aGlzLmNvbmZpZ1tmaWVsZF0ucGlja2VyQ29uZmlnLm9wdGlvbnM7XG4gICAgICAgIHRoaXMuY29uZmlnW2ZpZWxkXS5waWNrZXJDb25maWcub3B0aW9ucyA9IChxdWVyeSA9ICcnKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuc3RhdGVPcHRpb25zKHF1ZXJ5LCB0aGlzLm1vZGVsLmNvdW50cnlJRCk7XG4gICAgICAgIH07XG4gICAgICAgIHRoaXMuY29uZmlnW2ZpZWxkXS5waWNrZXJDb25maWcuZGVmYXVsdE9wdGlvbnMgPSB0aGlzLnN0YXRlT3B0aW9ucztcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGlzVmFsaWQoZmllbGQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGxldCB2YWxpZCA9IHRydWU7XG4gICAgaWYgKFxuICAgICAgKCh0aGlzLmNvbmZpZ1tmaWVsZF0ucmVxdWlyZWQgJiYgKEhlbHBlcnMuaXNCbGFuayh0aGlzLm1vZGVsW2ZpZWxkXSkgfHwgSGVscGVycy5pc0VtcHR5KHRoaXMubW9kZWxbZmllbGRdKSkpIHx8XG4gICAgICAgICF0aGlzLmNvbmZpZ1tmaWVsZF0ucmVxdWlyZWQpICYmXG4gICAgICAhKGZpZWxkID09PSAnY291bnRyeUlEJyAmJiB0aGlzLmNvbmZpZ1tmaWVsZF0ucmVxdWlyZWQgJiYgIUhlbHBlcnMuaXNCbGFuayh0aGlzLm1vZGVsLmNvdW50cnlJRCkpICYmXG4gICAgICAhKFxuICAgICAgICBmaWVsZCA9PT0gJ3N0YXRlJyAmJlxuICAgICAgICB0aGlzLmNvbmZpZ1tmaWVsZF0ucmVxdWlyZWQgJiZcbiAgICAgICAgKCFIZWxwZXJzLmlzRW1wdHkodGhpcy5tb2RlbC5zdGF0ZSkgfHxcbiAgICAgICAgICAoKEhlbHBlcnMuaXNCbGFuayh0aGlzLm1vZGVsLnN0YXRlKSB8fCBIZWxwZXJzLmlzRW1wdHkodGhpcy5tb2RlbC5zdGF0ZSkpICYmXG4gICAgICAgICAgICAhSGVscGVycy5pc0JsYW5rKHRoaXMubW9kZWwuY291bnRyeU5hbWUpICYmXG4gICAgICAgICAgICB0aGlzLmNvbmZpZy5zdGF0ZS5waWNrZXJDb25maWcgJiZcbiAgICAgICAgICAgIHRoaXMuY29uZmlnLnN0YXRlLnBpY2tlckNvbmZpZy5kZWZhdWx0T3B0aW9ucyAmJlxuICAgICAgICAgICAgdGhpcy5jb25maWcuc3RhdGUucGlja2VyQ29uZmlnLmRlZmF1bHRPcHRpb25zLmxlbmd0aCA9PT0gMCkpXG4gICAgICApXG4gICAgKSB7XG4gICAgICB2YWxpZCA9IGZhbHNlO1xuICAgIH0gZWxzZSBpZiAoXG4gICAgICAhSGVscGVycy5pc0VtcHR5KHRoaXMubW9kZWxbZmllbGRdKSAmJlxuICAgICAgIUhlbHBlcnMuaXNCbGFuayh0aGlzLmNvbmZpZ1tmaWVsZF0ubWF4bGVuZ3RoKSAmJlxuICAgICAgdGhpcy5jb25maWdbZmllbGRdLm1heGxlbmd0aCA8IHRoaXMubW9kZWxbZmllbGRdLmxlbmd0aFxuICAgICkge1xuICAgICAgdmFsaWQgPSBmYWxzZTtcbiAgICB9XG4gICAgdGhpcy52YWxpZFtmaWVsZF0gPSB2YWxpZDtcbiAgfVxuXG4gIGlzSW52YWxpZChmaWVsZDogc3RyaW5nKTogdm9pZCB7XG4gICAgbGV0IGludmFsaWQgPSBmYWxzZTtcbiAgICBsZXQgaW52YWxpZE1heGxlbmd0aCA9IGZhbHNlO1xuICAgIGlmIChcbiAgICAgIChmaWVsZCAhPT0gJ2NvdW50cnlJRCcgJiZcbiAgICAgICAgZmllbGQgIT09ICdzdGF0ZScgJiZcbiAgICAgICAgdGhpcy5jb25maWdbZmllbGRdPy5yZXF1aXJlZCAmJlxuICAgICAgICBIZWxwZXJzLmlzRW1wdHkodGhpcy5tb2RlbFtmaWVsZF0pICYmXG4gICAgICAgICFIZWxwZXJzLmlzQmxhbmsodGhpcy5tb2RlbFtmaWVsZF0pKSB8fFxuICAgICAgKGZpZWxkID09PSAnY291bnRyeUlEJyAmJiB0aGlzLmNvbmZpZ1tmaWVsZF0/LnJlcXVpcmVkICYmIEhlbHBlcnMuaXNCbGFuayh0aGlzLm1vZGVsLmNvdW50cnlOYW1lKSAmJiB0aGlzLmNvbmZpZ1tmaWVsZF0/LnVwZGF0ZWQpIHx8XG4gICAgICAoZmllbGQgPT09ICdzdGF0ZScgJiZcbiAgICAgICAgdGhpcy5jb25maWdbZmllbGRdPy5yZXF1aXJlZCAmJlxuICAgICAgICAoSGVscGVycy5pc0JsYW5rKHRoaXMubW9kZWwuc3RhdGUpIHx8IEhlbHBlcnMuaXNFbXB0eSh0aGlzLm1vZGVsLnN0YXRlKSkgJiZcbiAgICAgICAgIUhlbHBlcnMuaXNCbGFuayh0aGlzLm1vZGVsLmNvdW50cnlJRCkgJiZcbiAgICAgICAgdGhpcy5jb25maWdbZmllbGRdPy51cGRhdGVkICYmXG4gICAgICAgIHRoaXMuY29uZmlnLnN0YXRlLnBpY2tlckNvbmZpZyAmJlxuICAgICAgICB0aGlzLmNvbmZpZy5zdGF0ZS5waWNrZXJDb25maWcuZGVmYXVsdE9wdGlvbnMgJiZcbiAgICAgICAgdGhpcy5jb25maWcuc3RhdGUucGlja2VyQ29uZmlnLmRlZmF1bHRPcHRpb25zLmxlbmd0aCA+IDApXG4gICAgKSB7XG4gICAgICBpbnZhbGlkID0gdHJ1ZTtcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgIUhlbHBlcnMuaXNFbXB0eSh0aGlzLm1vZGVsW2ZpZWxkXSkgJiZcbiAgICAgICFIZWxwZXJzLmlzQmxhbmsodGhpcy5jb25maWdbZmllbGRdPy5tYXhsZW5ndGgpICYmXG4gICAgICB0aGlzLmNvbmZpZ1tmaWVsZF0/Lm1heGxlbmd0aCA8IHRoaXMubW9kZWxbZmllbGRdLmxlbmd0aFxuICAgICkge1xuICAgICAgaW52YWxpZCA9IHRydWU7XG4gICAgICBpbnZhbGlkTWF4bGVuZ3RoID0gdHJ1ZTtcbiAgICB9XG4gICAgdGhpcy5pbnZhbGlkW2ZpZWxkXSA9IGludmFsaWQ7XG4gICAgdGhpcy5pbnZhbGlkTWF4bGVuZ3RoW2ZpZWxkXSA9IGludmFsaWRNYXhsZW5ndGg7XG4gIH1cblxuICBvbklucHV0KGV2ZW50OiBFdmVudCwgZmllbGQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuaXNJbnZhbGlkKGZpZWxkKTtcbiAgICB0aGlzLmlzVmFsaWQoZmllbGQpO1xuICAgIGlmIChldmVudCkge1xuICAgICAgdGhpcy5jaGFuZ2UuZW1pdCh7IHZhbHVlOiB0aGlzLm1vZGVsW2ZpZWxkXSwgZmllbGQgfSk7XG4gICAgfVxuICB9XG5cbiAgaXNGb2N1c2VkKGV2ZW50OiBFdmVudCwgZmllbGQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuZm9jdXNlZFtmaWVsZF0gPSB0cnVlO1xuICAgIHRoaXMuZm9jdXMuZW1pdCh7IGV2ZW50LCBmaWVsZCB9KTtcbiAgfVxuXG4gIGlzQmx1cnJlZChldmVudDogRXZlbnQsIGZpZWxkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmZvY3VzZWRbZmllbGRdID0gZmFsc2U7XG4gICAgdGhpcy5ibHVyLmVtaXQoeyBldmVudCwgZmllbGQgfSk7XG4gIH1cblxuICBvbkNvdW50cnlDaGFuZ2UoZXZ0KSB7XG4gICAgY29uc3QgY291bnRyeTogYW55ID0gZXZ0ICYmIGV2dC5yYXdWYWx1ZSA/IGV2dC5yYXdWYWx1ZSA6IG51bGw7XG4gICAgbGV0IGZpZWxkOiBhbnk7XG4gICAgbGV0IHN0YXRlc1VwZGF0YWJsZSA9IGZhbHNlO1xuICAgIHRoaXMuY29uZmlnLmNvdW50cnlJRC51cGRhdGVkID0gdHJ1ZTtcbiAgICBpZiAodGhpcy5jb25maWcuY291bnRyeUlELnBpY2tlckNvbmZpZykge1xuICAgICAgZmllbGQgPSB0aGlzLmNvbmZpZy5jb3VudHJ5SUQucGlja2VyQ29uZmlnLmZpZWxkO1xuICAgIH1cbiAgICBpZiAoY291bnRyeSAmJiBmaWVsZCAmJiAhSGVscGVycy5pc0JsYW5rKGNvdW50cnlbZmllbGRdKSAmJiB0aGlzLm1vZGVsLmNvdW50cnlJRCAhPT0gY291bnRyeVtmaWVsZF0pIHtcbiAgICAgIHRoaXMubW9kZWwuY291bnRyeUlEID0gY291bnRyeVtmaWVsZF07XG4gICAgICB0aGlzLm1vZGVsLmNvdW50cnlOYW1lID0gSGVscGVycy5pbnRlcnBvbGF0ZSh0aGlzLmNvbmZpZy5jb3VudHJ5SUQucGlja2VyQ29uZmlnLmZvcm1hdCwgY291bnRyeSk7XG4gICAgICB0aGlzLmRpc2FibGVkLnN0YXRlID0gZmFsc2U7XG4gICAgICB0aGlzLnRvb2x0aXAuc3RhdGUgPSB1bmRlZmluZWQ7XG4gICAgICBzdGF0ZXNVcGRhdGFibGUgPSB0cnVlO1xuICAgIH0gZWxzZSBpZiAoSGVscGVycy5pc0JsYW5rKGNvdW50cnkpIHx8IEhlbHBlcnMuaXNCbGFuayhjb3VudHJ5W2ZpZWxkXSkpIHtcbiAgICAgIHRoaXMubW9kZWwuY291bnRyeUlEID0gdW5kZWZpbmVkO1xuICAgICAgdGhpcy5tb2RlbC5jb3VudHJ5TmFtZSA9IHVuZGVmaW5lZDtcbiAgICAgIHRoaXMuZGlzYWJsZWQuc3RhdGUgPSB0cnVlO1xuICAgICAgdGhpcy50b29sdGlwLnN0YXRlID0gdGhpcy5sYWJlbHMuc2VsZWN0Q291bnRyeUZpcnN0O1xuICAgICAgdGhpcy5pbnZhbGlkLnN0YXRlID0gZmFsc2U7XG4gICAgICBzdGF0ZXNVcGRhdGFibGUgPSB0cnVlO1xuICAgIH1cblxuICAgIC8vIFVwZGF0ZSBzdGF0ZVxuICAgIGlmIChzdGF0ZXNVcGRhdGFibGUpIHtcbiAgICAgIHRoaXMubW9kZWwuc3RhdGUgPSB1bmRlZmluZWQ7XG4gICAgICB0aGlzLnVwZGF0ZVN0YXRlcygpO1xuICAgIH1cbiAgICB0aGlzLnVwZGF0ZUNvbnRyb2woKTtcbiAgICB0aGlzLm9uSW5wdXQobnVsbCwgJ2NvdW50cnlJRCcpO1xuICAgIHRoaXMub25JbnB1dChudWxsLCAnc3RhdGUnKTtcbiAgfVxuXG4gIG9uU3RhdGVDaGFuZ2UoZXZ0KSB7XG4gICAgY29uc3Qgc3RhdGU6IGFueSA9IGV2dCAmJiBldnQudmFsdWUgPyBldnQudmFsdWUgOiBudWxsO1xuICAgIHRoaXMuY29uZmlnLnN0YXRlLnVwZGF0ZWQgPSB0cnVlO1xuICAgIHRoaXMubW9kZWwuc3RhdGUgPSBzdGF0ZTtcbiAgICB0aGlzLnVwZGF0ZUNvbnRyb2woKTtcbiAgICB0aGlzLm9uSW5wdXQobnVsbCwgJ3N0YXRlJyk7XG4gIH1cblxuICBzZXRTdGF0ZUxhYmVsKG1vZGVsOiBhbnkpIHtcbiAgICBjb25zdCBzdGF0ZTogc3RyaW5nID0gbW9kZWwuc3RhdGU7XG4gICAgaWYgKCFIZWxwZXJzLmlzQmxhbmsoc3RhdGUpKSB7XG4gICAgICBpZiAodGhpcy5jb25maWcuc3RhdGUucmVxdWlyZWQpIHtcbiAgICAgICAgdGhpcy52YWxpZC5zdGF0ZSA9IHRydWU7XG4gICAgICB9XG4gICAgICB0aGlzLm1vZGVsLnN0YXRlID0gc3RhdGU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubW9kZWwuc3RhdGUgPSB1bmRlZmluZWQ7XG4gICAgICBpZiAodGhpcy5jb25maWcuc3RhdGUucmVxdWlyZWQpIHtcbiAgICAgICAgdGhpcy52YWxpZC5zdGF0ZSA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZVN0YXRlcygpIHtcbiAgICBpZiAodGhpcy5jb25maWcuc3RhdGUucGlja2VyQ29uZmlnLm9wdGlvbnMgJiYgIUhlbHBlcnMuaXNCbGFuayh0aGlzLm1vZGVsLmNvdW50cnlJRCkpIHtcbiAgICAgIHRoaXMuY29uZmlnLnN0YXRlLnBpY2tlckNvbmZpZy5vcHRpb25zID0gKHF1ZXJ5ID0gJycpID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RhdGVPcHRpb25zKHF1ZXJ5LCB0aGlzLm1vZGVsLmNvdW50cnlJRCk7XG4gICAgICB9O1xuICAgICAgdGhpcy5zdGF0ZU9wdGlvbnMoJycsIHRoaXMubW9kZWwuY291bnRyeUlEKS50aGVuKChyZXN1bHRzKSA9PiB7XG4gICAgICAgIHRoaXMuY29uZmlnLnN0YXRlLnBpY2tlckNvbmZpZy5kZWZhdWx0T3B0aW9ucyA9IHJlc3VsdHM7XG4gICAgICAgIGlmIChyZXN1bHRzLmxlbmd0aCkge1xuICAgICAgICAgIHRoaXMudG9vbHRpcC5zdGF0ZSA9IHVuZGVmaW5lZDtcbiAgICAgICAgICB0aGlzLmRpc2FibGVkLnN0YXRlID0gdGhpcy5fcmVhZE9ubHk7XG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZUxhYmVsKHRoaXMubW9kZWwpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuZGlzYWJsZWQuc3RhdGUgPSB0cnVlO1xuICAgICAgICAgIHRoaXMudG9vbHRpcC5zdGF0ZSA9IHRoaXMubGFiZWxzLm5vU3RhdGVzRm9yQ291bnRyeTtcbiAgICAgICAgICBpZiAodGhpcy5jb25maWcuc3RhdGUucmVxdWlyZWQpIHtcbiAgICAgICAgICAgIHRoaXMudmFsaWQuc3RhdGUgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLnZhbGlkaXR5Q2hhbmdlLmVtaXQoKTtcbiAgICAgICAgdGhpcy5vbklucHV0KG51bGwsICdzdGF0ZScpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY29uZmlnLnN0YXRlLnBpY2tlckNvbmZpZy5kZWZhdWx0T3B0aW9ucyA9IFtdO1xuICAgICAgdGhpcy5kaXNhYmxlZC5zdGF0ZSA9IHRydWU7XG4gICAgICB0aGlzLnRvb2x0aXAuc3RhdGUgPSB0aGlzLmxhYmVscy5zZWxlY3RDb3VudHJ5Rmlyc3Q7XG4gICAgICBpZiAodGhpcy5jb25maWcuc3RhdGUucmVxdWlyZWQpIHtcbiAgICAgICAgdGhpcy52YWxpZC5zdGF0ZSA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGdldFN0YXRlT3B0aW9ucyhmaWx0ZXIgPSAnJywgY291bnRyeUlEOiBudW1iZXIpIHtcbiAgICBpZiAoY291bnRyeUlEKSB7XG4gICAgICBjb25zdCBjb3VudHJ5ID0gZmluZEJ5Q291bnRyeUlkKGNvdW50cnlJRCk7XG4gICAgICBjb25zdCBzdGF0ZXMgPSBnZXRTdGF0ZXMoY291bnRyeS5uYW1lKTtcbiAgICAgIGlmIChmaWx0ZXIpIHtcbiAgICAgICAgcmV0dXJuIHN0YXRlcy5maWx0ZXIoKG5hbWUpID0+IG5ldyBSZWdFeHAoYCR7ZmlsdGVyfWAsICdnaScpLnRlc3QobmFtZSkpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHN0YXRlcztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZUNvbnRyb2woKSB7XG4gICAgdGhpcy5vbk1vZGVsQ2hhbmdlKHRoaXMubW9kZWwpO1xuICAgIHRoaXMub25JbnB1dChudWxsLCAnY291bnRyeUlEJyk7XG4gICAgdGhpcy5vbklucHV0KG51bGwsICdzdGF0ZScpO1xuICB9XG5cbiAgd3JpdGVWYWx1ZShtb2RlbCkge1xuICAgIGxldCBsb2FkaW5nQ291bnRyaWVzID0gZmFsc2U7XG4gICAgaWYgKG1vZGVsKSB7XG4gICAgICBsZXQgY291bnRyeU5hbWU7XG4gICAgICBpZiAobW9kZWwuY291bnRyeU5hbWUgJiYgbW9kZWwuY291bnRyeUlEKSB7XG4gICAgICAgIGNvdW50cnlOYW1lID0gbW9kZWwuY291bnRyeU5hbWU7XG4gICAgICB9IGVsc2UgaWYgKG1vZGVsLmNvdW50cnlJRCkge1xuICAgICAgICBpZiAodGhpcy5jb25maWcuY291bnRyeUlELnBpY2tlckNvbmZpZyAmJiB0aGlzLmNvbmZpZy5jb3VudHJ5SUQucGlja2VyQ29uZmlnLmdldExhYmVscykge1xuICAgICAgICAgIGlmIChIZWxwZXJzLmlzRnVuY3Rpb24odGhpcy5jb25maWcuY291bnRyeUlELnBpY2tlckNvbmZpZy5nZXRMYWJlbHMpKSB7XG4gICAgICAgICAgICBjb25zdCBwcm9taXNlID0gdGhpcy5jb25maWcuY291bnRyeUlELnBpY2tlckNvbmZpZy5nZXRMYWJlbHMobW9kZWwuY291bnRyeUlEKTtcbiAgICAgICAgICAgIGxvYWRpbmdDb3VudHJpZXMgPSB0cnVlO1xuICAgICAgICAgICAgaWYgKHByb21pc2UudGhlbikge1xuICAgICAgICAgICAgICBwcm9taXNlLnRoZW4oKHJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgICAgIGxvYWRpbmdDb3VudHJpZXMgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICBjb3VudHJ5TmFtZSA9IEhlbHBlcnMuaW50ZXJwb2xhdGVXaXRoRmFsbGJhY2sodGhpcy5jb25maWcuY291bnRyeUlELnBpY2tlckNvbmZpZy5mb3JtYXQsIHJlc3VsdCk7XG4gICAgICAgICAgICAgICAgdGhpcy5tb2RlbCA9IE9iamVjdC5hc3NpZ24obW9kZWwsIHsgY291bnRyeU5hbWUgfSk7XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVTdGF0ZXMoKTtcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAoY291bnRyeU5hbWUpIHtcbiAgICAgICAgY291bnRyeU5hbWUgPSBjb3VudHJ5TmFtZS50cmltKCk7XG4gICAgICAgIG1vZGVsLnN0YXRlID0gbW9kZWwuc3RhdGUgfHwgJyc7XG4gICAgICAgIHRoaXMubW9kZWwgPSBPYmplY3QuYXNzaWduKG1vZGVsLCB7IGNvdW50cnlOYW1lIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5tb2RlbCA9IG1vZGVsO1xuICAgICAgfVxuICAgICAgaWYgKCFsb2FkaW5nQ291bnRyaWVzICYmICFIZWxwZXJzLmlzQmxhbmsodGhpcy5tb2RlbC5jb3VudHJ5SUQpKSB7XG4gICAgICAgIHRoaXMudXBkYXRlU3RhdGVzKCk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuZmllbGRMaXN0LmZvckVhY2goKGZpZWxkOiBzdHJpbmcpID0+IHtcbiAgICAgIHRoaXMub25JbnB1dChudWxsLCBmaWVsZCk7XG4gICAgfSk7XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBGdW5jdGlvbik6IHZvaWQge1xuICAgIHRoaXMub25Nb2RlbENoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IEZ1bmN0aW9uKTogdm9pZCB7XG4gICAgdGhpcy5vbk1vZGVsVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXREZWZhdWx0U3RhdGVDb25maWcoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGZpZWxkOiAndmFsdWUnLFxuICAgICAgZm9ybWF0OiAnJGxhYmVsJyxcbiAgICAgIG9wdGlvbnM6IChxdWVyeSA9ICcnLCBjb3VudHJ5SUQpID0+IHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzLmdldFN0YXRlT3B0aW9ucyhxdWVyeSwgY291bnRyeUlEKSk7XG4gICAgICB9LFxuICAgICAgZ2V0TGFiZWxzOiAoc3RhdGU6IHN0cmluZykgPT4ge1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHN0YXRlKTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RGVmYXVsdENvdW50cnlDb25maWcoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGZpZWxkOiAndmFsdWUnLFxuICAgICAgZm9ybWF0OiAnJGxhYmVsJyxcbiAgICAgIG9wdGlvbnM6IChxdWVyeSA9ICcnKSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgIGxldCBjb3VudHJpZXMgPSBDT1VOVFJJRVM7XG4gICAgICAgICAgaWYgKHF1ZXJ5KSB7XG4gICAgICAgICAgICBjb3VudHJpZXMgPSBjb3VudHJpZXMuZmlsdGVyKChjb3VudHJ5KSA9PiBuZXcgUmVnRXhwKGAke3F1ZXJ5fWAsICdnaScpLnRlc3QoY291bnRyeS5uYW1lKSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiByZXNvbHZlKGNvdW50cmllcy5tYXAoKGNvdW50cnkpID0+ICh7IHZhbHVlOiBjb3VudHJ5LmlkLCBsYWJlbDogY291bnRyeS5uYW1lIH0pKSk7XG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICAgIGdldExhYmVsczogKGNvdW50cnlJRCkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmU6IGFueSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGNvdW50cnk6IGFueSA9IGZpbmRCeUNvdW50cnlJZChjb3VudHJ5SUQpO1xuICAgICAgICAgIGlmIChjb3VudHJ5KSB7XG4gICAgICAgICAgICByZXNvbHZlKHsgdmFsdWU6IGNvdW50cnkuaWQsIGxhYmVsOiBjb3VudHJ5Lm5hbWUgfSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJlc29sdmUoJycpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9LFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
|
669
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWRkcmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25vdm8tZWxlbWVudHMvc3JjL2VsZW1lbnRzL2Zvcm0vZXh0cmFzL2FkZHJlc3MvQWRkcmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNO0FBQ04sT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE1BQU07QUFDTixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7QUFFOUMsc0RBQXNEO0FBQ3RELE1BQU0sc0JBQXNCLEdBQUc7SUFDN0IsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDO0lBQ2pELEtBQUssRUFBRSxJQUFJO0NBQ1osQ0FBQztBQWdMRixNQUFNLE9BQU8sa0JBQWtCO0lBdUM3QixZQUFtQixNQUF3QjtRQUF4QixXQUFNLEdBQU4sTUFBTSxDQUFrQjtRQXBDbkMsY0FBUyxHQUFHLEtBQUssQ0FBQztRQWMxQixXQUFNLEdBQWUsRUFBRSxDQUFDO1FBQ3hCLGNBQVMsR0FBa0IsQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBRXpGLGtCQUFhLEdBQWEsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ25DLG1CQUFjLEdBQWEsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ3BDLFlBQU8sR0FBUSxFQUFFLENBQUM7UUFDbEIsWUFBTyxHQUFRLEVBQUUsQ0FBQztRQUNsQixhQUFRLEdBQVEsRUFBRSxDQUFDO1FBQ25CLHFCQUFnQixHQUFRLEVBQUUsQ0FBQztRQUMzQixVQUFLLEdBQVEsRUFBRSxDQUFDO1FBRWhCLFlBQU8sR0FBUSxFQUFFLENBQUM7UUFDbEIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFFckIsV0FBTSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRS9DLFVBQUssR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUU5QyxTQUFJLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFN0MsbUJBQWMsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUVULENBQUM7SUFuQy9DLElBQ0ksUUFBUSxDQUFDLFFBQWlCO1FBQzVCLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQzFCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBYSxFQUFFLEVBQUU7WUFDdkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ3hDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1NBQ3JCO0lBQ0gsQ0FBQztJQUNELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBeUJELFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNoQixJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztTQUNsQjtRQUNELElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM1QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDdEI7YUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUN0QixJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztTQUNqQjtRQUNELElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ3pDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztTQUNyQjtJQUNILENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFhLEVBQUUsRUFBRTtZQUN2QyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ3RDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUc7b0JBQ25CLE1BQU0sRUFBRSxJQUFJO2lCQUNiLENBQUM7YUFDSDtZQUNELElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDL0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUMvQztZQUNELElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUU7Z0JBQ3hCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQzthQUNwQztZQUNELElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUU7Z0JBQ3ZELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztnQkFDbkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUM7YUFDN0I7WUFDRCxJQUFJLEtBQUssS0FBSyxXQUFXLEVBQUU7Z0JBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLFlBQVksRUFBRTtvQkFDcEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO2lCQUNyRTtnQkFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLFlBQVksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQzthQUM3RjtZQUNELElBQUksS0FBSyxLQUFLLE9BQU8sRUFBRTtnQkFDckIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsWUFBWSxFQUFFO29CQUNwQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7b0JBQzlELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsWUFBWSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUM7aUJBQzFGO2dCQUNELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDO2dCQUM1RCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLFlBQVksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxLQUFLLEdBQUcsRUFBRSxFQUFFLEVBQUU7b0JBQ3ZELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDeEQsQ0FBQyxDQUFDO2dCQUNGLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsWUFBWSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO2FBQ3BFO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTyxDQUFDLEtBQWE7UUFDbkIsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQ0UsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMxRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDO1lBQy9CLENBQUMsQ0FBQyxLQUFLLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ2pHLENBQUMsQ0FDQyxLQUFLLEtBQUssT0FBTztnQkFDakIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRO2dCQUMzQixDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztvQkFDakMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7d0JBQ3ZFLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQzt3QkFDeEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsWUFBWTt3QkFDOUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLGNBQWM7d0JBQzdDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQ2pFLEVBQ0Q7WUFDQSxLQUFLLEdBQUcsS0FBSyxDQUFDO1NBQ2Y7YUFBTSxJQUNMLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ25DLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUM5QyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sRUFDdkQ7WUFDQSxLQUFLLEdBQUcsS0FBSyxDQUFDO1NBQ2Y7UUFDRCxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQztJQUM1QixDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQWE7UUFDckIsSUFBSSxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQzdCLElBQ0UsQ0FBQyxLQUFLLEtBQUssV0FBVztZQUNwQixLQUFLLEtBQUssT0FBTztZQUNqQixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLFFBQVE7WUFDNUIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2xDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDdEMsQ0FBQyxLQUFLLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsUUFBUSxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU8sQ0FBQztZQUNqSSxDQUFDLEtBQUssS0FBSyxPQUFPO2dCQUNoQixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLFFBQVE7Z0JBQzVCLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDeEUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDO2dCQUN0QyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU87Z0JBQzNCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFlBQVk7Z0JBQzlCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxjQUFjO2dCQUM3QyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsRUFDM0Q7WUFDQSxPQUFPLEdBQUcsSUFBSSxDQUFDO1NBQ2hCO2FBQU0sSUFDTCxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNuQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxTQUFTLENBQUM7WUFDL0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEVBQ3hEO1lBQ0EsT0FBTyxHQUFHLElBQUksQ0FBQztZQUNmLGdCQUFnQixHQUFHLElBQUksQ0FBQztTQUN6QjtRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsT0FBTyxDQUFDO1FBQzlCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQztJQUNsRCxDQUFDO0lBRUQsT0FBTyxDQUFDLEtBQVksRUFBRSxLQUFhO1FBQ2pDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwQixJQUFJLEtBQUssRUFBRTtZQUNULElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztTQUN2RDtJQUNILENBQUM7SUFFRCxTQUFTLENBQUMsS0FBWSxFQUFFLEtBQWE7UUFDbkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDM0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQVksRUFBRSxLQUFhO1FBQ25DLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELGVBQWUsQ0FBQyxHQUFHO1FBQ2pCLE1BQU0sT0FBTyxHQUFRLEdBQUcsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDL0QsSUFBSSxLQUFVLENBQUM7UUFDZixJQUFJLGVBQWUsR0FBRyxLQUFLLENBQUM7UUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNyQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRTtZQUN0QyxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQztTQUNsRDtRQUNELElBQUksT0FBTyxJQUFJLEtBQUssSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEtBQUssT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ25HLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN0QyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDakcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBQzVCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQztZQUMvQixlQUFlLEdBQUcsSUFBSSxDQUFDO1NBQ3hCO2FBQU0sSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7WUFDdEUsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1lBQ2pDLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBQztZQUNuQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQztZQUNwRCxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7WUFDM0IsZUFBZSxHQUFHLElBQUksQ0FBQztTQUN4QjtRQUVELGVBQWU7UUFDZixJQUFJLGVBQWUsRUFBRTtZQUNuQixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUM7WUFDN0IsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1NBQ3JCO1FBQ0QsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxhQUFhLENBQUMsR0FBRztRQUNmLE1BQU0sS0FBSyxHQUFRLEdBQUcsSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDdkQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNqQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDekIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxhQUFhLENBQUMsS0FBVTtRQUN0QixNQUFNLEtBQUssR0FBVyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzNCLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFO2dCQUM5QixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7YUFDekI7WUFDRCxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7U0FDMUI7YUFBTTtZQUNMLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQztZQUM3QixJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRTtnQkFDOUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO2FBQzFCO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUNwRixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxHQUFHLENBQUMsS0FBSyxHQUFHLEVBQUUsRUFBRSxFQUFFO2dCQUN0RCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDeEQsQ0FBQyxDQUFDO1lBQ0YsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtnQkFDM0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLGNBQWMsR0FBRyxPQUFPLENBQUM7Z0JBQ3hELElBQUksT0FBTyxDQUFDLE1BQU0sRUFBRTtvQkFDbEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDO29CQUMvQixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO29CQUNyQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztpQkFDaEM7cUJBQU07b0JBQ0wsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO29CQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDO29CQUNwRCxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRTt3QkFDOUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO3FCQUN6QjtpQkFDRjtnQkFDRCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztZQUM5QixDQUFDLENBQUMsQ0FBQztTQUNKO2FBQU07WUFDTCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQztZQUNuRCxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQztZQUNwRCxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRTtnQkFDOUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO2FBQzFCO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsZUFBZSxDQUFDLE1BQU0sR0FBRyxFQUFFLEVBQUUsU0FBaUI7UUFDNUMsSUFBSSxTQUFTLEVBQUU7WUFDYixNQUFNLE9BQU8sR0FBRyxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDM0MsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN2QyxJQUFJLE1BQU0sRUFBRTtnQkFDVixPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksTUFBTSxDQUFDLEdBQUcsTUFBTSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7YUFDMUU7WUFDRCxPQUFPLE1BQU0sQ0FBQztTQUNmO2FBQU07WUFDTCxPQUFPLEVBQUUsQ0FBQztTQUNYO0lBQ0gsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQUs7UUFDZCxJQUFJLGdCQUFnQixHQUFHLEtBQUssQ0FBQztRQUM3QixJQUFJLEtBQUssRUFBRTtZQUNULElBQUksV0FBVyxDQUFDO1lBQ2hCLElBQUksS0FBSyxDQUFDLFdBQVcsSUFBSSxLQUFLLENBQUMsU0FBUyxFQUFFO2dCQUN4QyxXQUFXLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQzthQUNqQztpQkFBTSxJQUFJLEtBQUssQ0FBQyxTQUFTLEVBQUU7Z0JBQzFCLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUU7b0JBQ3RGLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEVBQUU7d0JBQ3BFLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO3dCQUM5RSxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7d0JBQ3hCLElBQUksT0FBTyxDQUFDLElBQUksRUFBRTs0QkFDaEIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO2dDQUN0QixnQkFBZ0IsR0FBRyxLQUFLLENBQUM7Z0NBQ3pCLFdBQVcsR0FBRyxPQUFPLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztnQ0FDakcsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7Z0NBQ25ELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQzs0QkFDdEIsQ0FBQyxDQUFDLENBQUM7eUJBQ0o7cUJBQ0Y7aUJBQ0Y7YUFDRjtZQUNELElBQUksV0FBVyxFQUFFO2dCQUNmLFdBQVcsR0FBRyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2pDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO2FBQ3BEO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO2FBQ3BCO1lBQ0QsSUFBSSxDQUFDLGdCQUFnQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxFQUFFO2dCQUMvRCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7YUFDckI7U0FDRjtRQUNELElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBYSxFQUFFLEVBQUU7WUFDdkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsRUFBWTtRQUMzQixJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBWTtRQUM1QixJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRU8scUJBQXFCO1FBQzNCLE9BQU87WUFDTCxLQUFLLEVBQUUsT0FBTztZQUNkLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLE9BQU8sRUFBRSxDQUFDLEtBQUssR0FBRyxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUU7Z0JBQ2pDLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBQ2pFLENBQUM7WUFDRCxTQUFTLEVBQUUsQ0FBQyxLQUFhLEVBQUUsRUFBRTtnQkFDM0IsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2hDLENBQUM7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVPLHVCQUF1QjtRQUM3QixPQUFPO1lBQ0wsS0FBSyxFQUFFLE9BQU87WUFDZCxNQUFNLEVBQUUsUUFBUTtZQUNoQixPQUFPLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxFQUFFLEVBQUU7Z0JBQ3RCLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtvQkFDN0IsSUFBSSxTQUFTLEdBQUcsU0FBUyxDQUFDO29CQUMxQixJQUFJLEtBQUssRUFBRTt3QkFDVCxTQUFTLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsSUFBSSxNQUFNLENBQUMsR0FBRyxLQUFLLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7cUJBQzVGO29CQUNELE9BQU8sT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUMzRixDQUFDLENBQUMsQ0FBQztZQUNMLENBQUM7WUFDRCxTQUFTLEVBQUUsQ0FBQyxTQUFTLEVBQUUsRUFBRTtnQkFDdkIsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQVksRUFBRSxFQUFFO29CQUNsQyxNQUFNLE9BQU8sR0FBUSxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUM7b0JBQ2hELElBQUksT0FBTyxFQUFFO3dCQUNYLE9BQU8sQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztxQkFDckQ7eUJBQU07d0JBQ0wsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO3FCQUNiO2dCQUNILENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztTQUNGLENBQUM7SUFDSixDQUFDOztnSEF6V1Usa0JBQWtCO29HQUFsQixrQkFBa0IsMExBdkpsQixDQUFDLHNCQUFzQixDQUFDLDBCQUN6Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUpUOzRGQUdVLGtCQUFrQjtrQkF6SjlCLFNBQVM7K0JBQ0UsY0FBYyxhQUNiLENBQUMsc0JBQXNCLENBQUMsWUFDekI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1KVDt1R0FLRCxNQUFNO3NCQURMLEtBQUs7Z0JBSUYsUUFBUTtzQkFEWCxLQUFLO2dCQTJCTixNQUFNO3NCQURMLE1BQU07Z0JBR1AsS0FBSztzQkFESixNQUFNO2dCQUdQLElBQUk7c0JBREgsTUFBTTtnQkFHUCxjQUFjO3NCQURiLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvLyBORzJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbi8vIEFQUFxuaW1wb3J0IHsgTm92b0xhYmVsU2VydmljZSB9IGZyb20gJ25vdm8tZWxlbWVudHMvc2VydmljZXMnO1xuaW1wb3J0IHsgQ09VTlRSSUVTLCBmaW5kQnlDb3VudHJ5SWQsIGdldFN0YXRlcyB9IGZyb20gJ25vdm8tZWxlbWVudHMvdXRpbHMnO1xuaW1wb3J0IHsgSGVscGVycyB9IGZyb20gJ25vdm8tZWxlbWVudHMvdXRpbHMnO1xuXG4vLyBWYWx1ZSBhY2Nlc3NvciBmb3IgdGhlIGNvbXBvbmVudCAoc3VwcG9ydHMgbmdNb2RlbClcbmNvbnN0IEFERFJFU1NfVkFMVUVfQUNDRVNTT1IgPSB7XG4gIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBOb3ZvQWRkcmVzc0VsZW1lbnQpLFxuICBtdWx0aTogdHJ1ZSxcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgTm92b0FkZHJlc3NTdWJmaWVsZENvbmZpZyB7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIHJlcXVpcmVkOiBib29sZWFuO1xuICBtYXhsZW5ndGg6IG51bWJlcjtcbiAgcGlja2VyQ29uZmlnPzogYW55O1xuICBoaWRkZW46IGJvb2xlYW47XG4gIHVwZGF0ZWQ/OiBib29sZWFuO1xuICByZWFkT25seT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTm92b0FkZHJlc3NDb25maWcge1xuICByZXF1aXJlZD86IGJvb2xlYW47XG4gIHJlYWRPbmx5PzogYm9vbGVhbjtcbiAgYWRkcmVzczE/OiBOb3ZvQWRkcmVzc1N1YmZpZWxkQ29uZmlnO1xuICBhZGRyZXNzMj86IE5vdm9BZGRyZXNzU3ViZmllbGRDb25maWc7XG4gIGNpdHk/OiBOb3ZvQWRkcmVzc1N1YmZpZWxkQ29uZmlnO1xuICBzdGF0ZT86IE5vdm9BZGRyZXNzU3ViZmllbGRDb25maWc7XG4gIHppcD86IE5vdm9BZGRyZXNzU3ViZmllbGRDb25maWc7XG4gIGNvdW50cnlJRD86IE5vdm9BZGRyZXNzU3ViZmllbGRDb25maWc7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25vdm8tYWRkcmVzcycsXG4gIHByb3ZpZGVyczogW0FERFJFU1NfVkFMVUVfQUNDRVNTT1JdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxzcGFuXG4gICAgICAqbmdJZj1cIiFjb25maWc/LmFkZHJlc3MxPy5oaWRkZW5cIlxuICAgICAgY2xhc3M9XCJzdHJlZXQtYWRkcmVzc1wiXG4gICAgICBbY2xhc3MuaW52YWxpZF09XCJpbnZhbGlkLmFkZHJlc3MxXCJcbiAgICAgIFtjbGFzcy5mb2N1c109XCJmb2N1c2VkLmFkZHJlc3MxXCJcbiAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJkaXNhYmxlZC5hZGRyZXNzMVwiXG4gICAgPlxuICAgICAgPGlcbiAgICAgICAgKm5nSWY9XCJjb25maWcuYWRkcmVzczEucmVxdWlyZWRcIlxuICAgICAgICBjbGFzcz1cInJlcXVpcmVkLWluZGljYXRvciBhZGRyZXNzMVwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgJ2JoaS1jaXJjbGUnOiAhdmFsaWQuYWRkcmVzczEsICdiaGktY2hlY2snOiB2YWxpZC5hZGRyZXNzMSB9XCJcbiAgICAgID5cbiAgICAgIDwvaT5cbiAgICAgIDxpbnB1dFxuICAgICAgICBbY2xhc3MubWF4bGVuZ3RoLWVycm9yXT1cImludmFsaWRNYXhsZW5ndGguYWRkcmVzczFcIlxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIGlkPVwiYWRkcmVzczFcIlxuICAgICAgICBuYW1lPVwiYWRkcmVzczFcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiY29uZmlnLmFkZHJlc3MxLmxhYmVsXCJcbiAgICAgICAgW21heGxlbmd0aF09XCJjb25maWc/LmFkZHJlc3MxPy5tYXhsZW5ndGhcIlxuICAgICAgICBhdXRvY29tcGxldGU9XCJzaGlwcGluZyBzdHJlZXQtYWRkcmVzcyBhZGRyZXNzLWxpbmUtMVwiXG4gICAgICAgIFsobmdNb2RlbCldPVwibW9kZWwuYWRkcmVzczFcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ1cGRhdGVDb250cm9sKClcIlxuICAgICAgICAoZm9jdXMpPVwiaXNGb2N1c2VkKCRldmVudCwgJ2FkZHJlc3MxJylcIlxuICAgICAgICAoYmx1cik9XCJpc0JsdXJyZWQoJGV2ZW50LCAnYWRkcmVzczEnKVwiXG4gICAgICAgIChpbnB1dCk9XCJvbklucHV0KCRldmVudCwgJ2FkZHJlc3MxJylcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQuYWRkcmVzczFcIlxuICAgICAgLz5cbiAgICA8L3NwYW4+XG4gICAgPHNwYW5cbiAgICAgICpuZ0lmPVwiIWNvbmZpZz8uYWRkcmVzczI/LmhpZGRlblwiXG4gICAgICBjbGFzcz1cImFwdCBzdWl0ZVwiXG4gICAgICBbY2xhc3MuaW52YWxpZF09XCJpbnZhbGlkLmFkZHJlc3MyXCJcbiAgICAgIFtjbGFzcy5mb2N1c109XCJmb2N1c2VkLmFkZHJlc3MyXCJcbiAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJkaXNhYmxlZC5hZGRyZXNzMlwiXG4gICAgPlxuICAgICAgPGlcbiAgICAgICAgKm5nSWY9XCJjb25maWcuYWRkcmVzczIucmVxdWlyZWRcIlxuICAgICAgICBjbGFzcz1cInJlcXVpcmVkLWluZGljYXRvciBhZGRyZXNzMlwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgJ2JoaS1jaXJjbGUnOiAhdmFsaWQuYWRkcmVzczIsICdiaGktY2hlY2snOiB2YWxpZC5hZGRyZXNzMiB9XCJcbiAgICAgID5cbiAgICAgIDwvaT5cbiAgICAgIDxpbnB1dFxuICAgICAgICBbY2xhc3MubWF4bGVuZ3RoLWVycm9yXT1cImludmFsaWRNYXhsZW5ndGguYWRkcmVzczJcIlxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIGlkPVwiYWRkcmVzczJcIlxuICAgICAgICBuYW1lPVwiYWRkcmVzczJcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiY29uZmlnLmFkZHJlc3MyLmxhYmVsXCJcbiAgICAgICAgW21heGxlbmd0aF09XCJjb25maWc/LmFkZHJlc3MyPy5tYXhsZW5ndGhcIlxuICAgICAgICBhdXRvY29tcGxldGU9XCJzaGlwcGluZyBhZGRyZXNzLWxpbmUtMlwiXG4gICAgICAgIFsobmdNb2RlbCldPVwibW9kZWwuYWRkcmVzczJcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ1cGRhdGVDb250cm9sKClcIlxuICAgICAgICAoZm9jdXMpPVwiaXNGb2N1c2VkKCRldmVudCwgJ2FkZHJlc3MyJylcIlxuICAgICAgICAoYmx1cik9XCJpc0JsdXJyZWQoJGV2ZW50LCAnYWRkcmVzczInKVwiXG4gICAgICAgIChpbnB1dCk9XCJvbklucHV0KCRldmVudCwgJ2FkZHJlc3MyJylcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQuYWRkcmVzczJcIlxuICAgICAgLz5cbiAgICA8L3NwYW4+XG4gICAgPHNwYW5cbiAgICAgICpuZ0lmPVwiIWNvbmZpZz8uY2l0eT8uaGlkZGVuXCJcbiAgICAgIGNsYXNzPVwiY2l0eSBsb2NhbGl0eVwiXG4gICAgICBbY2xhc3MuaW52YWxpZF09XCJpbnZhbGlkLmNpdHlcIlxuICAgICAgW2NsYXNzLmZvY3VzXT1cImZvY3VzZWQuY2l0eVwiXG4gICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiZGlzYWJsZWQuY2l0eVwiXG4gICAgPlxuICAgICAgPGkgKm5nSWY9XCJjb25maWcuY2l0eS5yZXF1aXJlZFwiIGNsYXNzPVwicmVxdWlyZWQtaW5kaWNhdG9yXCIgW25nQ2xhc3NdPVwieyAnYmhpLWNpcmNsZSc6ICF2YWxpZC5jaXR5LCAnYmhpLWNoZWNrJzogdmFsaWQuY2l0eSB9XCI+IDwvaT5cbiAgICAgIDxpbnB1dFxuICAgICAgICBbY2xhc3MubWF4bGVuZ3RoLWVycm9yXT1cImludmFsaWRNYXhsZW5ndGguY2l0eVwiXG4gICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgaWQ9XCJjaXR5XCJcbiAgICAgICAgbmFtZT1cImNpdHlcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiY29uZmlnLmNpdHkubGFiZWxcIlxuICAgICAgICBhdXRvY29tcGxldGU9XCJzaGlwcGluZyBjaXR5IGxvY2FsaXR5XCJcbiAgICAgICAgW21heGxlbmd0aF09XCJjb25maWc/LmNpdHk/Lm1heGxlbmd0aFwiXG4gICAgICAgIFsobmdNb2RlbCldPVwibW9kZWwuY2l0eVwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInVwZGF0ZUNvbnRyb2woKVwiXG4gICAgICAgIChmb2N1cyk9XCJpc0ZvY3VzZWQoJGV2ZW50LCAnY2l0eScpXCJcbiAgICAgICAgKGJsdXIpPVwiaXNCbHVycmVkKCRldmVudCwgJ2NpdHknKVwiXG4gICAgICAgIChpbnB1dCk9XCJvbklucHV0KCRldmVudCwgJ2NpdHknKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZC5jaXR5XCJcbiAgICAgIC8+XG4gICAgPC9zcGFuPlxuICAgIDxzcGFuXG4gICAgICAqbmdJZj1cIiFjb25maWc/LnN0YXRlPy5oaWRkZW5cIlxuICAgICAgY2xhc3M9XCJzdGF0ZSByZWdpb25cIlxuICAgICAgW2NsYXNzLmludmFsaWRdPVwiaW52YWxpZC5zdGF0ZVwiXG4gICAgICBbY2xhc3MuZm9jdXNdPVwiZm9jdXNlZC5zdGF0ZVwiXG4gICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiZGlzYWJsZWQuc3RhdGVcIlxuICAgICAgW3Rvb2x0aXBdPVwidG9vbHRpcC5zdGF0ZVwiXG4gICAgPlxuICAgICAgPGkgKm5nSWY9XCJjb25maWcuc3RhdGUucmVxdWlyZWRcIiBjbGFzcz1cInJlcXVpcmVkLWluZGljYXRvclwiIFtuZ0NsYXNzXT1cInsgJ2JoaS1jaXJjbGUnOiAhdmFsaWQuc3RhdGUsICdiaGktY2hlY2snOiB2YWxpZC5zdGF0ZSB9XCI+IDwvaT5cbiAgICAgIDxub3ZvLXBpY2tlclxuICAgICAgICBbY29uZmlnXT1cImNvbmZpZz8uc3RhdGU/LnBpY2tlckNvbmZpZ1wiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJjb25maWc/LnN0YXRlPy5sYWJlbFwiXG4gICAgICAgIChjaGFuZ2VkKT1cIm9uU3RhdGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIGF1dG9jb21wbGV0ZT1cInNoaXBwaW5nIHJlZ2lvblwiXG4gICAgICAgIFsobmdNb2RlbCldPVwibW9kZWwuc3RhdGVcIlxuICAgICAgICBbZGlzYWJsZVBpY2tlcklucHV0XT1cImRpc2FibGVkLnN0YXRlXCJcbiAgICAgID48L25vdm8tcGlja2VyPlxuICAgIDwvc3Bhbj5cbiAgICA8c3BhblxuICAgICAgKm5nSWY9XCIhY29uZmlnPy56aXA/LmhpZGRlblwiXG4gICAgICBjbGFzcz1cInppcCBwb3N0YWwtY29kZVwiXG4gICAgICBbY2xhc3MuaW52YWxpZF09XCJpbnZhbGlkLnppcFwiXG4gICAgICBbY2xhc3MuZm9jdXNdPVwiZm9jdXNlZC56aXBcIlxuICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImRpc2FibGVkLnppcFwiXG4gICAgPlxuICAgICAgPGkgKm5nSWY9XCJjb25maWcuemlwLnJlcXVpcmVkXCIgY2xhc3M9XCJyZXF1aXJlZC1pbmRpY2F0b3JcIiBbbmdDbGFzc109XCJ7ICdiaGktY2lyY2xlJzogIXZhbGlkLnppcCwgJ2JoaS1jaGVjayc6IHZhbGlkLnppcCB9XCI+IDwvaT5cbiAgICAgIDxpbnB1dFxuICAgICAgICBbY2xhc3MubWF4bGVuZ3RoLWVycm9yXT1cImludmFsaWRNYXhsZW5ndGguemlwXCJcbiAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICBpZD1cInppcFwiXG4gICAgICAgIG5hbWU9XCJ6aXBcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiY29uZmlnLnppcC5sYWJlbFwiXG4gICAgICAgIGF1dG9jb21wbGV0ZT1cInNoaXBwaW5nIHBvc3RhbC1jb2RlXCJcbiAgICAgICAgW21heGxlbmd0aF09XCJjb25maWc/LnppcD8ubWF4bGVuZ3RoXCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJtb2RlbC56aXBcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ1cGRhdGVDb250cm9sKClcIlxuICAgICAgICAoZm9jdXMpPVwiaXNGb2N1c2VkKCRldmVudCwgJ3ppcCcpXCJcbiAgICAgICAgKGJsdXIpPVwiaXNCbHVycmVkKCRldmVudCwgJ3ppcCcpXCJcbiAgICAgICAgKGlucHV0KT1cIm9uSW5wdXQoJGV2ZW50LCAnemlwJylcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQuemlwXCJcbiAgICAgIC8+XG4gICAgPC9zcGFuPlxuICAgIDxzcGFuXG4gICAgICAqbmdJZj1cIiFjb25maWc/LmNvdW50cnlJRD8uaGlkZGVuXCJcbiAgICAgIGNsYXNzPVwiY291bnRyeS1uYW1lXCJcbiAgICAgIFtjbGFzcy5pbnZhbGlkXT1cImludmFsaWQuY291bnRyeUlEXCJcbiAgICAgIFtjbGFzcy5mb2N1c109XCJmb2N1c2VkLmNvdW50cnlJRFwiXG4gICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiZGlzYWJsZWQuY291bnRyeUlEXCJcbiAgICA+XG4gICAgICA8aVxuICAgICAgICAqbmdJZj1cImNvbmZpZy5jb3VudHJ5SUQucmVxdWlyZWRcIlxuICAgICAgICBjbGFzcz1cInJlcXVpcmVkLWluZGljYXRvclwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgJ2JoaS1jaXJjbGUnOiAhdmFsaWQuY291bnRyeUlELCAnYmhpLWNoZWNrJzogdmFsaWQuY291bnRyeUlEIH1cIlxuICAgICAgPlxuICAgICAgPC9pPlxuICAgICAgPG5vdm8tcGlja2VyXG4gICAgICAgIFtjb25maWddPVwiY29uZmlnPy5jb3VudHJ5SUQ/LnBpY2tlckNvbmZpZ1wiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJjb25maWcuY291bnRyeUlELmxhYmVsXCJcbiAgICAgICAgKGNoYW5nZWQpPVwib25Db3VudHJ5Q2hhbmdlKCRldmVudClcIlxuICAgICAgICBhdXRvY29tcGxldGU9XCJzaGlwcGluZyBjb3VudHJ5XCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJtb2RlbC5jb3VudHJ5SURcIlxuICAgICAgICBbZGlzYWJsZVBpY2tlcklucHV0XT1cImRpc2FibGVkLmNvdW50cnlJRFwiXG4gICAgICA+PC9ub3ZvLXBpY2tlcj5cbiAgICA8L3NwYW4+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL0FkZHJlc3Muc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBOb3ZvQWRkcmVzc0VsZW1lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0IHtcbiAgQElucHV0KClcbiAgY29uZmlnOiBOb3ZvQWRkcmVzc0NvbmZpZztcbiAgcHJpdmF0ZSBfcmVhZE9ubHkgPSBmYWxzZTtcbiAgQElucHV0KClcbiAgc2V0IHJlYWRPbmx5KHJlYWRPbmx5OiBib29sZWFuKSB7XG4gICAgdGhpcy5fcmVhZE9ubHkgPSByZWFkT25seTtcbiAgICB0aGlzLmZpZWxkTGlzdC5mb3JFYWNoKChmaWVsZDogc3RyaW5nKSA9PiB7XG4gICAgICB0aGlzLmRpc2FibGVkW2ZpZWxkXSA9IHRoaXMuX3JlYWRPbmx5O1xuICAgIH0pO1xuICAgIGlmICh0aGlzLm1vZGVsKSB7XG4gICAgICB0aGlzLnVwZGF0ZVN0YXRlcygpO1xuICAgIH1cbiAgfVxuICBnZXQgcmVhZE9ubHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3JlYWRPbmx5O1xuICB9XG4gIHN0YXRlczogQXJyYXk8YW55PiA9IFtdO1xuICBmaWVsZExpc3Q6IEFycmF5PHN0cmluZz4gPSBbJ2FkZHJlc3MxJywgJ2FkZHJlc3MyJywgJ2NpdHknLCAnc3RhdGUnLCAnemlwJywgJ2NvdW50cnlJRCddO1xuICBtb2RlbDogYW55O1xuICBvbk1vZGVsQ2hhbmdlOiBGdW5jdGlvbiA9ICgpID0+IHt9O1xuICBvbk1vZGVsVG91Y2hlZDogRnVuY3Rpb24gPSAoKSA9PiB7fTtcbiAgZm9jdXNlZDogYW55ID0ge307XG4gIGludmFsaWQ6IGFueSA9IHt9O1xuICBkaXNhYmxlZDogYW55ID0ge307XG4gIGludmFsaWRNYXhsZW5ndGg6IGFueSA9IHt9O1xuICB2YWxpZDogYW55ID0ge307XG4gIHN0YXRlT3B0aW9uczogYW55O1xuICB0b29sdGlwOiBhbnkgPSB7fTtcbiAgaW5pdENvbXBsZXRlID0gZmFsc2U7XG4gIEBPdXRwdXQoKVxuICBjaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KClcbiAgZm9jdXM6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KClcbiAgYmx1cjogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKVxuICB2YWxpZGl0eUNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGxhYmVsczogTm92b0xhYmVsU2VydmljZSkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAoIXRoaXMuY29uZmlnKSB7XG4gICAgICB0aGlzLmNvbmZpZyA9IHt9O1xuICAgIH1cbiAgICB0aGlzLmluaXRDb25maWcoKTtcbiAgICBpZiAodGhpcy5tb2RlbCkge1xuICAgICAgdGhpcy53cml0ZVZhbHVlKHRoaXMubW9kZWwpO1xuICAgICAgdGhpcy51cGRhdGVDb250cm9sKCk7XG4gICAgfSBlbHNlIGlmICghdGhpcy5tb2RlbCkge1xuICAgICAgdGhpcy5tb2RlbCA9IHt9O1xuICAgIH1cbiAgICBpZiAoSGVscGVycy5pc0JsYW5rKHRoaXMubW9kZWwuY291bnRyeUlEKSkge1xuICAgICAgdGhpcy51cGRhdGVTdGF0ZXMoKTtcbiAgICB9XG4gIH1cblxuICBpbml0Q29uZmlnKCk6IHZvaWQge1xuICAgIHRoaXMuZmllbGRMaXN0LmZvckVhY2goKGZpZWxkOiBzdHJpbmcpID0+IHtcbiAgICAgIGlmICghdGhpcy5jb25maWcuaGFzT3duUHJvcGVydHkoZmllbGQpKSB7XG4gICAgICAgIHRoaXMuY29uZmlnW2ZpZWxkXSA9IHtcbiAgICAgICAgICBoaWRkZW46IHRydWUsXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICBpZiAoIXRoaXMuY29uZmlnW2ZpZWxkXS5oYXNPd25Qcm9wZXJ0eSgnbGFiZWwnKSkge1xuICAgICAgICB0aGlzLmNvbmZpZ1tmaWVsZF0ubGFiZWwgPSB0aGlzLmxhYmVsc1tmaWVsZF07XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5jb25maWcucmVxdWlyZWQpIHtcbiAgICAgICAgdGhpcy5jb25maWdbZmllbGRdLnJlcXVpcmVkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmNvbmZpZ1tmaWVsZF0ucmVhZE9ubHkgfHwgdGhpcy5jb25maWcucmVhZE9ubHkpIHtcbiAgICAgICAgdGhpcy5jb25maWdbZmllbGRdLnJlYWRPbmx5ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5kaXNhYmxlZFtmaWVsZF0gPSB0cnVlO1xuICAgICAgfVxuICAgICAgaWYgKGZpZWxkID09PSAnY291bnRyeUlEJykge1xuICAgICAgICBpZiAoIXRoaXMuY29uZmlnW2ZpZWxkXS5waWNrZXJDb25maWcpIHtcbiAgICAgICAgICB0aGlzLmNvbmZpZy5jb3VudHJ5SUQucGlja2VyQ29uZmlnID0gdGhpcy5nZXREZWZhdWx0Q291bnRyeUNvbmZpZygpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY29uZmlnW2ZpZWxkXS5waWNrZXJDb25maWcuZGVmYXVsdE9wdGlvbnMgPSB0aGlzLmNvbmZpZy5jb3VudHJ5SUQucGlja2VyQ29uZmlnLm9wdGlvbnM7XG4gICAgICB9XG4gICAgICBpZiAoZmllbGQgPT09ICdzdGF0ZScpIHtcbiAgICAgICAgaWYgKCF0aGlzLmNvbmZpZ1tmaWVsZF0ucGlja2VyQ29uZmlnKSB7XG4gICAgICAgICAgdGhpcy5jb25maWcuc3RhdGUucGlja2VyQ29uZmlnID0gdGhpcy5nZXREZWZhdWx0U3RhdGVDb25maWcoKTtcbiAgICAgICAgICB0aGlzLmNvbmZpZ1tmaWVsZF0ucGlja2VyQ29uZmlnLmRlZmF1bHRPcHRpb25zID0gdGhpcy5jb25maWdbZmllbGRdLnBpY2tlckNvbmZpZy5vcHRpb25zO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc3RhdGVPcHRpb25zID0gdGhpcy5jb25maWdbZmllbGRdLnBpY2tlckNvbmZpZy5vcHRpb25zO1xuICAgICAgICB0aGlzLmNvbmZpZ1tmaWVsZF0ucGlja2VyQ29uZmlnLm9wdGlvbnMgPSAocXVlcnkgPSAnJykgPT4ge1xuICAgICAgICAgIHJldHVybiB0aGlzLnN0YXRlT3B0aW9ucyhxdWVyeSwgdGhpcy5tb2RlbC5jb3VudHJ5SUQpO1xuICAgICAgICB9O1xuICAgICAgICB0aGlzLmNvbmZpZ1tmaWVsZF0ucGlja2VyQ29uZmlnLmRlZmF1bHRPcHRpb25zID0gdGhpcy5zdGF0ZU9wdGlvbnM7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBpc1ZhbGlkKGZpZWxkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBsZXQgdmFsaWQgPSB0cnVlO1xuICAgIGlmIChcbiAgICAgICgodGhpcy5jb25maWdbZmllbGRdLnJlcXVpcmVkICYmIChIZWxwZXJzLmlzQmxhbmsodGhpcy5tb2RlbFtmaWVsZF0pIHx8IEhlbHBlcnMuaXNFbXB0eSh0aGlzLm1vZGVsW2ZpZWxkXSkpKSB8fFxuICAgICAgICAhdGhpcy5jb25maWdbZmllbGRdLnJlcXVpcmVkKSAmJlxuICAgICAgIShmaWVsZCA9PT0gJ2NvdW50cnlJRCcgJiYgdGhpcy5jb25maWdbZmllbGRdLnJlcXVpcmVkICYmICFIZWxwZXJzLmlzQmxhbmsodGhpcy5tb2RlbC5jb3VudHJ5SUQpKSAmJlxuICAgICAgIShcbiAgICAgICAgZmllbGQgPT09ICdzdGF0ZScgJiZcbiAgICAgICAgdGhpcy5jb25maWdbZmllbGRdLnJlcXVpcmVkICYmXG4gICAgICAgICghSGVscGVycy5pc0VtcHR5KHRoaXMubW9kZWwuc3RhdGUpIHx8XG4gICAgICAgICAgKChIZWxwZXJzLmlzQmxhbmsodGhpcy5tb2RlbC5zdGF0ZSkgfHwgSGVscGVycy5pc0VtcHR5KHRoaXMubW9kZWwuc3RhdGUpKSAmJlxuICAgICAgICAgICAgIUhlbHBlcnMuaXNCbGFuayh0aGlzLm1vZGVsLmNvdW50cnlOYW1lKSAmJlxuICAgICAgICAgICAgdGhpcy5jb25maWcuc3RhdGUucGlja2VyQ29uZmlnICYmXG4gICAgICAgICAgICB0aGlzLmNvbmZpZy5zdGF0ZS5waWNrZXJDb25maWcuZGVmYXVsdE9wdGlvbnMgJiZcbiAgICAgICAgICAgIHRoaXMuY29uZmlnLnN0YXRlLnBpY2tlckNvbmZpZy5kZWZhdWx0T3B0aW9ucy5sZW5ndGggPT09IDApKVxuICAgICAgKVxuICAgICkge1xuICAgICAgdmFsaWQgPSBmYWxzZTtcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgIUhlbHBlcnMuaXNFbXB0eSh0aGlzLm1vZGVsW2ZpZWxkXSkgJiZcbiAgICAgICFIZWxwZXJzLmlzQmxhbmsodGhpcy5jb25maWdbZmllbGRdLm1heGxlbmd0aCkgJiZcbiAgICAgIHRoaXMuY29uZmlnW2ZpZWxkXS5tYXhsZW5ndGggPCB0aGlzLm1vZGVsW2ZpZWxkXS5sZW5ndGhcbiAgICApIHtcbiAgICAgIHZhbGlkID0gZmFsc2U7XG4gICAgfVxuICAgIHRoaXMudmFsaWRbZmllbGRdID0gdmFsaWQ7XG4gIH1cblxuICBpc0ludmFsaWQoZmllbGQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGxldCBpbnZhbGlkID0gZmFsc2U7XG4gICAgbGV0IGludmFsaWRNYXhsZW5ndGggPSBmYWxzZTtcbiAgICBpZiAoXG4gICAgICAoZmllbGQgIT09ICdjb3VudHJ5SUQnICYmXG4gICAgICAgIGZpZWxkICE9PSAnc3RhdGUnICYmXG4gICAgICAgIHRoaXMuY29uZmlnW2ZpZWxkXT8ucmVxdWlyZWQgJiZcbiAgICAgICAgSGVscGVycy5pc0VtcHR5KHRoaXMubW9kZWxbZmllbGRdKSAmJlxuICAgICAgICAhSGVscGVycy5pc0JsYW5rKHRoaXMubW9kZWxbZmllbGRdKSkgfHxcbiAgICAgIChmaWVsZCA9PT0gJ2NvdW50cnlJRCcgJiYgdGhpcy5jb25maWdbZmllbGRdPy5yZXF1aXJlZCAmJiBIZWxwZXJzLmlzQmxhbmsodGhpcy5tb2RlbC5jb3VudHJ5TmFtZSkgJiYgdGhpcy5jb25maWdbZmllbGRdPy51cGRhdGVkKSB8fFxuICAgICAgKGZpZWxkID09PSAnc3RhdGUnICYmXG4gICAgICAgIHRoaXMuY29uZmlnW2ZpZWxkXT8ucmVxdWlyZWQgJiZcbiAgICAgICAgKEhlbHBlcnMuaXNCbGFuayh0aGlzLm1vZGVsLnN0YXRlKSB8fCBIZWxwZXJzLmlzRW1wdHkodGhpcy5tb2RlbC5zdGF0ZSkpICYmXG4gICAgICAgICFIZWxwZXJzLmlzQmxhbmsodGhpcy5tb2RlbC5jb3VudHJ5SUQpICYmXG4gICAgICAgIHRoaXMuY29uZmlnW2ZpZWxkXT8udXBkYXRlZCAmJlxuICAgICAgICB0aGlzLmNvbmZpZy5zdGF0ZS5waWNrZXJDb25maWcgJiZcbiAgICAgICAgdGhpcy5jb25maWcuc3RhdGUucGlja2VyQ29uZmlnLmRlZmF1bHRPcHRpb25zICYmXG4gICAgICAgIHRoaXMuY29uZmlnLnN0YXRlLnBpY2tlckNvbmZpZy5kZWZhdWx0T3B0aW9ucy5sZW5ndGggPiAwKVxuICAgICkge1xuICAgICAgaW52YWxpZCA9IHRydWU7XG4gICAgfSBlbHNlIGlmIChcbiAgICAgICFIZWxwZXJzLmlzRW1wdHkodGhpcy5tb2RlbFtmaWVsZF0pICYmXG4gICAgICAhSGVscGVycy5pc0JsYW5rKHRoaXMuY29uZmlnW2ZpZWxkXT8ubWF4bGVuZ3RoKSAmJlxuICAgICAgdGhpcy5jb25maWdbZmllbGRdPy5tYXhsZW5ndGggPCB0aGlzLm1vZGVsW2ZpZWxkXS5sZW5ndGhcbiAgICApIHtcbiAgICAgIGludmFsaWQgPSB0cnVlO1xuICAgICAgaW52YWxpZE1heGxlbmd0aCA9IHRydWU7XG4gICAgfVxuICAgIHRoaXMuaW52YWxpZFtmaWVsZF0gPSBpbnZhbGlkO1xuICAgIHRoaXMuaW52YWxpZE1heGxlbmd0aFtmaWVsZF0gPSBpbnZhbGlkTWF4bGVuZ3RoO1xuICB9XG5cbiAgb25JbnB1dChldmVudDogRXZlbnQsIGZpZWxkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmlzSW52YWxpZChmaWVsZCk7XG4gICAgdGhpcy5pc1ZhbGlkKGZpZWxkKTtcbiAgICBpZiAoZXZlbnQpIHtcbiAgICAgIHRoaXMuY2hhbmdlLmVtaXQoeyB2YWx1ZTogdGhpcy5tb2RlbFtmaWVsZF0sIGZpZWxkIH0pO1xuICAgIH1cbiAgfVxuXG4gIGlzRm9jdXNlZChldmVudDogRXZlbnQsIGZpZWxkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmZvY3VzZWRbZmllbGRdID0gdHJ1ZTtcbiAgICB0aGlzLmZvY3VzLmVtaXQoeyBldmVudCwgZmllbGQgfSk7XG4gIH1cblxuICBpc0JsdXJyZWQoZXZlbnQ6IEV2ZW50LCBmaWVsZDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5mb2N1c2VkW2ZpZWxkXSA9IGZhbHNlO1xuICAgIHRoaXMuYmx1ci5lbWl0KHsgZXZlbnQsIGZpZWxkIH0pO1xuICB9XG5cbiAgb25Db3VudHJ5Q2hhbmdlKGV2dCkge1xuICAgIGNvbnN0IGNvdW50cnk6IGFueSA9IGV2dCAmJiBldnQucmF3VmFsdWUgPyBldnQucmF3VmFsdWUgOiBudWxsO1xuICAgIGxldCBmaWVsZDogYW55O1xuICAgIGxldCBzdGF0ZXNVcGRhdGFibGUgPSBmYWxzZTtcbiAgICB0aGlzLmNvbmZpZy5jb3VudHJ5SUQudXBkYXRlZCA9IHRydWU7XG4gICAgaWYgKHRoaXMuY29uZmlnLmNvdW50cnlJRC5waWNrZXJDb25maWcpIHtcbiAgICAgIGZpZWxkID0gdGhpcy5jb25maWcuY291bnRyeUlELnBpY2tlckNvbmZpZy5maWVsZDtcbiAgICB9XG4gICAgaWYgKGNvdW50cnkgJiYgZmllbGQgJiYgIUhlbHBlcnMuaXNCbGFuayhjb3VudHJ5W2ZpZWxkXSkgJiYgdGhpcy5tb2RlbC5jb3VudHJ5SUQgIT09IGNvdW50cnlbZmllbGRdKSB7XG4gICAgICB0aGlzLm1vZGVsLmNvdW50cnlJRCA9IGNvdW50cnlbZmllbGRdO1xuICAgICAgdGhpcy5tb2RlbC5jb3VudHJ5TmFtZSA9IEhlbHBlcnMuaW50ZXJwb2xhdGUodGhpcy5jb25maWcuY291bnRyeUlELnBpY2tlckNvbmZpZy5mb3JtYXQsIGNvdW50cnkpO1xuICAgICAgdGhpcy5kaXNhYmxlZC5zdGF0ZSA9IGZhbHNlO1xuICAgICAgdGhpcy50b29sdGlwLnN0YXRlID0gdW5kZWZpbmVkO1xuICAgICAgc3RhdGVzVXBkYXRhYmxlID0gdHJ1ZTtcbiAgICB9IGVsc2UgaWYgKEhlbHBlcnMuaXNCbGFuayhjb3VudHJ5KSB8fCBIZWxwZXJzLmlzQmxhbmsoY291bnRyeVtmaWVsZF0pKSB7XG4gICAgICB0aGlzLm1vZGVsLmNvdW50cnlJRCA9IHVuZGVmaW5lZDtcbiAgICAgIHRoaXMubW9kZWwuY291bnRyeU5hbWUgPSB1bmRlZmluZWQ7XG4gICAgICB0aGlzLmRpc2FibGVkLnN0YXRlID0gdHJ1ZTtcbiAgICAgIHRoaXMudG9vbHRpcC5zdGF0ZSA9IHRoaXMubGFiZWxzLnNlbGVjdENvdW50cnlGaXJzdDtcbiAgICAgIHRoaXMuaW52YWxpZC5zdGF0ZSA9IGZhbHNlO1xuICAgICAgc3RhdGVzVXBkYXRhYmxlID0gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyBVcGRhdGUgc3RhdGVcbiAgICBpZiAoc3RhdGVzVXBkYXRhYmxlKSB7XG4gICAgICB0aGlzLm1vZGVsLnN0YXRlID0gdW5kZWZpbmVkO1xuICAgICAgdGhpcy51cGRhdGVTdGF0ZXMoKTtcbiAgICB9XG4gICAgdGhpcy51cGRhdGVDb250cm9sKCk7XG4gICAgdGhpcy5vbklucHV0KG51bGwsICdjb3VudHJ5SUQnKTtcbiAgICB0aGlzLm9uSW5wdXQobnVsbCwgJ3N0YXRlJyk7XG4gIH1cblxuICBvblN0YXRlQ2hhbmdlKGV2dCkge1xuICAgIGNvbnN0IHN0YXRlOiBhbnkgPSBldnQgJiYgZXZ0LnZhbHVlID8gZXZ0LnZhbHVlIDogbnVsbDtcbiAgICB0aGlzLmNvbmZpZy5zdGF0ZS51cGRhdGVkID0gdHJ1ZTtcbiAgICB0aGlzLm1vZGVsLnN0YXRlID0gc3RhdGU7XG4gICAgdGhpcy51cGRhdGVDb250cm9sKCk7XG4gICAgdGhpcy5vbklucHV0KG51bGwsICdzdGF0ZScpO1xuICB9XG5cbiAgc2V0U3RhdGVMYWJlbChtb2RlbDogYW55KSB7XG4gICAgY29uc3Qgc3RhdGU6IHN0cmluZyA9IG1vZGVsLnN0YXRlO1xuICAgIGlmICghSGVscGVycy5pc0JsYW5rKHN0YXRlKSkge1xuICAgICAgaWYgKHRoaXMuY29uZmlnLnN0YXRlLnJlcXVpcmVkKSB7XG4gICAgICAgIHRoaXMudmFsaWQuc3RhdGUgPSB0cnVlO1xuICAgICAgfVxuICAgICAgdGhpcy5tb2RlbC5zdGF0ZSA9IHN0YXRlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm1vZGVsLnN0YXRlID0gdW5kZWZpbmVkO1xuICAgICAgaWYgKHRoaXMuY29uZmlnLnN0YXRlLnJlcXVpcmVkKSB7XG4gICAgICAgIHRoaXMudmFsaWQuc3RhdGUgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB1cGRhdGVTdGF0ZXMoKSB7XG4gICAgaWYgKHRoaXMuY29uZmlnLnN0YXRlLnBpY2tlckNvbmZpZy5vcHRpb25zICYmICFIZWxwZXJzLmlzQmxhbmsodGhpcy5tb2RlbC5jb3VudHJ5SUQpKSB7XG4gICAgICB0aGlzLmNvbmZpZy5zdGF0ZS5waWNrZXJDb25maWcub3B0aW9ucyA9IChxdWVyeSA9ICcnKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0YXRlT3B0aW9ucyhxdWVyeSwgdGhpcy5tb2RlbC5jb3VudHJ5SUQpO1xuICAgICAgfTtcbiAgICAgIHRoaXMuc3RhdGVPcHRpb25zKCcnLCB0aGlzLm1vZGVsLmNvdW50cnlJRCkudGhlbigocmVzdWx0cykgPT4ge1xuICAgICAgICB0aGlzLmNvbmZpZy5zdGF0ZS5waWNrZXJDb25maWcuZGVmYXVsdE9wdGlvbnMgPSByZXN1bHRzO1xuICAgICAgICBpZiAocmVzdWx0cy5sZW5ndGgpIHtcbiAgICAgICAgICB0aGlzLnRvb2x0aXAuc3RhdGUgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgdGhpcy5kaXNhYmxlZC5zdGF0ZSA9IHRoaXMuX3JlYWRPbmx5O1xuICAgICAgICAgIHRoaXMuc2V0U3RhdGVMYWJlbCh0aGlzLm1vZGVsKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmRpc2FibGVkLnN0YXRlID0gdHJ1ZTtcbiAgICAgICAgICB0aGlzLnRvb2x0aXAuc3RhdGUgPSB0aGlzLmxhYmVscy5ub1N0YXRlc0ZvckNvdW50cnk7XG4gICAgICAgICAgaWYgKHRoaXMuY29uZmlnLnN0YXRlLnJlcXVpcmVkKSB7XG4gICAgICAgICAgICB0aGlzLnZhbGlkLnN0YXRlID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy52YWxpZGl0eUNoYW5nZS5lbWl0KCk7XG4gICAgICAgIHRoaXMub25JbnB1dChudWxsLCAnc3RhdGUnKTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNvbmZpZy5zdGF0ZS5waWNrZXJDb25maWcuZGVmYXVsdE9wdGlvbnMgPSBbXTtcbiAgICAgIHRoaXMuZGlzYWJsZWQuc3RhdGUgPSB0cnVlO1xuICAgICAgdGhpcy50b29sdGlwLnN0YXRlID0gdGhpcy5sYWJlbHMuc2VsZWN0Q291bnRyeUZpcnN0O1xuICAgICAgaWYgKHRoaXMuY29uZmlnLnN0YXRlLnJlcXVpcmVkKSB7XG4gICAgICAgIHRoaXMudmFsaWQuc3RhdGUgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBnZXRTdGF0ZU9wdGlvbnMoZmlsdGVyID0gJycsIGNvdW50cnlJRDogbnVtYmVyKSB7XG4gICAgaWYgKGNvdW50cnlJRCkge1xuICAgICAgY29uc3QgY291bnRyeSA9IGZpbmRCeUNvdW50cnlJZChjb3VudHJ5SUQpO1xuICAgICAgY29uc3Qgc3RhdGVzID0gZ2V0U3RhdGVzKGNvdW50cnkubmFtZSk7XG4gICAgICBpZiAoZmlsdGVyKSB7XG4gICAgICAgIHJldHVybiBzdGF0ZXMuZmlsdGVyKChuYW1lKSA9PiBuZXcgUmVnRXhwKGAke2ZpbHRlcn1gLCAnZ2knKS50ZXN0KG5hbWUpKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBzdGF0ZXM7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG4gIH1cblxuICB1cGRhdGVDb250cm9sKCkge1xuICAgIHRoaXMub25Nb2RlbENoYW5nZSh0aGlzLm1vZGVsKTtcbiAgICB0aGlzLm9uSW5wdXQobnVsbCwgJ2NvdW50cnlJRCcpO1xuICAgIHRoaXMub25JbnB1dChudWxsLCAnc3RhdGUnKTtcbiAgfVxuXG4gIHdyaXRlVmFsdWUobW9kZWwpIHtcbiAgICBsZXQgbG9hZGluZ0NvdW50cmllcyA9IGZhbHNlO1xuICAgIGlmIChtb2RlbCkge1xuICAgICAgbGV0IGNvdW50cnlOYW1lO1xuICAgICAgaWYgKG1vZGVsLmNvdW50cnlOYW1lICYmIG1vZGVsLmNvdW50cnlJRCkge1xuICAgICAgICBjb3VudHJ5TmFtZSA9IG1vZGVsLmNvdW50cnlOYW1lO1xuICAgICAgfSBlbHNlIGlmIChtb2RlbC5jb3VudHJ5SUQpIHtcbiAgICAgICAgaWYgKHRoaXMuY29uZmlnLmNvdW50cnlJRC5waWNrZXJDb25maWcgJiYgdGhpcy5jb25maWcuY291bnRyeUlELnBpY2tlckNvbmZpZy5nZXRMYWJlbHMpIHtcbiAgICAgICAgICBpZiAoSGVscGVycy5pc0Z1bmN0aW9uKHRoaXMuY29uZmlnLmNvdW50cnlJRC5waWNrZXJDb25maWcuZ2V0TGFiZWxzKSkge1xuICAgICAgICAgICAgY29uc3QgcHJvbWlzZSA9IHRoaXMuY29uZmlnLmNvdW50cnlJRC5waWNrZXJDb25maWcuZ2V0TGFiZWxzKG1vZGVsLmNvdW50cnlJRCk7XG4gICAgICAgICAgICBsb2FkaW5nQ291bnRyaWVzID0gdHJ1ZTtcbiAgICAgICAgICAgIGlmIChwcm9taXNlLnRoZW4pIHtcbiAgICAgICAgICAgICAgcHJvbWlzZS50aGVuKChyZXN1bHQpID0+IHtcbiAgICAgICAgICAgICAgICBsb2FkaW5nQ291bnRyaWVzID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgY291bnRyeU5hbWUgPSBIZWxwZXJzLmludGVycG9sYXRlV2l0aEZhbGxiYWNrKHRoaXMuY29uZmlnLmNvdW50cnlJRC5waWNrZXJDb25maWcuZm9ybWF0LCByZXN1bHQpO1xuICAgICAgICAgICAgICAgIHRoaXMubW9kZWwgPSBPYmplY3QuYXNzaWduKG1vZGVsLCB7IGNvdW50cnlOYW1lIH0pO1xuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlU3RhdGVzKCk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKGNvdW50cnlOYW1lKSB7XG4gICAgICAgIGNvdW50cnlOYW1lID0gY291bnRyeU5hbWUudHJpbSgpO1xuICAgICAgICBtb2RlbC5zdGF0ZSA9IG1vZGVsLnN0YXRlIHx8ICcnO1xuICAgICAgICB0aGlzLm1vZGVsID0gT2JqZWN0LmFzc2lnbihtb2RlbCwgeyBjb3VudHJ5TmFtZSB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMubW9kZWwgPSBtb2RlbDtcbiAgICAgIH1cbiAgICAgIGlmICghbG9hZGluZ0NvdW50cmllcyAmJiAhSGVscGVycy5pc0JsYW5rKHRoaXMubW9kZWwuY291bnRyeUlEKSkge1xuICAgICAgICB0aGlzLnVwZGF0ZVN0YXRlcygpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLmZpZWxkTGlzdC5mb3JFYWNoKChmaWVsZDogc3RyaW5nKSA9PiB7XG4gICAgICB0aGlzLm9uSW5wdXQobnVsbCwgZmllbGQpO1xuICAgIH0pO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogRnVuY3Rpb24pOiB2b2lkIHtcbiAgICB0aGlzLm9uTW9kZWxDaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBGdW5jdGlvbik6IHZvaWQge1xuICAgIHRoaXMub25Nb2RlbFRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RGVmYXVsdFN0YXRlQ29uZmlnKCkge1xuICAgIHJldHVybiB7XG4gICAgICBmaWVsZDogJ3ZhbHVlJyxcbiAgICAgIGZvcm1hdDogJyRsYWJlbCcsXG4gICAgICBvcHRpb25zOiAocXVlcnkgPSAnJywgY291bnRyeUlEKSA9PiB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5nZXRTdGF0ZU9wdGlvbnMocXVlcnksIGNvdW50cnlJRCkpO1xuICAgICAgfSxcbiAgICAgIGdldExhYmVsczogKHN0YXRlOiBzdHJpbmcpID0+IHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShzdGF0ZSk7XG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGdldERlZmF1bHRDb3VudHJ5Q29uZmlnKCkge1xuICAgIHJldHVybiB7XG4gICAgICBmaWVsZDogJ3ZhbHVlJyxcbiAgICAgIGZvcm1hdDogJyRsYWJlbCcsXG4gICAgICBvcHRpb25zOiAocXVlcnkgPSAnJykgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgICAgICBsZXQgY291bnRyaWVzID0gQ09VTlRSSUVTO1xuICAgICAgICAgIGlmIChxdWVyeSkge1xuICAgICAgICAgICAgY291bnRyaWVzID0gY291bnRyaWVzLmZpbHRlcigoY291bnRyeSkgPT4gbmV3IFJlZ0V4cChgJHtxdWVyeX1gLCAnZ2knKS50ZXN0KGNvdW50cnkubmFtZSkpO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gcmVzb2x2ZShjb3VudHJpZXMubWFwKChjb3VudHJ5KSA9PiAoeyB2YWx1ZTogY291bnRyeS5pZCwgbGFiZWw6IGNvdW50cnkubmFtZSB9KSkpO1xuICAgICAgICB9KTtcbiAgICAgIH0sXG4gICAgICBnZXRMYWJlbHM6IChjb3VudHJ5SUQpID0+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zdCBjb3VudHJ5OiBhbnkgPSBmaW5kQnlDb3VudHJ5SWQoY291bnRyeUlEKTtcbiAgICAgICAgICBpZiAoY291bnRyeSkge1xuICAgICAgICAgICAgcmVzb2x2ZSh7IHZhbHVlOiBjb3VudHJ5LmlkLCBsYWJlbDogY291bnRyeS5uYW1lIH0pO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXNvbHZlKCcnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|