myrtex-widget-site-header 1.0.21 → 1.0.22
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/esm2020/lib/models/header-widget.model.mjs +1 -1
- package/esm2020/lib/modules/main-menu/main-menu.component.mjs +9 -3
- package/esm2020/lib/modules/ovz-menu/ovz-menu.component.mjs +1 -1
- package/esm2020/lib/modules/public-pages/public-pages.component.mjs +26 -2
- package/esm2020/lib/myrtex-widget-site-header.component.mjs +63 -23
- package/esm2020/lib/myrtex-widget-site-header.module.mjs +19 -4
- package/esm2020/lib/services/site-header.service.mjs +24 -0
- package/esm2020/lib/store/site-header.actions.mjs +11 -0
- package/esm2020/lib/store/site-header.effects.mjs +23 -0
- package/esm2020/lib/store/site-header.reducer.mjs +20 -0
- package/esm2020/lib/store/site-header.selectors.mjs +4 -0
- package/esm2020/lib/store/site-header.state.mjs +6 -0
- package/fesm2015/myrtex-widget-site-header.mjs +159 -26
- package/fesm2015/myrtex-widget-site-header.mjs.map +1 -1
- package/fesm2020/myrtex-widget-site-header.mjs +170 -25
- package/fesm2020/myrtex-widget-site-header.mjs.map +1 -1
- package/lib/models/header-widget.model.d.ts +1 -0
- package/lib/modules/main-menu/main-menu.component.d.ts +3 -1
- package/lib/modules/public-pages/public-pages.component.d.ts +8 -3
- package/lib/myrtex-widget-site-header.component.d.ts +11 -3
- package/lib/myrtex-widget-site-header.module.d.ts +8 -6
- package/lib/services/site-header.service.d.ts +15 -0
- package/lib/store/site-header.actions.d.ts +17 -0
- package/lib/store/site-header.effects.d.ts +14 -0
- package/lib/store/site-header.reducer.d.ts +4 -0
- package/lib/store/site-header.selectors.d.ts +3 -0
- package/lib/store/site-header.state.d.ts +7 -0
- package/package.json +1 -1
|
@@ -1,22 +1,31 @@
|
|
|
1
1
|
import { Component, HostListener, Input, ViewChild } from '@angular/core';
|
|
2
|
+
import { filter, take } from 'rxjs/operators';
|
|
2
3
|
import { ColorSchemeEnum, FontSizeEnum, MenuTypesEnum } from './models/header-widget.enam';
|
|
3
4
|
import { OvzMenuComponent } from './modules/ovz-menu/ovz-menu.component';
|
|
4
5
|
import { FONT_SCALE_150, FONT_SCALE_175, HIDE_IMAGES, THEME_CONTRAST_BLACK, THEME_CONTRAST_BLUE, THEME_CONTRAST_LIGHT, THEME_CONTRAST_SEPIA } from './modules/ovz-menu/constants';
|
|
6
|
+
import { loadHeaderDataPending } from './store/site-header.actions';
|
|
7
|
+
import { selectSiteHeaderModel } from './store/site-header.selectors';
|
|
5
8
|
import * as i0 from "@angular/core";
|
|
6
9
|
import * as i1 from "@angular/cdk/layout";
|
|
7
|
-
import * as i2 from "
|
|
8
|
-
import * as i3 from "./modules/
|
|
9
|
-
import * as i4 from "./modules/
|
|
10
|
-
import * as i5 from "./
|
|
11
|
-
import * as i6 from "./
|
|
12
|
-
import * as i7 from "
|
|
10
|
+
import * as i2 from "@ngrx/store";
|
|
11
|
+
import * as i3 from "./modules/ovz-menu/ovz-menu.component";
|
|
12
|
+
import * as i4 from "./modules/award-user-menu/components/award-user-menu.component";
|
|
13
|
+
import * as i5 from "./modules/main-menu/main-menu.component";
|
|
14
|
+
import * as i6 from "./components/all-services-menu/all-services-menu.component";
|
|
15
|
+
import * as i7 from "./modules/public-pages/public-pages.component";
|
|
16
|
+
import * as i8 from "@angular/common";
|
|
13
17
|
export class MyrtexWidgetSiteHeaderComponent {
|
|
14
|
-
constructor(breakpointObserver, renderer) {
|
|
18
|
+
constructor(breakpointObserver, renderer, store) {
|
|
15
19
|
this.breakpointObserver = breakpointObserver;
|
|
16
20
|
this.renderer = renderer;
|
|
21
|
+
this.store = store;
|
|
17
22
|
this.headerModel = { publicPages: [] };
|
|
18
23
|
this.isMobile = false;
|
|
19
24
|
this.isDesktop = false;
|
|
25
|
+
this.isLoaded = false;
|
|
26
|
+
this.isWide = false;
|
|
27
|
+
this.hideNotLogginMainMenu = false;
|
|
28
|
+
this.selectedRegion = null;
|
|
20
29
|
this._mobileBreakpoint = '(max-width: 991px)';
|
|
21
30
|
this._desktopBreakpoint = '(min-width: 992px)';
|
|
22
31
|
this._isOvzModeOpened = false;
|
|
@@ -28,7 +37,11 @@ export class MyrtexWidgetSiteHeaderComponent {
|
|
|
28
37
|
this.cookieLifetimeDays = 365;
|
|
29
38
|
}
|
|
30
39
|
set dataHeader(value) {
|
|
31
|
-
|
|
40
|
+
if (value === null || value === undefined) {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
this.isLoaded = true;
|
|
44
|
+
this._applyHeaderModel(value);
|
|
32
45
|
}
|
|
33
46
|
ngOnInit() {
|
|
34
47
|
this._breakpointSubscription = this.breakpointObserver
|
|
@@ -44,22 +57,29 @@ export class MyrtexWidgetSiteHeaderComponent {
|
|
|
44
57
|
this._updateBody();
|
|
45
58
|
}
|
|
46
59
|
});
|
|
47
|
-
if (this.
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
this.writeSettingsToCookies(this.headerModel.ovzSettings);
|
|
51
|
-
}
|
|
52
|
-
else if (this.headerModel.isLoggedIn == false) {
|
|
53
|
-
const cookieSettings = this.readSettingsFromCookies() ?? this.getDefaultSettings();
|
|
54
|
-
this.applySettings(cookieSettings);
|
|
55
|
-
}
|
|
60
|
+
if (this.isLoaded) {
|
|
61
|
+
this._initOvzSettings();
|
|
62
|
+
return;
|
|
56
63
|
}
|
|
64
|
+
this.store.dispatch(loadHeaderDataPending({ isWide: this.isWide }));
|
|
65
|
+
this._headerDataSubscription = this.store
|
|
66
|
+
.select(selectSiteHeaderModel)
|
|
67
|
+
.pipe(filter((model) => model !== null), take(1))
|
|
68
|
+
.subscribe((model) => {
|
|
69
|
+
this._applyHeaderModel(model);
|
|
70
|
+
this._initOvzSettings();
|
|
71
|
+
this.isLoaded = true;
|
|
72
|
+
});
|
|
73
|
+
console.log('hideNotLogginMainMenu:' + this.hideNotLogginMainMenu);
|
|
57
74
|
}
|
|
58
75
|
ngOnDestroy() {
|
|
59
76
|
this.renderer.removeClass(document.body, 'body-no-scroll');
|
|
60
77
|
if (this._breakpointSubscription) {
|
|
61
78
|
this._breakpointSubscription.unsubscribe();
|
|
62
79
|
}
|
|
80
|
+
if (this._headerDataSubscription) {
|
|
81
|
+
this._headerDataSubscription.unsubscribe();
|
|
82
|
+
}
|
|
63
83
|
}
|
|
64
84
|
onEscape() {
|
|
65
85
|
const hasOpenedMenu = this.isOvzModeOpened ||
|
|
@@ -163,7 +183,21 @@ export class MyrtexWidgetSiteHeaderComponent {
|
|
|
163
183
|
this.renderer.removeClass(document.body, 'body-no-scroll');
|
|
164
184
|
}
|
|
165
185
|
}
|
|
166
|
-
|
|
186
|
+
_initOvzSettings() {
|
|
187
|
+
if (!this.headerModel.hasOvz) {
|
|
188
|
+
return;
|
|
189
|
+
}
|
|
190
|
+
if (this.headerModel.ovzSettings) {
|
|
191
|
+
this.applySettings(this.headerModel.ovzSettings);
|
|
192
|
+
this.writeSettingsToCookies(this.headerModel.ovzSettings);
|
|
193
|
+
return;
|
|
194
|
+
}
|
|
195
|
+
if (this.headerModel.isLoggedIn === false) {
|
|
196
|
+
const cookieSettings = this.readSettingsFromCookies() ?? this.getDefaultSettings();
|
|
197
|
+
this.applySettings(cookieSettings);
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
_applyHeaderModel(value) {
|
|
167
201
|
if (value === null || value === undefined) {
|
|
168
202
|
this.headerModel = { publicPages: [] };
|
|
169
203
|
return;
|
|
@@ -284,14 +318,20 @@ export class MyrtexWidgetSiteHeaderComponent {
|
|
|
284
318
|
document.documentElement.classList.remove(FONT_SCALE_175);
|
|
285
319
|
}
|
|
286
320
|
}
|
|
287
|
-
MyrtexWidgetSiteHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MyrtexWidgetSiteHeaderComponent, deps: [{ token: i1.BreakpointObserver }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
288
|
-
MyrtexWidgetSiteHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: MyrtexWidgetSiteHeaderComponent, selector: "lib-myrtex-widget-site-header", inputs: { dataHeader: ["data-header", "dataHeader"] }, host: { listeners: { "document:keydown.escape": "onEscape()" } }, viewQueries: [{ propertyName: "child", first: true, predicate: OvzMenuComponent, descendants: true }], ngImport: i0, template: "<header class=\"universal-header\" [class.header-light]=\"headerModel.isTransparent\" [class.header-transparent]=\"canApplyTransparentClass\">\r\n <div class=\"universal-header__top\">\r\n <div class=\"container\">\r\n <a href=\"/\" class=\"universal-header__top-logo\">\r\n <svg class=\"top-logo__logo\">\r\n <ng-container *ngIf=\"headerModel?.isVse; else fpgLogo\">\r\n <use href=\"#VSE_logo\"></use>\r\n </ng-container>\r\n <ng-template #fpgLogo>\r\n <use [attr.xlink:href]=\"canApplyTransparentClass ? '#FPG_logo_white' : '#FPG_logo_black'\"></use>\r\n </ng-template>\r\n </svg>\r\n </a>\r\n <div class=\"universal-header__top-right\">\r\n <div class=\"universal-header__buttons\">\r\n <div class=\"universal-header__ovz\" *ngIf=\"headerModel.hasOvz ?? true\">\r\n <button\r\n class=\"universal-button\"\r\n [class.active]=\"isOvzModeOpened\"\r\n aria-controls=\"ovzDropdown\"\r\n (click)=\"toggleOvzModeWrapper($event)\"\r\n >\r\n <span aria-hidden=\"true\" aria-hidden=\"true\" *ngIf=\"isDesktop || !isOvzModeOpened\" \r\n class=\"mrx-icon fpg-icon icon-fpg-glasses icon-font-20 text-normal\">\r\n </span>\r\n \r\n <span aria-hidden=\"true\" *ngIf=\"isOvzModeOpened && !isDesktop\" \r\n class=\"mrx-icon fpg-icon icon-fpg-close icon-font-20 text-normal\">\r\n </span>\r\n\r\n <span *ngIf=\"isDesktop\">\u0412\u0435\u0440\u0441\u0438\u044F \u0434\u043B\u044F \u0441\u043B\u0430\u0431\u043E\u0432\u0438\u0434\u044F\u0449\u0438\u0445</span>\r\n </button>\r\n\r\n <lib-ovz-menu\r\n *ngIf=\"!isMobile && (headerModel.hasOvz ?? false)\"\r\n [opened]=\"isOvzModeOpened\"\r\n [userId]=\"headerModel.userIdentity?.id\"\r\n [isAutentificated]=\"headerModel.isLoggedIn ?? false\"\r\n [initialSettings]=\"headerModel.ovzSettings\"\r\n (settingsChanged)=\"onOvzSettingsChanged($event)\"\r\n (closed)=\"isOvzModeOpened = false\"\r\n ></lib-ovz-menu>\r\n </div>\r\n\r\n <button\r\n class=\"universal-button\"\r\n [class.active]=\"isAllServicesMenuOpened\"\r\n aria-expanded=\"false\"\r\n aria-controls=\"allServicesDropdown\"\r\n (click)=\"toggleAllServicesWrapper($event)\"\r\n >\r\n <span aria-hidden=\"true\" *ngIf=\"isDesktop || !isAllServicesMenuOpened\" \r\n class=\"mrx-icon fpg-icon icon-fpg-components icon-font-20 text-normal\">\r\n </span>\r\n\r\n <span aria-hidden=\"true\" *ngIf=\"isAllServicesMenuOpened && !isDesktop\" \r\n class=\"mrx-icon fpg-icon icon-fpg-close icon-font-20 text-normal\">\r\n </span>\r\n\r\n <span *ngIf=\"isDesktop\">\u0412\u0441\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044B</span>\r\n </button>\r\n\r\n <button\r\n *ngIf=\"isMobile\"\r\n class=\"universal-button\"\r\n [class.active]=\"isMobileMenuOpened\"\r\n aria-expanded=\"false\"\r\n aria-controls=\"user-dropdown\"\r\n (click)=\"toggleMainMenu($event)\"\r\n >\r\n <span aria-hidden=\"true\" *ngIf=\"isMobile && !isMobileMenuOpened\" \r\n class=\"mrx-icon fpg-icon icon-fpg-menu icon-font-20 text-normal text-normal\">\r\n </span>\r\n\r\n <span aria-hidden=\"true\" *ngIf=\"isMobile && isMobileMenuOpened\" \r\n class=\"mrx-icon fpg-icon icon-fpg-close icon-font-20 text-normal\">\r\n </span>\r\n </button>\r\n </div>\r\n\r\n <ng-container *ngIf=\"isShowAwardUserMenu && !isMobile\">\r\n <mrx-award-user-menu [hideUserNavMenu]=\"true\"></mrx-award-user-menu>\r\n </ng-container>\r\n\r\n <lib-main-menu\r\n [headerModel]=\"headerModel\"\r\n [isMobile]=\"isMobile\"\r\n [opened]=\"isMobileMenuOpened\"\r\n [isShowAwardUserMenu]=\"isShowAwardUserMenu ?? false\"\r\n ></lib-main-menu>\r\n </div>\r\n </div>\r\n <lib-ovz-menu\r\n *ngIf=\"isMobile && (headerModel.hasOvz ?? false)\"\r\n [opened]=\"isOvzModeOpened\"\r\n [userId]=\"headerModel.userIdentity?.id\"\r\n [isAutentificated]=\"headerModel.isLoggedIn ?? false\"\r\n [initialSettings]=\"headerModel.ovzSettings\"\r\n (settingsChanged)=\"onOvzSettingsChanged($event)\"\r\n (closed)=\"isOvzModeOpened = false\"\r\n ></lib-ovz-menu>\r\n\r\n <lib-all-services-menu\r\n *ngIf=\"isAllServicesMenuOpened\"\r\n [headerModel]=\"headerModel\" \r\n (closed)=\"isAllServicesMenuOpened = false\"\r\n ></lib-all-services-menu>\r\n </div>\r\n\r\n <div class=\"container\" *ngIf=\"!isMobile\">\r\n <lib-public-pages\r\n [data]=\"headerModel.publicPages\"\r\n [headerPosition]=\"headerModel.headerPosition ?? ''\"\r\n ></lib-public-pages>\r\n </div>\r\n</header>\r\n", styles: [":host .universal-header{background:var(--brand-bg-tertiary-default, #fff);font-family:Wix Madefor Display,sans-serif;font-size:1rem;font-weight:600;line-height:1.25;padding:24px 0 32px;position:relative;z-index:20}@media (max-width: 991px){:host .universal-header{padding:16px 0}}:host .universal-header *{font-family:Wix Madefor Display,sans-serif;font-weight:600}:host .universal-header ::ng-deep button:focus-visible,:host .universal-header ::ng-deep button:focus-within,:host .universal-header ::ng-deep a:focus-visible,:host .universal-header ::ng-deep a:focus-within,:host .universal-header ::ng-deep [role=button]:focus-within,:host .universal-header ::ng-deep [tabindex]:focus-within{outline:none;box-shadow:0 0 0 1px var(--brand-bg-secondary-default, #fbf5ee)}:host .universal-header ::ng-deep .universal-button{background:var(--neutral-bg-page, #F4F4F4);color:var(--neutral-text-primary, #262626);border:none;border-radius:8px;padding:12px 16px;display:flex;justify-content:center;align-items:center;gap:8px;cursor:pointer;font-size:1rem;font-weight:600;line-height:1.25;font-family:Wix Madefor Display,sans-serif;transition:all .2s ease-in-out}@media (max-width: 991px){:host .universal-header ::ng-deep .universal-button{padding:8px}}:host .universal-header ::ng-deep .universal-button:hover,:host .universal-header ::ng-deep .universal-button:active,:host .universal-header ::ng-deep .universal-button.active{background:var(--brand-bg-secondary-hover, #ebe1d5)}:host .universal-header ::ng-deep .universal-button span{white-space:nowrap;color:var(--neutral-text-primary, #FFF)}:host .universal-header ::ng-deep .universal-button .mrx-icon{color:var(--neutral-text-primary, #FFF)}:host .universal-header ::ng-deep .universal-button--accent{display:inline-flex;min-height:44px;padding:12px 16px;justify-content:center;align-items:center;gap:8px;border-radius:8px;font-weight:600;line-height:1.25;font-family:Wix Madefor Display,sans-serif;transition:all .2s ease-in-out;background:var(--brand-public-bg-primary, #282828);color:var(--brand-accessibility-text-inverse, #fff)}:host .universal-header ::ng-deep .universal-button--accent:hover{background:var(--neutral-text-secondary, #636363)}:host .universal-header ::ng-deep .universal-button--accent:active,:host .universal-header ::ng-deep .universal-button--accent .active{background:var(--neutral-text-tertiary, #9F9F9F)}:host .universal-header.header-transparent{background:transparent!important}:host .universal-header__buttons{display:flex;align-items:center;gap:12px}@media (max-width: 991px){:host .universal-header__buttons{gap:8px}}:host .universal-header__top{position:relative;z-index:20}@media (max-width: 991px){:host .universal-header__top{position:initial}}:host .universal-header__top>.container{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;position:relative}:host .universal-header__top>.container:after{content:\"\";height:1px;width:calc(100% - 32px);position:absolute;background-color:var(--neutral-bg-island-default, #f4f4f4);bottom:0;left:16px}@media (max-width: 991px){:host .universal-header__top>.container{padding-bottom:0;position:initial}:host .universal-header__top>.container:after{content:none}}:host .universal-header__top-logo{height:62px;max-width:200px;min-width:200px;display:flex;align-items:center;overflow:hidden}:host .universal-header__top-logo svg.top-logo__logo{max-height:62px;max-width:196px}:host .universal-header__top-right{display:flex;gap:12px}@media (max-width: 991px){:host .universal-header__top-right{gap:0}}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent{background:var(--neutral-bg-page, #282828);color:var(--neutral-text-primary, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button:hover,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent:hover,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button:focus,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent:focus,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button:active,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent:active,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button.active,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent.active{background:var(--neutral-bg-page, #282828);color:var(--neutral-text-primary, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-header__top>.container:after{background-color:var(--neutral-bg-page, #282828)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header__user-profile .user-profile__avatar{background:var(--neutral-bg-page, #282828)}@media (max-width: 991px){:host ::ng-deep .universal-header__top-nav{position:fixed;top:94px;left:0;right:0;height:calc(100vh - 94px);height:calc(100dvh - 94px);overflow-y:auto;-webkit-overflow-scrolling:touch;box-sizing:border-box;width:100%;background:var(--brand-bg-tertiary-default, #fff)}}:host ::ng-deep .universal-header__top-nav .icon-up{transform:rotate(180deg);transition:transform .2s ease}:host ::ng-deep .universal-header__user{position:relative}@media (max-width: 991px){:host ::ng-deep .universal-header__user{border-top:1px solid var(--neutral-bg-island-default, #f4f4f4);border-bottom:1px solid var(--neutral-bg-island-default, #f4f4f4);padding:8px 0}}:host ::ng-deep .universal-header__user-profile{display:flex;align-items:center;gap:8px;cursor:pointer}@media (max-width: 991px){:host ::ng-deep .universal-header__user-profile{padding:12px 16px}}:host ::ng-deep .universal-header__user-profile__wrapper{display:flex;align-items:center;gap:12px;cursor:pointer;width:100%}@media (max-width: 991px){:host ::ng-deep .universal-header__user-profile__wrapper{width:calc(100% - 24px)}}:host ::ng-deep .universal-header__user-profile .user-profile__avatar{width:44px;height:44px;border-radius:50%;background:var(--neutral-bg-island-default, #F4F4F4)}:host ::ng-deep .universal-header__user-profile .user-profile__avatar .mrx-icon{color:var(--neutral-text-primary, #FFF)}:host ::ng-deep .universal-header__user-profile .user-profile__avatar>*{width:44px;height:44px;border-radius:50%;object-fit:cover}:host ::ng-deep .universal-header__user-profile .user-profile__avatar img{width:44px;height:44px;min-width:44px;max-height:44px;border-radius:50%;object-fit:cover}:host ::ng-deep .universal-header__user-profile .user-profile__info{display:inline-flex;flex-direction:column;align-items:start;max-width:200px}@media (max-width: 991px){:host ::ng-deep .universal-header__user-profile .user-profile__info{max-width:320px;min-width:0}}:host ::ng-deep .universal-header__user-profile .user-profile__info-role,:host ::ng-deep .universal-header__user-profile .user-profile__info-name{line-height:1.25;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:Wix Madefor Display,sans-serif}:host ::ng-deep .universal-header__user-profile .user-profile__info-role{font-size:.875rem;color:var(--neutral-text-tertiary, #9f9f9f)}:host ::ng-deep .universal-header__user-profile .user-profile__info-name{font-weight:600}:host ::ng-deep .universal-header__user-profile .user-profile__info-name.active{color:var(--brand-public-primary, #D5AE75)}@media (max-width: 991px){:host ::ng-deep .universal-header__user-profile{border-radius:0;padding:12px 16px}}@media (min-width: 992px){:host ::ng-deep .universal-header__user-menu{position:absolute;top:calc(100% + 3px);right:0;border-radius:16px;min-width:200px;background:var(--brand-bg-tertiary-default, #fff);box-shadow:0 4px 40px #181e4c1a;z-index:1000;opacity:0;visibility:hidden;transition:all .2s ease}}:host ::ng-deep .universal-header__user-menu .user-menu__list{list-style:none;padding:0;margin:0;width:100%}:host ::ng-deep .universal-header__user-menu .user-menu__list li a{display:inline-flex;align-items:center;padding:12px 16px;color:var(--brand-accessibility-text-primary, #282828);text-decoration:none!important;font-style:normal;font-weight:600;line-height:1.25;font-family:Wix Madefor Display,sans-serif}@media (max-width: 991px){:host ::ng-deep .universal-header__user-menu .user-menu__list li a{border-radius:8px}}:host ::ng-deep .universal-header__user-menu .user-menu__list li a .badge{display:flex;align-items:center;justify-content:center;white-space:nowrap;color:#fff;border-radius:50%;padding:4px;font-size:.875rem;font-weight:600;line-height:1.43;min-width:20px;height:20px;float:left;margin-left:8px;background:var(--brand-accessibility-text-primary, #282828);font-family:Wix Madefor Display,sans-serif}:host ::ng-deep .universal-header__user-menu .user-menu__list li:hover{background:var(--neutral-bg-page, #f4f4f4)}:host ::ng-deep .universal-header__user-menu .user-menu__list li:active,:host ::ng-deep .universal-header__user-menu .user-menu__list li.active{background:var(--brand-bg-secondary-hover, #ebe1d5)}@media (min-width: 992px){:host ::ng-deep .universal-header__user-menu .user-menu__list li:first-child{border-radius:16px 16px 0 0;padding-top:4px}}@media (min-width: 992px){:host ::ng-deep .universal-header__user-menu .user-menu__list li:last-child{border-radius:0 0 16px 16px;padding-bottom:4px}}@media (min-width: 992px){:host ::ng-deep .universal-header__user:hover .user-profile__info-name,:host ::ng-deep .universal-header__user:focus-within .user-profile__info-name,:host ::ng-deep .universal-header__user:active .user-profile__info-name{color:var(--brand-public-primary, #D5AE75)}}@media (min-width: 992px){:host ::ng-deep .universal-header__user:hover .universal-header__user-menu,:host ::ng-deep .universal-header__user:focus-within .universal-header__user-menu,:host ::ng-deep .universal-header__user:active .universal-header__user-menu{opacity:1;visibility:visible}}@media (max-width: 991px){:host ::ng-deep .universal-header__login{padding:8px 16px;border-top:1px solid var(--neutral-bg-island-default, #f4f4f4);border-bottom:1px solid var(--neutral-bg-island-default, #f4f4f4)}}@media (max-width: 991px){:host ::ng-deep .universal-header__login .universal-button--accent{margin:12px 0;width:100%}}@media screen and (min-width: 992px){:host ::ng-deep .universal-header.header-transparent .user-profile__info-role,:host ::ng-deep .universal-header.header-transparent .user-profile__info-name{color:var(--brand-accessibility-text-inverse, #fff)}}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a{color:var(--neutral-text-inverse, #fff)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a:hover,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a:focus,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a:active,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a.active{color:var(--neutral-text-inverse, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-profile .user-profile__info-role,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-profile .user-profile__info-name{color:var(--neutral-text-inverse, #FFF)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li:active,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li.active{background:var(--neutral-bg-page, #282828);color:var(--neutral-text-primary, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li:active a,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li.active a{color:var(--neutral-text-primary, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li:active:hover,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li.active:hover{background-color:var(--neutral-bg-page, #282828)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li:hover{background-color:var(--brand-bg-tertiary-default, #F9F3D3)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li a{color:var(--neutral-text-inverse, #FFF)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .mrx-icon.icon-chevron-down{color:var(--neutral-text-inverse, #FFF)}@media (min-width: 992px){:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__user-menu{border:1px solid var(--brand-public-primary, #D5AE75)}}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__user-menu{border:1px solid var(--neutral-bg-page, #282828)}:host ::ng-deep .universal-header__services{background:var(--brand-bg-tertiary-default, #fff);padding-top:16px;padding-bottom:24px;position:absolute;top:100%;left:0;right:0;width:100%;border-radius:0 0 40px 40px;z-index:20}@media (max-width: 991px){:host ::ng-deep .universal-header__services{position:fixed;top:94px;left:0;right:0;height:calc(100vh - 94px);height:calc(100dvh - 94px);overflow-y:auto;padding-bottom:calc(24px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;box-sizing:border-box;padding-top:0;border-radius:0}}:host ::ng-deep .universal-header__services>.container{display:flex;flex-direction:column;gap:24px;width:100%}@media (max-width: 991px){:host ::ng-deep .universal-header__services>.container{padding:0}}:host ::ng-deep .universal-header__services-list{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:8px 12px;gap:8px 12px;list-style:none;padding:0;margin:0}@media (max-width: 991px){:host ::ng-deep .universal-header__services-list{position:relative;grid-template-columns:1fr 1fr;padding:8px 0;gap:8px;border-top:1px solid var(--neutral-bg-island-default, #f4f4f4)}}@media (max-width: 767px){:host ::ng-deep .universal-header__services-list{grid-template-columns:1fr}}:host ::ng-deep .universal-header__services-list a{border-radius:8px;background:var(--brand-bg-tertiary-default, #fff);color:var(--brand-accessibility-text-primary, #282828);text-decoration:none!important;display:flex;padding:12px 36px 12px 16px;align-items:center;gap:8px;align-self:stretch;position:relative;transition:all .2s ease-in-out}:host ::ng-deep .universal-header__services-list a:hover,:host ::ng-deep .universal-header__services-list a:active{background-color:var(--neutral-bg-island-default, #f4f4f4)}:host ::ng-deep .universal-header__services-list a:hover:after,:host ::ng-deep .universal-header__services-list a:active:after{content:\"\";position:absolute;top:50%;transform:translateY(-50%);right:16px;width:20px;height:20px;background-image:url(data:image/svg+xml,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%0A%3Cpath%20d%3D%22M15.345%204.65503L4.65479%2015.3452M15.345%204.65503L5.16986%204.67639M15.345%204.65503L15.3239%2014.8304%22%20stroke%3D%22%23282828%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22/%3E%0A%3C/svg%3E%0A);background-repeat:no-repeat;background-position:center center;background-size:contain}:host ::ng-deep .universal-header__services-list .services-list__link-name{line-height:1.25;font-weight:400;font-family:Wix Madefor Display,sans-serif;color:var(--brand-accessibility-text-primary, #282828)}:host ::ng-deep .universal-header__services-list .services-list__link-subname{font-size:.875rem;line-height:1.4;font-weight:400;color:var(--brand-text-accent, #624e33);font-family:Wix Madefor Display,sans-serif}@media (max-width: 991px){:host ::ng-deep .universal-header__services-list .services-list__link-name,:host ::ng-deep .universal-header__services-list .services-list__link-subname{font-weight:600}}:host ::ng-deep .universal-header__services-list .services-list__link-icon{max-width:20px;max-height:20px}:host ::ng-deep .universal-header__social{display:flex;gap:12px;padding-left:12px}@media (max-width: 991px){:host ::ng-deep .universal-header__social{padding:0 16px 32px}}:host ::ng-deep .universal-header__social-link{display:flex;padding:8px;align-items:center;border-radius:100%;background:var(--neutral-bg-island-default, #f4f4f4)}:host ::ng-deep .universal-header__social-link:hover,:host ::ng-deep .universal-header__social-link:active{background:var(--brand-bg-secondary-hover, #ebe1d5)}:host ::ng-deep .universal-header__social-icon{max-width:24px;max-height:24px;fill:var(--brand-accessibility-text-primary, #282828);transition:all .2s ease-in-out}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name{color:var(--neutral-text-inverse, #fff)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name:hover,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name:focus,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name:active,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name.active{color:var(--neutral-text-inverse, #fff)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__social-link{background:var(--neutral-bg-page, #282828)}:host-context(body.hide-images) ::ng-deep .universal-header__services-list .services-list__link-icon{display:none}@media (min-width: 992px){:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__services{border:1px solid var(--brand-public-primary, #D5AE75)}}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services{border:1px solid var(--neutral-bg-page, #282828)}:host ::ng-deep .universal-header__ovz{position:relative}:host ::ng-deep .universal-header__ovz-mode{position:absolute;top:calc(100% + 12px);right:0;border-radius:16px;min-width:400px;background:var(--brand-bg-tertiary-default, #fff);box-shadow:0 1px 4px #3b43571a;z-index:1000;transition:all .2s ease}@media (max-width: 991px){:host ::ng-deep .universal-header__ovz-mode{height:100vh;padding-top:0;padding-bottom:32px;overflow-y:auto;box-shadow:none;min-width:100%;border-radius:0;position:absolute;top:100%;left:0;right:0;width:100%;z-index:20}}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__section{justify-content:space-between;display:flex;padding:12px 16px;align-items:center;gap:8px}@media (max-width: 991px){:host ::ng-deep .universal-header__ovz-mode .ovz-mode__section{flex-wrap:wrap}}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__section .universal-button{padding:12px 16px}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__label{font-weight:600;font-size:1rem;white-space:nowrap;color:var(--brand-accessibility-text-primary, #282828)}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle-group,:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color-group{display:flex;gap:12px}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle,:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:2px solid transparent;border-radius:50%;font-weight:600;cursor:pointer;transition:all .2s ease}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle.active,:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color.active{border:2px solid var(--brand-public-primary, #D5AE75)}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle{background-color:var(--neutral-bg-page, #f4f4f4);color:var(--neutral-text-primary, #262626);font-size:16px;line-height:1.25;font-family:Wix Madefor Display,sans-serif}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle--medium{font-size:24px}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle--large{font-size:32px}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color{font-size:1rem}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--default{background-color:var(--brand-primary-default, #EBE1D5)}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--light{background-color:var(--neutral-bg-page, #F4F4F4);color:var(--neutral-text-primary, #262626)}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--sepia{background-color:#fff9da}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--blue{background-color:#a4d0fd}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--black{background-color:#000;color:#fff}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox .mrx-switch-slider{width:68px!important;min-width:68px!important;height:40px!important}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox .mrx-switch-slider:before{width:36px!important;height:36px!important}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox input:checked+.mrx-switch-slider:before{transform:translate(28px)!important}:host ::ng-deep .mrx-switch.mrx-switch .mrx-switch-checkbox input:checked:not(:disabled)+.mrx-switch-slider{background-color:var(--brand-public-primary, #D5AE75)!important}:host ::ng-deep .mrx-switch.mrx-switch .mrx-switch__label{margin-left:0!important}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox input[type=checkbox]{position:absolute;left:0;top:50%;width:44px;height:24px;margin:0;transform:translateY(-50%);opacity:.01;z-index:1}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox input[type=checkbox]:focus+.mrx-switch-slider{outline:none;box-shadow:0 0 0 1px var(--brand-bg-secondary-default, #fbf5ee)}:host-context(body.theme-contrast-light) ::ng-deep .universal-header__ovz-mode .ovz-mode__color.ovz-mode__color--light.active{border:2px solid var(--brand-public-primary, #D5AE75);background:var(--brand-bg-tertiary-default, #FFF);color:var(--neutral-text-inverse, #282828)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__ovz-mode{border:1px solid var(--neutral-bg-page, #282828)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__ovz-mode .ovz-mode__label{color:var(--neutral-text-inverse, #FFF)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle.active{background:var(--brand-bg-tertiary-default, #FFF);color:var(--neutral-text-inverse, #282828)}@media (min-width: 992px){:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__ovz-mode{border:1px solid var(--brand-public-primary, #D5AE75)}}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle.active{background:var(--brand-bg-tertiary-default, #FFF);color:var(--neutral-text-inverse, #282828)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__ovz-mode .ovz-mode__color.ovz-mode__color--light{background-color:var(--neutral-bg-page, #f4f4f4);color:var(--neutral-text-primary, #262626)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__ovz-mode .ovz-mode__color.ovz-mode__color--black{color:var(--neutral-text-primary, #262626)}:host ::ng-deep .universal-header__nav{padding-top:8px;z-index:19}@media (max-width: 991px){:host ::ng-deep .universal-header__nav{padding-bottom:32px}}:host ::ng-deep .universal-header__nav-list{display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0;gap:16px 32px}@media (max-width: 1199px){:host ::ng-deep .universal-header__nav-list{gap:16px 24px}}@media (max-width: 991px){:host ::ng-deep .universal-header__nav-list{flex-direction:column;gap:8px;padding:0 16px}}:host ::ng-deep .universal-header__nav-list li{position:relative;padding:8px 0}:host ::ng-deep .universal-header__nav-list li a{color:var(--brand-accessibility-text-primary, #282828);text-decoration:none!important;font-size:1rem;font-weight:600;line-height:1.25;white-space:nowrap;font-family:Wix Madefor Display,sans-serif}:host ::ng-deep .universal-header__nav-list li:hover a{color:var(--neutral-text-secondary, #636363)}:host ::ng-deep .universal-header__nav-list li:active a,:host ::ng-deep .universal-header__nav-list li.active a{color:var(--brand-public-primary, #D5AE75)}:host ::ng-deep .universal-header__nav.center .universal-header__nav-list{justify-content:center}:host ::ng-deep .universal-header__nav.right .universal-header__nav-list{justify-content:flex-end}:host ::ng-deep .universal-header__nav.justifybetween .universal-header__nav-list{justify-content:space-between}@media screen and (min-width: 992px){:host ::ng-deep .universal-header.header-light .universal-header__nav-list li a{color:var(--brand-accessibility-text-inverse, #fff)}}\n"], components: [{ type: i2.OvzMenuComponent, selector: "lib-ovz-menu", inputs: ["opened", "isAutentificated", "initialSettings", "userId"], outputs: ["closed", "settingsChanged"] }, { type: i3.AwardUserMenuComponent, selector: "mrx-award-user-menu", inputs: ["hideUserNavMenu"] }, { type: i4.MainMenuComponent, selector: "lib-main-menu", inputs: ["customClass", "opened", "isMobile", "isShowAwardUserMenu", "headerModel"] }, { type: i5.AllServicesMenuComponent, selector: "lib-all-services-menu", inputs: ["headerModel"], outputs: ["closed"] }, { type: i6.PublicPagesComponent, selector: "lib-public-pages", inputs: ["data", "headerPosition"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
321
|
+
MyrtexWidgetSiteHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MyrtexWidgetSiteHeaderComponent, deps: [{ token: i1.BreakpointObserver }, { token: i0.Renderer2 }, { token: i2.Store }], target: i0.ɵɵFactoryTarget.Component });
|
|
322
|
+
MyrtexWidgetSiteHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: MyrtexWidgetSiteHeaderComponent, selector: "lib-myrtex-widget-site-header", inputs: { dataHeader: ["data-header", "dataHeader"], isWide: "isWide", hideNotLogginMainMenu: "hideNotLogginMainMenu", selectedRegion: "selectedRegion" }, host: { listeners: { "document:keydown.escape": "onEscape()" } }, viewQueries: [{ propertyName: "child", first: true, predicate: OvzMenuComponent, descendants: true }], ngImport: i0, template: "<header *ngIf=\"isLoaded\" class=\"universal-header\" [class.header-light]=\"headerModel.isTransparent\" [class.header-transparent]=\"canApplyTransparentClass\">\r\n <div class=\"universal-header__top\">\r\n <div class=\"container\">\r\n <a href=\"/\" class=\"universal-header__top-logo\">\r\n <svg class=\"top-logo__logo\">\r\n <ng-container *ngIf=\"headerModel?.isVse; else fpgLogo\">\r\n <use href=\"#VSE_logo\"></use>\r\n </ng-container>\r\n <ng-template #fpgLogo>\r\n <use [attr.xlink:href]=\"canApplyTransparentClass ? '#FPG_logo_white' : '#FPG_logo_black'\"></use>\r\n </ng-template>\r\n </svg>\r\n </a>\r\n <div class=\"universal-header__top-right\">\r\n <div class=\"universal-header__buttons\">\r\n <div class=\"universal-header__ovz\" *ngIf=\"headerModel.hasOvz ?? true\">\r\n <button\r\n class=\"universal-button\"\r\n [class.active]=\"isOvzModeOpened\"\r\n aria-controls=\"ovzDropdown\"\r\n (click)=\"toggleOvzModeWrapper($event)\"\r\n >\r\n <span aria-hidden=\"true\" aria-hidden=\"true\" *ngIf=\"isDesktop || !isOvzModeOpened\" \r\n class=\"mrx-icon fpg-icon icon-fpg-glasses icon-font-20 text-normal\">\r\n </span>\r\n \r\n <span aria-hidden=\"true\" *ngIf=\"isOvzModeOpened && !isDesktop\" \r\n class=\"mrx-icon fpg-icon icon-fpg-close icon-font-20 text-normal\">\r\n </span>\r\n\r\n <span *ngIf=\"isDesktop\">\u0412\u0435\u0440\u0441\u0438\u044F \u0434\u043B\u044F \u0441\u043B\u0430\u0431\u043E\u0432\u0438\u0434\u044F\u0449\u0438\u0445</span>\r\n </button>\r\n\r\n <lib-ovz-menu\r\n *ngIf=\"!isMobile && (headerModel.hasOvz ?? false)\"\r\n [opened]=\"isOvzModeOpened\"\r\n [userId]=\"headerModel.userIdentity?.id\"\r\n [isAutentificated]=\"headerModel.isLoggedIn ?? false\"\r\n [initialSettings]=\"headerModel.ovzSettings\"\r\n (settingsChanged)=\"onOvzSettingsChanged($event)\"\r\n (closed)=\"isOvzModeOpened = false\"\r\n ></lib-ovz-menu>\r\n </div>\r\n\r\n <button\r\n class=\"universal-button\"\r\n [class.active]=\"isAllServicesMenuOpened\"\r\n aria-expanded=\"false\"\r\n aria-controls=\"allServicesDropdown\"\r\n (click)=\"toggleAllServicesWrapper($event)\"\r\n >\r\n <span aria-hidden=\"true\" *ngIf=\"isDesktop || !isAllServicesMenuOpened\" \r\n class=\"mrx-icon fpg-icon icon-fpg-components icon-font-20 text-normal\">\r\n </span>\r\n\r\n <span aria-hidden=\"true\" *ngIf=\"isAllServicesMenuOpened && !isDesktop\" \r\n class=\"mrx-icon fpg-icon icon-fpg-close icon-font-20 text-normal\">\r\n </span>\r\n\r\n <span *ngIf=\"isDesktop\">\u0412\u0441\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044B</span>\r\n </button>\r\n\r\n <button\r\n *ngIf=\"isMobile\"\r\n class=\"universal-button\"\r\n [class.active]=\"isMobileMenuOpened\"\r\n aria-expanded=\"false\"\r\n aria-controls=\"user-dropdown\"\r\n (click)=\"toggleMainMenu($event)\"\r\n >\r\n <span aria-hidden=\"true\" *ngIf=\"isMobile && !isMobileMenuOpened\" \r\n class=\"mrx-icon fpg-icon icon-fpg-menu icon-font-20 text-normal text-normal\">\r\n </span>\r\n\r\n <span aria-hidden=\"true\" *ngIf=\"isMobile && isMobileMenuOpened\" \r\n class=\"mrx-icon fpg-icon icon-fpg-close icon-font-20 text-normal\">\r\n </span>\r\n </button>\r\n </div>\r\n\r\n <ng-container *ngIf=\"isShowAwardUserMenu && !isMobile\">\r\n <mrx-award-user-menu [hideUserNavMenu]=\"true\"></mrx-award-user-menu>\r\n </ng-container>\r\n\r\n <lib-main-menu\r\n [headerModel]=\"headerModel\"\r\n [isMobile]=\"isMobile\"\r\n [opened]=\"isMobileMenuOpened\"\r\n [isShowAwardUserMenu]=\"isShowAwardUserMenu ?? false\"\r\n [hideNotLogginMainMenu]=\"hideNotLogginMainMenu\"\r\n [selectedRegion]=\"selectedRegion\"\r\n ></lib-main-menu>\r\n </div>\r\n </div>\r\n <lib-ovz-menu\r\n *ngIf=\"isMobile && (headerModel.hasOvz ?? false)\"\r\n [opened]=\"isOvzModeOpened\"\r\n [userId]=\"headerModel.userIdentity?.id\"\r\n [isAutentificated]=\"headerModel.isLoggedIn ?? false\"\r\n [initialSettings]=\"headerModel.ovzSettings\"\r\n (settingsChanged)=\"onOvzSettingsChanged($event)\"\r\n (closed)=\"isOvzModeOpened = false\"\r\n ></lib-ovz-menu>\r\n\r\n <lib-all-services-menu\r\n *ngIf=\"isAllServicesMenuOpened\"\r\n [headerModel]=\"headerModel\" \r\n (closed)=\"isAllServicesMenuOpened = false\"\r\n ></lib-all-services-menu>\r\n </div>\r\n\r\n <div class=\"container\" *ngIf=\"!isMobile\">\r\n <lib-public-pages\r\n [data]=\"headerModel.publicPages\"\r\n [selectedRegion]=\"selectedRegion\"\r\n [headerPosition]=\"headerModel.headerPosition ?? ''\"\r\n ></lib-public-pages>\r\n </div>\r\n</header>\r\n", styles: [":host .universal-header{background:var(--brand-bg-tertiary-default, #fff);font-family:Wix Madefor Display,sans-serif;font-size:1rem;font-weight:600;line-height:1.25;padding:24px 0 32px;position:relative;z-index:20}@media (max-width: 991px){:host .universal-header{padding:16px 0}}:host .universal-header *{font-family:Wix Madefor Display,sans-serif;font-weight:600}:host .universal-header ::ng-deep button:focus-visible,:host .universal-header ::ng-deep button:focus-within,:host .universal-header ::ng-deep a:focus-visible,:host .universal-header ::ng-deep a:focus-within,:host .universal-header ::ng-deep [role=button]:focus-within,:host .universal-header ::ng-deep [tabindex]:focus-within{outline:none;box-shadow:0 0 0 1px var(--brand-bg-secondary-default, #fbf5ee)}:host .universal-header ::ng-deep .universal-button{background:var(--neutral-bg-page, #F4F4F4);color:var(--neutral-text-primary, #262626);border:none;border-radius:8px;padding:12px 16px;display:flex;justify-content:center;align-items:center;gap:8px;cursor:pointer;font-size:1rem;font-weight:600;line-height:1.25;font-family:Wix Madefor Display,sans-serif;transition:all .2s ease-in-out}@media (max-width: 991px){:host .universal-header ::ng-deep .universal-button{padding:8px}}:host .universal-header ::ng-deep .universal-button:hover,:host .universal-header ::ng-deep .universal-button:active,:host .universal-header ::ng-deep .universal-button.active{background:var(--brand-bg-secondary-hover, #ebe1d5)}:host .universal-header ::ng-deep .universal-button span{white-space:nowrap;color:var(--neutral-text-primary, #FFF)}:host .universal-header ::ng-deep .universal-button .mrx-icon{color:var(--neutral-text-primary, #FFF)}:host .universal-header ::ng-deep .universal-button--accent{display:inline-flex;min-height:44px;padding:12px 16px;justify-content:center;align-items:center;gap:8px;border-radius:8px;font-weight:600;line-height:1.25;font-family:Wix Madefor Display,sans-serif;transition:all .2s ease-in-out;background:var(--brand-public-bg-primary, #282828);color:var(--brand-accessibility-text-inverse, #fff)}:host .universal-header ::ng-deep .universal-button--accent:hover{background:var(--neutral-text-secondary, #636363)}:host .universal-header ::ng-deep .universal-button--accent:active,:host .universal-header ::ng-deep .universal-button--accent .active{background:var(--neutral-text-tertiary, #9F9F9F)}:host .universal-header.header-transparent{background:transparent!important}:host .universal-header__buttons{display:flex;align-items:center;gap:12px}@media (max-width: 991px){:host .universal-header__buttons{gap:8px}}:host .universal-header__top{position:relative;z-index:20}@media (max-width: 991px){:host .universal-header__top{position:initial}}:host .universal-header__top>.container{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;position:relative}:host .universal-header__top>.container:after{content:\"\";height:1px;width:calc(100% - 32px);position:absolute;background-color:var(--neutral-bg-island-default, #f4f4f4);bottom:0;left:16px}@media (max-width: 991px){:host .universal-header__top>.container{padding-bottom:0;position:initial}:host .universal-header__top>.container:after{content:none}}:host .universal-header__top-logo{height:62px;max-width:200px;min-width:200px;display:flex;align-items:center;overflow:hidden}:host .universal-header__top-logo svg.top-logo__logo{max-height:62px;max-width:196px}:host .universal-header__top-right{display:flex;gap:12px}@media (max-width: 991px){:host .universal-header__top-right{gap:0}}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent{background:var(--neutral-bg-page, #282828);color:var(--neutral-text-primary, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button:hover,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent:hover,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button:focus,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent:focus,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button:active,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent:active,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button.active,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent.active{background:var(--neutral-bg-page, #282828);color:var(--neutral-text-primary, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-header__top>.container:after{background-color:var(--neutral-bg-page, #282828)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header__user-profile .user-profile__avatar{background:var(--neutral-bg-page, #282828)}@media (max-width: 991px){:host ::ng-deep .universal-header__top-nav{position:fixed;top:94px;left:0;right:0;height:calc(100vh - 94px);height:calc(100dvh - 94px);overflow-y:auto;-webkit-overflow-scrolling:touch;box-sizing:border-box;width:100%;background:var(--brand-bg-tertiary-default, #fff)}}:host ::ng-deep .universal-header__top-nav .icon-up{transform:rotate(180deg);transition:transform .2s ease}:host ::ng-deep .universal-header__user{position:relative}@media (max-width: 991px){:host ::ng-deep .universal-header__user{border-top:1px solid var(--neutral-bg-island-default, #f4f4f4);border-bottom:1px solid var(--neutral-bg-island-default, #f4f4f4);padding:8px 0}}:host ::ng-deep .universal-header__user-profile{display:flex;align-items:center;gap:8px;cursor:pointer}@media (max-width: 991px){:host ::ng-deep .universal-header__user-profile{padding:12px 16px}}:host ::ng-deep .universal-header__user-profile__wrapper{display:flex;align-items:center;gap:12px;cursor:pointer;width:100%}@media (max-width: 991px){:host ::ng-deep .universal-header__user-profile__wrapper{width:calc(100% - 24px)}}:host ::ng-deep .universal-header__user-profile .user-profile__avatar{width:44px;height:44px;border-radius:50%;background:var(--neutral-bg-island-default, #F4F4F4)}:host ::ng-deep .universal-header__user-profile .user-profile__avatar .mrx-icon{color:var(--neutral-text-primary, #FFF)}:host ::ng-deep .universal-header__user-profile .user-profile__avatar>*{width:44px;height:44px;border-radius:50%;object-fit:cover}:host ::ng-deep .universal-header__user-profile .user-profile__avatar img{width:44px;height:44px;min-width:44px;max-height:44px;border-radius:50%;object-fit:cover}:host ::ng-deep .universal-header__user-profile .user-profile__info{display:inline-flex;flex-direction:column;align-items:start;max-width:200px}@media (max-width: 991px){:host ::ng-deep .universal-header__user-profile .user-profile__info{max-width:320px;min-width:0}}:host ::ng-deep .universal-header__user-profile .user-profile__info-role,:host ::ng-deep .universal-header__user-profile .user-profile__info-name{line-height:1.25;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:Wix Madefor Display,sans-serif}:host ::ng-deep .universal-header__user-profile .user-profile__info-role{font-size:.875rem;color:var(--neutral-text-tertiary, #9f9f9f)}:host ::ng-deep .universal-header__user-profile .user-profile__info-name{font-weight:600}:host ::ng-deep .universal-header__user-profile .user-profile__info-name.active{color:var(--brand-public-primary, #D5AE75)}@media (max-width: 991px){:host ::ng-deep .universal-header__user-profile{border-radius:0;padding:12px 16px}}@media (min-width: 992px){:host ::ng-deep .universal-header__user-menu{position:absolute;top:calc(100% + 3px);right:0;border-radius:16px;min-width:200px;background:var(--brand-bg-tertiary-default, #fff);box-shadow:0 4px 40px #181e4c1a;z-index:1000;opacity:0;visibility:hidden;transition:all .2s ease}}:host ::ng-deep .universal-header__user-menu .user-menu__list{list-style:none;padding:0;margin:0;width:100%}:host ::ng-deep .universal-header__user-menu .user-menu__list li a{display:inline-flex;align-items:center;padding:12px 16px;color:var(--brand-accessibility-text-primary, #282828);text-decoration:none!important;font-style:normal;font-weight:600;line-height:1.25;font-family:Wix Madefor Display,sans-serif}@media (max-width: 991px){:host ::ng-deep .universal-header__user-menu .user-menu__list li a{border-radius:8px}}:host ::ng-deep .universal-header__user-menu .user-menu__list li a .badge{display:flex;align-items:center;justify-content:center;white-space:nowrap;color:#fff;border-radius:50%;padding:4px;font-size:.875rem;font-weight:600;line-height:1.43;min-width:20px;height:20px;float:left;margin-left:8px;background:var(--brand-accessibility-text-primary, #282828);font-family:Wix Madefor Display,sans-serif}:host ::ng-deep .universal-header__user-menu .user-menu__list li:hover{background:var(--neutral-bg-page, #f4f4f4)}:host ::ng-deep .universal-header__user-menu .user-menu__list li:active,:host ::ng-deep .universal-header__user-menu .user-menu__list li.active{background:var(--brand-bg-secondary-hover, #ebe1d5)}@media (min-width: 992px){:host ::ng-deep .universal-header__user-menu .user-menu__list li:first-child{border-radius:16px 16px 0 0;padding-top:4px}}@media (min-width: 992px){:host ::ng-deep .universal-header__user-menu .user-menu__list li:last-child{border-radius:0 0 16px 16px;padding-bottom:4px}}@media (min-width: 992px){:host ::ng-deep .universal-header__user:hover .user-profile__info-name,:host ::ng-deep .universal-header__user:focus-within .user-profile__info-name,:host ::ng-deep .universal-header__user:active .user-profile__info-name{color:var(--brand-public-primary, #D5AE75)}}@media (min-width: 992px){:host ::ng-deep .universal-header__user:hover .universal-header__user-menu,:host ::ng-deep .universal-header__user:focus-within .universal-header__user-menu,:host ::ng-deep .universal-header__user:active .universal-header__user-menu{opacity:1;visibility:visible}}@media (max-width: 991px){:host ::ng-deep .universal-header__login{padding:8px 16px;border-top:1px solid var(--neutral-bg-island-default, #f4f4f4);border-bottom:1px solid var(--neutral-bg-island-default, #f4f4f4)}}@media (max-width: 991px){:host ::ng-deep .universal-header__login .universal-button--accent{margin:12px 0;width:100%}}@media screen and (min-width: 992px){:host ::ng-deep .universal-header.header-transparent .user-profile__info-role,:host ::ng-deep .universal-header.header-transparent .user-profile__info-name{color:var(--brand-accessibility-text-inverse, #fff)}}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a{color:var(--neutral-text-inverse, #fff)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a:hover,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a:focus,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a:active,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a.active{color:var(--neutral-text-inverse, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-profile .user-profile__info-role,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-profile .user-profile__info-name{color:var(--neutral-text-inverse, #FFF)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li:active,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li.active{background:var(--neutral-bg-page, #282828);color:var(--neutral-text-primary, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li:active a,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li.active a{color:var(--neutral-text-primary, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li:active:hover,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li.active:hover{background-color:var(--neutral-bg-page, #282828)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li:hover{background-color:var(--brand-bg-tertiary-default, #F9F3D3)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li a{color:var(--neutral-text-inverse, #FFF)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .mrx-icon.icon-chevron-down{color:var(--neutral-text-inverse, #FFF)}@media (min-width: 992px){:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__user-menu{border:1px solid var(--brand-public-primary, #D5AE75)}}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__user-menu{border:1px solid var(--neutral-bg-page, #282828)}:host ::ng-deep .universal-header__services{background:var(--brand-bg-tertiary-default, #fff);padding-top:16px;padding-bottom:24px;position:absolute;top:100%;left:0;right:0;width:100%;border-radius:0 0 40px 40px;z-index:20}@media (max-width: 991px){:host ::ng-deep .universal-header__services{position:fixed;top:94px;left:0;right:0;height:calc(100vh - 94px);height:calc(100dvh - 94px);overflow-y:auto;padding-bottom:calc(24px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;box-sizing:border-box;padding-top:0;border-radius:0}}:host ::ng-deep .universal-header__services>.container{display:flex;flex-direction:column;gap:24px;width:100%}@media (max-width: 991px){:host ::ng-deep .universal-header__services>.container{padding:0}}:host ::ng-deep .universal-header__services-list{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:8px 12px;gap:8px 12px;list-style:none;padding:0;margin:0}@media (max-width: 991px){:host ::ng-deep .universal-header__services-list{position:relative;grid-template-columns:1fr 1fr;padding:8px 0;gap:8px;border-top:1px solid var(--neutral-bg-island-default, #f4f4f4)}}@media (max-width: 767px){:host ::ng-deep .universal-header__services-list{grid-template-columns:1fr}}:host ::ng-deep .universal-header__services-list a{border-radius:8px;background:var(--brand-bg-tertiary-default, #fff);color:var(--brand-accessibility-text-primary, #282828);text-decoration:none!important;display:flex;padding:12px 36px 12px 16px;align-items:center;gap:8px;align-self:stretch;position:relative;transition:all .2s ease-in-out}:host ::ng-deep .universal-header__services-list a:hover,:host ::ng-deep .universal-header__services-list a:active{background-color:var(--neutral-bg-island-default, #f4f4f4)}:host ::ng-deep .universal-header__services-list a:hover:after,:host ::ng-deep .universal-header__services-list a:active:after{content:\"\";position:absolute;top:50%;transform:translateY(-50%);right:16px;width:20px;height:20px;background-image:url(data:image/svg+xml,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%0A%3Cpath%20d%3D%22M15.345%204.65503L4.65479%2015.3452M15.345%204.65503L5.16986%204.67639M15.345%204.65503L15.3239%2014.8304%22%20stroke%3D%22%23282828%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22/%3E%0A%3C/svg%3E%0A);background-repeat:no-repeat;background-position:center center;background-size:contain}:host ::ng-deep .universal-header__services-list .services-list__link-name{line-height:1.25;font-weight:400;font-family:Wix Madefor Display,sans-serif;color:var(--brand-accessibility-text-primary, #282828)}:host ::ng-deep .universal-header__services-list .services-list__link-subname{font-size:.875rem;line-height:1.4;font-weight:400;color:var(--brand-text-accent, #624e33);font-family:Wix Madefor Display,sans-serif}@media (max-width: 991px){:host ::ng-deep .universal-header__services-list .services-list__link-name,:host ::ng-deep .universal-header__services-list .services-list__link-subname{font-weight:600}}:host ::ng-deep .universal-header__services-list .services-list__link-icon{max-width:20px;max-height:20px}:host ::ng-deep .universal-header__social{display:flex;gap:12px;padding-left:12px}@media (max-width: 991px){:host ::ng-deep .universal-header__social{padding:0 16px 32px}}:host ::ng-deep .universal-header__social-link{display:flex;padding:8px;align-items:center;border-radius:100%;background:var(--neutral-bg-island-default, #f4f4f4)}:host ::ng-deep .universal-header__social-link:hover,:host ::ng-deep .universal-header__social-link:active{background:var(--brand-bg-secondary-hover, #ebe1d5)}:host ::ng-deep .universal-header__social-icon{max-width:24px;max-height:24px;fill:var(--brand-accessibility-text-primary, #282828);transition:all .2s ease-in-out}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name{color:var(--neutral-text-inverse, #fff)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name:hover,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name:focus,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name:active,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name.active{color:var(--neutral-text-inverse, #fff)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__social-link{background:var(--neutral-bg-page, #282828)}:host-context(body.hide-images) ::ng-deep .universal-header__services-list .services-list__link-icon{display:none}@media (min-width: 992px){:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__services{border:1px solid var(--brand-public-primary, #D5AE75)}}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services{border:1px solid var(--neutral-bg-page, #282828)}:host ::ng-deep .universal-header__ovz{position:relative}:host ::ng-deep .universal-header__ovz-mode{position:absolute;top:calc(100% + 12px);right:0;border-radius:16px;min-width:400px;background:var(--brand-bg-tertiary-default, #fff);box-shadow:0 1px 4px #3b43571a;z-index:1000;transition:all .2s ease}@media (max-width: 991px){:host ::ng-deep .universal-header__ovz-mode{height:100vh;padding-top:0;padding-bottom:32px;overflow-y:auto;box-shadow:none;min-width:100%;border-radius:0;position:absolute;top:100%;left:0;right:0;width:100%;z-index:20}}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__section{justify-content:space-between;display:flex;padding:12px 16px;align-items:center;gap:8px}@media (max-width: 991px){:host ::ng-deep .universal-header__ovz-mode .ovz-mode__section{flex-wrap:wrap}}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__section .universal-button{padding:12px 16px}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__label{font-weight:600;font-size:1rem;white-space:nowrap;color:var(--brand-accessibility-text-primary, #282828)}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle-group,:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color-group{display:flex;gap:12px}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle,:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:2px solid transparent;border-radius:50%;font-weight:600;cursor:pointer;transition:all .2s ease}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle.active,:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color.active{border:2px solid var(--brand-public-primary, #D5AE75)}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle{background-color:var(--neutral-bg-page, #f4f4f4);color:var(--neutral-text-primary, #262626);font-size:16px;line-height:1.25;font-family:Wix Madefor Display,sans-serif}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle--medium{font-size:24px}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle--large{font-size:32px}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color{font-size:1rem}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--default{background-color:var(--brand-primary-default, #EBE1D5)}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--light{background-color:var(--neutral-bg-page, #F4F4F4);color:var(--neutral-text-primary, #262626)}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--sepia{background-color:#fff9da}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--blue{background-color:#a4d0fd}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--black{background-color:#000;color:#fff}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox .mrx-switch-slider{width:68px!important;min-width:68px!important;height:40px!important}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox .mrx-switch-slider:before{width:36px!important;height:36px!important}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox input:checked+.mrx-switch-slider:before{transform:translate(28px)!important}:host ::ng-deep .mrx-switch.mrx-switch .mrx-switch-checkbox input:checked:not(:disabled)+.mrx-switch-slider{background-color:var(--brand-public-primary, #D5AE75)!important}:host ::ng-deep .mrx-switch.mrx-switch .mrx-switch__label{margin-left:0!important}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox input[type=checkbox]{position:absolute;left:0;top:50%;width:44px;height:24px;margin:0;transform:translateY(-50%);opacity:.01;z-index:1}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox input[type=checkbox]:focus+.mrx-switch-slider{outline:none;box-shadow:0 0 0 1px var(--brand-bg-secondary-default, #fbf5ee)}:host-context(body.theme-contrast-light) ::ng-deep .universal-header__ovz-mode .ovz-mode__color.ovz-mode__color--light.active{border:2px solid var(--brand-public-primary, #D5AE75);background:var(--brand-bg-tertiary-default, #FFF);color:var(--neutral-text-inverse, #282828)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__ovz-mode{border:1px solid var(--neutral-bg-page, #282828)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__ovz-mode .ovz-mode__label{color:var(--neutral-text-inverse, #FFF)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle.active{background:var(--brand-bg-tertiary-default, #FFF);color:var(--neutral-text-inverse, #282828)}@media (min-width: 992px){:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__ovz-mode{border:1px solid var(--brand-public-primary, #D5AE75)}}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle.active{background:var(--brand-bg-tertiary-default, #FFF);color:var(--neutral-text-inverse, #282828)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__ovz-mode .ovz-mode__color.ovz-mode__color--light{background-color:var(--neutral-bg-page, #f4f4f4);color:var(--neutral-text-primary, #262626)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__ovz-mode .ovz-mode__color.ovz-mode__color--black{color:var(--neutral-text-primary, #262626)}:host ::ng-deep .universal-header__nav{padding-top:8px;z-index:19}@media (max-width: 991px){:host ::ng-deep .universal-header__nav{padding-bottom:32px}}:host ::ng-deep .universal-header__nav-list{display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0;gap:16px 32px}@media (max-width: 1199px){:host ::ng-deep .universal-header__nav-list{gap:16px 24px}}@media (max-width: 991px){:host ::ng-deep .universal-header__nav-list{flex-direction:column;gap:8px;padding:0 16px}}:host ::ng-deep .universal-header__nav-list li{position:relative;padding:8px 0}:host ::ng-deep .universal-header__nav-list li a{color:var(--brand-accessibility-text-primary, #282828);text-decoration:none!important;font-size:1rem;font-weight:600;line-height:1.25;white-space:nowrap;font-family:Wix Madefor Display,sans-serif}:host ::ng-deep .universal-header__nav-list li:hover a{color:var(--neutral-text-secondary, #636363)}:host ::ng-deep .universal-header__nav-list li:active a,:host ::ng-deep .universal-header__nav-list li.active a{color:var(--brand-public-primary, #D5AE75)}:host ::ng-deep .universal-header__nav.center .universal-header__nav-list{justify-content:center}:host ::ng-deep .universal-header__nav.right .universal-header__nav-list{justify-content:flex-end}:host ::ng-deep .universal-header__nav.justifybetween .universal-header__nav-list{justify-content:space-between}@media screen and (min-width: 992px){:host ::ng-deep .universal-header.header-light .universal-header__nav-list li a{color:var(--brand-accessibility-text-inverse, #fff)}}\n"], components: [{ type: i3.OvzMenuComponent, selector: "lib-ovz-menu", inputs: ["opened", "isAutentificated", "initialSettings", "userId"], outputs: ["closed", "settingsChanged"] }, { type: i4.AwardUserMenuComponent, selector: "mrx-award-user-menu", inputs: ["hideUserNavMenu"] }, { type: i5.MainMenuComponent, selector: "lib-main-menu", inputs: ["customClass", "opened", "isMobile", "isShowAwardUserMenu", "headerModel", "hideNotLogginMainMenu", "selectedRegion"] }, { type: i6.AllServicesMenuComponent, selector: "lib-all-services-menu", inputs: ["headerModel"], outputs: ["closed"] }, { type: i7.PublicPagesComponent, selector: "lib-public-pages", inputs: ["data", "headerPosition", "selectedRegion"] }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
289
323
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MyrtexWidgetSiteHeaderComponent, decorators: [{
|
|
290
324
|
type: Component,
|
|
291
|
-
args: [{ selector: 'lib-myrtex-widget-site-header', template: "<header class=\"universal-header\" [class.header-light]=\"headerModel.isTransparent\" [class.header-transparent]=\"canApplyTransparentClass\">\r\n <div class=\"universal-header__top\">\r\n <div class=\"container\">\r\n <a href=\"/\" class=\"universal-header__top-logo\">\r\n <svg class=\"top-logo__logo\">\r\n <ng-container *ngIf=\"headerModel?.isVse; else fpgLogo\">\r\n <use href=\"#VSE_logo\"></use>\r\n </ng-container>\r\n <ng-template #fpgLogo>\r\n <use [attr.xlink:href]=\"canApplyTransparentClass ? '#FPG_logo_white' : '#FPG_logo_black'\"></use>\r\n </ng-template>\r\n </svg>\r\n </a>\r\n <div class=\"universal-header__top-right\">\r\n <div class=\"universal-header__buttons\">\r\n <div class=\"universal-header__ovz\" *ngIf=\"headerModel.hasOvz ?? true\">\r\n <button\r\n class=\"universal-button\"\r\n [class.active]=\"isOvzModeOpened\"\r\n aria-controls=\"ovzDropdown\"\r\n (click)=\"toggleOvzModeWrapper($event)\"\r\n >\r\n <span aria-hidden=\"true\" aria-hidden=\"true\" *ngIf=\"isDesktop || !isOvzModeOpened\" \r\n class=\"mrx-icon fpg-icon icon-fpg-glasses icon-font-20 text-normal\">\r\n </span>\r\n \r\n <span aria-hidden=\"true\" *ngIf=\"isOvzModeOpened && !isDesktop\" \r\n class=\"mrx-icon fpg-icon icon-fpg-close icon-font-20 text-normal\">\r\n </span>\r\n\r\n <span *ngIf=\"isDesktop\">\u0412\u0435\u0440\u0441\u0438\u044F \u0434\u043B\u044F \u0441\u043B\u0430\u0431\u043E\u0432\u0438\u0434\u044F\u0449\u0438\u0445</span>\r\n </button>\r\n\r\n <lib-ovz-menu\r\n *ngIf=\"!isMobile && (headerModel.hasOvz ?? false)\"\r\n [opened]=\"isOvzModeOpened\"\r\n [userId]=\"headerModel.userIdentity?.id\"\r\n [isAutentificated]=\"headerModel.isLoggedIn ?? false\"\r\n [initialSettings]=\"headerModel.ovzSettings\"\r\n (settingsChanged)=\"onOvzSettingsChanged($event)\"\r\n (closed)=\"isOvzModeOpened = false\"\r\n ></lib-ovz-menu>\r\n </div>\r\n\r\n <button\r\n class=\"universal-button\"\r\n [class.active]=\"isAllServicesMenuOpened\"\r\n aria-expanded=\"false\"\r\n aria-controls=\"allServicesDropdown\"\r\n (click)=\"toggleAllServicesWrapper($event)\"\r\n >\r\n <span aria-hidden=\"true\" *ngIf=\"isDesktop || !isAllServicesMenuOpened\" \r\n class=\"mrx-icon fpg-icon icon-fpg-components icon-font-20 text-normal\">\r\n </span>\r\n\r\n <span aria-hidden=\"true\" *ngIf=\"isAllServicesMenuOpened && !isDesktop\" \r\n class=\"mrx-icon fpg-icon icon-fpg-close icon-font-20 text-normal\">\r\n </span>\r\n\r\n <span *ngIf=\"isDesktop\">\u0412\u0441\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044B</span>\r\n </button>\r\n\r\n <button\r\n *ngIf=\"isMobile\"\r\n class=\"universal-button\"\r\n [class.active]=\"isMobileMenuOpened\"\r\n aria-expanded=\"false\"\r\n aria-controls=\"user-dropdown\"\r\n (click)=\"toggleMainMenu($event)\"\r\n >\r\n <span aria-hidden=\"true\" *ngIf=\"isMobile && !isMobileMenuOpened\" \r\n class=\"mrx-icon fpg-icon icon-fpg-menu icon-font-20 text-normal text-normal\">\r\n </span>\r\n\r\n <span aria-hidden=\"true\" *ngIf=\"isMobile && isMobileMenuOpened\" \r\n class=\"mrx-icon fpg-icon icon-fpg-close icon-font-20 text-normal\">\r\n </span>\r\n </button>\r\n </div>\r\n\r\n <ng-container *ngIf=\"isShowAwardUserMenu && !isMobile\">\r\n <mrx-award-user-menu [hideUserNavMenu]=\"true\"></mrx-award-user-menu>\r\n </ng-container>\r\n\r\n <lib-main-menu\r\n [headerModel]=\"headerModel\"\r\n [isMobile]=\"isMobile\"\r\n [opened]=\"isMobileMenuOpened\"\r\n [isShowAwardUserMenu]=\"isShowAwardUserMenu ?? false\"\r\n ></lib-main-menu>\r\n </div>\r\n </div>\r\n <lib-ovz-menu\r\n *ngIf=\"isMobile && (headerModel.hasOvz ?? false)\"\r\n [opened]=\"isOvzModeOpened\"\r\n [userId]=\"headerModel.userIdentity?.id\"\r\n [isAutentificated]=\"headerModel.isLoggedIn ?? false\"\r\n [initialSettings]=\"headerModel.ovzSettings\"\r\n (settingsChanged)=\"onOvzSettingsChanged($event)\"\r\n (closed)=\"isOvzModeOpened = false\"\r\n ></lib-ovz-menu>\r\n\r\n <lib-all-services-menu\r\n *ngIf=\"isAllServicesMenuOpened\"\r\n [headerModel]=\"headerModel\" \r\n (closed)=\"isAllServicesMenuOpened = false\"\r\n ></lib-all-services-menu>\r\n </div>\r\n\r\n <div class=\"container\" *ngIf=\"!isMobile\">\r\n <lib-public-pages\r\n [data]=\"headerModel.publicPages\"\r\n [headerPosition]=\"headerModel.headerPosition ?? ''\"\r\n ></lib-public-pages>\r\n </div>\r\n</header>\r\n", styles: [":host .universal-header{background:var(--brand-bg-tertiary-default, #fff);font-family:Wix Madefor Display,sans-serif;font-size:1rem;font-weight:600;line-height:1.25;padding:24px 0 32px;position:relative;z-index:20}@media (max-width: 991px){:host .universal-header{padding:16px 0}}:host .universal-header *{font-family:Wix Madefor Display,sans-serif;font-weight:600}:host .universal-header ::ng-deep button:focus-visible,:host .universal-header ::ng-deep button:focus-within,:host .universal-header ::ng-deep a:focus-visible,:host .universal-header ::ng-deep a:focus-within,:host .universal-header ::ng-deep [role=button]:focus-within,:host .universal-header ::ng-deep [tabindex]:focus-within{outline:none;box-shadow:0 0 0 1px var(--brand-bg-secondary-default, #fbf5ee)}:host .universal-header ::ng-deep .universal-button{background:var(--neutral-bg-page, #F4F4F4);color:var(--neutral-text-primary, #262626);border:none;border-radius:8px;padding:12px 16px;display:flex;justify-content:center;align-items:center;gap:8px;cursor:pointer;font-size:1rem;font-weight:600;line-height:1.25;font-family:Wix Madefor Display,sans-serif;transition:all .2s ease-in-out}@media (max-width: 991px){:host .universal-header ::ng-deep .universal-button{padding:8px}}:host .universal-header ::ng-deep .universal-button:hover,:host .universal-header ::ng-deep .universal-button:active,:host .universal-header ::ng-deep .universal-button.active{background:var(--brand-bg-secondary-hover, #ebe1d5)}:host .universal-header ::ng-deep .universal-button span{white-space:nowrap;color:var(--neutral-text-primary, #FFF)}:host .universal-header ::ng-deep .universal-button .mrx-icon{color:var(--neutral-text-primary, #FFF)}:host .universal-header ::ng-deep .universal-button--accent{display:inline-flex;min-height:44px;padding:12px 16px;justify-content:center;align-items:center;gap:8px;border-radius:8px;font-weight:600;line-height:1.25;font-family:Wix Madefor Display,sans-serif;transition:all .2s ease-in-out;background:var(--brand-public-bg-primary, #282828);color:var(--brand-accessibility-text-inverse, #fff)}:host .universal-header ::ng-deep .universal-button--accent:hover{background:var(--neutral-text-secondary, #636363)}:host .universal-header ::ng-deep .universal-button--accent:active,:host .universal-header ::ng-deep .universal-button--accent .active{background:var(--neutral-text-tertiary, #9F9F9F)}:host .universal-header.header-transparent{background:transparent!important}:host .universal-header__buttons{display:flex;align-items:center;gap:12px}@media (max-width: 991px){:host .universal-header__buttons{gap:8px}}:host .universal-header__top{position:relative;z-index:20}@media (max-width: 991px){:host .universal-header__top{position:initial}}:host .universal-header__top>.container{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;position:relative}:host .universal-header__top>.container:after{content:\"\";height:1px;width:calc(100% - 32px);position:absolute;background-color:var(--neutral-bg-island-default, #f4f4f4);bottom:0;left:16px}@media (max-width: 991px){:host .universal-header__top>.container{padding-bottom:0;position:initial}:host .universal-header__top>.container:after{content:none}}:host .universal-header__top-logo{height:62px;max-width:200px;min-width:200px;display:flex;align-items:center;overflow:hidden}:host .universal-header__top-logo svg.top-logo__logo{max-height:62px;max-width:196px}:host .universal-header__top-right{display:flex;gap:12px}@media (max-width: 991px){:host .universal-header__top-right{gap:0}}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent{background:var(--neutral-bg-page, #282828);color:var(--neutral-text-primary, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button:hover,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent:hover,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button:focus,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent:focus,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button:active,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent:active,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button.active,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent.active{background:var(--neutral-bg-page, #282828);color:var(--neutral-text-primary, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-header__top>.container:after{background-color:var(--neutral-bg-page, #282828)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header__user-profile .user-profile__avatar{background:var(--neutral-bg-page, #282828)}@media (max-width: 991px){:host ::ng-deep .universal-header__top-nav{position:fixed;top:94px;left:0;right:0;height:calc(100vh - 94px);height:calc(100dvh - 94px);overflow-y:auto;-webkit-overflow-scrolling:touch;box-sizing:border-box;width:100%;background:var(--brand-bg-tertiary-default, #fff)}}:host ::ng-deep .universal-header__top-nav .icon-up{transform:rotate(180deg);transition:transform .2s ease}:host ::ng-deep .universal-header__user{position:relative}@media (max-width: 991px){:host ::ng-deep .universal-header__user{border-top:1px solid var(--neutral-bg-island-default, #f4f4f4);border-bottom:1px solid var(--neutral-bg-island-default, #f4f4f4);padding:8px 0}}:host ::ng-deep .universal-header__user-profile{display:flex;align-items:center;gap:8px;cursor:pointer}@media (max-width: 991px){:host ::ng-deep .universal-header__user-profile{padding:12px 16px}}:host ::ng-deep .universal-header__user-profile__wrapper{display:flex;align-items:center;gap:12px;cursor:pointer;width:100%}@media (max-width: 991px){:host ::ng-deep .universal-header__user-profile__wrapper{width:calc(100% - 24px)}}:host ::ng-deep .universal-header__user-profile .user-profile__avatar{width:44px;height:44px;border-radius:50%;background:var(--neutral-bg-island-default, #F4F4F4)}:host ::ng-deep .universal-header__user-profile .user-profile__avatar .mrx-icon{color:var(--neutral-text-primary, #FFF)}:host ::ng-deep .universal-header__user-profile .user-profile__avatar>*{width:44px;height:44px;border-radius:50%;object-fit:cover}:host ::ng-deep .universal-header__user-profile .user-profile__avatar img{width:44px;height:44px;min-width:44px;max-height:44px;border-radius:50%;object-fit:cover}:host ::ng-deep .universal-header__user-profile .user-profile__info{display:inline-flex;flex-direction:column;align-items:start;max-width:200px}@media (max-width: 991px){:host ::ng-deep .universal-header__user-profile .user-profile__info{max-width:320px;min-width:0}}:host ::ng-deep .universal-header__user-profile .user-profile__info-role,:host ::ng-deep .universal-header__user-profile .user-profile__info-name{line-height:1.25;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:Wix Madefor Display,sans-serif}:host ::ng-deep .universal-header__user-profile .user-profile__info-role{font-size:.875rem;color:var(--neutral-text-tertiary, #9f9f9f)}:host ::ng-deep .universal-header__user-profile .user-profile__info-name{font-weight:600}:host ::ng-deep .universal-header__user-profile .user-profile__info-name.active{color:var(--brand-public-primary, #D5AE75)}@media (max-width: 991px){:host ::ng-deep .universal-header__user-profile{border-radius:0;padding:12px 16px}}@media (min-width: 992px){:host ::ng-deep .universal-header__user-menu{position:absolute;top:calc(100% + 3px);right:0;border-radius:16px;min-width:200px;background:var(--brand-bg-tertiary-default, #fff);box-shadow:0 4px 40px #181e4c1a;z-index:1000;opacity:0;visibility:hidden;transition:all .2s ease}}:host ::ng-deep .universal-header__user-menu .user-menu__list{list-style:none;padding:0;margin:0;width:100%}:host ::ng-deep .universal-header__user-menu .user-menu__list li a{display:inline-flex;align-items:center;padding:12px 16px;color:var(--brand-accessibility-text-primary, #282828);text-decoration:none!important;font-style:normal;font-weight:600;line-height:1.25;font-family:Wix Madefor Display,sans-serif}@media (max-width: 991px){:host ::ng-deep .universal-header__user-menu .user-menu__list li a{border-radius:8px}}:host ::ng-deep .universal-header__user-menu .user-menu__list li a .badge{display:flex;align-items:center;justify-content:center;white-space:nowrap;color:#fff;border-radius:50%;padding:4px;font-size:.875rem;font-weight:600;line-height:1.43;min-width:20px;height:20px;float:left;margin-left:8px;background:var(--brand-accessibility-text-primary, #282828);font-family:Wix Madefor Display,sans-serif}:host ::ng-deep .universal-header__user-menu .user-menu__list li:hover{background:var(--neutral-bg-page, #f4f4f4)}:host ::ng-deep .universal-header__user-menu .user-menu__list li:active,:host ::ng-deep .universal-header__user-menu .user-menu__list li.active{background:var(--brand-bg-secondary-hover, #ebe1d5)}@media (min-width: 992px){:host ::ng-deep .universal-header__user-menu .user-menu__list li:first-child{border-radius:16px 16px 0 0;padding-top:4px}}@media (min-width: 992px){:host ::ng-deep .universal-header__user-menu .user-menu__list li:last-child{border-radius:0 0 16px 16px;padding-bottom:4px}}@media (min-width: 992px){:host ::ng-deep .universal-header__user:hover .user-profile__info-name,:host ::ng-deep .universal-header__user:focus-within .user-profile__info-name,:host ::ng-deep .universal-header__user:active .user-profile__info-name{color:var(--brand-public-primary, #D5AE75)}}@media (min-width: 992px){:host ::ng-deep .universal-header__user:hover .universal-header__user-menu,:host ::ng-deep .universal-header__user:focus-within .universal-header__user-menu,:host ::ng-deep .universal-header__user:active .universal-header__user-menu{opacity:1;visibility:visible}}@media (max-width: 991px){:host ::ng-deep .universal-header__login{padding:8px 16px;border-top:1px solid var(--neutral-bg-island-default, #f4f4f4);border-bottom:1px solid var(--neutral-bg-island-default, #f4f4f4)}}@media (max-width: 991px){:host ::ng-deep .universal-header__login .universal-button--accent{margin:12px 0;width:100%}}@media screen and (min-width: 992px){:host ::ng-deep .universal-header.header-transparent .user-profile__info-role,:host ::ng-deep .universal-header.header-transparent .user-profile__info-name{color:var(--brand-accessibility-text-inverse, #fff)}}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a{color:var(--neutral-text-inverse, #fff)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a:hover,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a:focus,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a:active,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a.active{color:var(--neutral-text-inverse, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-profile .user-profile__info-role,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-profile .user-profile__info-name{color:var(--neutral-text-inverse, #FFF)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li:active,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li.active{background:var(--neutral-bg-page, #282828);color:var(--neutral-text-primary, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li:active a,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li.active a{color:var(--neutral-text-primary, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li:active:hover,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li.active:hover{background-color:var(--neutral-bg-page, #282828)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li:hover{background-color:var(--brand-bg-tertiary-default, #F9F3D3)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li a{color:var(--neutral-text-inverse, #FFF)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .mrx-icon.icon-chevron-down{color:var(--neutral-text-inverse, #FFF)}@media (min-width: 992px){:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__user-menu{border:1px solid var(--brand-public-primary, #D5AE75)}}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__user-menu{border:1px solid var(--neutral-bg-page, #282828)}:host ::ng-deep .universal-header__services{background:var(--brand-bg-tertiary-default, #fff);padding-top:16px;padding-bottom:24px;position:absolute;top:100%;left:0;right:0;width:100%;border-radius:0 0 40px 40px;z-index:20}@media (max-width: 991px){:host ::ng-deep .universal-header__services{position:fixed;top:94px;left:0;right:0;height:calc(100vh - 94px);height:calc(100dvh - 94px);overflow-y:auto;padding-bottom:calc(24px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;box-sizing:border-box;padding-top:0;border-radius:0}}:host ::ng-deep .universal-header__services>.container{display:flex;flex-direction:column;gap:24px;width:100%}@media (max-width: 991px){:host ::ng-deep .universal-header__services>.container{padding:0}}:host ::ng-deep .universal-header__services-list{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:8px 12px;gap:8px 12px;list-style:none;padding:0;margin:0}@media (max-width: 991px){:host ::ng-deep .universal-header__services-list{position:relative;grid-template-columns:1fr 1fr;padding:8px 0;gap:8px;border-top:1px solid var(--neutral-bg-island-default, #f4f4f4)}}@media (max-width: 767px){:host ::ng-deep .universal-header__services-list{grid-template-columns:1fr}}:host ::ng-deep .universal-header__services-list a{border-radius:8px;background:var(--brand-bg-tertiary-default, #fff);color:var(--brand-accessibility-text-primary, #282828);text-decoration:none!important;display:flex;padding:12px 36px 12px 16px;align-items:center;gap:8px;align-self:stretch;position:relative;transition:all .2s ease-in-out}:host ::ng-deep .universal-header__services-list a:hover,:host ::ng-deep .universal-header__services-list a:active{background-color:var(--neutral-bg-island-default, #f4f4f4)}:host ::ng-deep .universal-header__services-list a:hover:after,:host ::ng-deep .universal-header__services-list a:active:after{content:\"\";position:absolute;top:50%;transform:translateY(-50%);right:16px;width:20px;height:20px;background-image:url(data:image/svg+xml,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%0A%3Cpath%20d%3D%22M15.345%204.65503L4.65479%2015.3452M15.345%204.65503L5.16986%204.67639M15.345%204.65503L15.3239%2014.8304%22%20stroke%3D%22%23282828%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22/%3E%0A%3C/svg%3E%0A);background-repeat:no-repeat;background-position:center center;background-size:contain}:host ::ng-deep .universal-header__services-list .services-list__link-name{line-height:1.25;font-weight:400;font-family:Wix Madefor Display,sans-serif;color:var(--brand-accessibility-text-primary, #282828)}:host ::ng-deep .universal-header__services-list .services-list__link-subname{font-size:.875rem;line-height:1.4;font-weight:400;color:var(--brand-text-accent, #624e33);font-family:Wix Madefor Display,sans-serif}@media (max-width: 991px){:host ::ng-deep .universal-header__services-list .services-list__link-name,:host ::ng-deep .universal-header__services-list .services-list__link-subname{font-weight:600}}:host ::ng-deep .universal-header__services-list .services-list__link-icon{max-width:20px;max-height:20px}:host ::ng-deep .universal-header__social{display:flex;gap:12px;padding-left:12px}@media (max-width: 991px){:host ::ng-deep .universal-header__social{padding:0 16px 32px}}:host ::ng-deep .universal-header__social-link{display:flex;padding:8px;align-items:center;border-radius:100%;background:var(--neutral-bg-island-default, #f4f4f4)}:host ::ng-deep .universal-header__social-link:hover,:host ::ng-deep .universal-header__social-link:active{background:var(--brand-bg-secondary-hover, #ebe1d5)}:host ::ng-deep .universal-header__social-icon{max-width:24px;max-height:24px;fill:var(--brand-accessibility-text-primary, #282828);transition:all .2s ease-in-out}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name{color:var(--neutral-text-inverse, #fff)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name:hover,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name:focus,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name:active,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name.active{color:var(--neutral-text-inverse, #fff)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__social-link{background:var(--neutral-bg-page, #282828)}:host-context(body.hide-images) ::ng-deep .universal-header__services-list .services-list__link-icon{display:none}@media (min-width: 992px){:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__services{border:1px solid var(--brand-public-primary, #D5AE75)}}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services{border:1px solid var(--neutral-bg-page, #282828)}:host ::ng-deep .universal-header__ovz{position:relative}:host ::ng-deep .universal-header__ovz-mode{position:absolute;top:calc(100% + 12px);right:0;border-radius:16px;min-width:400px;background:var(--brand-bg-tertiary-default, #fff);box-shadow:0 1px 4px #3b43571a;z-index:1000;transition:all .2s ease}@media (max-width: 991px){:host ::ng-deep .universal-header__ovz-mode{height:100vh;padding-top:0;padding-bottom:32px;overflow-y:auto;box-shadow:none;min-width:100%;border-radius:0;position:absolute;top:100%;left:0;right:0;width:100%;z-index:20}}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__section{justify-content:space-between;display:flex;padding:12px 16px;align-items:center;gap:8px}@media (max-width: 991px){:host ::ng-deep .universal-header__ovz-mode .ovz-mode__section{flex-wrap:wrap}}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__section .universal-button{padding:12px 16px}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__label{font-weight:600;font-size:1rem;white-space:nowrap;color:var(--brand-accessibility-text-primary, #282828)}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle-group,:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color-group{display:flex;gap:12px}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle,:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:2px solid transparent;border-radius:50%;font-weight:600;cursor:pointer;transition:all .2s ease}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle.active,:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color.active{border:2px solid var(--brand-public-primary, #D5AE75)}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle{background-color:var(--neutral-bg-page, #f4f4f4);color:var(--neutral-text-primary, #262626);font-size:16px;line-height:1.25;font-family:Wix Madefor Display,sans-serif}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle--medium{font-size:24px}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle--large{font-size:32px}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color{font-size:1rem}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--default{background-color:var(--brand-primary-default, #EBE1D5)}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--light{background-color:var(--neutral-bg-page, #F4F4F4);color:var(--neutral-text-primary, #262626)}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--sepia{background-color:#fff9da}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--blue{background-color:#a4d0fd}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--black{background-color:#000;color:#fff}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox .mrx-switch-slider{width:68px!important;min-width:68px!important;height:40px!important}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox .mrx-switch-slider:before{width:36px!important;height:36px!important}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox input:checked+.mrx-switch-slider:before{transform:translate(28px)!important}:host ::ng-deep .mrx-switch.mrx-switch .mrx-switch-checkbox input:checked:not(:disabled)+.mrx-switch-slider{background-color:var(--brand-public-primary, #D5AE75)!important}:host ::ng-deep .mrx-switch.mrx-switch .mrx-switch__label{margin-left:0!important}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox input[type=checkbox]{position:absolute;left:0;top:50%;width:44px;height:24px;margin:0;transform:translateY(-50%);opacity:.01;z-index:1}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox input[type=checkbox]:focus+.mrx-switch-slider{outline:none;box-shadow:0 0 0 1px var(--brand-bg-secondary-default, #fbf5ee)}:host-context(body.theme-contrast-light) ::ng-deep .universal-header__ovz-mode .ovz-mode__color.ovz-mode__color--light.active{border:2px solid var(--brand-public-primary, #D5AE75);background:var(--brand-bg-tertiary-default, #FFF);color:var(--neutral-text-inverse, #282828)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__ovz-mode{border:1px solid var(--neutral-bg-page, #282828)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__ovz-mode .ovz-mode__label{color:var(--neutral-text-inverse, #FFF)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle.active{background:var(--brand-bg-tertiary-default, #FFF);color:var(--neutral-text-inverse, #282828)}@media (min-width: 992px){:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__ovz-mode{border:1px solid var(--brand-public-primary, #D5AE75)}}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle.active{background:var(--brand-bg-tertiary-default, #FFF);color:var(--neutral-text-inverse, #282828)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__ovz-mode .ovz-mode__color.ovz-mode__color--light{background-color:var(--neutral-bg-page, #f4f4f4);color:var(--neutral-text-primary, #262626)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__ovz-mode .ovz-mode__color.ovz-mode__color--black{color:var(--neutral-text-primary, #262626)}:host ::ng-deep .universal-header__nav{padding-top:8px;z-index:19}@media (max-width: 991px){:host ::ng-deep .universal-header__nav{padding-bottom:32px}}:host ::ng-deep .universal-header__nav-list{display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0;gap:16px 32px}@media (max-width: 1199px){:host ::ng-deep .universal-header__nav-list{gap:16px 24px}}@media (max-width: 991px){:host ::ng-deep .universal-header__nav-list{flex-direction:column;gap:8px;padding:0 16px}}:host ::ng-deep .universal-header__nav-list li{position:relative;padding:8px 0}:host ::ng-deep .universal-header__nav-list li a{color:var(--brand-accessibility-text-primary, #282828);text-decoration:none!important;font-size:1rem;font-weight:600;line-height:1.25;white-space:nowrap;font-family:Wix Madefor Display,sans-serif}:host ::ng-deep .universal-header__nav-list li:hover a{color:var(--neutral-text-secondary, #636363)}:host ::ng-deep .universal-header__nav-list li:active a,:host ::ng-deep .universal-header__nav-list li.active a{color:var(--brand-public-primary, #D5AE75)}:host ::ng-deep .universal-header__nav.center .universal-header__nav-list{justify-content:center}:host ::ng-deep .universal-header__nav.right .universal-header__nav-list{justify-content:flex-end}:host ::ng-deep .universal-header__nav.justifybetween .universal-header__nav-list{justify-content:space-between}@media screen and (min-width: 992px){:host ::ng-deep .universal-header.header-light .universal-header__nav-list li a{color:var(--brand-accessibility-text-inverse, #fff)}}\n"] }]
|
|
292
|
-
}], ctorParameters: function () { return [{ type: i1.BreakpointObserver }, { type: i0.Renderer2 }]; }, propDecorators: { dataHeader: [{
|
|
325
|
+
args: [{ selector: 'lib-myrtex-widget-site-header', template: "<header *ngIf=\"isLoaded\" class=\"universal-header\" [class.header-light]=\"headerModel.isTransparent\" [class.header-transparent]=\"canApplyTransparentClass\">\r\n <div class=\"universal-header__top\">\r\n <div class=\"container\">\r\n <a href=\"/\" class=\"universal-header__top-logo\">\r\n <svg class=\"top-logo__logo\">\r\n <ng-container *ngIf=\"headerModel?.isVse; else fpgLogo\">\r\n <use href=\"#VSE_logo\"></use>\r\n </ng-container>\r\n <ng-template #fpgLogo>\r\n <use [attr.xlink:href]=\"canApplyTransparentClass ? '#FPG_logo_white' : '#FPG_logo_black'\"></use>\r\n </ng-template>\r\n </svg>\r\n </a>\r\n <div class=\"universal-header__top-right\">\r\n <div class=\"universal-header__buttons\">\r\n <div class=\"universal-header__ovz\" *ngIf=\"headerModel.hasOvz ?? true\">\r\n <button\r\n class=\"universal-button\"\r\n [class.active]=\"isOvzModeOpened\"\r\n aria-controls=\"ovzDropdown\"\r\n (click)=\"toggleOvzModeWrapper($event)\"\r\n >\r\n <span aria-hidden=\"true\" aria-hidden=\"true\" *ngIf=\"isDesktop || !isOvzModeOpened\" \r\n class=\"mrx-icon fpg-icon icon-fpg-glasses icon-font-20 text-normal\">\r\n </span>\r\n \r\n <span aria-hidden=\"true\" *ngIf=\"isOvzModeOpened && !isDesktop\" \r\n class=\"mrx-icon fpg-icon icon-fpg-close icon-font-20 text-normal\">\r\n </span>\r\n\r\n <span *ngIf=\"isDesktop\">\u0412\u0435\u0440\u0441\u0438\u044F \u0434\u043B\u044F \u0441\u043B\u0430\u0431\u043E\u0432\u0438\u0434\u044F\u0449\u0438\u0445</span>\r\n </button>\r\n\r\n <lib-ovz-menu\r\n *ngIf=\"!isMobile && (headerModel.hasOvz ?? false)\"\r\n [opened]=\"isOvzModeOpened\"\r\n [userId]=\"headerModel.userIdentity?.id\"\r\n [isAutentificated]=\"headerModel.isLoggedIn ?? false\"\r\n [initialSettings]=\"headerModel.ovzSettings\"\r\n (settingsChanged)=\"onOvzSettingsChanged($event)\"\r\n (closed)=\"isOvzModeOpened = false\"\r\n ></lib-ovz-menu>\r\n </div>\r\n\r\n <button\r\n class=\"universal-button\"\r\n [class.active]=\"isAllServicesMenuOpened\"\r\n aria-expanded=\"false\"\r\n aria-controls=\"allServicesDropdown\"\r\n (click)=\"toggleAllServicesWrapper($event)\"\r\n >\r\n <span aria-hidden=\"true\" *ngIf=\"isDesktop || !isAllServicesMenuOpened\" \r\n class=\"mrx-icon fpg-icon icon-fpg-components icon-font-20 text-normal\">\r\n </span>\r\n\r\n <span aria-hidden=\"true\" *ngIf=\"isAllServicesMenuOpened && !isDesktop\" \r\n class=\"mrx-icon fpg-icon icon-fpg-close icon-font-20 text-normal\">\r\n </span>\r\n\r\n <span *ngIf=\"isDesktop\">\u0412\u0441\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044B</span>\r\n </button>\r\n\r\n <button\r\n *ngIf=\"isMobile\"\r\n class=\"universal-button\"\r\n [class.active]=\"isMobileMenuOpened\"\r\n aria-expanded=\"false\"\r\n aria-controls=\"user-dropdown\"\r\n (click)=\"toggleMainMenu($event)\"\r\n >\r\n <span aria-hidden=\"true\" *ngIf=\"isMobile && !isMobileMenuOpened\" \r\n class=\"mrx-icon fpg-icon icon-fpg-menu icon-font-20 text-normal text-normal\">\r\n </span>\r\n\r\n <span aria-hidden=\"true\" *ngIf=\"isMobile && isMobileMenuOpened\" \r\n class=\"mrx-icon fpg-icon icon-fpg-close icon-font-20 text-normal\">\r\n </span>\r\n </button>\r\n </div>\r\n\r\n <ng-container *ngIf=\"isShowAwardUserMenu && !isMobile\">\r\n <mrx-award-user-menu [hideUserNavMenu]=\"true\"></mrx-award-user-menu>\r\n </ng-container>\r\n\r\n <lib-main-menu\r\n [headerModel]=\"headerModel\"\r\n [isMobile]=\"isMobile\"\r\n [opened]=\"isMobileMenuOpened\"\r\n [isShowAwardUserMenu]=\"isShowAwardUserMenu ?? false\"\r\n [hideNotLogginMainMenu]=\"hideNotLogginMainMenu\"\r\n [selectedRegion]=\"selectedRegion\"\r\n ></lib-main-menu>\r\n </div>\r\n </div>\r\n <lib-ovz-menu\r\n *ngIf=\"isMobile && (headerModel.hasOvz ?? false)\"\r\n [opened]=\"isOvzModeOpened\"\r\n [userId]=\"headerModel.userIdentity?.id\"\r\n [isAutentificated]=\"headerModel.isLoggedIn ?? false\"\r\n [initialSettings]=\"headerModel.ovzSettings\"\r\n (settingsChanged)=\"onOvzSettingsChanged($event)\"\r\n (closed)=\"isOvzModeOpened = false\"\r\n ></lib-ovz-menu>\r\n\r\n <lib-all-services-menu\r\n *ngIf=\"isAllServicesMenuOpened\"\r\n [headerModel]=\"headerModel\" \r\n (closed)=\"isAllServicesMenuOpened = false\"\r\n ></lib-all-services-menu>\r\n </div>\r\n\r\n <div class=\"container\" *ngIf=\"!isMobile\">\r\n <lib-public-pages\r\n [data]=\"headerModel.publicPages\"\r\n [selectedRegion]=\"selectedRegion\"\r\n [headerPosition]=\"headerModel.headerPosition ?? ''\"\r\n ></lib-public-pages>\r\n </div>\r\n</header>\r\n", styles: [":host .universal-header{background:var(--brand-bg-tertiary-default, #fff);font-family:Wix Madefor Display,sans-serif;font-size:1rem;font-weight:600;line-height:1.25;padding:24px 0 32px;position:relative;z-index:20}@media (max-width: 991px){:host .universal-header{padding:16px 0}}:host .universal-header *{font-family:Wix Madefor Display,sans-serif;font-weight:600}:host .universal-header ::ng-deep button:focus-visible,:host .universal-header ::ng-deep button:focus-within,:host .universal-header ::ng-deep a:focus-visible,:host .universal-header ::ng-deep a:focus-within,:host .universal-header ::ng-deep [role=button]:focus-within,:host .universal-header ::ng-deep [tabindex]:focus-within{outline:none;box-shadow:0 0 0 1px var(--brand-bg-secondary-default, #fbf5ee)}:host .universal-header ::ng-deep .universal-button{background:var(--neutral-bg-page, #F4F4F4);color:var(--neutral-text-primary, #262626);border:none;border-radius:8px;padding:12px 16px;display:flex;justify-content:center;align-items:center;gap:8px;cursor:pointer;font-size:1rem;font-weight:600;line-height:1.25;font-family:Wix Madefor Display,sans-serif;transition:all .2s ease-in-out}@media (max-width: 991px){:host .universal-header ::ng-deep .universal-button{padding:8px}}:host .universal-header ::ng-deep .universal-button:hover,:host .universal-header ::ng-deep .universal-button:active,:host .universal-header ::ng-deep .universal-button.active{background:var(--brand-bg-secondary-hover, #ebe1d5)}:host .universal-header ::ng-deep .universal-button span{white-space:nowrap;color:var(--neutral-text-primary, #FFF)}:host .universal-header ::ng-deep .universal-button .mrx-icon{color:var(--neutral-text-primary, #FFF)}:host .universal-header ::ng-deep .universal-button--accent{display:inline-flex;min-height:44px;padding:12px 16px;justify-content:center;align-items:center;gap:8px;border-radius:8px;font-weight:600;line-height:1.25;font-family:Wix Madefor Display,sans-serif;transition:all .2s ease-in-out;background:var(--brand-public-bg-primary, #282828);color:var(--brand-accessibility-text-inverse, #fff)}:host .universal-header ::ng-deep .universal-button--accent:hover{background:var(--neutral-text-secondary, #636363)}:host .universal-header ::ng-deep .universal-button--accent:active,:host .universal-header ::ng-deep .universal-button--accent .active{background:var(--neutral-text-tertiary, #9F9F9F)}:host .universal-header.header-transparent{background:transparent!important}:host .universal-header__buttons{display:flex;align-items:center;gap:12px}@media (max-width: 991px){:host .universal-header__buttons{gap:8px}}:host .universal-header__top{position:relative;z-index:20}@media (max-width: 991px){:host .universal-header__top{position:initial}}:host .universal-header__top>.container{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;position:relative}:host .universal-header__top>.container:after{content:\"\";height:1px;width:calc(100% - 32px);position:absolute;background-color:var(--neutral-bg-island-default, #f4f4f4);bottom:0;left:16px}@media (max-width: 991px){:host .universal-header__top>.container{padding-bottom:0;position:initial}:host .universal-header__top>.container:after{content:none}}:host .universal-header__top-logo{height:62px;max-width:200px;min-width:200px;display:flex;align-items:center;overflow:hidden}:host .universal-header__top-logo svg.top-logo__logo{max-height:62px;max-width:196px}:host .universal-header__top-right{display:flex;gap:12px}@media (max-width: 991px){:host .universal-header__top-right{gap:0}}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent{background:var(--neutral-bg-page, #282828);color:var(--neutral-text-primary, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button:hover,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent:hover,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button:focus,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent:focus,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button:active,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent:active,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button.active,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-button--accent.active{background:var(--neutral-bg-page, #282828);color:var(--neutral-text-primary, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header .universal-header__top>.container:after{background-color:var(--neutral-bg-page, #282828)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,body.theme-contrast-black) ::ng-deep .universal-header__user-profile .user-profile__avatar{background:var(--neutral-bg-page, #282828)}@media (max-width: 991px){:host ::ng-deep .universal-header__top-nav{position:fixed;top:94px;left:0;right:0;height:calc(100vh - 94px);height:calc(100dvh - 94px);overflow-y:auto;-webkit-overflow-scrolling:touch;box-sizing:border-box;width:100%;background:var(--brand-bg-tertiary-default, #fff)}}:host ::ng-deep .universal-header__top-nav .icon-up{transform:rotate(180deg);transition:transform .2s ease}:host ::ng-deep .universal-header__user{position:relative}@media (max-width: 991px){:host ::ng-deep .universal-header__user{border-top:1px solid var(--neutral-bg-island-default, #f4f4f4);border-bottom:1px solid var(--neutral-bg-island-default, #f4f4f4);padding:8px 0}}:host ::ng-deep .universal-header__user-profile{display:flex;align-items:center;gap:8px;cursor:pointer}@media (max-width: 991px){:host ::ng-deep .universal-header__user-profile{padding:12px 16px}}:host ::ng-deep .universal-header__user-profile__wrapper{display:flex;align-items:center;gap:12px;cursor:pointer;width:100%}@media (max-width: 991px){:host ::ng-deep .universal-header__user-profile__wrapper{width:calc(100% - 24px)}}:host ::ng-deep .universal-header__user-profile .user-profile__avatar{width:44px;height:44px;border-radius:50%;background:var(--neutral-bg-island-default, #F4F4F4)}:host ::ng-deep .universal-header__user-profile .user-profile__avatar .mrx-icon{color:var(--neutral-text-primary, #FFF)}:host ::ng-deep .universal-header__user-profile .user-profile__avatar>*{width:44px;height:44px;border-radius:50%;object-fit:cover}:host ::ng-deep .universal-header__user-profile .user-profile__avatar img{width:44px;height:44px;min-width:44px;max-height:44px;border-radius:50%;object-fit:cover}:host ::ng-deep .universal-header__user-profile .user-profile__info{display:inline-flex;flex-direction:column;align-items:start;max-width:200px}@media (max-width: 991px){:host ::ng-deep .universal-header__user-profile .user-profile__info{max-width:320px;min-width:0}}:host ::ng-deep .universal-header__user-profile .user-profile__info-role,:host ::ng-deep .universal-header__user-profile .user-profile__info-name{line-height:1.25;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:Wix Madefor Display,sans-serif}:host ::ng-deep .universal-header__user-profile .user-profile__info-role{font-size:.875rem;color:var(--neutral-text-tertiary, #9f9f9f)}:host ::ng-deep .universal-header__user-profile .user-profile__info-name{font-weight:600}:host ::ng-deep .universal-header__user-profile .user-profile__info-name.active{color:var(--brand-public-primary, #D5AE75)}@media (max-width: 991px){:host ::ng-deep .universal-header__user-profile{border-radius:0;padding:12px 16px}}@media (min-width: 992px){:host ::ng-deep .universal-header__user-menu{position:absolute;top:calc(100% + 3px);right:0;border-radius:16px;min-width:200px;background:var(--brand-bg-tertiary-default, #fff);box-shadow:0 4px 40px #181e4c1a;z-index:1000;opacity:0;visibility:hidden;transition:all .2s ease}}:host ::ng-deep .universal-header__user-menu .user-menu__list{list-style:none;padding:0;margin:0;width:100%}:host ::ng-deep .universal-header__user-menu .user-menu__list li a{display:inline-flex;align-items:center;padding:12px 16px;color:var(--brand-accessibility-text-primary, #282828);text-decoration:none!important;font-style:normal;font-weight:600;line-height:1.25;font-family:Wix Madefor Display,sans-serif}@media (max-width: 991px){:host ::ng-deep .universal-header__user-menu .user-menu__list li a{border-radius:8px}}:host ::ng-deep .universal-header__user-menu .user-menu__list li a .badge{display:flex;align-items:center;justify-content:center;white-space:nowrap;color:#fff;border-radius:50%;padding:4px;font-size:.875rem;font-weight:600;line-height:1.43;min-width:20px;height:20px;float:left;margin-left:8px;background:var(--brand-accessibility-text-primary, #282828);font-family:Wix Madefor Display,sans-serif}:host ::ng-deep .universal-header__user-menu .user-menu__list li:hover{background:var(--neutral-bg-page, #f4f4f4)}:host ::ng-deep .universal-header__user-menu .user-menu__list li:active,:host ::ng-deep .universal-header__user-menu .user-menu__list li.active{background:var(--brand-bg-secondary-hover, #ebe1d5)}@media (min-width: 992px){:host ::ng-deep .universal-header__user-menu .user-menu__list li:first-child{border-radius:16px 16px 0 0;padding-top:4px}}@media (min-width: 992px){:host ::ng-deep .universal-header__user-menu .user-menu__list li:last-child{border-radius:0 0 16px 16px;padding-bottom:4px}}@media (min-width: 992px){:host ::ng-deep .universal-header__user:hover .user-profile__info-name,:host ::ng-deep .universal-header__user:focus-within .user-profile__info-name,:host ::ng-deep .universal-header__user:active .user-profile__info-name{color:var(--brand-public-primary, #D5AE75)}}@media (min-width: 992px){:host ::ng-deep .universal-header__user:hover .universal-header__user-menu,:host ::ng-deep .universal-header__user:focus-within .universal-header__user-menu,:host ::ng-deep .universal-header__user:active .universal-header__user-menu{opacity:1;visibility:visible}}@media (max-width: 991px){:host ::ng-deep .universal-header__login{padding:8px 16px;border-top:1px solid var(--neutral-bg-island-default, #f4f4f4);border-bottom:1px solid var(--neutral-bg-island-default, #f4f4f4)}}@media (max-width: 991px){:host ::ng-deep .universal-header__login .universal-button--accent{margin:12px 0;width:100%}}@media screen and (min-width: 992px){:host ::ng-deep .universal-header.header-transparent .user-profile__info-role,:host ::ng-deep .universal-header.header-transparent .user-profile__info-name{color:var(--brand-accessibility-text-inverse, #fff)}}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a{color:var(--neutral-text-inverse, #fff)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a:hover,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a:focus,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a:active,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__nav-list li a.active{color:var(--neutral-text-inverse, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-profile .user-profile__info-role,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-profile .user-profile__info-name{color:var(--neutral-text-inverse, #FFF)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li:active,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li.active{background:var(--neutral-bg-page, #282828);color:var(--neutral-text-primary, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li:active a,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li.active a{color:var(--neutral-text-primary, #fff)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li:active:hover,:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li.active:hover{background-color:var(--neutral-bg-page, #282828)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li:hover{background-color:var(--brand-bg-tertiary-default, #F9F3D3)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .universal-header__user-menu .user-menu__list li a{color:var(--neutral-text-inverse, #FFF)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue,.theme-contrast-black) ::ng-deep .mrx-icon.icon-chevron-down{color:var(--neutral-text-inverse, #FFF)}@media (min-width: 992px){:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__user-menu{border:1px solid var(--brand-public-primary, #D5AE75)}}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__user-menu{border:1px solid var(--neutral-bg-page, #282828)}:host ::ng-deep .universal-header__services{background:var(--brand-bg-tertiary-default, #fff);padding-top:16px;padding-bottom:24px;position:absolute;top:100%;left:0;right:0;width:100%;border-radius:0 0 40px 40px;z-index:20}@media (max-width: 991px){:host ::ng-deep .universal-header__services{position:fixed;top:94px;left:0;right:0;height:calc(100vh - 94px);height:calc(100dvh - 94px);overflow-y:auto;padding-bottom:calc(24px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;box-sizing:border-box;padding-top:0;border-radius:0}}:host ::ng-deep .universal-header__services>.container{display:flex;flex-direction:column;gap:24px;width:100%}@media (max-width: 991px){:host ::ng-deep .universal-header__services>.container{padding:0}}:host ::ng-deep .universal-header__services-list{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:8px 12px;gap:8px 12px;list-style:none;padding:0;margin:0}@media (max-width: 991px){:host ::ng-deep .universal-header__services-list{position:relative;grid-template-columns:1fr 1fr;padding:8px 0;gap:8px;border-top:1px solid var(--neutral-bg-island-default, #f4f4f4)}}@media (max-width: 767px){:host ::ng-deep .universal-header__services-list{grid-template-columns:1fr}}:host ::ng-deep .universal-header__services-list a{border-radius:8px;background:var(--brand-bg-tertiary-default, #fff);color:var(--brand-accessibility-text-primary, #282828);text-decoration:none!important;display:flex;padding:12px 36px 12px 16px;align-items:center;gap:8px;align-self:stretch;position:relative;transition:all .2s ease-in-out}:host ::ng-deep .universal-header__services-list a:hover,:host ::ng-deep .universal-header__services-list a:active{background-color:var(--neutral-bg-island-default, #f4f4f4)}:host ::ng-deep .universal-header__services-list a:hover:after,:host ::ng-deep .universal-header__services-list a:active:after{content:\"\";position:absolute;top:50%;transform:translateY(-50%);right:16px;width:20px;height:20px;background-image:url(data:image/svg+xml,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%0A%3Cpath%20d%3D%22M15.345%204.65503L4.65479%2015.3452M15.345%204.65503L5.16986%204.67639M15.345%204.65503L15.3239%2014.8304%22%20stroke%3D%22%23282828%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22/%3E%0A%3C/svg%3E%0A);background-repeat:no-repeat;background-position:center center;background-size:contain}:host ::ng-deep .universal-header__services-list .services-list__link-name{line-height:1.25;font-weight:400;font-family:Wix Madefor Display,sans-serif;color:var(--brand-accessibility-text-primary, #282828)}:host ::ng-deep .universal-header__services-list .services-list__link-subname{font-size:.875rem;line-height:1.4;font-weight:400;color:var(--brand-text-accent, #624e33);font-family:Wix Madefor Display,sans-serif}@media (max-width: 991px){:host ::ng-deep .universal-header__services-list .services-list__link-name,:host ::ng-deep .universal-header__services-list .services-list__link-subname{font-weight:600}}:host ::ng-deep .universal-header__services-list .services-list__link-icon{max-width:20px;max-height:20px}:host ::ng-deep .universal-header__social{display:flex;gap:12px;padding-left:12px}@media (max-width: 991px){:host ::ng-deep .universal-header__social{padding:0 16px 32px}}:host ::ng-deep .universal-header__social-link{display:flex;padding:8px;align-items:center;border-radius:100%;background:var(--neutral-bg-island-default, #f4f4f4)}:host ::ng-deep .universal-header__social-link:hover,:host ::ng-deep .universal-header__social-link:active{background:var(--brand-bg-secondary-hover, #ebe1d5)}:host ::ng-deep .universal-header__social-icon{max-width:24px;max-height:24px;fill:var(--brand-accessibility-text-primary, #282828);transition:all .2s ease-in-out}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name{color:var(--neutral-text-inverse, #fff)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name:hover,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name:focus,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name:active,:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services-list .services-list__link-name.active{color:var(--neutral-text-inverse, #fff)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__social-link{background:var(--neutral-bg-page, #282828)}:host-context(body.hide-images) ::ng-deep .universal-header__services-list .services-list__link-icon{display:none}@media (min-width: 992px){:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__services{border:1px solid var(--brand-public-primary, #D5AE75)}}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__services{border:1px solid var(--neutral-bg-page, #282828)}:host ::ng-deep .universal-header__ovz{position:relative}:host ::ng-deep .universal-header__ovz-mode{position:absolute;top:calc(100% + 12px);right:0;border-radius:16px;min-width:400px;background:var(--brand-bg-tertiary-default, #fff);box-shadow:0 1px 4px #3b43571a;z-index:1000;transition:all .2s ease}@media (max-width: 991px){:host ::ng-deep .universal-header__ovz-mode{height:100vh;padding-top:0;padding-bottom:32px;overflow-y:auto;box-shadow:none;min-width:100%;border-radius:0;position:absolute;top:100%;left:0;right:0;width:100%;z-index:20}}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__section{justify-content:space-between;display:flex;padding:12px 16px;align-items:center;gap:8px}@media (max-width: 991px){:host ::ng-deep .universal-header__ovz-mode .ovz-mode__section{flex-wrap:wrap}}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__section .universal-button{padding:12px 16px}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__label{font-weight:600;font-size:1rem;white-space:nowrap;color:var(--brand-accessibility-text-primary, #282828)}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle-group,:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color-group{display:flex;gap:12px}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle,:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:2px solid transparent;border-radius:50%;font-weight:600;cursor:pointer;transition:all .2s ease}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle.active,:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color.active{border:2px solid var(--brand-public-primary, #D5AE75)}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle{background-color:var(--neutral-bg-page, #f4f4f4);color:var(--neutral-text-primary, #262626);font-size:16px;line-height:1.25;font-family:Wix Madefor Display,sans-serif}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle--medium{font-size:24px}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle--large{font-size:32px}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color{font-size:1rem}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--default{background-color:var(--brand-primary-default, #EBE1D5)}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--light{background-color:var(--neutral-bg-page, #F4F4F4);color:var(--neutral-text-primary, #262626)}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--sepia{background-color:#fff9da}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--blue{background-color:#a4d0fd}:host ::ng-deep .universal-header__ovz-mode .ovz-mode__color--black{background-color:#000;color:#fff}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox .mrx-switch-slider{width:68px!important;min-width:68px!important;height:40px!important}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox .mrx-switch-slider:before{width:36px!important;height:36px!important}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox input:checked+.mrx-switch-slider:before{transform:translate(28px)!important}:host ::ng-deep .mrx-switch.mrx-switch .mrx-switch-checkbox input:checked:not(:disabled)+.mrx-switch-slider{background-color:var(--brand-public-primary, #D5AE75)!important}:host ::ng-deep .mrx-switch.mrx-switch .mrx-switch__label{margin-left:0!important}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox input[type=checkbox]{position:absolute;left:0;top:50%;width:44px;height:24px;margin:0;transform:translateY(-50%);opacity:.01;z-index:1}:host ::ng-deep .mrx-switch.mrx-switch.mrx-switch-lg.ovz-img-switch .mrx-switch-checkbox input[type=checkbox]:focus+.mrx-switch-slider{outline:none;box-shadow:0 0 0 1px var(--brand-bg-secondary-default, #fbf5ee)}:host-context(body.theme-contrast-light) ::ng-deep .universal-header__ovz-mode .ovz-mode__color.ovz-mode__color--light.active{border:2px solid var(--brand-public-primary, #D5AE75);background:var(--brand-bg-tertiary-default, #FFF);color:var(--neutral-text-inverse, #282828)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__ovz-mode{border:1px solid var(--neutral-bg-page, #282828)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__ovz-mode .ovz-mode__label{color:var(--neutral-text-inverse, #FFF)}:host-context(body.theme-contrast-black) ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle.active{background:var(--brand-bg-tertiary-default, #FFF);color:var(--neutral-text-inverse, #282828)}@media (min-width: 992px){:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__ovz-mode{border:1px solid var(--brand-public-primary, #D5AE75)}}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__ovz-mode .ovz-mode__toggle.active{background:var(--brand-bg-tertiary-default, #FFF);color:var(--neutral-text-inverse, #282828)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__ovz-mode .ovz-mode__color.ovz-mode__color--light{background-color:var(--neutral-bg-page, #f4f4f4);color:var(--neutral-text-primary, #262626)}:host-context(body.theme-contrast-light,body.theme-contrast-sepia,body.theme-contrast-blue) ::ng-deep .universal-header__ovz-mode .ovz-mode__color.ovz-mode__color--black{color:var(--neutral-text-primary, #262626)}:host ::ng-deep .universal-header__nav{padding-top:8px;z-index:19}@media (max-width: 991px){:host ::ng-deep .universal-header__nav{padding-bottom:32px}}:host ::ng-deep .universal-header__nav-list{display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0;gap:16px 32px}@media (max-width: 1199px){:host ::ng-deep .universal-header__nav-list{gap:16px 24px}}@media (max-width: 991px){:host ::ng-deep .universal-header__nav-list{flex-direction:column;gap:8px;padding:0 16px}}:host ::ng-deep .universal-header__nav-list li{position:relative;padding:8px 0}:host ::ng-deep .universal-header__nav-list li a{color:var(--brand-accessibility-text-primary, #282828);text-decoration:none!important;font-size:1rem;font-weight:600;line-height:1.25;white-space:nowrap;font-family:Wix Madefor Display,sans-serif}:host ::ng-deep .universal-header__nav-list li:hover a{color:var(--neutral-text-secondary, #636363)}:host ::ng-deep .universal-header__nav-list li:active a,:host ::ng-deep .universal-header__nav-list li.active a{color:var(--brand-public-primary, #D5AE75)}:host ::ng-deep .universal-header__nav.center .universal-header__nav-list{justify-content:center}:host ::ng-deep .universal-header__nav.right .universal-header__nav-list{justify-content:flex-end}:host ::ng-deep .universal-header__nav.justifybetween .universal-header__nav-list{justify-content:space-between}@media screen and (min-width: 992px){:host ::ng-deep .universal-header.header-light .universal-header__nav-list li a{color:var(--brand-accessibility-text-inverse, #fff)}}\n"] }]
|
|
326
|
+
}], ctorParameters: function () { return [{ type: i1.BreakpointObserver }, { type: i0.Renderer2 }, { type: i2.Store }]; }, propDecorators: { dataHeader: [{
|
|
293
327
|
type: Input,
|
|
294
328
|
args: ['data-header']
|
|
329
|
+
}], isWide: [{
|
|
330
|
+
type: Input
|
|
331
|
+
}], hideNotLogginMainMenu: [{
|
|
332
|
+
type: Input
|
|
333
|
+
}], selectedRegion: [{
|
|
334
|
+
type: Input
|
|
295
335
|
}], child: [{
|
|
296
336
|
type: ViewChild,
|
|
297
337
|
args: [OvzMenuComponent]
|
|
@@ -299,4 +339,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
299
339
|
type: HostListener,
|
|
300
340
|
args: ['document:keydown.escape']
|
|
301
341
|
}] } });
|
|
302
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXlydGV4LXdpZGdldC1zaXRlLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0ZXgtd2lkZ2V0LXNpdGUtaGVhZGVyL3NyYy9saWIvbXlydGV4LXdpZGdldC1zaXRlLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0ZXgtd2lkZ2V0LXNpdGUtaGVhZGVyL3NyYy9saWIvbXlydGV4LXdpZGdldC1zaXRlLWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXdDLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUloSCxPQUFPLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsbUJBQW1CLEVBQUUsb0JBQW9CLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7Ozs7O0FBT2xMLE1BQU0sT0FBTywrQkFBK0I7SUF5QjFDLFlBQW9CLGtCQUFzQyxFQUFVLFFBQW1CO1FBQW5FLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFBVSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBeEJoRixnQkFBVyxHQUFzQixFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUNyRCxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFTakIsc0JBQWlCLEdBQUcsb0JBQW9CLENBQUM7UUFDekMsdUJBQWtCLEdBQUcsb0JBQW9CLENBQUM7UUFFMUMscUJBQWdCLEdBQUcsS0FBSyxD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WUFDUjtnQkFDRSxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQztnQkFDckQsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7Z0JBQ3BELFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO2dCQUNyRCxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQztnQkFDckQsTUFBTTtTQUNiO1FBRUQsSUFBSSxRQUFRLENBQUMsYUFBYSxFQUMxQjtZQUNJLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUMvQzthQUVEO1lBQ0ksUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQzVDO0lBQ0gsQ0FBQztJQUVPLHFCQUFxQjtRQUMzQixRQUFRLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDMUQsUUFBUSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzVELENBQUM7OzZIQXBVVSwrQkFBK0I7aUhBQS9CLCtCQUErQixxT0FVL0IsZ0JBQWdCLGdEQ3ZCN0IsK2xLQW9IQTs0RkR2R2EsK0JBQStCO2tCQUwzQyxTQUFTOytCQUNFLCtCQUErQjtpSUFVckMsVUFBVTtzQkFEYixLQUFLO3VCQUFDLGFBQWE7Z0JBS1MsS0FBSztzQkFBakMsU0FBUzt1QkFBQyxnQkFBZ0I7Z0JBeURsQixRQUFRO3NCQURoQixZQUFZO3VCQUFDLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgUmVuZGVyZXIyLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSGVhZGVyV2lkZ2V0TW9kZWwsIEhlYWRlcldpZGdldE92elNldHRpbmdzIH0gZnJvbSAnLi9tb2RlbHMvaGVhZGVyLXdpZGdldC5tb2RlbCc7XHJcbmltcG9ydCB7IEJyZWFrcG9pbnRPYnNlcnZlciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9sYXlvdXQnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ29sb3JTY2hlbWVFbnVtLCBGb250U2l6ZUVudW0sIE1lbnVUeXBlc0VudW0gfSBmcm9tICcuL21vZGVscy9oZWFkZXItd2lkZ2V0LmVuYW0nO1xyXG5pbXBvcnQgeyBPdnpNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9tb2R1bGVzL292ei1tZW51L292ei1tZW51LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZPTlRfU0NBTEVfMTUwLCBGT05UX1NDQUxFXzE3NSwgSElERV9JTUFHRVMsIFRIRU1FX0NPTlRSQVNUX0JMQUNLLCBUSEVNRV9DT05UUkFTVF9CTFVFLCBUSEVNRV9DT05UUkFTVF9MSUdIVCwgVEhFTUVfQ09OVFJBU1RfU0VQSUEgfSBmcm9tICcuL21vZHVsZXMvb3Z6LW1lbnUvY29uc3RhbnRzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLW15cnRleC13aWRnZXQtc2l0ZS1oZWFkZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnbXlydGV4LXdpZGdldC1zaXRlLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbXlydGV4LXdpZGdldC1zaXRlLWhlYWRlci5jb21wb25lbnQubGVzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNeXJ0ZXhXaWRnZXRTaXRlSGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHB1YmxpYyBoZWFkZXJNb2RlbDogSGVhZGVyV2lkZ2V0TW9kZWwgPSB7IHB1YmxpY1BhZ2VzOiBbXSB9O1xyXG4gIHB1YmxpYyBpc01vYmlsZSA9IGZhbHNlO1xyXG4gIHB1YmxpYyBpc0Rlc2t0b3AgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KCdkYXRhLWhlYWRlcicpXHJcbiAgc2V0IGRhdGFIZWFkZXIodmFsdWU6IHN0cmluZyB8IEhlYWRlcldpZGdldE1vZGVsIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xyXG4gICAgdGhpcy5fYXBwbHlEYXRhKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIEBWaWV3Q2hpbGQoT3Z6TWVudUNvbXBvbmVudCkgY2hpbGQhOiBPdnpNZW51Q29tcG9uZW50O1xyXG5cclxuICBwcml2YXRlIF9tb2JpbGVCcmVha3BvaW50ID0gJyhtYXgtd2lkdGg6IDk5MXB4KSc7XHJcbiAgcHJpdmF0ZSBfZGVza3RvcEJyZWFrcG9pbnQgPSAnKG1pbi13aWR0aDogOTkycHgpJztcclxuXHJcbiAgcHJpdmF0ZSBfaXNPdnpNb2RlT3BlbmVkID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSBfaXNBbGxTZXJ2aWNlc09wZW5lZCA9IGZhbHNlO1xyXG4gIHByaXZhdGUgX2lzTW9iaWxlTWVudU9wZW5lZCA9IGZhbHNlO1xyXG4gIHByaXZhdGUgX2JyZWFrcG9pbnRTdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgcGljdHVyZVN3aXRjaENvb2tpZU5hbWUgPSAnb3Z6LXBpY3R1cmUtc3dpdGNoJztcclxuICBwcml2YXRlIHJlYWRvbmx5IGZvbnRTaXplQ29va2llTmFtZSA9ICdvdnotZm9udC1zaXplJztcclxuICBwcml2YXRlIHJlYWRvbmx5IGNvbG9yU2NoZW1lQ29va2llTmFtZSA9ICdvdnotY29sb3Itc2NoZW1lJztcclxuICBwcml2YXRlIHJlYWRvbmx5IGNvb2tpZUxpZmV0aW1lRGF5cyA9IDM2NTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBicmVha3BvaW50T2JzZXJ2ZXI6IEJyZWFrcG9pbnRPYnNlcnZlciwgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuX2JyZWFrcG9pbnRTdWJzY3JpcHRpb24gPSB0aGlzLmJyZWFrcG9pbnRPYnNlcnZlclxyXG4gICAgICAub2JzZXJ2ZShbXHJcbiAgICAgICAgdGhpcy5fbW9iaWxlQnJlYWtwb2ludCxcclxuICAgICAgICB0aGlzLl9kZXNrdG9wQnJlYWtwb2ludFxyXG4gICAgICBdKVxyXG4gICAgICAuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XHJcbiAgICAgICAgY29uc3Qgd2FzTW9iaWxlID0gdGhpcy5pc01vYmlsZTtcclxuICAgICAgICB0aGlzLmlzTW9iaWxlID0gcmVzdWx0LmJyZWFrcG9pbnRzW3RoaXMuX21vYmlsZUJyZWFrcG9pbnRdO1xyXG4gICAgICAgIHRoaXMuaXNEZXNrdG9wID0gcmVzdWx0LmJyZWFrcG9pbnRzW3RoaXMuX2Rlc2t0b3BCcmVha3BvaW50XTtcclxuXHJcbiAgICAgICAgaWYgKHdhc01vYmlsZSAhPT0gdGhpcy5pc01vYmlsZSkge1xyXG4gICAgICAgICAgdGhpcy5fdXBkYXRlQm9keSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICAgIGlmKHRoaXMuaGVhZGVyTW9kZWwuaGFzT3Z6KVxyXG4gICAgICB7XHJcbiAgICAgICAgaWYoISF0aGlzLmhlYWRlck1vZGVsLm92elNldHRpbmdzKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHRoaXMuYXBwbHlTZXR0aW5ncyh0aGlzLmhlYWRlck1vZGVsLm92elNldHRpbmdzKTtcclxuICAgICAgICAgIHRoaXMud3JpdGVTZXR0aW5nc1RvQ29va2llcyh0aGlzLmhlYWRlck1vZGVsLm92elNldHRpbmdzKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZih0aGlzLmhlYWRlck1vZGVsLmlzTG9nZ2VkSW4gPT0gZmFsc2UpXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgY29uc3QgY29va2llU2V0dGluZ3MgPSB0aGlzLnJlYWRTZXR0aW5nc0Zyb21Db29raWVzKCkgPz8gdGhpcy5nZXREZWZhdWx0U2V0dGluZ3MoKTtcclxuICAgICAgICAgIHRoaXMuYXBwbHlTZXR0aW5ncyhjb29raWVTZXR0aW5ncyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3MoZG9jdW1lbnQuYm9keSwgJ2JvZHktbm8tc2Nyb2xsJyk7XHJcblxyXG4gICAgaWYgKHRoaXMuX2JyZWFrcG9pbnRTdWJzY3JpcHRpb24pIHtcclxuICAgICAgdGhpcy5fYnJlYWtwb2ludFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bi5lc2NhcGUnKVxyXG4gICAgcHVibGljIG9uRXNjYXBlKCk6IHZvaWQge1xyXG4gICAgY29uc3QgaGFzT3BlbmVkTWVudSA9XHJcbiAgICAgIHRoaXMuaXNPdnpNb2RlT3BlbmVkIHx8XHJcbiAgICAgIHRoaXMuaXNBbGxTZXJ2aWNlc01lbnVPcGVuZWQgfHxcclxuICAgICAgdGhpcy5pc01vYmlsZU1lbnVPcGVuZWQ7XHJcblxyXG4gICAgaWYgKCFoYXNPcGVuZWRNZW51KSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLl9pc092ek1vZGVPcGVuZWQgPSBmYWxzZTtcclxuICAgIHRoaXMuX2lzQWxsU2VydmljZXNPcGVuZWQgPSBmYWxzZTtcclxuICAgIHRoaXMuX2lzTW9iaWxlTWVudU9wZW5lZCA9IGZhbHNlO1xyXG4gICAgdGhpcy5fdXBkYXRlQm9keSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBpc092ek1vZGVPcGVuZWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5faXNPdnpNb2RlT3BlbmVkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldCBpc092ek1vZGVPcGVuZWQodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuX2lzT3Z6TW9kZU9wZW5lZCA9IHZhbHVlO1xyXG4gICAgdGhpcy5fdXBkYXRlQm9keSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBpc0FsbFNlcnZpY2VzTWVudU9wZW5lZCgpIHtcclxuICAgIHJldHVybiB0aGlzLl9pc0FsbFNlcnZpY2VzT3BlbmVkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldCBpc0FsbFNlcnZpY2VzTWVudU9wZW5lZCh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5faXNBbGxTZXJ2aWNlc09wZW5lZCA9IHZhbHVlO1xyXG4gICAgdGhpcy5fdXBkYXRlQm9keSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBpc1Nob3dBd2FyZFVzZXJNZW51KCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaGVhZGVyTW9kZWw/LmlzTG9nZ2VkSW4gJiYgdGhpcy5oZWFkZXJNb2RlbD8uaXNWc2UgJiYgdGhpcy5oZWFkZXJNb2RlbD8uYXdhcmRVc2VyTWVudUVuYWJsZWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGlzTW9iaWxlTWVudU9wZW5lZCgpIHtcclxuICAgIHJldHVybiB0aGlzLl9pc01vYmlsZU1lbnVPcGVuZWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0IGlzTW9iaWxlTWVudU9wZW5lZCh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5faXNNb2JpbGVNZW51T3BlbmVkID0gdmFsdWU7XHJcbiAgICB0aGlzLl91cGRhdGVCb2R5KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGNhbkFwcGx5VHJhbnNwYXJlbnRDbGFzcygpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IG1vYmlsZU1lbnVCbG9ja3MgPSB0aGlzLmlzTW9iaWxlICYmIHRoaXMuaXNNb2JpbGVNZW51T3BlbmVkO1xyXG5cclxuICAgIHJldHVybiAhIXRoaXMuaGVhZGVyTW9kZWw/LmlzVHJhbnNwYXJlbnQgJiZcclxuICAgICAgIXRoaXMuaXNPdnpNb2RlT3BlbmVkICYmXHJcbiAgICAgICF0aGlzLmlzQWxsU2VydmljZXNNZW51T3BlbmVkICYmXHJcbiAgICAgICFtb2JpbGVNZW51QmxvY2tzO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjbG9zZU90aGVyTWVudShjdXJyZW50TWVudTogTWVudVR5cGVzRW51bSkge1xyXG4gICAgc3dpdGNoIChjdXJyZW50TWVudSkge1xyXG4gICAgICBjYXNlIE1lbnVUeXBlc0VudW0uT3Z6OiB7XHJcbiAgICAgICAgdGhpcy5pc0FsbFNlcnZpY2VzTWVudU9wZW5lZCA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuaXNNb2JpbGVNZW51T3BlbmVkID0gZmFsc2U7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgICAgY2FzZSBNZW51VHlwZXNFbnVtLkFsbFNlcnZpY2VzOiB7XHJcbiAgICAgICAgdGhpcy5pc092ek1vZGVPcGVuZWQgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmlzTW9iaWxlTWVudU9wZW5lZCA9IGZhbHNlO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICAgIGRlZmF1bHQ6IHtcclxuICAgICAgICB0aGlzLmlzT3Z6TW9kZU9wZW5lZCA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuaXNBbGxTZXJ2aWNlc01lbnVPcGVuZWQgPSBmYWxzZTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHRvZ2dsZU1haW5NZW51KGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICBpZiAodGhpcy5pc01vYmlsZSkge1xyXG4gICAgICBjb25zdCBuZXdUYXJnZXRWYWx1ZSA9ICF0aGlzLmlzTW9iaWxlTWVudU9wZW5lZDtcclxuICAgICAgaWYgKG5ld1RhcmdldFZhbHVlKSB7XHJcbiAgICAgICAgdGhpcy5jbG9zZU90aGVyTWVudShNZW51VHlwZXNFbnVtLk1haW5NZW51KTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmlzTW9iaWxlTWVudU9wZW5lZCA9IG5ld1RhcmdldFZhbHVlO1xyXG4gICAgfVxyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdG9nZ2xlT3Z6TW9kZVdyYXBwZXIoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICAgIGNvbnN0IG5ld1RhcmdldFZhbHVlID0gIXRoaXMuaXNPdnpNb2RlT3BlbmVkO1xyXG4gICAgaWYgKG5ld1RhcmdldFZhbHVlKSB7XHJcbiAgICAgIHRoaXMuY2xvc2VPdGhlck1lbnUoTWVudVR5cGVzRW51bS5PdnopO1xyXG4gICAgfVxyXG4gICAgdGhpcy5pc092ek1vZGVPcGVuZWQgPSBuZXdUYXJnZXRWYWx1ZTtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHRvZ2dsZUFsbFNlcnZpY2VzV3JhcHBlcihldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgY29uc3QgbmV3VGFyZ2V0VmFsdWUgPSAhdGhpcy5pc0FsbFNlcnZpY2VzTWVudU9wZW5lZDtcclxuICAgIGlmIChuZXdUYXJnZXRWYWx1ZSkge1xyXG4gICAgICB0aGlzLmNsb3NlT3RoZXJNZW51KE1lbnVUeXBlc0VudW0uQWxsU2VydmljZXMpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5pc0FsbFNlcnZpY2VzTWVudU9wZW5lZCA9IG5ld1RhcmdldFZhbHVlO1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25PdnpTZXR0aW5nc0NoYW5nZWQocGF5bG9hZDogSGVhZGVyV2lkZ2V0T3Z6U2V0dGluZ3MpOiB2b2lkIHtcclxuICAgIHRoaXMuYXBwbHlTZXR0aW5ncyhwYXlsb2FkKTtcclxuICAgIHRoaXMud3JpdGVTZXR0aW5nc1RvQ29va2llcyhwYXlsb2FkKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3VwZGF0ZUJvZHkoKTogdm9pZCB7XHJcbiAgICBjb25zdCBzaG91bGRMb2NrID0gdGhpcy5pc01vYmlsZSAmJiAodGhpcy5faXNNb2JpbGVNZW51T3BlbmVkIHx8IHRoaXMuX2lzQWxsU2VydmljZXNPcGVuZWQgfHwgdGhpcy5faXNPdnpNb2RlT3BlbmVkKTtcclxuICAgIGNvbnN0IGhhc0xvY2sgPSBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5jb250YWlucygnYm9keS1uby1zY3JvbGwnKTtcclxuXHJcbiAgICBpZiAoc2hvdWxkTG9jayAmJiAhaGFzTG9jaykge1xyXG4gICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGRvY3VtZW50LmJvZHksICdib2R5LW5vLXNjcm9sbCcpO1xyXG4gICAgfSBlbHNlIGlmICghc2hvdWxkTG9jayAmJiBoYXNMb2NrKSB7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3MoZG9jdW1lbnQuYm9keSwgJ2JvZHktbm8tc2Nyb2xsJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9hcHBseURhdGEoXHJcbiAgICB2YWx1ZTogc3RyaW5nIHwgSGVhZGVyV2lkZ2V0TW9kZWwgfCBudWxsIHwgdW5kZWZpbmVkXHJcbiAgKTogdm9pZCB7XHJcbiAgICBpZiAodmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLmhlYWRlck1vZGVsID0geyBwdWJsaWNQYWdlczogW10gfTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRyeSB7XHJcbiAgICAgIGNvbnN0IHBhcnNlZCA9IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgPyBKU09OLnBhcnNlKHZhbHVlKSA6IHZhbHVlO1xyXG4gICAgICBpZiAocGFyc2VkICYmIHR5cGVvZiBwYXJzZWQgPT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgY29uc3QgcHVibGljUGFnZXMgPSBBcnJheS5pc0FycmF5KFxyXG4gICAgICAgICAgKHBhcnNlZCBhcyBIZWFkZXJXaWRnZXRNb2RlbCkucHVibGljUGFnZXNcclxuICAgICAgICApXHJcbiAgICAgICAgICA/IChwYXJzZWQgYXMgSGVhZGVyV2lkZ2V0TW9kZWwpLnB1YmxpY1BhZ2VzXHJcbiAgICAgICAgICA6IFtdO1xyXG5cclxuICAgICAgICB0aGlzLmhlYWRlck1vZGVsID0ge1xyXG4gICAgICAgICAgLi4ucGFyc2VkLFxyXG4gICAgICAgICAgcHVibGljUGFnZXNcclxuICAgICAgICB9IGFzIEhlYWRlcldpZGdldE1vZGVsO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuaGVhZGVyTW9kZWwgPSB7IHB1YmxpY1BhZ2VzOiBbXSB9O1xyXG4gICAgICB9XHJcbiAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICB0aGlzLmhlYWRlck1vZGVsID0geyBwdWJsaWNQYWdlczogW10gfTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgd3JpdGVTZXR0aW5nc1RvQ29va2llcyhzZXR0aW5nczogSGVhZGVyV2lkZ2V0T3Z6U2V0dGluZ3MpOiB2b2lkIHtcclxuICAgIHRoaXMuc2V0Q29va2llKHRoaXMucGljdHVyZVN3aXRjaENvb2tpZU5hbWUsIFN0cmluZyhzZXR0aW5ncy5waWN0dXJlU3dpdGNoKSk7XHJcbiAgICB0aGlzLnNldENvb2tpZSh0aGlzLmZvbnRTaXplQ29va2llTmFtZSwgU3RyaW5nKHNldHRpbmdzLmZvbnRTaXplKSk7XHJcbiAgICB0aGlzLnNldENvb2tpZSh0aGlzLmNvbG9yU2NoZW1lQ29va2llTmFtZSwgU3RyaW5nKHNldHRpbmdzLmNvbG9yU2NoZW1lKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldENvb2tpZShuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgZGF0ZS5zZXREYXRlKGRhdGUuZ2V0RGF0ZSgpICsgdGhpcy5jb29raWVMaWZldGltZURheXMpO1xyXG4gICAgZG9jdW1lbnQuY29va2llID0gYCR7bmFtZX09JHtlbmNvZGVVUklDb21wb25lbnQodmFsdWUpfTtleHBpcmVzPSR7ZGF0ZS50b1VUQ1N0cmluZygpfTtwYXRoPS87YDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVhZFNldHRpbmdzRnJvbUNvb2tpZXMoKTogSGVhZGVyV2lkZ2V0T3Z6U2V0dGluZ3MgfCBudWxsIHtcclxuICAgIGNvbnN0IHBpY3R1cmVTd2l0Y2hWYWx1ZSA9IHRoaXMuZ2V0Q29va2llKHRoaXMucGljdHVyZVN3aXRjaENvb2tpZU5hbWUpO1xyXG4gICAgY29uc3QgZm9udFNpemVWYWx1ZSA9IHRoaXMuZ2V0Q29va2llKHRoaXMuZm9udFNpemVDb29raWVOYW1lKTtcclxuICAgIGNvbnN0IGNvbG9yU2NoZW1lVmFsdWUgPSB0aGlzLmdldENvb2tpZSh0aGlzLmNvbG9yU2NoZW1lQ29va2llTmFtZSk7XHJcblxyXG4gICAgaWYgKCFwaWN0dXJlU3dpdGNoVmFsdWUgJiYgIWZvbnRTaXplVmFsdWUgJiYgIWNvbG9yU2NoZW1lVmFsdWUpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgZGVmYXVsdFNldHRpbmdzID0gdGhpcy5nZXREZWZhdWx0U2V0dGluZ3MoKTtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIHBpY3R1cmVTd2l0Y2g6IHBpY3R1cmVTd2l0Y2hWYWx1ZSA9PT0gbnVsbCA/IGRlZmF1bHRTZXR0aW5ncy5waWN0dXJlU3dpdGNoIDogcGljdHVyZVN3aXRjaFZhbHVlID09PSAndHJ1ZScsXHJcbiAgICAgIGZvbnRTaXplOiBPYmplY3QudmFsdWVzKEZvbnRTaXplRW51bSkuaW5jbHVkZXMoTnVtYmVyKGZvbnRTaXplVmFsdWUpIGFzIEZvbnRTaXplRW51bSlcclxuICAgICAgICA/IChOdW1iZXIoZm9udFNpemVWYWx1ZSkgYXMgRm9udFNpemVFbnVtKVxyXG4gICAgICAgIDogZGVmYXVsdFNldHRpbmdzLmZvbnRTaXplLFxyXG4gICAgICBjb2xvclNjaGVtZTogT2JqZWN0LnZhbHVlcyhDb2xvclNjaGVtZUVudW0pLmluY2x1ZGVzKE51bWJlcihjb2xvclNjaGVtZVZhbHVlKSBhcyBDb2xvclNjaGVtZUVudW0pXHJcbiAgICAgICAgPyAoTnVtYmVyKGNvbG9yU2NoZW1lVmFsdWUpIGFzIENvbG9yU2NoZW1lRW51bSlcclxuICAgICAgICA6IGRlZmF1bHRTZXR0aW5ncy5jb2xvclNjaGVtZVxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0Q29va2llKG5hbWU6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xyXG4gICAgLy/QndCwINCy0YHRj9C60LjQuSDRgdC70YPRh9Cw0Lkg0Y3QutGA0LDQvdC40YDRg9C10Lwg0YHQv9C10YbQuNGB0LjQvNCy0L7Qu9GLLCDRh9GC0L7QsdGLINC40LfQsdC10LbQsNGC0Ywg0L7RiNC40LHQvtC6INC40L3RgtC10YDQv9C10YLQsNGG0LjQuCDRgNC10LPRg9C70Y/RgNC60LhcclxuICAgIGNvbnN0IGVzY2FwZWROYW1lID0gbmFtZS5yZXBsYWNlKC9bLiorP14ke30oKXxbXFxdXFxcXF0vZywgJ1xcXFwkJicpO1xyXG4gICAgY29uc3QgbWF0Y2ggPSBkb2N1bWVudC5jb29raWUubWF0Y2gobmV3IFJlZ0V4cChgKD86Xnw7ICkke2VzY2FwZWROYW1lfT0oW147XSopYCkpO1xyXG4gICAgcmV0dXJuIG1hdGNoID8gZGVjb2RlVVJJQ29tcG9uZW50KG1hdGNoWzFdKSA6IG51bGw7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldERlZmF1bHRTZXR0aW5ncygpOiBIZWFkZXJXaWRnZXRPdnpTZXR0aW5ncyB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIHBpY3R1cmVTd2l0Y2g6IHRydWUsXHJcbiAgICAgICAgZm9udFNpemU6IEZvbnRTaXplRW51bS5TbWFsbCxcclxuICAgICAgICBjb2xvclNjaGVtZTogQ29sb3JTY2hlbWVFbnVtLkRlZmF1bHRcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFwcGx5U2V0dGluZ3Moc2V0dGluZ3M6IEhlYWRlcldpZGdldE92elNldHRpbmdzKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlbW92ZUZvbnRTaXplQ2xhc3NlcygpO1xyXG4gICAgc3dpdGNoIChzZXR0aW5ncy5mb250U2l6ZSkge1xyXG4gICAgICAgICAgY2FzZSBGb250U2l6ZUVudW0uTWVkaXVtOlxyXG4gICAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZChGT05UX1NDQUxFXzE1MCk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgY2FzZSBGb250U2l6ZUVudW0uTGFyZ2U6XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3QuYWRkKEZPTlRfU0NBTEVfMTc1KTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICBicmVhaztcclxuICAgIH1cclxuICAgICAgICBcclxuICAgIHN3aXRjaCAoc2V0dGluZ3MuY29sb3JTY2hlbWUpIHtcclxuICAgICAgICAgIGNhc2UgQ29sb3JTY2hlbWVFbnVtLkxpZ2h0OlxyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoVEhFTUVfQ09OVFJBU1RfQkxBQ0spO1xyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoVEhFTUVfQ09OVFJBU1RfQkxVRSk7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZShUSEVNRV9DT05UUkFTVF9TRVBJQSk7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZChUSEVNRV9DT05UUkFTVF9MSUdIVCk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgY2FzZSBDb2xvclNjaGVtZUVudW0uQmxhY2s6XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZShUSEVNRV9DT05UUkFTVF9MSUdIVCk7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZShUSEVNRV9DT05UUkFTVF9CTFVFKTtcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKFRIRU1FX0NPTlRSQVNUX1NFUElBKTtcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKFRIRU1FX0NPTlRSQVNUX0JMQUNLKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBjYXNlIENvbG9yU2NoZW1lRW51bS5CbHVlOlxyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoVEhFTUVfQ09OVFJBU1RfTElHSFQpO1xyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoVEhFTUVfQ09OVFJBU1RfQkxBQ0spO1xyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoVEhFTUVfQ09OVFJBU1RfU0VQSUEpO1xyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoVEhFTUVfQ09OVFJBU1RfQkxVRSk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgY2FzZSBDb2xvclNjaGVtZUVudW0uU2VwaWE6XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZShUSEVNRV9DT05UUkFTVF9MSUdIVCk7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZShUSEVNRV9DT05UUkFTVF9CTEFDSyk7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZShUSEVNRV9DT05UUkFTVF9CTFVFKTtcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKFRIRU1FX0NPTlRSQVNUX1NFUElBKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoVEhFTUVfQ09OVFJBU1RfQkxBQ0spO1xyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoVEhFTUVfQ09OVFJBU1RfQkxVRSk7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZShUSEVNRV9DT05UUkFTVF9TRVBJQSk7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZShUSEVNRV9DT05UUkFTVF9MSUdIVCk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChzZXR0aW5ncy5waWN0dXJlU3dpdGNoKSBcclxuICAgIHtcclxuICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoSElERV9JTUFHRVMpO1xyXG4gICAgfSBcclxuICAgIGVsc2UgXHJcbiAgICB7XHJcbiAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKEhJREVfSU1BR0VTKTtcclxuICAgIH1cclxuICB9ICBcclxuXHJcbiAgcHJpdmF0ZSByZW1vdmVGb250U2l6ZUNsYXNzZXMoKTogdm9pZCB7XHJcbiAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShGT05UX1NDQUxFXzE1MCk7XHJcbiAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShGT05UX1NDQUxFXzE3NSk7XHJcbiAgfVxyXG59XHJcbiIsIjxoZWFkZXIgY2xhc3M9XCJ1bml2ZXJzYWwtaGVhZGVyXCIgW2NsYXNzLmhlYWRlci1saWdodF09XCJoZWFkZXJNb2RlbC5pc1RyYW5zcGFyZW50XCIgW2NsYXNzLmhlYWRlci10cmFuc3BhcmVudF09XCJjYW5BcHBseVRyYW5zcGFyZW50Q2xhc3NcIj5cclxuICA8ZGl2IGNsYXNzPVwidW5pdmVyc2FsLWhlYWRlcl9fdG9wXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XHJcbiAgICAgIDxhIGhyZWY9XCIvXCIgY2xhc3M9XCJ1bml2ZXJzYWwtaGVhZGVyX190b3AtbG9nb1wiPlxyXG4gICAgICAgIDxzdmcgY2xhc3M9XCJ0b3AtbG9nb19fbG9nb1wiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhlYWRlck1vZGVsPy5pc1ZzZTsgZWxzZSBmcGdMb2dvXCI+XHJcbiAgICAgICAgICAgIDx1c2UgaHJlZj1cIiNWU0VfbG9nb1wiPjwvdXNlPlxyXG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICA8bmctdGVtcGxhdGUgI2ZwZ0xvZ28+XHJcbiAgICAgICAgICAgIDx1c2UgW2F0dHIueGxpbms6aHJlZl09XCJjYW5BcHBseVRyYW5zcGFyZW50Q2xhc3MgPyAnI0ZQR19sb2dvX3doaXRlJyA6ICcjRlBHX2xvZ29fYmxhY2snXCI+PC91c2U+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvc3ZnPlxyXG4gICAgICA8L2E+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ1bml2ZXJzYWwtaGVhZGVyX190b3AtcmlnaHRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidW5pdmVyc2FsLWhlYWRlcl9fYnV0dG9uc1wiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInVuaXZlcnNhbC1oZWFkZXJfX292elwiICpuZ0lmPVwiaGVhZGVyTW9kZWwuaGFzT3Z6ID8/IHRydWVcIj5cclxuICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgIGNsYXNzPVwidW5pdmVyc2FsLWJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJpc092ek1vZGVPcGVuZWRcIlxyXG4gICAgICAgICAgICAgIGFyaWEtY29udHJvbHM9XCJvdnpEcm9wZG93blwiXHJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZU92ek1vZGVXcmFwcGVyKCRldmVudClcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgKm5nSWY9XCJpc0Rlc2t0b3AgfHwgIWlzT3Z6TW9kZU9wZW5lZFwiIFxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJtcngtaWNvbiBmcGctaWNvbiBpY29uLWZwZy1nbGFzc2VzIGljb24tZm9udC0yMCB0ZXh0LW5vcm1hbFwiPlxyXG4gICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICA8c3BhbiBhcmlhLWhpZGRlbj1cInRydWVcIiAqbmdJZj1cImlzT3Z6TW9kZU9wZW5lZCAmJiAhaXNEZXNrdG9wXCIgXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cIm1yeC1pY29uIGZwZy1pY29uIGljb24tZnBnLWNsb3NlIGljb24tZm9udC0yMCB0ZXh0LW5vcm1hbFwiPlxyXG4gICAgICAgICAgICAgIDwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJpc0Rlc2t0b3BcIj7QktC10YDRgdC40Y8g0LTQu9GPINGB0LvQsNCx0L7QstC40LTRj9GJ0LjRhTwvc3Bhbj5cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcblxyXG4gICAgICAgICAgICA8bGliLW92ei1tZW51XHJcbiAgICAgICAgICAgICAgKm5nSWY9XCIhaXNNb2JpbGUgJiYgKGhlYWRlck1vZGVsLmhhc092eiA/PyBmYWxzZSlcIlxyXG4gICAgICAgICAgICAgIFtvcGVuZWRdPVwiaXNPdnpNb2RlT3BlbmVkXCJcclxuICAgICAgICAgICAgICBbdXNlcklkXT1cImhlYWRlck1vZGVsLnVzZXJJZGVudGl0eT8uaWRcIlxyXG4gICAgICAgICAgICAgIFtpc0F1dGVudGlmaWNhdGVkXT1cImhlYWRlck1vZGVsLmlzTG9nZ2VkSW4gPz8gZmFsc2VcIlxyXG4gICAgICAgICAgICAgIFtpbml0aWFsU2V0dGluZ3NdPVwiaGVhZGVyTW9kZWwub3Z6U2V0dGluZ3NcIlxyXG4gICAgICAgICAgICAgIChzZXR0aW5nc0NoYW5nZWQpPVwib25PdnpTZXR0aW5nc0NoYW5nZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgKGNsb3NlZCk9XCJpc092ek1vZGVPcGVuZWQgPSBmYWxzZVwiXHJcbiAgICAgICAgICAgID48L2xpYi1vdnotbWVudT5cclxuICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgY2xhc3M9XCJ1bml2ZXJzYWwtYnV0dG9uXCJcclxuICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJpc0FsbFNlcnZpY2VzTWVudU9wZW5lZFwiXHJcbiAgICAgICAgICAgIGFyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXHJcbiAgICAgICAgICAgIGFyaWEtY29udHJvbHM9XCJhbGxTZXJ2aWNlc0Ryb3Bkb3duXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZUFsbFNlcnZpY2VzV3JhcHBlcigkZXZlbnQpXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCIgKm5nSWY9XCJpc0Rlc2t0b3AgfHwgIWlzQWxsU2VydmljZXNNZW51T3BlbmVkXCIgXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJtcngtaWNvbiBmcGctaWNvbiBpY29uLWZwZy1jb21wb25lbnRzIGljb24tZm9udC0yMCB0ZXh0LW5vcm1hbFwiPlxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgICA8c3BhbiBhcmlhLWhpZGRlbj1cInRydWVcIiAqbmdJZj1cImlzQWxsU2VydmljZXNNZW51T3BlbmVkICYmICFpc0Rlc2t0b3BcIiBcclxuICAgICAgICAgICAgICBjbGFzcz1cIm1yeC1pY29uIGZwZy1pY29uIGljb24tZnBnLWNsb3NlIGljb24tZm9udC0yMCB0ZXh0LW5vcm1hbFwiPlxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImlzRGVza3RvcFwiPtCS0YHQtSDRgdC10YDQstC40YHRizwvc3Bhbj5cclxuICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgKm5nSWY9XCJpc01vYmlsZVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwidW5pdmVyc2FsLWJ1dHRvblwiXHJcbiAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiaXNNb2JpbGVNZW51T3BlbmVkXCJcclxuICAgICAgICAgICAgYXJpYS1leHBhbmRlZD1cImZhbHNlXCJcclxuICAgICAgICAgICAgYXJpYS1jb250cm9scz1cInVzZXItZHJvcGRvd25cIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlTWFpbk1lbnUoJGV2ZW50KVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiICpuZ0lmPVwiaXNNb2JpbGUgJiYgIWlzTW9iaWxlTWVudU9wZW5lZFwiIFxyXG4gICAgICAgICAgICAgIGNsYXNzPVwibXJ4LWljb24gZnBnLWljb24gaWNvbi1mcGctbWVudSBpY29uLWZvbnQtMjAgdGV4dC1ub3JtYWwgdGV4dC1ub3JtYWxcIj5cclxuICAgICAgICAgICAgPC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCIgKm5nSWY9XCJpc01vYmlsZSAmJiBpc01vYmlsZU1lbnVPcGVuZWRcIiBcclxuICAgICAgICAgICAgICBjbGFzcz1cIm1yeC1pY29uIGZwZy1pY29uIGljb24tZnBnLWNsb3NlIGljb24tZm9udC0yMCB0ZXh0LW5vcm1hbFwiPlxyXG4gICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzU2hvd0F3YXJkVXNlck1lbnUgJiYgIWlzTW9iaWxlXCI+XHJcbiAgICAgICAgICAgIDxtcngtYXdhcmQtdXNlci1tZW51IFtoaWRlVXNlck5hdk1lbnVdPVwidHJ1ZVwiPjwvbXJ4LWF3YXJkLXVzZXItbWVudT5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgICAgPGxpYi1tYWluLW1lbnVcclxuICAgICAgICAgIFtoZWFkZXJNb2RlbF09XCJoZWFkZXJNb2RlbFwiXHJcbiAgICAgICAgICBbaXNNb2JpbGVdPVwiaXNNb2JpbGVcIlxyXG4gICAgICAgICAgW29wZW5lZF09XCJpc01vYmlsZU1lbnVPcGVuZWRcIlxyXG4gICAgICAgICAgW2lzU2hvd0F3YXJkVXNlck1lbnVdPVwiaXNTaG93QXdhcmRVc2VyTWVudSA/PyBmYWxzZVwiXHJcbiAgICAgICAgPjwvbGliLW1haW4tbWVudT5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxsaWItb3Z6LW1lbnVcclxuICAgICAgKm5nSWY9XCJpc01vYmlsZSAmJiAoaGVhZGVyTW9kZWwuaGFzT3Z6ID8/IGZhbHNlKVwiXHJcbiAgICAgIFtvcGVuZWRdPVwiaXNPdnpNb2RlT3BlbmVkXCJcclxuICAgICAgW3VzZXJJZF09XCJoZWFkZXJNb2RlbC51c2VySWRlbnRpdHk/LmlkXCJcclxuICAgICAgW2lzQXV0ZW50aWZpY2F0ZWRdPVwiaGVhZGVyTW9kZWwuaXNMb2dnZWRJbiA/PyBmYWxzZVwiXHJcbiAgICAgIFtpbml0aWFsU2V0dGluZ3NdPVwiaGVhZGVyTW9kZWwub3Z6U2V0dGluZ3NcIlxyXG4gICAgICAoc2V0dGluZ3NDaGFuZ2VkKT1cIm9uT3Z6U2V0dGluZ3NDaGFuZ2VkKCRldmVudClcIlxyXG4gICAgICAoY2xvc2VkKT1cImlzT3Z6TW9kZU9wZW5lZCA9IGZhbHNlXCJcclxuICAgID48L2xpYi1vdnotbWVudT5cclxuXHJcbiAgICA8bGliLWFsbC1zZXJ2aWNlcy1tZW51XHJcbiAgICAgICpuZ0lmPVwiaXNBbGxTZXJ2aWNlc01lbnVPcGVuZWRcIlxyXG4gICAgICBbaGVhZGVyTW9kZWxdPVwiaGVhZGVyTW9kZWxcIiAgICAgIFxyXG4gICAgICAoY2xvc2VkKT1cImlzQWxsU2VydmljZXNNZW51T3BlbmVkID0gZmFsc2VcIlxyXG4gICAgPjwvbGliLWFsbC1zZXJ2aWNlcy1tZW51PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCIgKm5nSWY9XCIhaXNNb2JpbGVcIj5cclxuICAgIDxsaWItcHVibGljLXBhZ2VzXHJcbiAgICAgIFtkYXRhXT1cImhlYWRlck1vZGVsLnB1YmxpY1BhZ2VzXCJcclxuICAgICAgW2hlYWRlclBvc2l0aW9uXT1cImhlYWRlck1vZGVsLmhlYWRlclBvc2l0aW9uID8/ICcnXCJcclxuICAgID48L2xpYi1wdWJsaWMtcGFnZXM+XHJcbiAgPC9kaXY+XHJcbjwvaGVhZGVyPlxyXG4iXX0=
|
|
342
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXlydGV4LXdpZGdldC1zaXRlLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0ZXgtd2lkZ2V0LXNpdGUtaGVhZGVyL3NyYy9saWIvbXlydGV4LXdpZGdldC1zaXRlLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0ZXgtd2lkZ2V0LXNpdGUtaGVhZGVyL3NyYy9saWIvbXlydGV4LXdpZGdldC1zaXRlLWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWdDLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUl4RyxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxvQkFBb0IsRUFBRSxtQkFBbUIsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRWxMLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7Ozs7Ozs7O0FBT3RFLE1BQU0sT0FBTywrQkFBK0I7SUFvQzFDLFlBQ1Usa0JBQXNDLEVBQ3RDLFFBQW1CLEVBQ25CLEtBQVk7UUFGWix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3RDLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsVUFBSyxHQUFMLEtBQUssQ0FBTztRQXRD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c0JBRGIsS0FBSzt1QkFBQyxhQUFhO2dCQVVYLE1BQU07c0JBQWQsS0FBSztnQkFDRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFFdUIsS0FBSztzQkFBakMsU0FBUzt1QkFBQyxnQkFBZ0I7Z0JBeUVsQixRQUFRO3NCQURoQixZQUFZO3VCQUFDLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIFJlbmRlcmVyMiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEhlYWRlcldpZGdldE1vZGVsLCBIZWFkZXJXaWRnZXRPdnpTZXR0aW5ncyB9IGZyb20gJy4vbW9kZWxzL2hlYWRlci13aWRnZXQubW9kZWwnO1xyXG5pbXBvcnQgeyBCcmVha3BvaW50T2JzZXJ2ZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvbGF5b3V0JztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGZpbHRlciwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQ29sb3JTY2hlbWVFbnVtLCBGb250U2l6ZUVudW0sIE1lbnVUeXBlc0VudW0gfSBmcm9tICcuL21vZGVscy9oZWFkZXItd2lkZ2V0LmVuYW0nO1xyXG5pbXBvcnQgeyBPdnpNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9tb2R1bGVzL292ei1tZW51L292ei1tZW51LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZPTlRfU0NBTEVfMTUwLCBGT05UX1NDQUxFXzE3NSwgSElERV9JTUFHRVMsIFRIRU1FX0NPTlRSQVNUX0JMQUNLLCBUSEVNRV9DT05UUkFTVF9CTFVFLCBUSEVNRV9DT05UUkFTVF9MSUdIVCwgVEhFTUVfQ09OVFJBU1RfU0VQSUEgfSBmcm9tICcuL21vZHVsZXMvb3Z6LW1lbnUvY29uc3RhbnRzJztcclxuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XHJcbmltcG9ydCB7IGxvYWRIZWFkZXJEYXRhUGVuZGluZyB9IGZyb20gJy4vc3RvcmUvc2l0ZS1oZWFkZXIuYWN0aW9ucyc7XHJcbmltcG9ydCB7IHNlbGVjdFNpdGVIZWFkZXJNb2RlbCB9IGZyb20gJy4vc3RvcmUvc2l0ZS1oZWFkZXIuc2VsZWN0b3JzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLW15cnRleC13aWRnZXQtc2l0ZS1oZWFkZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnbXlydGV4LXdpZGdldC1zaXRlLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbXlydGV4LXdpZGdldC1zaXRlLWhlYWRlci5jb21wb25lbnQubGVzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNeXJ0ZXhXaWRnZXRTaXRlSGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHB1YmxpYyBoZWFkZXJNb2RlbDogSGVhZGVyV2lkZ2V0TW9kZWwgPSB7IHB1YmxpY1BhZ2VzOiBbXSB9O1xyXG4gIHB1YmxpYyBpc01vYmlsZSA9IGZhbHNlO1xyXG4gIHB1YmxpYyBpc0Rlc2t0b3AgPSBmYWxzZTtcclxuICBwdWJsaWMgaXNMb2FkZWQgPSBmYWxzZTtcclxuICBcclxuICBASW5wdXQoJ2RhdGEtaGVhZGVyJylcclxuICBzZXQgZGF0YUhlYWRlcih2YWx1ZTogc3RyaW5nIHwgSGVhZGVyV2lkZ2V0TW9kZWwgfCBudWxsIHwgdW5kZWZpbmVkKSB7XHJcbiAgICBpZiAodmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5pc0xvYWRlZCA9IHRydWU7XHJcbiAgICB0aGlzLl9hcHBseUhlYWRlck1vZGVsKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpIGlzV2lkZSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGhpZGVOb3RMb2dnaW5NYWluTWVudSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNlbGVjdGVkUmVnaW9uOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgQFZpZXdDaGlsZChPdnpNZW51Q29tcG9uZW50KSBjaGlsZCE6IE92ek1lbnVDb21wb25lbnQ7XHJcblxyXG4gIHByaXZhdGUgX21vYmlsZUJyZWFrcG9pbnQgPSAnKG1heC13aWR0aDogOTkxcHgpJztcclxuICBwcml2YXRlIF9kZXNrdG9wQnJlYWtwb2ludCA9ICcobWluLXdpZHRoOiA5OTJweCknO1xyXG5cclxuICBwcml2YXRlIF9pc092ek1vZGVPcGVuZWQgPSBmYWxzZTtcclxuICBwcml2YXRlIF9pc0FsbFNlcnZpY2VzT3BlbmVkID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSBfaXNNb2JpbGVNZW51T3BlbmVkID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSBfYnJlYWtwb2ludFN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcclxuICBwcml2YXRlIF9oZWFkZXJEYXRhU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IHBpY3R1cmVTd2l0Y2hDb29raWVOYW1lID0gJ292ei1waWN0dXJlLXN3aXRjaCc7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBmb250U2l6ZUNvb2tpZU5hbWUgPSAnb3Z6LWZvbnQtc2l6ZSc7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBjb2xvclNjaGVtZUNvb2tpZU5hbWUgPSAnb3Z6LWNvbG9yLXNjaGVtZSc7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBjb29raWVMaWZldGltZURheXMgPSAzNjU7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBicmVha3BvaW50T2JzZXJ2ZXI6IEJyZWFrcG9pbnRPYnNlcnZlcixcclxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuX2JyZWFrcG9pbnRTdWJzY3JpcHRpb24gPSB0aGlzLmJyZWFrcG9pbnRPYnNlcnZlclxyXG4gICAgICAub2JzZXJ2ZShbXHJcbiAgICAgICAgdGhpcy5fbW9iaWxlQnJlYWtwb2ludCxcclxuICAgICAgICB0aGlzLl9kZXNrdG9wQnJlYWtwb2ludFxyXG4gICAgICBdKVxyXG4gICAgICAuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XHJcbiAgICAgICAgY29uc3Qgd2FzTW9iaWxlID0gdGhpcy5pc01vYmlsZTtcclxuICAgICAgICB0aGlzLmlzTW9iaWxlID0gcmVzdWx0LmJyZWFrcG9pbnRzW3RoaXMuX21vYmlsZUJyZWFrcG9pbnRdO1xyXG4gICAgICAgIHRoaXMuaXNEZXNrdG9wID0gcmVzdWx0LmJyZWFrcG9pbnRzW3RoaXMuX2Rlc2t0b3BCcmVha3BvaW50XTtcclxuXHJcbiAgICAgICAgaWYgKHdhc01vYmlsZSAhPT0gdGhpcy5pc01vYmlsZSkge1xyXG4gICAgICAgICAgdGhpcy5fdXBkYXRlQm9keSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcblxyXG4gICAgaWYgKHRoaXMuaXNMb2FkZWQpIHtcclxuICAgICAgdGhpcy5faW5pdE92elNldHRpbmdzKCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKGxvYWRIZWFkZXJEYXRhUGVuZGluZyh7IGlzV2lkZTogdGhpcy5pc1dpZGUgfSkpO1xyXG4gICAgdGhpcy5faGVhZGVyRGF0YVN1YnNjcmlwdGlvbiA9IHRoaXMuc3RvcmVcclxuICAgICAgLnNlbGVjdChzZWxlY3RTaXRlSGVhZGVyTW9kZWwpXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcigobW9kZWwpOiBtb2RlbCBpcyBIZWFkZXJXaWRnZXRNb2RlbCA9PiBtb2RlbCAhPT0gbnVsbCksXHJcbiAgICAgICAgdGFrZSgxKVxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoKG1vZGVsKSA9PiB7XHJcbiAgICAgICAgdGhpcy5fYXBwbHlIZWFkZXJNb2RlbChtb2RlbCk7XHJcbiAgICAgICAgdGhpcy5faW5pdE92elNldHRpbmdzKCk7XHJcbiAgICAgICAgdGhpcy5pc0xvYWRlZCA9IHRydWU7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIGNvbnNvbGUubG9nKCdoaWRlTm90TG9nZ2luTWFpbk1lbnU6JyArIHRoaXMuaGlkZU5vdExvZ2dpbk1haW5NZW51KTtcclxuXHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3MoZG9jdW1lbnQuYm9keSwgJ2JvZHktbm8tc2Nyb2xsJyk7XHJcblxyXG4gICAgaWYgKHRoaXMuX2JyZWFrcG9pbnRTdWJzY3JpcHRpb24pIHtcclxuICAgICAgdGhpcy5fYnJlYWtwb2ludFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLl9oZWFkZXJEYXRhU3Vic2NyaXB0aW9uKSB7XHJcbiAgICAgIHRoaXMuX2hlYWRlckRhdGFTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24uZXNjYXBlJylcclxuICAgIHB1YmxpYyBvbkVzY2FwZSgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGhhc09wZW5lZE1lbnUgPVxyXG4gICAgICB0aGlzLmlzT3Z6TW9kZU9wZW5lZCB8fFxyXG4gICAgICB0aGlzLmlzQWxsU2VydmljZXNNZW51T3BlbmVkIHx8XHJcbiAgICAgIHRoaXMuaXNNb2JpbGVNZW51T3BlbmVkO1xyXG5cclxuICAgIGlmICghaGFzT3BlbmVkTWVudSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5faXNPdnpNb2RlT3BlbmVkID0gZmFsc2U7XHJcbiAgICB0aGlzLl9pc0FsbFNlcnZpY2VzT3BlbmVkID0gZmFsc2U7XHJcbiAgICB0aGlzLl9pc01vYmlsZU1lbnVPcGVuZWQgPSBmYWxzZTtcclxuICAgIHRoaXMuX3VwZGF0ZUJvZHkoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgaXNPdnpNb2RlT3BlbmVkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2lzT3Z6TW9kZU9wZW5lZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXQgaXNPdnpNb2RlT3BlbmVkKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9pc092ek1vZGVPcGVuZWQgPSB2YWx1ZTtcclxuICAgIHRoaXMuX3VwZGF0ZUJvZHkoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgaXNBbGxTZXJ2aWNlc01lbnVPcGVuZWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5faXNBbGxTZXJ2aWNlc09wZW5lZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXQgaXNBbGxTZXJ2aWNlc01lbnVPcGVuZWQodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuX2lzQWxsU2VydmljZXNPcGVuZWQgPSB2YWx1ZTtcclxuICAgIHRoaXMuX3VwZGF0ZUJvZHkoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgaXNTaG93QXdhcmRVc2VyTWVudSgpIHtcclxuICAgIHJldHVybiB0aGlzLmhlYWRlck1vZGVsPy5pc0xvZ2dlZEluICYmIHRoaXMuaGVhZGVyTW9kZWw/LmlzVnNlICYmIHRoaXMuaGVhZGVyTW9kZWw/LmF3YXJkVXNlck1lbnVFbmFibGVkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBpc01vYmlsZU1lbnVPcGVuZWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5faXNNb2JpbGVNZW51T3BlbmVkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldCBpc01vYmlsZU1lbnVPcGVuZWQodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuX2lzTW9iaWxlTWVudU9wZW5lZCA9IHZhbHVlO1xyXG4gICAgdGhpcy5fdXBkYXRlQm9keSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBjYW5BcHBseVRyYW5zcGFyZW50Q2xhc3MoKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBtb2JpbGVNZW51QmxvY2tzID0gdGhpcy5pc01vYmlsZSAmJiB0aGlzLmlzTW9iaWxlTWVudU9wZW5lZDtcclxuXHJcbiAgICByZXR1cm4gISF0aGlzLmhlYWRlck1vZGVsPy5pc1RyYW5zcGFyZW50ICYmXHJcbiAgICAgICF0aGlzLmlzT3Z6TW9kZU9wZW5lZCAmJlxyXG4gICAgICAhdGhpcy5pc0FsbFNlcnZpY2VzTWVudU9wZW5lZCAmJlxyXG4gICAgICAhbW9iaWxlTWVudUJsb2NrcztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY2xvc2VPdGhlck1lbnUoY3VycmVudE1lbnU6IE1lbnVUeXBlc0VudW0pIHtcclxuICAgIHN3aXRjaCAoY3VycmVudE1lbnUpIHtcclxuICAgICAgY2FzZSBNZW51VHlwZXNFbnVtLk92ejoge1xyXG4gICAgICAgIHRoaXMuaXNBbGxTZXJ2aWNlc01lbnVPcGVuZWQgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmlzTW9iaWxlTWVudU9wZW5lZCA9IGZhbHNlO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICAgIGNhc2UgTWVudVR5cGVzRW51bS5BbGxTZXJ2aWNlczoge1xyXG4gICAgICAgIHRoaXMuaXNPdnpNb2RlT3BlbmVkID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5pc01vYmlsZU1lbnVPcGVuZWQgPSBmYWxzZTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgICBkZWZhdWx0OiB7XHJcbiAgICAgICAgdGhpcy5pc092ek1vZGVPcGVuZWQgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmlzQWxsU2VydmljZXNNZW51T3BlbmVkID0gZmFsc2U7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyB0b2dnbGVNYWluTWVudShldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgaWYgKHRoaXMuaXNNb2JpbGUpIHtcclxuICAgICAgY29uc3QgbmV3VGFyZ2V0VmFsdWUgPSAhdGhpcy5pc01vYmlsZU1lbnVPcGVuZWQ7XHJcbiAgICAgIGlmIChuZXdUYXJnZXRWYWx1ZSkge1xyXG4gICAgICAgIHRoaXMuY2xvc2VPdGhlck1lbnUoTWVudVR5cGVzRW51bS5NYWluTWVudSk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5pc01vYmlsZU1lbnVPcGVuZWQgPSBuZXdUYXJnZXRWYWx1ZTtcclxuICAgIH1cclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHRvZ2dsZU92ek1vZGVXcmFwcGVyKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICBjb25zdCBuZXdUYXJnZXRWYWx1ZSA9ICF0aGlzLmlzT3Z6TW9kZU9wZW5lZDtcclxuICAgIGlmIChuZXdUYXJnZXRWYWx1ZSkge1xyXG4gICAgICB0aGlzLmNsb3NlT3RoZXJNZW51KE1lbnVUeXBlc0VudW0uT3Z6KTtcclxuICAgIH1cclxuICAgIHRoaXMuaXNPdnpNb2RlT3BlbmVkID0gbmV3VGFyZ2V0VmFsdWU7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB0b2dnbGVBbGxTZXJ2aWNlc1dyYXBwZXIoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICAgIGNvbnN0IG5ld1RhcmdldFZhbHVlID0gIXRoaXMuaXNBbGxTZXJ2aWNlc01lbnVPcGVuZWQ7XHJcbiAgICBpZiAobmV3VGFyZ2V0VmFsdWUpIHtcclxuICAgICAgdGhpcy5jbG9zZU90aGVyTWVudShNZW51VHlwZXNFbnVtLkFsbFNlcnZpY2VzKTtcclxuICAgIH1cclxuICAgIHRoaXMuaXNBbGxTZXJ2aWNlc01lbnVPcGVuZWQgPSBuZXdUYXJnZXRWYWx1ZTtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uT3Z6U2V0dGluZ3NDaGFuZ2VkKHBheWxvYWQ6IEhlYWRlcldpZGdldE92elNldHRpbmdzKTogdm9pZCB7XHJcbiAgICB0aGlzLmFwcGx5U2V0dGluZ3MocGF5bG9hZCk7XHJcbiAgICB0aGlzLndyaXRlU2V0dGluZ3NUb0Nvb2tpZXMocGF5bG9hZCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF91cGRhdGVCb2R5KCk6IHZvaWQge1xyXG4gICAgY29uc3Qgc2hvdWxkTG9jayA9IHRoaXMuaXNNb2JpbGUgJiYgKHRoaXMuX2lzTW9iaWxlTWVudU9wZW5lZCB8fCB0aGlzLl9pc0FsbFNlcnZpY2VzT3BlbmVkIHx8IHRoaXMuX2lzT3Z6TW9kZU9wZW5lZCk7XHJcbiAgICBjb25zdCBoYXNMb2NrID0gZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuY29udGFpbnMoJ2JvZHktbm8tc2Nyb2xsJyk7XHJcblxyXG4gICAgaWYgKHNob3VsZExvY2sgJiYgIWhhc0xvY2spIHtcclxuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhkb2N1bWVudC5ib2R5LCAnYm9keS1uby1zY3JvbGwnKTtcclxuICAgIH0gZWxzZSBpZiAoIXNob3VsZExvY2sgJiYgaGFzTG9jaykge1xyXG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKGRvY3VtZW50LmJvZHksICdib2R5LW5vLXNjcm9sbCcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaW5pdE92elNldHRpbmdzKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmhlYWRlck1vZGVsLmhhc092eikge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuaGVhZGVyTW9kZWwub3Z6U2V0dGluZ3MpIHtcclxuICAgICAgdGhpcy5hcHBseVNldHRpbmdzKHRoaXMuaGVhZGVyTW9kZWwub3Z6U2V0dGluZ3MpO1xyXG4gICAgICB0aGlzLndyaXRlU2V0dGluZ3NUb0Nvb2tpZXModGhpcy5oZWFkZXJNb2RlbC5vdnpTZXR0aW5ncyk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5oZWFkZXJNb2RlbC5pc0xvZ2dlZEluID09PSBmYWxzZSkge1xyXG4gICAgICBjb25zdCBjb29raWVTZXR0aW5ncyA9IHRoaXMucmVhZFNldHRpbmdzRnJvbUNvb2tpZXMoKSA/PyB0aGlzLmdldERlZmF1bHRTZXR0aW5ncygpO1xyXG4gICAgICB0aGlzLmFwcGx5U2V0dGluZ3MoY29va2llU2V0dGluZ3MpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfYXBwbHlIZWFkZXJNb2RlbChcclxuICAgIHZhbHVlOiBzdHJpbmcgfCBIZWFkZXJXaWRnZXRNb2RlbCB8IG51bGwgfCB1bmRlZmluZWRcclxuICApOiB2b2lkIHtcclxuICAgIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuaGVhZGVyTW9kZWwgPSB7IHB1YmxpY1BhZ2VzOiBbXSB9O1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdHJ5IHtcclxuICAgICAgY29uc3QgcGFyc2VkID0gdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyA/IEpTT04ucGFyc2UodmFsdWUpIDogdmFsdWU7XHJcbiAgICAgIGlmIChwYXJzZWQgJiYgdHlwZW9mIHBhcnNlZCA9PT0gJ29iamVjdCcpIHtcclxuICAgICAgICBjb25zdCBwdWJsaWNQYWdlcyA9IEFycmF5LmlzQXJyYXkoXHJcbiAgICAgICAgICAocGFyc2VkIGFzIEhlYWRlcldpZGdldE1vZGVsKS5wdWJsaWNQYWdlc1xyXG4gICAgICAgIClcclxuICAgICAgICAgID8gKHBhcnNlZCBhcyBIZWFkZXJXaWRnZXRNb2RlbCkucHVibGljUGFnZXNcclxuICAgICAgICAgIDogW107XHJcblxyXG4gICAgICAgIHRoaXMuaGVhZGVyTW9kZWwgPSB7XHJcbiAgICAgICAgICAuLi5wYXJzZWQsXHJcbiAgICAgICAgICBwdWJsaWNQYWdlc1xyXG4gICAgICAgIH0gYXMgSGVhZGVyV2lkZ2V0TW9kZWw7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5oZWFkZXJNb2RlbCA9IHsgcHVibGljUGFnZXM6IFtdIH07XHJcbiAgICAgIH1cclxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIHRoaXMuaGVhZGVyTW9kZWwgPSB7IHB1YmxpY1BhZ2VzOiBbXSB9O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgXHJcblxyXG4gIHByaXZhdGUgd3JpdGVTZXR0aW5nc1RvQ29va2llcyhzZXR0aW5nczogSGVhZGVyV2lkZ2V0T3Z6U2V0dGluZ3MpOiB2b2lkIHtcclxuICAgIHRoaXMuc2V0Q29va2llKHRoaXMucGljdHVyZVN3aXRjaENvb2tpZU5hbWUsIFN0cmluZyhzZXR0aW5ncy5waWN0dXJlU3dpdGNoKSk7XHJcbiAgICB0aGlzLnNldENvb2tpZSh0aGlzLmZvbnRTaXplQ29va2llTmFtZSwgU3RyaW5nKHNldHRpbmdzLmZvbnRTaXplKSk7XHJcbiAgICB0aGlzLnNldENvb2tpZSh0aGlzLmNvbG9yU2NoZW1lQ29va2llTmFtZSwgU3RyaW5nKHNldHRpbmdzLmNvbG9yU2NoZW1lKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldENvb2tpZShuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgZGF0ZS5zZXREYXRlKGRhdGUuZ2V0RGF0ZSgpICsgdGhpcy5jb29raWVMaWZldGltZURheXMpO1xyXG4gICAgZG9jdW1lbnQuY29va2llID0gYCR7bmFtZX09JHtlbmNvZGVVUklDb21wb25lbnQodmFsdWUpfTtleHBpcmVzPSR7ZGF0ZS50b1VUQ1N0cmluZygpfTtwYXRoPS87YDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVhZFNldHRpbmdzRnJvbUNvb2tpZXMoKTogSGVhZGVyV2lkZ2V0T3Z6U2V0dGluZ3MgfCBudWxsIHtcclxuICAgIGNvbnN0IHBpY3R1cmVTd2l0Y2hWYWx1ZSA9IHRoaXMuZ2V0Q29va2llKHRoaXMucGljdHVyZVN3aXRjaENvb2tpZU5hbWUpO1xyXG4gICAgY29uc3QgZm9udFNpemVWYWx1ZSA9IHRoaXMuZ2V0Q29va2llKHRoaXMuZm9udFNpemVDb29raWVOYW1lKTtcclxuICAgIGNvbnN0IGNvbG9yU2NoZW1lVmFsdWUgPSB0aGlzLmdldENvb2tpZSh0aGlzLmNvbG9yU2NoZW1lQ29va2llTmFtZSk7XHJcblxyXG4gICAgaWYgKCFwaWN0dXJlU3dpdGNoVmFsdWUgJiYgIWZvbnRTaXplVmFsdWUgJiYgIWNvbG9yU2NoZW1lVmFsdWUpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgZGVmYXVsdFNldHRpbmdzID0gdGhpcy5nZXREZWZhdWx0U2V0dGluZ3MoKTtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIHBpY3R1cmVTd2l0Y2g6IHBpY3R1cmVTd2l0Y2hWYWx1ZSA9PT0gbnVsbCA/IGRlZmF1bHRTZXR0aW5ncy5waWN0dXJlU3dpdGNoIDogcGljdHVyZVN3aXRjaFZhbHVlID09PSAndHJ1ZScsXHJcbiAgICAgIGZvbnRTaXplOiBPYmplY3QudmFsdWVzKEZvbnRTaXplRW51bSkuaW5jbHVkZXMoTnVtYmVyKGZvbnRTaXplVmFsdWUpIGFzIEZvbnRTaXplRW51bSlcclxuICAgICAgICA/IChOdW1iZXIoZm9udFNpemVWYWx1ZSkgYXMgRm9udFNpemVFbnVtKVxyXG4gICAgICAgIDogZGVmYXVsdFNldHRpbmdzLmZvbnRTaXplLFxyXG4gICAgICBjb2xvclNjaGVtZTogT2JqZWN0LnZhbHVlcyhDb2xvclNjaGVtZUVudW0pLmluY2x1ZGVzKE51bWJlcihjb2xvclNjaGVtZVZhbHVlKSBhcyBDb2xvclNjaGVtZUVudW0pXHJcbiAgICAgICAgPyAoTnVtYmVyKGNvbG9yU2NoZW1lVmFsdWUpIGFzIENvbG9yU2NoZW1lRW51bSlcclxuICAgICAgICA6IGRlZmF1bHRTZXR0aW5ncy5jb2xvclNjaGVtZVxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0Q29va2llKG5hbWU6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xyXG4gICAgLy/QndCwINCy0YHRj9C60LjQuSDRgdC70YPRh9Cw0Lkg0Y3QutGA0LDQvdC40YDRg9C10Lwg0YHQv9C10YbQuNGB0LjQvNCy0L7Qu9GLLCDRh9GC0L7QsdGLINC40LfQsdC10LbQsNGC0Ywg0L7RiNC40LHQvtC6INC40L3RgtC10YDQv9C10YLQsNGG0LjQuCDRgNC10LPRg9C70Y/RgNC60LhcclxuICAgIGNvbnN0IGVzY2FwZWROYW1lID0gbmFtZS5yZXBsYWNlKC9bLiorP14ke30oKXxbXFxdXFxcXF0vZywgJ1xcXFwkJicpO1xyXG4gICAgY29uc3QgbWF0Y2ggPSBkb2N1bWVudC5jb29raWUubWF0Y2gobmV3IFJlZ0V4cChgKD86Xnw7ICkke2VzY2FwZWROYW1lfT0oW147XSopYCkpO1xyXG4gICAgcmV0dXJuIG1hdGNoID8gZGVjb2RlVVJJQ29tcG9uZW50KG1hdGNoWzFdKSA6IG51bGw7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldERlZmF1bHRTZXR0aW5ncygpOiBIZWFkZXJXaWRnZXRPdnpTZXR0aW5ncyB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIHBpY3R1cmVTd2l0Y2g6IHRydWUsXHJcbiAgICAgICAgZm9udFNpemU6IEZvbnRTaXplRW51bS5TbWFsbCxcclxuICAgICAgICBjb2xvclNjaGVtZTogQ29sb3JTY2hlbWVFbnVtLkRlZmF1bHRcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFwcGx5U2V0dGluZ3Moc2V0dGluZ3M6IEhlYWRlcldpZGdldE92elNldHRpbmdzKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlbW92ZUZvbnRTaXplQ2xhc3NlcygpO1xyXG4gICAgc3dpdGNoIChzZXR0aW5ncy5mb250U2l6ZSkge1xyXG4gICAgICAgICAgY2FzZSBGb250U2l6ZUVudW0uTWVkaXVtOlxyXG4gICAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZChGT05UX1NDQUxFXzE1MCk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgY2FzZSBGb250U2l6ZUVudW0uTGFyZ2U6XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3QuYWRkKEZPTlRfU0NBTEVfMTc1KTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICBicmVhaztcclxuICAgIH1cclxuICAgICAgICBcclxuICAgIHN3aXRjaCAoc2V0dGluZ3MuY29sb3JTY2hlbWUpIHtcclxuICAgICAgICAgIGNhc2UgQ29sb3JTY2hlbWVFbnVtLkxpZ2h0OlxyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoVEhFTUVfQ09OVFJBU1RfQkxBQ0spO1xyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoVEhFTUVfQ09OVFJBU1RfQkxVRSk7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZShUSEVNRV9DT05UUkFTVF9TRVBJQSk7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZChUSEVNRV9DT05UUkFTVF9MSUdIVCk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgY2FzZSBDb2xvclNjaGVtZUVudW0uQmxhY2s6XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZShUSEVNRV9DT05UUkFTVF9MSUdIVCk7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZShUSEVNRV9DT05UUkFTVF9CTFVFKTtcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKFRIRU1FX0NPTlRSQVNUX1NFUElBKTtcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKFRIRU1FX0NPTlRSQVNUX0JMQUNLKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBjYXNlIENvbG9yU2NoZW1lRW51bS5CbHVlOlxyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoVEhFTUVfQ09OVFJBU1RfTElHSFQpO1xyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoVEhFTUVfQ09OVFJBU1RfQkxBQ0spO1xyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoVEhFTUVfQ09OVFJBU1RfU0VQSUEpO1xyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoVEhFTUVfQ09OVFJBU1RfQkxVRSk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgY2FzZSBDb2xvclNjaGVtZUVudW0uU2VwaWE6XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZShUSEVNRV9DT05UUkFTVF9MSUdIVCk7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZShUSEVNRV9DT05UUkFTVF9CTEFDSyk7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZShUSEVNRV9DT05UUkFTVF9CTFVFKTtcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKFRIRU1FX0NPTlRSQVNUX1NFUElBKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoVEhFTUVfQ09OVFJBU1RfQkxBQ0spO1xyXG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoVEhFTUVfQ09OVFJBU1RfQkxVRSk7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZShUSEVNRV9DT05UUkFTVF9TRVBJQSk7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZShUSEVNRV9DT05UUkFTVF9MSUdIVCk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChzZXR0aW5ncy5waWN0dXJlU3dpdGNoKSBcclxuICAgIHtcclxuICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoSElERV9JTUFHRVMpO1xyXG4gICAgfSBcclxuICAgIGVsc2UgXHJcbiAgICB7XHJcbiAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKEhJREVfSU1BR0VTKTtcclxuICAgIH1cclxuICB9ICBcclxuXHJcbiAgcHJpdmF0ZSByZW1vdmVGb250U2l6ZUNsYXNzZXMoKTogdm9pZCB7XHJcbiAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShGT05UX1NDQUxFXzE1MCk7XHJcbiAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShGT05UX1NDQUxFXzE3NSk7XHJcbiAgfVxyXG59XHJcbiIsIjxoZWFkZXIgKm5nSWY9XCJpc0xvYWRlZFwiIGNsYXNzPVwidW5pdmVyc2FsLWhlYWRlclwiIFtjbGFzcy5oZWFkZXItbGlnaHRdPVwiaGVhZGVyTW9kZWwuaXNUcmFuc3BhcmVudFwiIFtjbGFzcy5oZWFkZXItdHJhbnNwYXJlbnRdPVwiY2FuQXBwbHlUcmFuc3BhcmVudENsYXNzXCI+XHJcbiAgPGRpdiBjbGFzcz1cInVuaXZlcnNhbC1oZWFkZXJfX3RvcFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiPlxyXG4gICAgICA8YSBocmVmPVwiL1wiIGNsYXNzPVwidW5pdmVyc2FsLWhlYWRlcl9fdG9wLWxvZ29cIj5cclxuICAgICAgICA8c3ZnIGNsYXNzPVwidG9wLWxvZ29fX2xvZ29cIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJoZWFkZXJNb2RlbD8uaXNWc2U7IGVsc2UgZnBnTG9nb1wiPlxyXG4gICAgICAgICAgICA8dXNlIGhyZWY9XCIjVlNFX2xvZ29cIj48L3VzZT5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgPG5nLXRlbXBsYXRlICNmcGdMb2dvPlxyXG4gICAgICAgICAgICA8dXNlIFthdHRyLnhsaW5rOmhyZWZdPVwiY2FuQXBwbHlUcmFuc3BhcmVudENsYXNzID8gJyNGUEdfbG9nb193aGl0ZScgOiAnI0ZQR19sb2dvX2JsYWNrJ1wiPjwvdXNlPlxyXG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8L3N2Zz5cclxuICAgICAgPC9hPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidW5pdmVyc2FsLWhlYWRlcl9fdG9wLXJpZ2h0XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInVuaXZlcnNhbC1oZWFkZXJfX2J1dHRvbnNcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1bml2ZXJzYWwtaGVhZGVyX19vdnpcIiAqbmdJZj1cImhlYWRlck1vZGVsLmhhc092eiA/PyB0cnVlXCI+XHJcbiAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICBjbGFzcz1cInVuaXZlcnNhbC1idXR0b25cIlxyXG4gICAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiaXNPdnpNb2RlT3BlbmVkXCJcclxuICAgICAgICAgICAgICBhcmlhLWNvbnRyb2xzPVwib3Z6RHJvcGRvd25cIlxyXG4gICAgICAgICAgICAgIChjbGljayk9XCJ0b2dnbGVPdnpNb2RlV3JhcHBlcigkZXZlbnQpXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiICpuZ0lmPVwiaXNEZXNrdG9wIHx8ICFpc092ek1vZGVPcGVuZWRcIiBcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwibXJ4LWljb24gZnBnLWljb24gaWNvbi1mcGctZ2xhc3NlcyBpY29uLWZvbnQtMjAgdGV4dC1ub3JtYWxcIj5cclxuICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCIgKm5nSWY9XCJpc092ek1vZGVPcGVuZWQgJiYgIWlzRGVza3RvcFwiIFxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJtcngtaWNvbiBmcGctaWNvbiBpY29uLWZwZy1jbG9zZSBpY29uLWZvbnQtMjAgdGV4dC1ub3JtYWxcIj5cclxuICAgICAgICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaXNEZXNrdG9wXCI+0JLQtdGA0YHQuNGPINC00LvRjyDRgdC70LDQsdC+0LLQuNC00Y/RidC40YU8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgPGxpYi1vdnotbWVudVxyXG4gICAgICAgICAgICAgICpuZ0lmPVwiIWlzTW9iaWxlICYmIChoZWFkZXJNb2RlbC5oYXNPdnogPz8gZmFsc2UpXCJcclxuICAgICAgICAgICAgICBbb3BlbmVkXT1cImlzT3Z6TW9kZU9wZW5lZFwiXHJcbiAgICAgICAgICAgICAgW3VzZXJJZF09XCJoZWFkZXJNb2RlbC51c2VySWRlbnRpdHk/LmlkXCJcclxuICAgICAgICAgICAgICBbaXNBdXRlbnRpZmljYXRlZF09XCJoZWFkZXJNb2RlbC5pc0xvZ2dlZEluID8/IGZhbHNlXCJcclxuICAgICAgICAgICAgICBbaW5pdGlhbFNldHRpbmdzXT1cImhlYWRlck1vZGVsLm92elNldHRpbmdzXCJcclxuICAgICAgICAgICAgICAoc2V0dGluZ3NDaGFuZ2VkKT1cIm9uT3Z6U2V0dGluZ3NDaGFuZ2VkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIChjbG9zZWQpPVwiaXNPdnpNb2RlT3BlbmVkID0gZmFsc2VcIlxyXG4gICAgICAgICAgICA+PC9saWItb3Z6LW1lbnU+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgIGNsYXNzPVwidW5pdmVyc2FsLWJ1dHRvblwiXHJcbiAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiaXNBbGxTZXJ2aWNlc01lbnVPcGVuZWRcIlxyXG4gICAgICAgICAgICBhcmlhLWV4cGFuZGVkPVwiZmFsc2VcIlxyXG4gICAgICAgICAgICBhcmlhLWNvbnRyb2xzPVwiYWxsU2VydmljZXNEcm9wZG93blwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJ0b2dnbGVBbGxTZXJ2aWNlc1dyYXBwZXIoJGV2ZW50KVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiICpuZ0lmPVwiaXNEZXNrdG9wIHx8ICFpc0FsbFNlcnZpY2VzTWVudU9wZW5lZFwiIFxyXG4gICAgICAgICAgICAgIGNsYXNzPVwibXJ4LWljb24gZnBnLWljb24gaWNvbi1mcGctY29tcG9uZW50cyBpY29uLWZvbnQtMjAgdGV4dC1ub3JtYWxcIj5cclxuICAgICAgICAgICAgPC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCIgKm5nSWY9XCJpc0FsbFNlcnZpY2VzTWVudU9wZW5lZCAmJiAhaXNEZXNrdG9wXCIgXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJtcngtaWNvbiBmcGctaWNvbiBpY29uLWZwZy1jbG9zZSBpY29uLWZvbnQtMjAgdGV4dC1ub3JtYWxcIj5cclxuICAgICAgICAgICAgPC9zcGFuPlxyXG5cclxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJpc0Rlc2t0b3BcIj7QktGB0LUg0YHQtdGA0LLQuNGB0Ys8L3NwYW4+XHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuXHJcbiAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICpuZ0lmPVwiaXNNb2JpbGVcIlxyXG4gICAgICAgICAgICBjbGFzcz1cInVuaXZlcnNhbC1idXR0b25cIlxyXG4gICAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cImlzTW9iaWxlTWVudU9wZW5lZFwiXHJcbiAgICAgICAgICAgIGFyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXHJcbiAgICAgICAgICAgIGFyaWEtY29udHJvbHM9XCJ1c2VyLWRyb3Bkb3duXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZU1haW5NZW51KCRldmVudClcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8c3BhbiBhcmlhLWhpZGRlbj1cInRydWVcIiAqbmdJZj1cImlzTW9iaWxlICYmICFpc01vYmlsZU1lbnVPcGVuZWRcIiBcclxuICAgICAgICAgICAgICBjbGFzcz1cIm1yeC1pY29uIGZwZy1pY29uIGljb24tZnBnLW1lbnUgaWNvbi1mb250LTIwIHRleHQtbm9ybWFsIHRleHQtbm9ybWFsXCI+XHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuXHJcbiAgICAgICAgICAgIDxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiICpuZ0lmPVwiaXNNb2JpbGUgJiYgaXNNb2JpbGVNZW51T3BlbmVkXCIgXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJtcngtaWNvbiBmcGctaWNvbiBpY29uLWZwZy1jbG9zZSBpY29uLWZvbnQtMjAgdGV4dC1ub3JtYWxcIj5cclxuICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc1Nob3dBd2FyZFVzZXJNZW51ICYmICFpc01vYmlsZVwiPlxyXG4gICAgICAgICAgICA8bXJ4LWF3YXJkLXVzZXItbWVudSBbaGlkZVVzZXJOYXZNZW51XT1cInRydWVcIj48L21yeC1hd2FyZC11c2VyLW1lbnU+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgIDxsaWItbWFpbi1tZW51XHJcbiAgICAgICAgICBbaGVhZGVyTW9kZWxdPVwiaGVhZGVyTW9kZWxcIlxyXG4gICAgICAgICAgW2lzTW9iaWxlXT1cImlzTW9iaWxlXCJcclxuICAgICAgICAgIFtvcGVuZWRdPVwiaXNNb2JpbGVNZW51T3BlbmVkXCJcclxuICAgICAgICAgIFtpc1Nob3dBd2FyZFVzZXJNZW51XT1cImlzU2hvd0F3YXJkVXNlck1lbnUgPz8gZmFsc2VcIlxyXG4gICAgICAgICAgW2hpZGVOb3RMb2dnaW5NYWluTWVudV09XCJoaWRlTm90TG9nZ2luTWFpbk1lbnVcIlxyXG4gICAgICAgICAgW3NlbGVjdGVkUmVnaW9uXT1cInNlbGVjdGVkUmVnaW9uXCJcclxuICAgICAgICA+PC9saWItbWFpbi1tZW51PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGxpYi1vdnotbWVudVxyXG4gICAgICAqbmdJZj1cImlzTW9iaWxlICYmIChoZWFkZXJNb2RlbC5oYXNPdnogPz8gZmFsc2UpXCJcclxuICAgICAgW29wZW5lZF09XCJpc092ek1vZGVPcGVuZWRcIlxyXG4gICAgICBbdXNlcklkXT1cImhlYWRlck1vZGVsLnVzZXJJZGVudGl0eT8uaWRcIlxyXG4gICAgICBbaXNBdXRlbnRpZmljYXRlZF09XCJoZWFkZXJNb2RlbC5pc0xvZ2dlZEluID8/IGZhbHNlXCJcclxuICAgICAgW2luaXRpYWxTZXR0aW5nc109XCJoZWFkZXJNb2RlbC5vdnpTZXR0aW5nc1wiXHJcbiAgICAgIChzZXR0aW5nc0NoYW5nZWQpPVwib25PdnpTZXR0aW5nc0NoYW5nZWQoJGV2ZW50KVwiXHJcbiAgICAgIChjbG9zZWQpPVwiaXNPdnpNb2RlT3BlbmVkID0gZmFsc2VcIlxyXG4gICAgPjwvbGliLW92ei1tZW51PlxyXG5cclxuICAgIDxsaWItYWxsLXNlcnZpY2VzLW1lbnVcclxuICAgICAgKm5nSWY9XCJpc0FsbFNlcnZpY2VzTWVudU9wZW5lZFwiXHJcbiAgICAgIFtoZWFkZXJNb2RlbF09XCJoZWFkZXJNb2RlbFwiICAgICAgXHJcbiAgICAgIChjbG9zZWQpPVwiaXNBbGxTZXJ2aWNlc01lbnVPcGVuZWQgPSBmYWxzZVwiXHJcbiAgICA+PC9saWItYWxsLXNlcnZpY2VzLW1lbnU+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJjb250YWluZXJcIiAqbmdJZj1cIiFpc01vYmlsZVwiPlxyXG4gICAgPGxpYi1wdWJsaWMtcGFnZXNcclxuICAgICAgW2RhdGFdPVwiaGVhZGVyTW9kZWwucHVibGljUGFnZXNcIlxyXG4gICAgICBbc2VsZWN0ZWRSZWdpb25dPVwic2VsZWN0ZWRSZWdpb25cIlxyXG4gICAgICBbaGVhZGVyUG9zaXRpb25dPVwiaGVhZGVyTW9kZWwuaGVhZGVyUG9zaXRpb24gPz8gJydcIlxyXG4gICAgPjwvbGliLXB1YmxpYy1wYWdlcz5cclxuICA8L2Rpdj5cclxuPC9oZWFkZXI+XHJcbiJdfQ==
|