From 2d7578ea5fb1e60cadb26f7360f84a1960da18de Mon Sep 17 00:00:00 2001 From: cmiqueo <64917520+cmiqueo@users.noreply.github.com> Date: Wed, 20 Mar 2024 14:30:47 -0700 Subject: [PATCH] Revert "MWPW-144920 (fix): Fixes link target=_blank on anchor links (#141)" This reverts commit 0041be9bbd83d5940c5bcecb4077252ad91d7358. --- dist/app.css | 2 +- dist/main.js | 4 ++-- dist/main.min.js | 4 ++-- dist/main.source.js | 2 +- react/src/js/components/Consonant/Helpers/general.js | 3 ++- 5 files changed, 8 insertions(+), 7 deletions(-) diff --git a/dist/app.css b/dist/app.css index 1f4ad7d3..3c9cd75c 100644 --- a/dist/app.css +++ b/dist/app.css @@ -1,5 +1,5 @@ /*! - * Chimera UI Libraries - Build 0.11.20 (3/20/2024, 11:03:52) + * Chimera UI Libraries - Build 0.11.20 (3/19/2024, 10:54:04) * */ .no-font{font-size:0;line-height:0}.margin-auto{margin-left:auto;margin-right:auto}.no-margin{margin:0}.full-width{width:100%;max-width:100%}.position-absolute-0{top:0;bottom:0;left:0;right:0}.hide-all{display:none}.hide-overflow{height:0;overflow:hidden;visibility:hidden}.no-border-no-outline{border:0;outline:0}.focused:focus{outline:0}@media only screen and (min-width:1200px){.focused:focus{outline:2px solid #1492e6}}.focus-pseudo-element{position:relative}.focus-pseudo-element:focus:after{content:"";position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;border:2px solid #1473e6;z-index:1}.focus-shadow-round{position:relative}.focus-shadow-round:focus:after{border-radius:18px;content:"";display:block;position:absolute;left:0;right:0;bottom:0;top:0;margin:-2px;transition:box-shadow .13s ease-out,margin .13s ease-out;box-shadow:0 0 0 2px #1492e6}.focus-underline:focus{box-shadow:0 2px 0 0 #1492e6}.card-hover:hover{box-shadow:0 3px 6px 0 rgba(0,0,0,.16);transition:box-shadow .3s ease-in-out}.card-hover-header [class*=-header]{position:relative}.card-hover-header [class*=-header]:after{position:absolute;content:"";top:0;bottom:0;left:0;right:0;margin:auto;z-index:0;background-color:rgba(0,0,0,.35);opacity:0;transition:opacity .3s ease-in-out}.card-hover-header:hover [class*=-header]:after{opacity:1}.video-button-styles{display:block;position:absolute;width:40px;height:40px;right:24px;bottom:16px;font-size:0;line-height:0;background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg data-name='40' xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg data-name='Ellipse 20182' fill='%231473e6' stroke='%23fff' stroke-width='2'%3E%3Ccircle cx='20' cy='20' r='20' stroke='none'/%3E%3Ccircle cx='20' cy='20' r='19' fill='none'/%3E%3C/g%3E%3Cpath data-name='Path 356676' d='M15 10.833v18.333l13.333-9.167z' fill='%23fff'/%3E%3C/svg%3E") no-repeat 0 0;background-size:cover;z-index:1;cursor:pointer;transform-origin:50% 50%;transition:transform .3s ease-in-out}.video-button-styles:active,.video-button-styles:hover{transform:scale(1.1);background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg data-name='40' xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg data-name='Ellipse 20182' fill='%230059c2' stroke='%23fff' stroke-width='2'%3E%3Ccircle cx='20' cy='20' r='20' stroke='none'/%3E%3Ccircle cx='20' cy='20' r='19' fill='none'/%3E%3C/g%3E%3Cpath data-name='Path 356676' d='M15 10.833v18.333l13.333-9.167z' fill='%23fff'/%3E%3C/svg%3E") no-repeat 0 0;transition:transform .3s ease-in-out}.video-button-styles:focus{transform:scale(1.1);transition:transform .3s ease-in-out;outline:2px solid #1492e6}.hide{display:none!important}@keyframes circle{0%{transform:rotate(0deg)}70%,to{transform:rotate(1turn)}}@keyframes fade-in-up{0%{opacity:0;transform:translate3d(0,100%,0)}to{opacity:1;transform:none}}@keyframes carousel-fade-button{0%{opacity:0}to{opacity:1}}body{margin:0}body,body *{box-sizing:border-box}.consonant-Wrapper button{border:0;outline:0;cursor:pointer}.consonant-u-themeDark .consonant-FullCard-inner,.consonant-u-themeDarkest .consonant-FullCard-inner{background:transparent linear-gradient(180deg,transparent,hsla(0,0%,100%,.5) 15%,hsla(0,0%,100%,.8) 40%,#fff) 0 0 no-repeat padding-box}.consonant-u-themeDark .consonant-HalfHeightCard-img:after,.consonant-u-themeDarkest .consonant-HalfHeightCard-img:after{background:transparent linear-gradient(180deg,hsla(0,0%,100%,.01) 35%,hsla(0,0%,100%,.75) 60%,hsla(0,0%,100%,.85)) 0 0 no-repeat}.consonant-u-themeLight .consonant-FiltersInfo-results,.consonant-u-themeLight .consonant-FiltersInfo-title{color:#2c2c2c}.consonant-u-themeLight .consonant-LeftFilters{border-color:#e1e1e1;background-color:#fff}.consonant-u-themeLight .consonant-LeftFilters-deskTitle{color:inherit}.consonant-u-themeLight .consonant-LeftFilters .consonant-Search-inputTitle{color:#4b4b4b}.consonant-u-themeLight .consonant-LeftFilters .consonant-Search-input{background-color:#f5f5f5;color:#2c2c2c}.consonant-u-themeLight .consonant-LeftFilters .consonant-ChosenFilter{color:#4b4b4b}.consonant-u-themeLight .consonant-LeftFilters .consonant-LeftFilter-itemsItemName,.consonant-u-themeLight .consonant-LeftFilters .consonant-LeftFilter-link{color:#2c2c2c}.consonant-u-themeLight .consonant-LeftFilters .consonant-LeftFilter.is-opened .consonant-LeftFilter-link{color:#4b4b4b}.consonant-u-themeLight .consonant-LeftFilters .consonant-LeftFilter-itemsItem:hover{background-color:#fff}.consonant-u-themeLight .consonant-Pagination-btn,.consonant-u-themeLight .consonant-Pagination-itemBtn,.consonant-u-themeLight .consonant-Pagination-summary{color:#2c2c2c}.consonant-u-themeLight .consonant-ThreeFourthCard{border-color:#e1e1e1;background-color:#fff}.consonant-u-themeLight .consonant-ThreeFourthCard-inner{background-color:#fff}@media only screen and (min-width:1200px){.consonant-u-themeLight .consonant-ThreeFourthCard-inner:focus:after{border-color:#0d66d0}}.consonant-u-themeLight .consonant-ThreeFourthCard-header{background-color:#e1e1e1}.consonant-u-themeLight .consonant-ThreeFourthCard-label{color:#4b4b4b}.consonant-u-themeLight .consonant-ThreeFourthCard-title{color:#2c2c2c}.consonant-u-themeLight .consonant-ThreeFourthCard-banner{color:#fff;background-color:#0d66d0}.consonant-u-themeLight .consonant-ThreeFourthCard-badge{color:#6e6e6e;border-color:#8e8e8e;background-color:#fff}.consonant-u-themeLight .consonant-OneHalfCard{border-color:#e1e1e1;background-color:#fff}.consonant-u-themeLight .consonant-OneHalfCard-inner{background-color:#fff}.consonant-u-themeLight .consonant-OneHalfCard-header{background-color:#e1e1e1}.consonant-u-themeLight .consonant-OneHalfCard-label{color:#4b4b4b}.consonant-u-themeLight .consonant-OneHalfCard-title{color:#2c2c2c}.consonant-u-themeLight .consonant-OneHalfCard-text{color:#6e6e6e}.consonant-u-themeLight .consonant-OneHalfCard-banner{color:#fff;background-color:#0d66d0}.consonant-u-themeLight .consonant-OneHalfCard-badge{color:#6e6e6e;border-color:#8e8e8e;background-color:#fff}.consonant-u-themeLight .consonant-TextCard{border-color:#e1e1e1;background-color:#fff}.consonant-u-themeLight .consonant-TextCard-inner{background-color:#fff}.consonant-u-themeLight .consonant-TextCard-header{background-color:#e1e1e1}.consonant-u-themeLight .consonant-TextCard-label{color:#4b4b4b}.consonant-u-themeLight .consonant-TextCard-title{color:#2c2c2c}.consonant-u-themeLight .consonant-TextCard-text{color:#6e6e6e}.consonant-u-themeLight .consonant-TextCard-banner{color:#fff;background-color:#0d66d0}.consonant-u-themeLight .consonant-TextCard-badge{color:#6e6e6e;border-color:#8e8e8e;background-color:#fff}.consonant-u-themeLight .consonant-DoubleWideCard{border-color:#b3b3b3}.consonant-u-themeLight .consonant-DoubleWideCard-inner{background-color:#fff}@media only screen and (min-width:1200px){.consonant-u-themeLight .consonant-DoubleWideCard-inner:focus:after{border-color:#0d66d0}}.consonant-u-themeLight .consonant-DoubleWideCard-title{color:#2c2c2c}.consonant-u-themeLight .consonant-DoubleWideCard-text{color:#6e6e6e}.consonant-u-themeLight .consonant-DoubleWideCard-label{color:#4b4b4b}.consonant-u-themeLight .consonant-FullCard{border-color:#b3b3b3;background-color:#fff}@media only screen and (min-width:1200px){.consonant-u-themeLight .consonant-FullCard-inner:focus:after{border-color:#0d66d0}}.consonant-u-themeLight .consonant-FullCard-inner:before{border-color:#fff;box-shadow:1px 1px 0 0 #fff}.consonant-u-themeLight .consonant-FullCard-header{background-color:#e1e1e1}.consonant-u-themeLight .consonant-FullCard-banner{color:#fff;background-color:#0d66d0}.consonant-u-themeLight .consonant-FullCard-label{color:#fff}.consonant-u-themeLight .consonant-FullCard-title{color:#cacaca}.consonant-u-themeLight .consonant-FullCard-badge{color:#6e6e6e;border-color:#8e8e8e;background-color:#fff}.consonant-u-themeLight .consonant-HalfHeightCard-label,.consonant-u-themeLight .consonant-HalfHeightCard-title{color:#fff}.consonant-u-themeLight .consonant-HalfHeightCard-banner{color:#fff;background-color:#0d66d0}@media only screen and (min-width:1200px){.consonant-u-themeLight .consonant-HalfHeightCard:focus:after{border-color:#0d66d0}}.consonant-u-themeLight .consonant-CardFooter--divider:last-child{border-color:#e1e1e1}.consonant-u-themeLight .consonant-BookmarkInfobit.is-active .consonant-BookmarkInfobit-ico{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 18'%3E%3Cpath stroke-width='1.5' stroke='%236e6e6e' fill='%236e6e6e' d='M13.6.6c-1.7.1-3.3 1-4.1 2.5C8.6 1.6 7.1.7 5.5.6c-2.8 0-5 2.2-5 5 0 4.7 9 10.8 9 10.8s9-6 9-10.8c0-2.7-2.1-5-4.9-5z'/%3E%3C/svg%3E")}.consonant-u-themeLight .consonant-BookmarkInfobit-ico{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 18'%3E%3Cpath stroke-width='1.5' fill='%23fff' stroke='%236e6e6e' d='M13.6.6c-1.7.1-3.3 1-4.1 2.5C8.6 1.6 7.1.7 5.5.6c-2.8 0-5 2.2-5 5 0 4.7 9 10.8 9 10.8s9-6 9-10.8c0-2.7-2.1-5-4.9-5z'/%3E%3C/svg%3E")}@media only screen and (min-width:1200px){.consonant-u-themeLight .consonant-BookmarkInfobit:focus{outline-color:#0d66d0}}.consonant-u-themeLight .consonant-Tooltip{color:#fff;background-color:#6e6e6e}.consonant-u-themeLight .consonant-Tooltip:after{background-color:#6e6e6e}.consonant-u-themeLight .consonant-BtnInfobit{border-color:#4b4b4b;background-color:#fff}.consonant-u-themeLight .consonant-BtnInfobit:not(.consonant-u-themeLight .consonant-BtnInfobit--cta) span{color:#4b4b4b}.consonant-u-themeLight .consonant-BtnInfobit:hover{border-color:#4b4b4b;background-color:#4b4b4b}.consonant-u-themeLight .consonant-BtnInfobit:hover:not(.consonant-u-themeLight .consonant-BtnInfobit--cta) span{color:#fff}.consonant-u-themeLight .consonant-BtnInfobit:active{border-color:#2c2c2c;background-color:#2c2c2c}.consonant-u-themeLight .consonant-BtnInfobit:active:not(.consonant-u-themeLight .consonant-BtnInfobit--cta) span{color:#fff}.consonant-u-themeLight .consonant-BtnInfobit:focus{outline-color:#0d66d0}.consonant-u-themeLight .consonant-BtnInfobit--cta{border-color:#1473e6;background-color:#1473e6}.consonant-u-themeLight .consonant-BtnInfobit--cta:hover{border-color:#0d66d0;background-color:#0d66d0}.consonant-u-themeLight .consonant-BtnInfobit--cta:active{border-color:#095aba;background-color:#095aba}.consonant-u-themeLight .consonant-DateIntervalInfobit,.consonant-u-themeLight .consonant-IconWithTextInfobit-text{color:#6e6e6e}.consonant-u-themeLight .consonant-LinkWithIcoInfobit:focus{outline-color:#0d66d0}.consonant-u-themeLight .consonant-LinkWithIcoInfobit span{color:#1473e6}.consonant-u-themeLight .consonant-LinkWithIcoInfobit:hover span{color:#0d66d0}.consonant-u-themeLight .consonant-LinkWithIcoInfobit:active span{color:#095aba}.consonant-u-themeLight .consonant-LinkInfobit{color:#1473e6}.consonant-u-themeLight .consonant-LinkInfobit:hover{color:#0d66d0}.consonant-u-themeLight .consonant-LinkInfobit:active{color:#095aba}.consonant-u-themeLight .consonant-LinkInfobit:focus{outline-color:#0d66d0}.consonant-u-themeLight .consonant-PriceInfobit-price{color:#2c2c2c}.consonant-u-themeLight .consonant-PriceInfobit-term{color:#8e8e8e}.consonant-u-themeLight .consonant-ProgressInfobit-text{color:#6e6e6e}.consonant-u-themeLight .consonant-ProgressInfobit-el{background-color:#fff;border-color:#cacaca}.consonant-u-themeLight .consonant-RatingInfobit-stars:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg id='Layer_1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 15'%3E%3Cstyle%3E.st0{fill:none}.st1{fill:%23cacaca}%3C/style%3E%3Cg id='Shape'%3E%3Cpath class='st0' d='M8.6.7c-.1 0-.3.1-.3.2L6.4 5.7l-5.2.2c-.2 0-.3.2-.3.4 0 .1 0 .2.1.2l4 3.2-1.4 5c0 .2.1.3.2.4h.1c.1 0 .1 0 .2-.1l4.3-2.8 4.3 2.8c.1.1.3.1.4-.1 0-.1.1-.2 0-.3l-1.4-5 4-3.2c.1-.1.2-.3 0-.4.3 0 .2-.1.1-.1l-5.2-.2L8.9.9C8.8.8 8.7.7 8.6.7z' transform='translate(-.029 -.412)'/%3E%3Cpath class='st1' d='M8.6 2.2L7.1 6l-.2.4h-.5l-4 .2 3.2 2.5.4.3-.2.5-1.1 3.9 3.4-2.2.4-.3.4.3 3.4 2.2-1.1-3.9-.1-.5.4-.3 3.2-2.5-4-.2h-.5L10 6 8.6 2.2m0-1.5c.1 0 .2.1.3.2l1.8 4.8 5.2.2c.1 0 .2.1.3.2 0 .1 0 .3-.1.3l-4 3.2 1.4 5v.1c0 .1-.1.2-.2.3h-.2c-.1 0-.1 0-.2-.1l-4.3-2.8-4.3 2.8c-.1 0-.1.1-.2.1H4c-.1 0-.2-.1-.2-.1 0-.1-.1-.2 0-.2l1.4-5L1 6.5c-.1-.1-.1-.2-.1-.3.1-.2.2-.3.3-.3l5.2-.2L8.3.9c0-.1.1-.2.3-.2z' transform='translate(-.029 -.412)'/%3E%3C/g%3E%3C/svg%3E")}.consonant-u-themeLight .consonant-RatingInfobit-stars:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' id='Layer_1' viewBox='0 0 17 15'%3E%3Cstyle%3E.st0{fill:%230d66d0}%3C/style%3E%3Cg id='Shape'%3E%3Cpath class='st0' d='M8.6.7c-.1 0-.3.1-.3.2L6.4 5.7l-5.2.2c-.2 0-.3.2-.3.4 0 .1 0 .2.1.2l4 3.2-1.4 5c0 .2.1.3.2.4h.1c.1 0 .1 0 .2-.1l4.3-2.8 4.3 2.8c.1.1.3.1.4-.1 0-.1.1-.2 0-.3l-1.4-5 4-3.2c.1-.1.2-.3 0-.4.3 0 .2-.1.1-.1l-5.2-.2L8.9.9C8.8.8 8.7.7 8.6.7z' transform='translate(-.029 -.412)'/%3E%3Cpath class='st0' d='M8.6 2.2L7.1 6l-.2.4h-.5l-4 .2 3.2 2.5.4.3-.2.5-1.1 3.9 3.4-2.2.4-.3.4.3 3.4 2.2-1.1-3.9-.1-.5.4-.3 3.2-2.5-4-.2h-.5L10 6 8.6 2.2m0-1.5c.1 0 .2.1.3.2l1.8 4.8 5.2.2c.1 0 .2.1.3.2 0 .1 0 .3-.1.3l-4 3.2 1.4 5v.1c0 .1-.1.2-.2.3h-.2c-.1 0-.1 0-.2-.1l-4.3-2.8-4.3 2.8c-.1 0-.1.1-.2.1H4c-.1 0-.2-.1-.2-.1 0-.1-.1-.2 0-.2l1.4-5L1 6.5c-.1-.1-.1-.2-.1-.3.1-.2.2-.3.3-.3l5.2-.2L8.3.9c0-.1.1-.2.3-.2z' transform='translate(-.029 -.412)'/%3E%3C/g%3E%3C/svg%3E")}.consonant-u-themeLight .consonant-RatingInfobit-text{color:#8e8e8e}.consonant-u-themeLight .consonant-TextInfobit{color:#6e6e6e}.consonant-u-themeLight .consonant-LoadMore--overBg .consonant-u-themeLight .consonant-LoadMore-btn{color:#4b4b4b}.consonant-u-themeDark .consonant-FiltersInfo-results,.consonant-u-themeDark .consonant-FiltersInfo-title{color:#fff}.consonant-u-themeDark .consonant-LeftFilters{border-color:#4a4a4a;background-color:#323232}.consonant-u-themeDark .consonant-LeftFilters-deskTitle{color:inherit}.consonant-u-themeDark .consonant-LeftFilters .consonant-Search-inputTitle{color:#e3e3e3}.consonant-u-themeDark .consonant-LeftFilters .consonant-Search-input{background-color:#323232;color:#fff}.consonant-u-themeDark .consonant-LeftFilters .consonant-ChosenFilter{color:#e3e3e3}.consonant-u-themeDark .consonant-LeftFilters .consonant-LeftFilter-itemsItemName,.consonant-u-themeDark .consonant-LeftFilters .consonant-LeftFilter-link{color:#fff}.consonant-u-themeDark .consonant-LeftFilters .consonant-LeftFilter.is-opened .consonant-LeftFilter-link{color:#e3e3e3}.consonant-u-themeDark .consonant-LeftFilters .consonant-LeftFilter-itemsItem:hover{background-color:#252525}.consonant-u-themeDark .consonant-Pagination-btn,.consonant-u-themeDark .consonant-Pagination-itemBtn,.consonant-u-themeDark .consonant-Pagination-summary{color:#fff}.consonant-u-themeDark .consonant-ThreeFourthCard{border-color:#4a4a4a;background-color:#323232}.consonant-u-themeDark .consonant-ThreeFourthCard-inner{background-color:#323232}@media only screen and (min-width:1200px){.consonant-u-themeDark .consonant-ThreeFourthCard-inner:focus:after{border-color:#4b9cf5}}.consonant-u-themeDark .consonant-ThreeFourthCard-header{background-color:#4a4a4a}.consonant-u-themeDark .consonant-ThreeFourthCard-label{color:#e3e3e3}.consonant-u-themeDark .consonant-ThreeFourthCard-title{color:#fff}.consonant-u-themeDark .consonant-ThreeFourthCard-banner{color:#323232;background-color:#4b9cf5}.consonant-u-themeDark .consonant-ThreeFourthCard-badge{color:#b9b9b9;border-color:#909090;background-color:#323232}.consonant-u-themeDark .consonant-OneHalfCard{border-color:#4a4a4a;background-color:#323232}.consonant-u-themeDark .consonant-OneHalfCard-inner{background-color:#323232}.consonant-u-themeDark .consonant-OneHalfCard-header{background-color:#4a4a4a}.consonant-u-themeDark .consonant-OneHalfCard-label{color:#e3e3e3}.consonant-u-themeDark .consonant-OneHalfCard-title{color:#fff}.consonant-u-themeDark .consonant-OneHalfCard-text{color:#b9b9b9}.consonant-u-themeDark .consonant-OneHalfCard-banner{color:#323232;background-color:#4b9cf5}.consonant-u-themeDark .consonant-OneHalfCard-badge{color:#b9b9b9;border-color:#909090;background-color:#323232}.consonant-u-themeDark .consonant-TextCard{border-color:#4a4a4a;background-color:#323232}.consonant-u-themeDark .consonant-TextCard-inner{background-color:#323232}.consonant-u-themeDark .consonant-TextCard-header{background-color:#4a4a4a}.consonant-u-themeDark .consonant-TextCard-label{color:#e3e3e3}.consonant-u-themeDark .consonant-TextCard-title{color:#fff}.consonant-u-themeDark .consonant-TextCard-text{color:#b9b9b9}.consonant-u-themeDark .consonant-TextCard-banner{color:#323232;background-color:#4b9cf5}.consonant-u-themeDark .consonant-TextCard-badge{color:#b9b9b9;border-color:#909090;background-color:#323232}.consonant-u-themeDark .consonant-DoubleWideCard{border-color:#6e6e6e}.consonant-u-themeDark .consonant-DoubleWideCard-inner{background-color:#323232}@media only screen and (min-width:1200px){.consonant-u-themeDark .consonant-DoubleWideCard-inner:focus:after{border-color:#4b9cf5}}.consonant-u-themeDark .consonant-DoubleWideCard-title{color:#fff}.consonant-u-themeDark .consonant-DoubleWideCard-text{color:#b9b9b9}.consonant-u-themeDark .consonant-DoubleWideCard-label{color:#e3e3e3}.consonant-u-themeDark .consonant-FullCard{border-color:#6e6e6e;background-color:#323232}@media only screen and (min-width:1200px){.consonant-u-themeDark .consonant-FullCard-inner:focus:after{border-color:#4b9cf5}}.consonant-u-themeDark .consonant-FullCard-inner:before{border-color:#323232;box-shadow:1px 1px 0 0 #323232}.consonant-u-themeDark .consonant-FullCard-header{background-color:#4a4a4a}.consonant-u-themeDark .consonant-FullCard-banner{color:#323232;background-color:#4b9cf5}.consonant-u-themeDark .consonant-FullCard-label{color:#323232}.consonant-u-themeDark .consonant-FullCard-title{color:#5a5a5a}.consonant-u-themeDark .consonant-FullCard-badge{color:#b9b9b9;border-color:#909090;background-color:#323232}.consonant-u-themeDark .consonant-HalfHeightCard-label,.consonant-u-themeDark .consonant-HalfHeightCard-title{color:#323232}.consonant-u-themeDark .consonant-HalfHeightCard-banner{color:#323232;background-color:#4b9cf5}@media only screen and (min-width:1200px){.consonant-u-themeDark .consonant-HalfHeightCard:focus:after{border-color:#4b9cf5}}.consonant-u-themeDark .consonant-CardFooter--divider:last-child{border-color:#4a4a4a}.consonant-u-themeDark .consonant-BookmarkInfobit.is-active .consonant-BookmarkInfobit-ico{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 18'%3E%3Cpath stroke-width='1.5' stroke='%23b9b9b9' fill='%23b9b9b9' d='M13.6.6c-1.7.1-3.3 1-4.1 2.5C8.6 1.6 7.1.7 5.5.6c-2.8 0-5 2.2-5 5 0 4.7 9 10.8 9 10.8s9-6 9-10.8c0-2.7-2.1-5-4.9-5z'/%3E%3C/svg%3E")}.consonant-u-themeDark .consonant-BookmarkInfobit-ico{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 18'%3E%3Cpath stroke-width='1.5' fill='%23323232' stroke='%23b9b9b9' d='M13.6.6c-1.7.1-3.3 1-4.1 2.5C8.6 1.6 7.1.7 5.5.6c-2.8 0-5 2.2-5 5 0 4.7 9 10.8 9 10.8s9-6 9-10.8c0-2.7-2.1-5-4.9-5z'/%3E%3C/svg%3E")}@media only screen and (min-width:1200px){.consonant-u-themeDark .consonant-BookmarkInfobit:focus{outline-color:#4b9cf5}}.consonant-u-themeDark .consonant-Tooltip{color:#323232;background-color:#b9b9b9}.consonant-u-themeDark .consonant-Tooltip:after{background-color:#b9b9b9}.consonant-u-themeDark .consonant-BtnInfobit{border-color:#e3e3e3;background-color:#323232}.consonant-u-themeDark .consonant-BtnInfobit:not(.consonant-u-themeDark .consonant-BtnInfobit--cta) span{color:#e3e3e3}.consonant-u-themeDark .consonant-BtnInfobit:hover{border-color:#e3e3e3;background-color:#e3e3e3}.consonant-u-themeDark .consonant-BtnInfobit:hover:not(.consonant-u-themeDark .consonant-BtnInfobit--cta) span{color:#323232}.consonant-u-themeDark .consonant-BtnInfobit:active{border-color:#fff;background-color:#fff}.consonant-u-themeDark .consonant-BtnInfobit:active:not(.consonant-u-themeDark .consonant-BtnInfobit--cta) span{color:#323232}.consonant-u-themeDark .consonant-BtnInfobit:focus{outline-color:#4b9cf5}.consonant-u-themeDark .consonant-BtnInfobit--cta{border-color:#378ef0;background-color:#378ef0}.consonant-u-themeDark .consonant-BtnInfobit--cta:hover{border-color:#4b9cf5;background-color:#4b9cf5}.consonant-u-themeDark .consonant-BtnInfobit--cta:active{border-color:#5aa9fa;background-color:#5aa9fa}.consonant-u-themeDark .consonant-DateIntervalInfobit,.consonant-u-themeDark .consonant-IconWithTextInfobit-text{color:#b9b9b9}.consonant-u-themeDark .consonant-LinkWithIcoInfobit:focus{outline-color:#4b9cf5}.consonant-u-themeDark .consonant-LinkWithIcoInfobit span{color:#378ef0}.consonant-u-themeDark .consonant-LinkWithIcoInfobit:hover span{color:#4b9cf5}.consonant-u-themeDark .consonant-LinkWithIcoInfobit:active span{color:#5aa9fa}.consonant-u-themeDark .consonant-LinkInfobit{color:#378ef0}.consonant-u-themeDark .consonant-LinkInfobit:hover{color:#4b9cf5}.consonant-u-themeDark .consonant-LinkInfobit:active{color:#5aa9fa}.consonant-u-themeDark .consonant-LinkInfobit:focus{outline-color:#4b9cf5}.consonant-u-themeDark .consonant-PriceInfobit-price{color:#fff}.consonant-u-themeDark .consonant-PriceInfobit-term{color:#909090}.consonant-u-themeDark .consonant-ProgressInfobit-text{color:#b9b9b9}.consonant-u-themeDark .consonant-ProgressInfobit-el{background-color:#323232;border-color:#5a5a5a}.consonant-u-themeDark .consonant-RatingInfobit-stars:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg id='Layer_1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 15'%3E%3Cstyle%3E.st0{fill:none}.st1{fill:%235a5a5a}%3C/style%3E%3Cg id='Shape'%3E%3Cpath class='st0' d='M8.6.7c-.1 0-.3.1-.3.2L6.4 5.7l-5.2.2c-.2 0-.3.2-.3.4 0 .1 0 .2.1.2l4 3.2-1.4 5c0 .2.1.3.2.4h.1c.1 0 .1 0 .2-.1l4.3-2.8 4.3 2.8c.1.1.3.1.4-.1 0-.1.1-.2 0-.3l-1.4-5 4-3.2c.1-.1.2-.3 0-.4.3 0 .2-.1.1-.1l-5.2-.2L8.9.9C8.8.8 8.7.7 8.6.7z' transform='translate(-.029 -.412)'/%3E%3Cpath class='st1' d='M8.6 2.2L7.1 6l-.2.4h-.5l-4 .2 3.2 2.5.4.3-.2.5-1.1 3.9 3.4-2.2.4-.3.4.3 3.4 2.2-1.1-3.9-.1-.5.4-.3 3.2-2.5-4-.2h-.5L10 6 8.6 2.2m0-1.5c.1 0 .2.1.3.2l1.8 4.8 5.2.2c.1 0 .2.1.3.2 0 .1 0 .3-.1.3l-4 3.2 1.4 5v.1c0 .1-.1.2-.2.3h-.2c-.1 0-.1 0-.2-.1l-4.3-2.8-4.3 2.8c-.1 0-.1.1-.2.1H4c-.1 0-.2-.1-.2-.1 0-.1-.1-.2 0-.2l1.4-5L1 6.5c-.1-.1-.1-.2-.1-.3.1-.2.2-.3.3-.3l5.2-.2L8.3.9c0-.1.1-.2.3-.2z' transform='translate(-.029 -.412)'/%3E%3C/g%3E%3C/svg%3E")}.consonant-u-themeDark .consonant-RatingInfobit-stars:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' id='Layer_1' viewBox='0 0 17 15'%3E%3Cstyle%3E.st0{fill:%234b9cf5}%3C/style%3E%3Cg id='Shape'%3E%3Cpath class='st0' d='M8.6.7c-.1 0-.3.1-.3.2L6.4 5.7l-5.2.2c-.2 0-.3.2-.3.4 0 .1 0 .2.1.2l4 3.2-1.4 5c0 .2.1.3.2.4h.1c.1 0 .1 0 .2-.1l4.3-2.8 4.3 2.8c.1.1.3.1.4-.1 0-.1.1-.2 0-.3l-1.4-5 4-3.2c.1-.1.2-.3 0-.4.3 0 .2-.1.1-.1l-5.2-.2L8.9.9C8.8.8 8.7.7 8.6.7z' transform='translate(-.029 -.412)'/%3E%3Cpath class='st0' d='M8.6 2.2L7.1 6l-.2.4h-.5l-4 .2 3.2 2.5.4.3-.2.5-1.1 3.9 3.4-2.2.4-.3.4.3 3.4 2.2-1.1-3.9-.1-.5.4-.3 3.2-2.5-4-.2h-.5L10 6 8.6 2.2m0-1.5c.1 0 .2.1.3.2l1.8 4.8 5.2.2c.1 0 .2.1.3.2 0 .1 0 .3-.1.3l-4 3.2 1.4 5v.1c0 .1-.1.2-.2.3h-.2c-.1 0-.1 0-.2-.1l-4.3-2.8-4.3 2.8c-.1 0-.1.1-.2.1H4c-.1 0-.2-.1-.2-.1 0-.1-.1-.2 0-.2l1.4-5L1 6.5c-.1-.1-.1-.2-.1-.3.1-.2.2-.3.3-.3l5.2-.2L8.3.9c0-.1.1-.2.3-.2z' transform='translate(-.029 -.412)'/%3E%3C/g%3E%3C/svg%3E")}.consonant-u-themeDark .consonant-RatingInfobit-text{color:#909090}.consonant-u-themeDark .consonant-TextInfobit{color:#b9b9b9}.consonant-u-themeDark .consonant-LoadMore--overBg .consonant-u-themeDark .consonant-LoadMore-btn{color:#e3e3e3}.consonant-u-themeDarkest .consonant-FiltersInfo-results,.consonant-u-themeDarkest .consonant-FiltersInfo-title{color:#efefef}.consonant-u-themeDarkest .consonant-LeftFilters{border-color:#393939;background-color:#1e1e1e}.consonant-u-themeDarkest .consonant-LeftFilters-deskTitle{color:inherit}.consonant-u-themeDarkest .consonant-LeftFilters .consonant-Search-inputTitle{color:#c8c8c8}.consonant-u-themeDarkest .consonant-LeftFilters .consonant-Search-input{background-color:#1e1e1e;color:#efefef}.consonant-u-themeDarkest .consonant-LeftFilters .consonant-ChosenFilter{color:#c8c8c8}.consonant-u-themeDarkest .consonant-LeftFilters .consonant-LeftFilter-itemsItemName,.consonant-u-themeDarkest .consonant-LeftFilters .consonant-LeftFilter-link{color:#efefef}.consonant-u-themeDarkest .consonant-LeftFilters .consonant-LeftFilter.is-opened .consonant-LeftFilter-link{color:#c8c8c8}.consonant-u-themeDarkest .consonant-LeftFilters .consonant-LeftFilter-itemsItem:hover{background-color:#080808}.consonant-u-themeDarkest .consonant-Pagination-btn,.consonant-u-themeDarkest .consonant-Pagination-itemBtn,.consonant-u-themeDarkest .consonant-Pagination-summary{color:#efefef}.consonant-u-themeDarkest .consonant-ThreeFourthCard{border-color:#393939;background-color:#1e1e1e}.consonant-u-themeDarkest .consonant-ThreeFourthCard-inner{background-color:#1e1e1e}@media only screen and (min-width:1200px){.consonant-u-themeDarkest .consonant-ThreeFourthCard-inner:focus:after{border-color:#378ef0}}.consonant-u-themeDarkest .consonant-ThreeFourthCard-header{background-color:#393939}.consonant-u-themeDarkest .consonant-ThreeFourthCard-label{color:#c8c8c8}.consonant-u-themeDarkest .consonant-ThreeFourthCard-title{color:#efefef}.consonant-u-themeDarkest .consonant-ThreeFourthCard-banner{color:#1e1e1e;background-color:#378ef0}.consonant-u-themeDarkest .consonant-ThreeFourthCard-badge{color:#a2a2a2;border-color:#7c7c7c;background-color:#1e1e1e}.consonant-u-themeDarkest .consonant-OneHalfCard{border-color:#393939;background-color:#1e1e1e}.consonant-u-themeDarkest .consonant-OneHalfCard-inner{background-color:#1e1e1e}.consonant-u-themeDarkest .consonant-OneHalfCard-header{background-color:#393939}.consonant-u-themeDarkest .consonant-OneHalfCard-label{color:#c8c8c8}.consonant-u-themeDarkest .consonant-OneHalfCard-title{color:#efefef}.consonant-u-themeDarkest .consonant-OneHalfCard-text{color:#a2a2a2}.consonant-u-themeDarkest .consonant-OneHalfCard-banner{color:#1e1e1e;background-color:#378ef0}.consonant-u-themeDarkest .consonant-OneHalfCard-badge{color:#a2a2a2;border-color:#7c7c7c;background-color:#1e1e1e}.consonant-u-themeDarkest .consonant-TextCard{border-color:#393939;background-color:#1e1e1e}.consonant-u-themeDarkest .consonant-TextCard-inner{background-color:#1e1e1e}.consonant-u-themeDarkest .consonant-TextCard-header{background-color:#393939}.consonant-u-themeDarkest .consonant-TextCard-label{color:#c8c8c8}.consonant-u-themeDarkest .consonant-TextCard-title{color:#efefef}.consonant-u-themeDarkest .consonant-TextCard-text{color:#a2a2a2}.consonant-u-themeDarkest .consonant-TextCard-banner{color:#1e1e1e;background-color:#378ef0}.consonant-u-themeDarkest .consonant-TextCard-badge{color:#a2a2a2;border-color:#7c7c7c;background-color:#1e1e1e}.consonant-u-themeDarkest .consonant-DoubleWideCard{border-color:#5c5c5c}.consonant-u-themeDarkest .consonant-DoubleWideCard-inner{background-color:#1e1e1e}@media only screen and (min-width:1200px){.consonant-u-themeDarkest .consonant-DoubleWideCard-inner:focus:after{border-color:#378ef0}}.consonant-u-themeDarkest .consonant-DoubleWideCard-title{color:#efefef}.consonant-u-themeDarkest .consonant-DoubleWideCard-text{color:#a2a2a2}.consonant-u-themeDarkest .consonant-DoubleWideCard-label{color:#c8c8c8}.consonant-u-themeDarkest .consonant-FullCard{border-color:#5c5c5c;background-color:#1e1e1e}@media only screen and (min-width:1200px){.consonant-u-themeDarkest .consonant-FullCard-inner:focus:after{border-color:#378ef0}}.consonant-u-themeDarkest .consonant-FullCard-inner:before{border-color:#1e1e1e;box-shadow:1px 1px 0 0 #1e1e1e}.consonant-u-themeDarkest .consonant-FullCard-header{background-color:#393939}.consonant-u-themeDarkest .consonant-FullCard-banner{color:#1e1e1e;background-color:#378ef0}.consonant-u-themeDarkest .consonant-FullCard-label{color:#1e1e1e}.consonant-u-themeDarkest .consonant-FullCard-title{color:#494949}.consonant-u-themeDarkest .consonant-FullCard-badge{color:#a2a2a2;border-color:#7c7c7c;background-color:#1e1e1e}.consonant-u-themeDarkest .consonant-HalfHeightCard-label,.consonant-u-themeDarkest .consonant-HalfHeightCard-title{color:#1e1e1e}.consonant-u-themeDarkest .consonant-HalfHeightCard-banner{color:#1e1e1e;background-color:#378ef0}@media only screen and (min-width:1200px){.consonant-u-themeDarkest .consonant-HalfHeightCard:focus:after{border-color:#378ef0}}.consonant-u-themeDarkest .consonant-CardFooter--divider:last-child{border-color:#393939}.consonant-u-themeDarkest .consonant-BookmarkInfobit.is-active .consonant-BookmarkInfobit-ico{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 18'%3E%3Cpath stroke-width='1.5' stroke='%23a2a2a2' fill='%23a2a2a2' d='M13.6.6c-1.7.1-3.3 1-4.1 2.5C8.6 1.6 7.1.7 5.5.6c-2.8 0-5 2.2-5 5 0 4.7 9 10.8 9 10.8s9-6 9-10.8c0-2.7-2.1-5-4.9-5z'/%3E%3C/svg%3E")}.consonant-u-themeDarkest .consonant-BookmarkInfobit-ico{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 18'%3E%3Cpath stroke-width='1.5' fill='%231e1e1e' stroke='%23a2a2a2' d='M13.6.6c-1.7.1-3.3 1-4.1 2.5C8.6 1.6 7.1.7 5.5.6c-2.8 0-5 2.2-5 5 0 4.7 9 10.8 9 10.8s9-6 9-10.8c0-2.7-2.1-5-4.9-5z'/%3E%3C/svg%3E")}@media only screen and (min-width:1200px){.consonant-u-themeDarkest .consonant-BookmarkInfobit:focus{outline-color:#378ef0}}.consonant-u-themeDarkest .consonant-Tooltip{color:#1e1e1e;background-color:#a2a2a2}.consonant-u-themeDarkest .consonant-Tooltip:after{background-color:#a2a2a2}.consonant-u-themeDarkest .consonant-BtnInfobit{border-color:#c8c8c8;background-color:#1e1e1e}.consonant-u-themeDarkest .consonant-BtnInfobit:not(.consonant-u-themeDarkest .consonant-BtnInfobit--cta) span{color:#c8c8c8}.consonant-u-themeDarkest .consonant-BtnInfobit:hover{border-color:#c8c8c8;background-color:#c8c8c8}.consonant-u-themeDarkest .consonant-BtnInfobit:hover:not(.consonant-u-themeDarkest .consonant-BtnInfobit--cta) span{color:#1e1e1e}.consonant-u-themeDarkest .consonant-BtnInfobit:active{border-color:#efefef;background-color:#efefef}.consonant-u-themeDarkest .consonant-BtnInfobit:active:not(.consonant-u-themeDarkest .consonant-BtnInfobit--cta) span{color:#1e1e1e}.consonant-u-themeDarkest .consonant-BtnInfobit:focus{outline-color:#378ef0}.consonant-u-themeDarkest .consonant-BtnInfobit--cta{border-color:#2680eb;background-color:#2680eb}.consonant-u-themeDarkest .consonant-BtnInfobit--cta:hover{border-color:#378ef0;background-color:#378ef0}.consonant-u-themeDarkest .consonant-BtnInfobit--cta:active{border-color:#4b9cf5;background-color:#4b9cf5}.consonant-u-themeDarkest .consonant-DateIntervalInfobit,.consonant-u-themeDarkest .consonant-IconWithTextInfobit-text{color:#a2a2a2}.consonant-u-themeDarkest .consonant-LinkWithIcoInfobit:focus{outline-color:#378ef0}.consonant-u-themeDarkest .consonant-LinkWithIcoInfobit span{color:#2680eb}.consonant-u-themeDarkest .consonant-LinkWithIcoInfobit:hover span{color:#378ef0}.consonant-u-themeDarkest .consonant-LinkWithIcoInfobit:active span{color:#4b9cf5}.consonant-u-themeDarkest .consonant-LinkInfobit{color:#2680eb}.consonant-u-themeDarkest .consonant-LinkInfobit:hover{color:#378ef0}.consonant-u-themeDarkest .consonant-LinkInfobit:active{color:#4b9cf5}.consonant-u-themeDarkest .consonant-LinkInfobit:focus{outline-color:#378ef0}.consonant-u-themeDarkest .consonant-PriceInfobit-price{color:#efefef}.consonant-u-themeDarkest .consonant-PriceInfobit-term{color:#7c7c7c}.consonant-u-themeDarkest .consonant-ProgressInfobit-text{color:#a2a2a2}.consonant-u-themeDarkest .consonant-ProgressInfobit-el{background-color:#1e1e1e;border-color:#494949}.consonant-u-themeDarkest .consonant-RatingInfobit-stars:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg id='Layer_1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 15'%3E%3Cstyle%3E.st0{fill:none}.st1{fill:%23494949}%3C/style%3E%3Cg id='Shape'%3E%3Cpath class='st0' d='M8.6.7c-.1 0-.3.1-.3.2L6.4 5.7l-5.2.2c-.2 0-.3.2-.3.4 0 .1 0 .2.1.2l4 3.2-1.4 5c0 .2.1.3.2.4h.1c.1 0 .1 0 .2-.1l4.3-2.8 4.3 2.8c.1.1.3.1.4-.1 0-.1.1-.2 0-.3l-1.4-5 4-3.2c.1-.1.2-.3 0-.4.3 0 .2-.1.1-.1l-5.2-.2L8.9.9C8.8.8 8.7.7 8.6.7z' transform='translate(-.029 -.412)'/%3E%3Cpath class='st1' d='M8.6 2.2L7.1 6l-.2.4h-.5l-4 .2 3.2 2.5.4.3-.2.5-1.1 3.9 3.4-2.2.4-.3.4.3 3.4 2.2-1.1-3.9-.1-.5.4-.3 3.2-2.5-4-.2h-.5L10 6 8.6 2.2m0-1.5c.1 0 .2.1.3.2l1.8 4.8 5.2.2c.1 0 .2.1.3.2 0 .1 0 .3-.1.3l-4 3.2 1.4 5v.1c0 .1-.1.2-.2.3h-.2c-.1 0-.1 0-.2-.1l-4.3-2.8-4.3 2.8c-.1 0-.1.1-.2.1H4c-.1 0-.2-.1-.2-.1 0-.1-.1-.2 0-.2l1.4-5L1 6.5c-.1-.1-.1-.2-.1-.3.1-.2.2-.3.3-.3l5.2-.2L8.3.9c0-.1.1-.2.3-.2z' transform='translate(-.029 -.412)'/%3E%3C/g%3E%3C/svg%3E")}.consonant-u-themeDarkest .consonant-RatingInfobit-stars:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' id='Layer_1' viewBox='0 0 17 15'%3E%3Cstyle%3E.st0{fill:%23378ef0}%3C/style%3E%3Cg id='Shape'%3E%3Cpath class='st0' d='M8.6.7c-.1 0-.3.1-.3.2L6.4 5.7l-5.2.2c-.2 0-.3.2-.3.4 0 .1 0 .2.1.2l4 3.2-1.4 5c0 .2.1.3.2.4h.1c.1 0 .1 0 .2-.1l4.3-2.8 4.3 2.8c.1.1.3.1.4-.1 0-.1.1-.2 0-.3l-1.4-5 4-3.2c.1-.1.2-.3 0-.4.3 0 .2-.1.1-.1l-5.2-.2L8.9.9C8.8.8 8.7.7 8.6.7z' transform='translate(-.029 -.412)'/%3E%3Cpath class='st0' d='M8.6 2.2L7.1 6l-.2.4h-.5l-4 .2 3.2 2.5.4.3-.2.5-1.1 3.9 3.4-2.2.4-.3.4.3 3.4 2.2-1.1-3.9-.1-.5.4-.3 3.2-2.5-4-.2h-.5L10 6 8.6 2.2m0-1.5c.1 0 .2.1.3.2l1.8 4.8 5.2.2c.1 0 .2.1.3.2 0 .1 0 .3-.1.3l-4 3.2 1.4 5v.1c0 .1-.1.2-.2.3h-.2c-.1 0-.1 0-.2-.1l-4.3-2.8-4.3 2.8c-.1 0-.1.1-.2.1H4c-.1 0-.2-.1-.2-.1 0-.1-.1-.2 0-.2l1.4-5L1 6.5c-.1-.1-.1-.2-.1-.3.1-.2.2-.3.3-.3l5.2-.2L8.3.9c0-.1.1-.2.3-.2z' transform='translate(-.029 -.412)'/%3E%3C/g%3E%3C/svg%3E")}.consonant-u-themeDarkest .consonant-RatingInfobit-text{color:#7c7c7c}.consonant-u-themeDarkest .consonant-TextInfobit{color:#a2a2a2}.consonant-u-themeDarkest .consonant-LoadMore--overBg .consonant-u-themeDarkest .consonant-LoadMore-btn{color:#c8c8c8}[dir=rtl] .consonant-FiltersInfo>.consonant-Select{margin-left:0;margin-right:auto}[dir=rtl] .consonant-FiltersInfo-btn--withFilters{padding-left:0}[dir=rtl] .consonant-FiltersInfo-btnText{padding-left:7px;text-align:right}[dir=rtl] .consonant-FiltersInfo-btnSelected{padding-right:8px;padding-left:7px;border-left:0;border-right:1px solid #505050}[dir=rtl] .consonant-FiltersInfo-results{margin-left:0;margin-right:auto;padding-left:0;text-align:right}[dir=rtl] .consonant-LeftFilters-mobBack{margin-left:13px;margin-right:0;transform:scale(-1)}[dir=rtl] .consonant-LeftFilters-mobileFooter{flex-direction:row-reverse}[dir=rtl] .consonant-LeftFilters-mobileFooterTotalResQty{margin-right:auto}[dir=rtl] .consonant-LeftFilters-clearLink,[dir=rtl] .consonant-LeftFilters-deskTitle,[dir=rtl] .consonant-LeftFilters-mobileFooterTotalResQty,[dir=rtl] .consonant-LeftFilters-mobTitle span{text-align:right}[dir=rtl] .consonant-LeftFilter:after{left:16px;right:auto;transform:scale(-1) rotate(-135deg)}[dir=rtl] .consonant-LeftFilter-link{padding-left:36px;padding-right:6px;text-align:right}[dir=rtl] .consonant-LeftFilter-footerClearBtn,[dir=rtl] .consonant-LeftFilter-footerResQty,[dir=rtl] .consonant-LeftFilter-itemsItemName{text-align:right}[dir=rtl] .consonant-LeftFilter-itemsItemCheckmark{margin-left:10px;margin-right:0}[dir=rtl] .consonant-LeftFilter-selectedItemsQty{text-align:right;padding-left:18px;padding-right:0}[dir=rtl] .consonant-LeftFilter-selectedItemsQty:after{left:0;right:auto}[dir=rtl] .consonant-LeftFilter-footer{flex-direction:row-reverse}[dir=rtl] .consonant-LeftFilter-footerClearBtn{margin-left:auto}[dir=rtl] .consonant-LeftFilter.is-opened .consonant-LeftFilter-name{padding-left:0;padding-right:20px}[dir=rtl] .consonant-TopFilters-filters{margin-right:0;margin-left:17px}[dir=rtl] .consonant-TopFilters-clearBtnWrapper{left:0;right:auto;margin-left:0;margin-right:0}[dir=rtl] .consonant-TopFilters-clearBtnWrapper:empty{margin-left:0;margin-right:-16px}[dir=rtl] .consonant-TopFilters-clearBtnWrapper:after{right:auto;left:100%;transform:scale(-1)}[dir=rtl] .consonant-TopFilters-clearBtn{text-align:right}[dir=rtl] .consonant-TopFilters-selectWrapper{margin-right:0;margin-left:8px}[dir=rtl] .consonant-TopFilters-results{margin-left:0;margin-right:auto;padding-left:0}[dir=rtl] .consonant-TopFilter{margin-right:0;margin-left:8px}[dir=rtl] .consonant-TopFilter:last-of-type{margin-left:0}[dir=rtl] .consonant-TopFilter-itemCheckmark{margin-right:0;margin-left:10px}[dir=rtl] .consonant-TopFilter-footerClearBtn,[dir=rtl] .consonant-TopFilter-footerResQty,[dir=rtl] .consonant-TopFilter-itemsItemName,[dir=rtl] .consonant-TopFilter-link{text-align:right}[dir=rtl] .consonant-TopFilter-selctedItemsQty{margin-right:9px;margin-left:0;text-align:right}[dir=rtl] .consonant-TopFilter-selctedItemsQty:after{left:auto;right:0}[dir=rtl] .consonant-TopFilter-footerResQty{margin-right:0;margin-left:auto}[dir=rtl] .consonant-TopFilter-footerBtn{margin-left:0;margin-right:0}[dir=rtl] .consonant-TopFilter-footerBtn:only-child{margin-right:auto}[dir=rtl] .consonant-TopFilter-footerClearBtn{margin-right:auto;margin-left:17px}[dir=rtl] .consonant-TopFilter.is-selected:not(.is-opened) .consonant-TopFilter-link{padding-left:0;padding-right:12px}[dir=rtl] .consonant-TopFilter.is-opened .consonant-TopFilter-link{padding-right:20px;padding-left:12px;text-align:right}[dir=rtl] .consonant-Select:after{right:auto;left:12px}[dir=rtl] .consonant-Select-btn{padding-left:34px;padding-right:12px;text-align:right}[dir=rtl] .consonant-Select-options{left:0;right:auto}[dir=rtl] .consonant-Select-options--left{right:0;left:auto}[dir=rtl] .consonant-Select-option{text-align:right;padding-left:30px;padding-right:20px}[dir=rtl] .consonant-Select-option.is-selected{text-align:right}[dir=rtl] .consonant-Select-option.is-selected:after{right:auto;left:12px}[dir=rtl] .consonant-Search input{text-align:right}[dir=rtl] .consonant-Search input:focus{padding-right:8px}[dir=rtl] .consonant-Search-inputTitle{text-align:right}[dir=rtl] .consonant-Search-inputClear{display:none}[dir=rtl] .consonant-DoubleWideCard .consonant-DoubleWideCard-label,[dir=rtl] .consonant-DoubleWideCard .consonant-DoubleWideCard-text,[dir=rtl] .consonant-DoubleWideCard .consonant-DoubleWideCard-title,[dir=rtl] .consonant-FullCard .consonant-FullCard-badge,[dir=rtl] .consonant-FullCard .consonant-FullCard-banner,[dir=rtl] .consonant-FullCard .consonant-FullCard-label,[dir=rtl] .consonant-FullCard .consonant-FullCard-title,[dir=rtl] .consonant-HalfHeightCard .consonant-HalfHeightCard-label,[dir=rtl] .consonant-HalfHeightCard .consonant-HalfHeightCard-title,[dir=rtl] .consonant-OneHalfCard .consonant-OneHalfCard-badge,[dir=rtl] .consonant-OneHalfCard .consonant-OneHalfCard-banner,[dir=rtl] .consonant-OneHalfCard .consonant-OneHalfCard-label,[dir=rtl] .consonant-OneHalfCard .consonant-OneHalfCard-text,[dir=rtl] .consonant-OneHalfCard .consonant-OneHalfCard-title,[dir=rtl] .consonant-ThreeFourthCard .consonant-ThreeFourthCard-badge,[dir=rtl] .consonant-ThreeFourthCard .consonant-ThreeFourthCard-banner,[dir=rtl] .consonant-ThreeFourthCard .consonant-ThreeFourthCard-label,[dir=rtl] .consonant-ThreeFourthCard .consonant-ThreeFourthCard-title{text-align:right}[dir=rtl] .consonant-FullCard .consonant-FullCard-videoIco,[dir=rtl] .consonant-OneHalfCard .consonant-OneHalfCard-videoIco,[dir=rtl] .consonant-ThreeFourthCard .consonant-ThreeFourthCard-videoIco{transform:rotate(180deg)}[dir=rtl] .consonant-FullCard .consonant-FullCard-videoIco:hover,[dir=rtl] .consonant-OneHalfCard .consonant-OneHalfCard-videoIco:hover,[dir=rtl] .consonant-ThreeFourthCard .consonant-ThreeFourthCard-videoIco:hover{transform:rotate(180deg) scale(1.1)}[dir=rtl] .consonant-FullCard .consonant-FullCard-banner,[dir=rtl] .consonant-OneHalfCard .consonant-OneHalfCard-banner,[dir=rtl] .consonant-ThreeFourthCard .consonant-ThreeFourthCard-banner{display:flex;align-items:center;justify-content:flex-start}[dir=rtl] .consonant-FullCard .consonant-FullCard-bannerIconWrapper,[dir=rtl] .consonant-OneHalfCard .consonant-OneHalfCard-bannerIconWrapper,[dir=rtl] .consonant-ThreeFourthCard .consonant-ThreeFourthCard-bannerIconWrapper{margin-left:4px;margin-right:0}[dir=rtl] .consonant-CardFooter-cell--left>:first-child,[dir=rtl] .consonant-CardFooter-cell--left>:last-child{margin-left:16px}[dir=rtl] .consonant-CardFooter-cell--left:last-child>:last-child,[dir=rtl] .consonant-CardFooter-cell--right:last-child>:last-child{margin-left:0}[dir=rtl] .consonant-DateIntervalInfobit,[dir=rtl] .consonant-IconWithTextInfobit-text,[dir=rtl] .consonant-LinkInfobit,[dir=rtl] .consonant-LinkWithIcoInfobit span,[dir=rtl] .consonant-PriceInfobit-price,[dir=rtl] .consonant-PriceInfobit-term,[dir=rtl] .consonant-ProgressInfobit-text,[dir=rtl] .consonant-RatingInfobit-text,[dir=rtl] .consonant-TextInfobit{text-align:right}[dir=rtl] .consonant-IconWithTextInfobit img{margin-right:0;margin-left:4px}[dir=rtl] .consonant img+.consonant-TextInfobit{margin-right:-12px}[dir=rtl] .consonant-RatingInfobit-text{margin-left:0;margin-right:7px}[dir=rtl] .consonant-ProgressInfobit-text:not(:last-child){padding-right:0;padding-left:8px}[dir=rtl] .consonant-BtnInfobit-ico{width:auto;height:auto;max-width:24px;max-height:24px;margin-left:8px;overflow:hidden;object-fit:cover}[dir=rtl] .consonant-BtnInfobit-ico--last{margin-left:0;margin-right:8px}[dir=rtl] .consonant-Bookmarks-title{padding-left:55px;padding-right:0;text-align:right}[dir=rtl] .consonant-Bookmarks-itemBadge{left:16px;right:auto}[dir=rtl] .consonant-Bookmarks-icoWrapper .consonant-Bookmarks-ico{margin-left:6px;margin-right:0}[dir=rtl] .consonant-Pagination-btn,[dir=rtl] .consonant-Pagination-summary{text-align:right}[dir=rtl] .consonant-CardCollection-inner{margin-left:-32px;margin-right:0}[dir=rtl] .consonant-CardCollection-inner>div{margin-left:32px;margin-right:0}@media only screen and (min-width:768px){[dir=rtl] .consonant-TopFilters-filtersWrapper{margin-right:0;margin-left:16px}[dir=rtl] .consonant-TopFilters-selectWrapper{margin-left:0;margin-right:8px}[dir=rtl] .consonant-TopFilters-title{text-align:right;margin-left:12px;margin-right:0}[dir=rtl] .consonant-TopFilters-filters--truncated .consonant-TopFilters-moreBtn{margin-left:23px;margin-right:0}[dir=rtl] .consonant-TopFilters-results{text-align:right}[dir=rtl] .consonant-TopFilters-results:after{right:auto;left:0}[dir=rtl] .consonant-TopFilters-results strong{text-align:right}[dir=rtl] .consonant-TopFilters-searchIcoWrapper{margin-left:0;margin-right:auto}[dir=rtl] .consonant-TopFilters-searchIcoWrapper>div{left:0;right:auto}[dir=rtl] .consonant-TopFilters-inner>:not([dir=rtl] .consonant-TopFilters-filtersWrapper):first-child{margin-left:0;margin-right:auto}[dir=rtl] .consonant-TopFilter.is-opened{margin-left:8px;margin-right:0}[dir=rtl] .consonant-TopFilter.is-opened:last-child{margin-left:0}[dir=rtl] .consonant-TopFilter.is-opened .consonant-TopFilter-link{margin-right:0;padding-right:17px}}@media only screen and (min-width:1200px){[dir=rtl] .consonant-LeftFilters{margin-right:0;margin-left:32px}[dir=rtl] .consonant-TopFilters-results{margin-left:0;margin-right:auto}[dir=rtl] .consonant-TopFilters-selectWrapper>div:first-child:after{right:auto;left:12px}[dir=rtl] .consonant-FiltersInfo-wrapper{padding-right:0;padding-left:32px}[dir=rtl] .consonant-FiltersInfo-wrapper:after{right:auto;left:16px}[dir=rtl] .consonant-FiltersInfo-search+.consonant-FiltersInfo-wrapper:last-child{padding-left:0}[dir=rtl] .consonant-FiltersInfo-results{text-align:left}[dir=rtl] .consonant-LeftFilter:after{transform:scale(-1) rotate(135deg)}[dir=rtl] .consonant-LeftFilter-link{padding-right:6px}[dir=rtl] .consonant-LeftFilter-itemBadge{left:32px;right:auto}[dir=rtl] .consonant-LeftFilter.is-opened .consonant-LeftFilter-name{padding-right:0}[dir=rtl] .consonant-LeftFilter.is-opened .consonant-LeftFilter-link{padding-right:8px}[dir=rtl] .consonant-TopFilter .consonant-TopFilter-absoluteWrapper{left:auto;right:0}[dir=rtl] .consonant-ChosenFilter{margin-right:0;margin-left:7px;padding-left:17px;padding-right:8px;text-align:right}[dir=rtl] .consonant-ChosenFilter:after,[dir=rtl] .consonant-ChosenFilter:before{left:8px;right:auto}[dir=rtl] .consonant-Bookmarks .consonant-Bookmarks-itemBadge{left:30px}[dir=rtl] .consonant-Select-btn{padding-right:0}}.consonant-CardsGrid{display:grid;justify-content:center;width:100%;max-width:100%;grid-template-columns:repeat(auto-fit,minmax(300px,max-content))}.consonant-CardsGrid--with1xGutter{gap:8px;padding-bottom:8px}.consonant-CardsGrid--with2xGutter{gap:16px;padding-bottom:16px}.consonant-CardsGrid--with3xGutter{gap:24px;padding-bottom:24px}.consonant-CardsGrid--with4xGutter{gap:32px;padding-bottom:32px}.consonant-CardsGrid--2up{grid-template-columns:repeat(auto-fit,minmax(300px,max-content))}.consonant-CardsGrid--2up .consonant-Card{max-width:584px}.consonant-CardsGrid--2up .consonant-Card-content{width:100%;max-width:100%}.consonant-CardsGrid--3up .consonant-Card{width:378px;max-width:100%}.consonant-CardsGrid--3up .consonant-Card-content{width:100%;max-width:100%}.consonant-CardsGrid--4up{grid-template-columns:repeat(auto-fit,minmax(225px,max-content))}.consonant-CardsGrid--4up .consonant-Card{min-width:225px;width:276px;max-width:100%;height:384px}.consonant-CardsGrid--4up .consonant-Card-content{width:100%;max-width:100%;padding:20px}.consonant-CardsGrid--5up{grid-template-columns:repeat(auto-fit,minmax(190px,max-content))}.consonant-CardsGrid--5up .consonant-Card{min-width:190px;max-width:228px;height:344px}.consonant-CardsGrid--5up .consonant-Card-content{width:100%;max-width:100%;padding:20px}.consonant-CardsGrid--5up .one-half.consonant-Card{height:auto}.consonant-CardsGrid--5up .one-half.consonant-Card .consonant-Card-header{min-height:172px;max-height:172px}@media only screen and (min-width:680px){.consonant-CardsGrid--2up{grid-template-columns:repeat(auto-fit,minmax(500px,max-content))}}.consonant-Wrapper{font-family:adobe-clean,Segoe UI,Roboto,sans-serif;position:relative;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;margin-top:1px}.consonant-Wrapper-inner>:last-of-type{display:block;position:relative;flex-grow:1}.consonant-Wrapper-collection{background-color:transparent}.consonant-Wrapper-collection.is-loading{min-height:536px}.consonant-Wrapper-collection:first-child .consonant-FiltersInfo:empty{display:none}.consonant-Wrapper--1200MaxWidth .consonant-Wrapper-inner{width:83.3%;max-width:1200px;margin-left:auto;margin-right:auto}.consonant-Wrapper--1600MaxWidth .consonant-Wrapper-inner{width:83.3%;max-width:1600px;margin-left:auto;margin-right:auto}.consonant-Wrapper--83PercentContainier .consonant-Wrapper-inner{width:83.3%;margin-left:auto;margin-right:auto}.consonant-Wrapper--32MarginContainer .consonant-Wrapper-inner{max-width:unset;margin-left:32px;margin-right:32px}@media only screen and (min-width:1200px){.consonant-Wrapper--withLeftFilter .consonant-Wrapper-inner{display:grid;grid-template-columns:204px auto;gap:32px}.consonant-Wrapper-collection{overflow:visible}}@media only screen and (min-width:1440px){.consonant-Wrapper-collection{margin-bottom:8px}}.consonant-FiltersInfo{display:flex;width:100%;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-left:auto;margin-right:auto;box-sizing:border-box;padding:0 0 16px;top:0;left:0;background-color:transparent}.consonant-FiltersInfo-search{width:100%;max-width:100%}.consonant-FiltersInfo-btnWrapper{max-width:100%}.consonant-FiltersInfo-btn{display:inline-flex;align-items:center;min-width:89px;max-width:100%;margin-bottom:10px;padding:0 0 0 11px;border:1px solid #505050;border-radius:5px;overflow:hidden;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.875rem;font-weight:700;color:#505050;font-style:normal;word-break:break-word;text-align:left;text-transform:capitalize;background-color:#fff;outline:0;user-select:none}.consonant-FiltersInfo-btn:focus{border-color:#1492e6}.consonant-FiltersInfo-btnSelected{display:block;max-width:40%;padding-left:8px;padding-right:7px;border-left:1px solid #505050;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.consonant-FiltersInfo-btn--withFilters{background-color:#f4f4f4;color:#323232}.consonant-FiltersInfo-btnIco{display:block;min-width:18px;width:18px;height:18px;margin-right:8px;background:transparent url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAxOCAxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE2Ljc1IDMuMDAwMDZINy45NUM3LjgzNTI0IDIuNDM0OTIgNy41Mjg2NCAxLjkyNjgzIDcuMDgyMTMgMS41NjE4OEM2LjYzNTYyIDEuMTk2OTIgNi4wNzY2OCAwLjk5NzU1OSA1LjUgMC45OTc1NTlDNC45MjMzMiAwLjk5NzU1OSA0LjM2NDM4IDEuMTk2OTIgMy45MTc4NyAxLjU2MTg4QzMuNDcxMzYgMS45MjY4MyAzLjE2NDc2IDIuNDM0OTIgMy4wNSAzLjAwMDA2SDEuMjVDMS4xODM3IDMuMDAwMDYgMS4xMjAxMSAzLjAyNjQgMS4wNzMyMiAzLjA3MzI5QzEuMDI2MzQgMy4xMjAxNyAxIDMuMTgzNzYgMSAzLjI1MDA2VjMuNzUwMDZDMSAzLjgxNjM3IDEuMDI2MzQgMy44Nzk5NiAxLjA3MzIyIDMuOTI2ODRDMS4xMjAxMSAzLjk3MzczIDEuMTgzNyA0LjAwMDA2IDEuMjUgNC4wMDAwNkgzLjA1QzMuMTY0NzYgNC41NjUyMSAzLjQ3MTM2IDUuMDczMyAzLjkxNzg3IDUuNDM4MjVDNC4zNjQzOCA1LjgwMzIxIDQuOTIzMzIgNi4wMDI1NyA1LjUgNi4wMDI1N0M2LjA3NjY4IDYuMDAyNTcgNi42MzU2MiA1LjgwMzIxIDcuMDgyMTMgNS40MzgyNUM3LjUyODY0IDUuMDczMyA3LjgzNTI0IDQuNTY1MjEgNy45NSA0LjAwMDA2SDE2Ljc1QzE2LjgxNjMgNC4wMDAwNiAxNi44Nzk5IDMuOTczNzMgMTYuOTI2OCAzLjkyNjg0QzE2Ljk3MzcgMy44Nzk5NiAxNyAzLjgxNjM3IDE3IDMuNzUwMDZWMy4yNTAwNkMxNyAzLjE4Mzc2IDE2Ljk3MzcgMy4xMjAxNyAxNi45MjY4IDMuMDczMjlDMTYuODc5OSAzLjAyNjQgMTYuODE2MyAzLjAwMDA2IDE2Ljc1IDMuMDAwMDZaTTUuNSA1LjAwMDA2QzUuMjAzMzMgNS4wMDAwNiA0LjkxMzMyIDQuOTEyMDkgNC42NjY2NCA0Ljc0NzI3QzQuNDE5OTcgNC41ODI0NSA0LjIyNzcxIDQuMzQ4MTggNC4xMTQxOCA0LjA3NDA5QzQuMDAwNjUgMy44IDMuOTcwOTQgMy40OTg0IDQuMDI4ODIgMy4yMDc0M0M0LjA4NjcgMi45MTY0NiA0LjIyOTU2IDIuNjQ5MTggNC40MzkzNCAyLjQzOTRDNC42NDkxMiAyLjIyOTYzIDQuOTE2MzkgMi4wODY3NiA1LjIwNzM2IDIuMDI4ODlDNS40OTgzNCAxLjk3MTAxIDUuNzk5OTQgMi4wMDA3MSA2LjA3NDAzIDIuMTE0MjVDNi4zNDgxMSAyLjIyNzc4IDYuNTgyMzggMi40MjAwNCA2Ljc0NzIgMi42NjY3MUM2LjkxMjAzIDIuOTEzMzggNyAzLjIwMzM5IDcgMy41MDAwNkM3IDMuODk3ODkgNi44NDE5NiA0LjI3OTQyIDYuNTYwNjYgNC41NjA3M0M2LjI3OTM2IDQuODQyMDMgNS44OTc4MiA1LjAwMDA2IDUuNSA1LjAwMDA2WiIgZmlsbD0iIzUwNTA1MCIvPgo8cGF0aCBkPSJNMTYuNzUgMTMuMDAwMUg5Ljk1QzkuODM1MjQgMTIuNDM0OSA5LjUyODY0IDExLjkyNjggOS4wODIxMyAxMS41NjE5QzguNjM1NjIgMTEuMTk2OSA4LjA3NjY4IDEwLjk5NzYgNy41IDEwLjk5NzZDNi45MjMzMiAxMC45OTc2IDYuMzY0MzggMTEuMTk2OSA1LjkxNzg3IDExLjU2MTlDNS40NzEzNiAxMS45MjY4IDUuMTY0NzYgMTIuNDM0OSA1LjA1IDEzLjAwMDFIMS4yNUMxLjE4MzcgMTMuMDAwMSAxLjEyMDExIDEzLjAyNjQgMS4wNzMyMiAxMy4wNzMzQzEuMDI2MzQgMTMuMTIwMiAxIDEzLjE4MzggMSAxMy4yNTAxVjEzLjc1MDFDMSAxMy44MTY0IDEuMDI2MzQgMTMuODggMS4wNzMyMiAxMy45MjY4QzEuMTIwMTEgMTMuOTczNyAxLjE4MzcgMTQuMDAwMSAxLjI1IDE0LjAwMDFINS4wNUM1LjE2NDc2IDE0LjU2NTIgNS40NzEzNiAxNS4wNzMzIDUuOTE3ODcgMTUuNDM4M0M2LjM2NDM4IDE1LjgwMzIgNi45MjMzMiAxNi4wMDI2IDcuNSAxNi4wMDI2QzguMDc2NjggMTYuMDAyNiA4LjYzNTYyIDE1LjgwMzIgOS4wODIxMyAxNS40MzgzQzkuNTI4NjQgMTUuMDczMyA5LjgzNTI0IDE0LjU2NTIgOS45NSAxNC4wMDAxSDE2Ljc1QzE2LjgxNjMgMTQuMDAwMSAxNi44Nzk5IDEzLjk3MzcgMTYuOTI2OCAxMy45MjY4QzE2Ljk3MzcgMTMuODggMTcgMTMuODE2NCAxNyAxMy43NTAxVjEzLjI1MDFDMTcgMTMuMTgzOCAxNi45NzM3IDEzLjEyMDIgMTYuOTI2OCAxMy4wNzMzQzE2Ljg3OTkgMTMuMDI2NCAxNi44MTYzIDEzLjAwMDEgMTYuNzUgMTMuMDAwMVpNNy41IDE1LjAwMDFDNy4yMDMzMyAxNS4wMDAxIDYuOTEzMzIgMTQuOTEyMSA2LjY2NjY0IDE0Ljc0NzNDNi40MTk5NyAxNC41ODI0IDYuMjI3NzEgMTQuMzQ4MiA2LjExNDE4IDE0LjA3NDFDNi4wMDA2NSAxMy44IDUuOTcwOTQgMTMuNDk4NCA2LjAyODgyIDEzLjIwNzRDNi4wODY3IDEyLjkxNjUgNi4yMjk1NiAxMi42NDkyIDYuNDM5MzQgMTIuNDM5NEM2LjY0OTEyIDEyLjIyOTYgNi45MTYzOSAxMi4wODY4IDcuMjA3MzYgMTIuMDI4OUM3LjQ5ODM0IDExLjk3MSA3Ljc5OTk0IDEyLjAwMDcgOC4wNzQwMyAxMi4xMTQyQzguMzQ4MTEgMTIuMjI3OCA4LjU4MjM4IDEyLjQyIDguNzQ3MiAxMi42NjY3QzguOTEyMDMgMTIuOTEzNCA5IDEzLjIwMzQgOSAxMy41MDAxQzkgMTMuODk3OSA4Ljg0MTk2IDE0LjI3OTQgOC41NjA2NiAxNC41NjA3QzguMjc5MzYgMTQuODQyIDcuODk3ODIgMTUuMDAwMSA3LjUgMTUuMDAwMVoiIGZpbGw9IiM1MDUwNTAiLz4KPHBhdGggZD0iTTEgOC4yNTAwNlY4Ljc1MDA2QzEgOC44MTYzNyAxLjAyNjM0IDguODc5OTYgMS4wNzMyMiA4LjkyNjg0QzEuMTIwMTEgOC45NzM3MyAxLjE4MzcgOS4wMDAwNiAxLjI1IDkuMDAwMDZIMTAuMDVDMTAuMTY0OCA5LjU2NTIxIDEwLjQ3MTQgMTAuMDczMyAxMC45MTc5IDEwLjQzODNDMTEuMzY0NCAxMC44MDMyIDExLjkyMzMgMTEuMDAyNiAxMi41IDExLjAwMjZDMTMuMDc2NyAxMS4wMDI2IDEzLjYzNTYgMTAuODAzMiAxNC4wODIxIDEwLjQzODNDMTQuNTI4NiAxMC4wNzMzIDE0LjgzNTIgOS41NjUyMSAxNC45NSA5LjAwMDA2SDE2Ljc1QzE2LjgxNjMgOS4wMDAwNiAxNi44Nzk5IDguOTczNzMgMTYuOTI2OCA4LjkyNjg0QzE2Ljk3MzcgOC44Nzk5NiAxNyA4LjgxNjM3IDE3IDguNzUwMDZWOC4yNTAwNkMxNyA4LjE4Mzc2IDE2Ljk3MzcgOC4xMjAxNyAxNi45MjY4IDguMDczMjlDMTYuODc5OSA4LjAyNjQgMTYuODE2MyA4LjAwMDA2IDE2Ljc1IDguMDAwMDZIMTQuOTVDMTQuODM1MiA3LjQzNDkyIDE0LjUyODYgNi45MjY4MyAxNC4wODIxIDYuNTYxODhDMTMuNjM1NiA2LjE5NjkyIDEzLjA3NjcgNS45OTc1NiAxMi41IDUuOTk3NTZDMTEuOTIzMyA1Ljk5NzU2IDExLjM2NDQgNi4xOTY5MiAxMC45MTc5IDYuNTYxODhDMTAuNDcxNCA2LjkyNjgzIDEwLjE2NDggNy40MzQ5MiAxMC4wNSA4LjAwMDA2SDEuMjVDMS4xODM3IDguMDAwMDYgMS4xMjAxMSA4LjAyNjQgMS4wNzMyMiA4LjA3MzI5QzEuMDI2MzQgOC4xMjAxNyAxIDguMTgzNzYgMSA4LjI1MDA2Wk0xMSA4LjUwMDA2QzExIDguMjAzMzkgMTEuMDg4IDcuOTEzMzggMTEuMjUyOCA3LjY2NjcxQzExLjQxNzYgNy40MjAwNCAxMS42NTE5IDcuMjI3NzggMTEuOTI2IDcuMTE0MjVDMTIuMjAwMSA3LjAwMDcxIDEyLjUwMTcgNi45NzEwMSAxMi43OTI2IDcuMDI4ODlDMTMuMDgzNiA3LjA4Njc2IDEzLjM1MDkgNy4yMjk2MyAxMy41NjA3IDcuNDM5NEMxMy43NzA0IDcuNjQ5MTggMTMuOTEzMyA3LjkxNjQ2IDEzLjk3MTIgOC4yMDc0M0MxNC4wMjkxIDguNDk4NCAxMy45OTk0IDguOCAxMy44ODU4IDkuMDc0MDlDMTMuNzcyMyA5LjM0ODE4IDEzLjU4IDkuNTgyNDUgMTMuMzMzNCA5Ljc0NzI3QzEzLjA4NjcgOS45MTIwOSAxMi43OTY3IDEwLjAwMDEgMTIuNSAxMC4wMDAxQzEyLjEwMjIgMTAuMDAwMSAxMS43MjA2IDkuODQyMDMgMTEuNDM5MyA5LjU2MDczQzExLjE1OCA5LjI3OTQyIDExIDguODk3ODkgMTEgOC41MDAwNloiIGZpbGw9IiM1MDUwNTAiLz4KPC9zdmc+Cg==") no-repeat 0 0}.consonant-FiltersInfo-btnText{display:block;max-width:100%;white-space:nowrap;text-overflow:ellipsis;padding-right:7px;overflow:hidden}.consonant-FiltersInfo-wrapper{position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;width:100%;padding-top:14px}.consonant-FiltersInfo-wrapper:first-child{padding-top:0}.consonant-FiltersInfo-title{max-width:540px;margin:0;font-size:1.125rem;line-height:1.375rem;font-weight:700;color:#2c2c2c;text-align:left}.consonant-FiltersInfo-results,.consonant-FiltersInfo-title{font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-style:normal;word-break:break-word}.consonant-FiltersInfo-results{display:block;margin-left:auto;padding-left:12px;font-size:.875rem;line-height:1.3125rem;font-weight:400;color:#505050;text-align:right}.consonant-FiltersInfo-results strong{font-weight:700}.consonant-FiltersInfo--withLightText .consonant-FiltersInfo-results,.consonant-FiltersInfo--withLightText .consonant-FiltersInfo-title{color:#eaeaea}.consonant-FiltersInfo>.consonant-Select{margin-left:auto}@media only screen and (min-width:1200px){.consonant-FiltersInfo{flex-wrap:nowrap;align-items:stretch;margin-left:auto;margin-right:auto;padding-bottom:28px}.consonant-FiltersInfo-wrapper{order:-1;padding:0 32px 0 0;flex-wrap:nowrap;align-items:center}.consonant-FiltersInfo-wrapper:after{content:"";position:absolute;width:1px;background-color:#e1e1e1;top:0;bottom:0;right:16px;margin:auto}.consonant-FiltersInfo-wrapper--noLine:after,.consonant-FiltersInfo-wrapper:only-child:after{display:none}.consonant-FiltersInfo-search+.consonant-FiltersInfo-wrapper:last-child{padding-right:0}.consonant-FiltersInfo-search+.consonant-FiltersInfo-wrapper:last-child:after{display:none}.consonant-FiltersInfo-results{min-width:15%;max-width:25%}.consonant-FiltersInfo-btn,.consonant-FiltersInfo-search{display:none}}@media only screen and (min-width:1440px){.consonant-FiltersInfo-title{max-width:720px}}div:not(:only-child)>.consonant-FiltersInfo .consonant-FiltersInfo-wrapper:only-child{padding-top:6px}.consonant-Search{position:relative;padding-bottom:12px}.consonant-Search label{display:flex;flex-wrap:wrap;max-width:100%;cursor:pointer;word-break:break-word}.consonant-Search-inputTitle{display:none;margin:0 0 5px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.75rem;line-height:.875rem;font-weight:400;color:#747474;font-style:normal;word-break:break-word;text-align:left;cursor:pointer}.consonant-Search-inputWrapper{position:relative;display:block;width:100%}.consonant-Search-inputWrapper:after{content:"";width:15px;height:15px;position:absolute;top:0;bottom:0;left:10px;margin:auto;background:transparent url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTUiIGhlaWdodD0iMTUiIHZpZXdCb3g9IjAgMCAxNSAxNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEzLjkyIDEyLjY3NUwxMC41ODYgOS4zNDIwMUMxMS4zOTAyIDguMjE5NTEgMTEuNzQyNyA2LjgzNTYgMTEuNTczNSA1LjQ2NTE3QzExLjQwNDMgNC4wOTQ3NSAxMC43MjU5IDIuODM4MDkgOS42NzI5MyAxLjk0NDgzQzguNjE5OTUgMS4wNTE1NiA3LjI2OTUxIDAuNTg3MDQ2IDUuODg5ODQgMC42NDM1NThDNC41MTAxNyAwLjcwMDA3MSAzLjIwMjI0IDEuMjczNDcgMi4yMjU4NSAyLjI0OTg2QzEuMjQ5NDYgMy4yMjYyNSAwLjY3NjA1MyA0LjUzNDE5IDAuNjE5NTQxIDUuOTEzODZDMC41NjMwMjkgNy4yOTM1MiAxLjAyNzU0IDguNjQzOTcgMS45MjA4MSA5LjY5Njk0QzIuODE0MDcgMTAuNzQ5OSA0LjA3MDczIDExLjQyODQgNS40NDExNiAxMS41OTc1QzYuODExNTggMTEuNzY2NyA4LjE5NTQ5IDExLjQxNDIgOS4zMTggMTAuNjFMMTIuNjUxIDEzLjk0M0MxMi44MjMyIDE0LjA5MDUgMTMuMDQ0NiAxNC4xNjc1IDEzLjI3MTEgMTQuMTU4OEMxMy40OTc3IDE0LjE1IDEzLjcxMjUgMTQuMDU2MSAxMy44NzI4IDEzLjg5NThDMTQuMDMzMSAxMy43MzU1IDE0LjEyNyAxMy41MjA3IDE0LjEzNTcgMTMuMjk0MkMxNC4xNDQ1IDEzLjA2NzcgMTQuMDY3NCAxMi44NDYyIDEzLjkyIDEyLjY3NFYxMi42NzVaTTIuMjY2IDYuMTUwMDFDMi4yNjYgNS4zODY1OCAyLjQ5MjM4IDQuNjQwMjggMi45MTY1MiA0LjAwNTUxQzMuMzQwNjYgMy4zNzA3NCAzLjk0MzUxIDIuODc1OTkgNC42NDg4NCAyLjU4Mzg0QzUuMzU0MTYgMi4yOTE2OCA2LjEzMDI4IDIuMjE1MjQgNi44NzkwNCAyLjM2NDE4QzcuNjI3ODEgMi41MTMxMiA4LjMxNTYgMi44ODA3NSA4Ljg1NTQzIDMuNDIwNThDOS4zOTUyNiAzLjk2MDQxIDkuNzYyODkgNC42NDgyIDkuOTExODMgNS4zOTY5NkMxMC4wNjA4IDYuMTQ1NzMgOS45ODQzMiA2LjkyMTg1IDkuNjkyMTcgNy42MjcxN0M5LjQwMDAyIDguMzMyNDkgOC45MDUyNyA4LjkzNTM0IDguMjcwNSA5LjM1OTQ5QzcuNjM1NzIgOS43ODM2MyA2Ljg4OTQzIDEwLjAxIDYuMTI1OTkgMTAuMDFDNS4xMDIyNiAxMC4wMSA0LjEyMDQ1IDkuNjAzMzQgMy4zOTY1NiA4Ljg3OTQ1QzIuNjcyNjcgOC4xNTU1NSAyLjI2NiA3LjE3Mzc1IDIuMjY2IDYuMTUwMDFWNi4xNTAwMVoiIGZpbGw9IiM1MDUwNTAiLz4KPC9zdmc+Cg==") no-repeat 0 0;background-size:cover;z-index:1}.consonant-Search input{box-sizing:border-box;min-height:32px;width:100%;max-width:100%;padding:0 8px 0 32px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.875rem;font-weight:400;color:#505050;font-style:normal;word-break:break-word;text-align:left;border:1px solid #eaeaea;border-radius:5px;background-color:#fff;transition:border-color background-color .3s ease-in-out ease-in-out .3s;outline:0;box-shadow:none}.consonant-Search input::-webkit-search-cancel-button,.consonant-Search input::-webkit-search-decoration,.consonant-Search input::-webkit-search-results-button,.consonant-Search input::-webkit-search-results-decoration{display:none}.consonant-Search input::-ms-clear,.consonant-Search input::-ms-reveal{display:none;width:0;height:0}.consonant-Search input::placeholder{font-style:italic;color:#959595;transition:opacity .3s ease-in-out}.consonant-Search input:focus{padding-right:32px;border-color:#2680eb;background-color:#fff}.consonant-Search input:focus::placeholder{opacity:0}input:valid+.consonant-Search-inputClear{visibility:visible;opacity:1;pointer-events:auto}.consonant-Search-inputClear{visibility:hidden;opacity:0;position:absolute;width:20px;height:20px;top:0;bottom:0;right:6px;margin:auto;font-size:0;line-height:0;border:0;border-radius:50%;background-color:#f4f4f4;outline:0;pointer-events:none;transition:background-color .3s ease-in-out}.consonant-Search-inputClear:after,.consonant-Search-inputClear:before{content:"";position:absolute;width:8px;height:1px;top:0;bottom:0;left:0;right:0;margin:auto;background-color:#747474;transform:rotate(45deg)}.consonant-Search-inputClear:after{transform:rotate(-45deg)}.consonant-Search-inputClear:focus{border:1px solid #1492e6}@media only screen and (min-width:1200px){.consonant-Search{order:-2}.consonant-Search-inputTitle{display:block}.consonant-Search-inputClear{width:24px;height:24px}.consonant-Search-inputClear:after,.consonant-Search-inputClear:before{width:10px}.consonant-Search-inputClear:hover{background-color:#1473e6}.consonant-Search-inputClear:hover:after,.consonant-Search-inputClear:hover:before{background-color:#fff}}.consonant-Select{position:relative;width:140px;margin-bottom:10px}.consonant-Select:after{content:"";position:absolute;width:6px;height:6px;top:0;bottom:0;right:12px;margin:auto;border:1px solid #323232;z-index:1;transform:rotate(-45deg) translate3d(-1px,-2px,0);border-top:0;border-right:0;pointer-events:none}.consonant-Select-btn{box-sizing:border-box;display:block;width:100%;max-width:140px;padding:0 34px 0 12px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.875rem;font-weight:400;color:#505050;font-style:normal;word-break:break-word;text-align:left;text-transform:capitalize;white-space:nowrap;cursor:pointer;border:1px solid #eaeaea;border-radius:5px;background-color:#fff;overflow:hidden;outline:0;text-overflow:ellipsis}.consonant-Select-btn:focus{border-color:#1492e6}.consonant-Select-btn.is-active+.consonant-Select-options{opacity:1}.consonant-Select-options{opacity:0;position:absolute;max-width:70vw;top:calc(100% + 6px);right:0;word-break:break-word;border:1px solid #eaeaea;background-color:#fff;box-shadow:0 3px 15px rgba(80,80,80,.1);transition:opacity .3s ease-in-out;z-index:5;border-radius:5px;overflow:hidden}.consonant-Select-options:empty{display:none}.consonant-Select-options--left{right:auto;left:0}.consonant-Select-option{display:block;width:100%;max-width:100%;padding:9px 30px 9px 20px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1rem;font-weight:400;color:#505050;font-style:normal;word-break:break-word;text-align:left;white-space:nowrap;text-overflow:ellipsis;background-color:#fff;transition:background-color .3s ease-in-out;outline:0;overflow:hidden;border:2px solid transparent}.consonant-Select-option:focus{border-color:#1492e6}.consonant-Select-option:hover{background-color:#f4f4f4}.consonant-Select-option.is-selected{position:relative;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1rem;font-weight:700;color:#2680eb;font-style:normal;word-break:break-word;text-align:left}.consonant-Select-option.is-selected:after{content:"";position:absolute;width:10px;height:5px;top:0;bottom:0;right:16px;margin:auto;border:2px solid #1473e6;border-top:0;border-right:0;transform:rotate(-45deg) translate3d(1px,-2px,0);pointer-events:none}.consonant-Select--autoWidth{width:100%;max-width:100%;margin-bottom:0}.consonant-Select--autoWidth:after{width:4px;height:4px;border-color:#505050}.consonant-Select--autoWidth .consonant-Select-options{min-width:140px}.consonant-Select--autoWidth .consonant-Select-btn{max-width:100%}@media only screen and (min-width:768px){.consonant-Select--autoWidth{margin-right:0}.consonant-Select--autoWidth .consonant-Select-options{width:auto;max-width:100%}}@media only screen and (min-width:1200px){.consonant-Select{width:112px;margin-bottom:0}.consonant-Select:focus{border-color:#1492e6}.consonant-Select:after{right:4px}.consonant-Select-options{min-width:108px}.consonant-Select-option{padding-top:7px;padding-bottom:7px}.consonant-Select-btn{max-width:112px;padding-left:4px;padding-right:10px;border:2px solid transparent}}.consonant-Pagination{justify-content:space-between;align-items:center;margin-left:auto;margin-right:auto;margin-bottom:50px;user-select:none}.consonant-Pagination-paginator{display:flex;justify-content:space-between;align-items:center;flex-grow:1;overflow-x:auto}.consonant-Pagination-btn{padding-left:0;padding-right:0;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.1875rem;font-weight:700;color:#4b4b4b;font-style:normal;word-break:break-word;text-align:left;white-space:nowrap;text-transform:capitalize;background-color:transparent;border:2px solid transparent;outline:0;transition:border-color .3s ease-in-out}.consonant-Pagination-btn:focus{border-color:#1492e6}.consonant-Pagination-items{display:flex;align-items:center;margin:0;padding:0 12px 0 20px;list-style-type:none}.consonant-Pagination-item{margin-right:7px}.consonant-Pagination-item:hover .consonant-Pagination-itemBtn{color:#2c2c2c}.consonant-Pagination-item:active .consonant-Pagination-itemBtn{color:#2c2c2c;background-color:#e1e1e1}.consonant-Pagination-item:active .consonant-Pagination-itemBtn:disabled,.consonant-Pagination-item:hover .consonant-Pagination-itemBtn:disabled,.consonant-Pagination-itemBtn:disabled{color:#b3b3b3;pointer-events:none;background-color:transparent}.consonant-Pagination-item.is-active .consonant-Pagination-itemBtn{background-color:#e1e1e1;color:#4b4b4b}.consonant-Pagination-item.is-active:active .consonant-Pagination-itemBtn,.consonant-Pagination-item.is-active:hover .consonant-Pagination-itemBtn{color:#2c2c2c}.consonant-Pagination-item.is-active .consonant-Pagination-itemBtn:disabled{color:#b3b3b3;background-color:#eaeaea}.consonant-Pagination-item:nth-of-type(n+5){display:none}.consonant-Pagination-itemBtn{position:relative;min-width:32px;min-height:32px;max-width:70px;padding:8px 10px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:.875rem;font-weight:400;color:#4b4b4b;font-style:normal;word-break:break-word;text-align:center;white-space:nowrap;text-overflow:ellipsis;border-radius:16px;outline:0;cursor:pointer;background-color:transparent;overflow:hidden}.consonant-Pagination-itemBtn:after{content:"";position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;border:2px solid transparent;border-radius:30px;z-index:1}.consonant-Pagination-itemBtn:focus:after{border-color:#1492e6}.consonant-Pagination-summary{display:none;max-width:30%;align-items:center;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.3125rem;font-weight:400;color:#505050;font-style:normal;word-break:break-word;text-align:right;margin-left:auto}@media only screen and (min-width:768px){.consonant-Pagination-paginator{justify-content:center}}@media only screen and (min-width:1200px){.consonant-Pagination{display:flex;justify-content:space-between;align-items:center;margin-bottom:100px}.consonant-Pagination-paginator{justify-content:flex-start;margin:0}.consonant-Pagination-btn{max-width:15%;overflow:hidden;text-overflow:ellipsis}.consonant-Pagination-item:nth-of-type(n+5){display:list-item}.consonant-Pagination-item:nth-of-type(n+11){display:none}.consonant-Pagination-summary{display:block}}.consonant-LoadMore{display:block;margin-left:auto;margin-right:auto;padding-bottom:115px;text-align:center;user-select:none}.consonant-LoadMore-inner{display:flex;flex-direction:column;align-items:center}.consonant-LoadMore-text{margin:0 0 14px;font-weight:400;transition:color .3s ease-in-out}.consonant-LoadMore-btn,.consonant-LoadMore-text{max-width:75%;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.1875rem;color:#505050;font-style:normal;word-break:break-word;text-align:center}.consonant-LoadMore-btn{box-sizing:border-box;padding:5px 13px;font-weight:700;text-transform:capitalize;background-color:transparent;border:2px solid #505050;border-radius:30px;outline:0;user-select:none;transition:color .3s ease-in-out,background-color .3s ease-in-out,border-color .3s ease-in-out}.consonant-LoadMore-btn:hover{background-color:#505050;color:#fff}.consonant-LoadMore-btn:active{background-color:#323232;border-color:#323232;color:#fff}.consonant-LoadMore-btn:focus{outline:0}@media only screen and (min-width:1200px){.consonant-LoadMore-btn:focus{outline:2px solid #1492e6}}@media (prefers-color-scheme:dark){.consonant-LoadMore-btn{color:#c8c8c8;border-color:#c8c8c8}.consonant-LoadMore-btn:hover{background-color:#c8c8c8;color:#080808}.consonant-LoadMore-btn:active{background-color:#efefef;border-color:#efefef;color:#080808}.consonant-LoadMore-text{color:#c8c8c8}}.consonant-LoadMore--overBg .consonant-LoadMore-btn{border-color:#fff;color:#fff}.consonant-LoadMore--overBg .consonant-LoadMore-btn:active,.consonant-LoadMore--overBg .consonant-LoadMore-btn:hover{background-color:#fff;border-color:#fff;color:#505050}.consonant-LoadMore--themeThree .consonant-LoadMore-btn{color:#505050;border-color:#505050;background-color:transparent}.consonant-LoadMore--themeThree .consonant-LoadMore-btn:active,.consonant-LoadMore--themeThree .consonant-LoadMore-btn:hover{color:#fff;border-color:#505050;background-color:#505050}.consonant-LoadMore--themeThree .consonant-LoadMore-text{color:#505050}.consonant-LoadMore--overBg .consonant-LoadMore-text{color:#fff}@media only screen and (min-width:768px){.consonant-LoadMore{padding-bottom:121px}}@media only screen and (min-width:1440px){.consonant-LoadMore{padding-bottom:140px}}.consonant-Loader{box-sizing:border-box;display:inline-block;position:relative;width:16px;height:16px;border-radius:50%;overflow:hidden}.consonant-Loader--absolute{position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;z-index:9}.consonant-Loader:after{content:"";position:absolute;box-sizing:border-box;top:0;bottom:0;left:0;right:0;border:2px solid #eaeaea;border-radius:50%;z-index:0}.consonant-Loader div{box-sizing:border-box;display:block;position:absolute;width:16px;height:16px;border:2px solid #2680eb;border-radius:100%;animation:circle 1s ease-in infinite;transform-origin:50% 50%;border-color:#2680eb transparent transparent;z-index:2;opacity:1;overflow:visible}.consonant-Loader div:first-child{animation-delay:-.1s}.consonant-Loader div:nth-child(2),.consonant-Loader div:nth-child(3){animation-delay:-.14s}.consonant-Loader--medium{width:32px;height:32px}.consonant-Loader--medium:after,.consonant-Loader--medium div{width:32px;height:32px;border-width:4px}.consonant-Loader--big{width:64px;height:64px}.consonant-Loader--big:after,.consonant-Loader--big div{width:64px;height:64px;border-width:5px}[data-tooltip-wrapper]{position:relative;overflow:visible}@media only screen and (min-width:1200px){[data-tooltip-wrapper]:hover .consonant-Tooltip{z-index:6000000;animation-name:fade-in-up;animation-duration:.3s;animation-delay:.2s;animation-timing-function:ease-in-out;animation-fill-mode:forwards}}.consonant-Tooltip{position:absolute;display:none;width:160px;padding:7px 14px;bottom:calc(100% + 9px);left:-72px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.75rem;line-height:1rem;font-weight:400;color:#fff;font-style:normal;word-break:break-word;text-align:center;text-decoration:none;border-radius:8px;background-color:#747474;z-index:-1;user-select:text;opacity:0}.consonant-Tooltip:after{content:"";position:absolute;width:6px;height:6px;bottom:-3px;left:0;right:0;margin:auto;background-color:#747474;transform-origin:50% 50%;transform:rotate(45deg)}@media only screen and (min-width:1200px){.consonant-Tooltip{display:block}}.consonant-SearchResult{background-color:rgba(250,124,19,.4)}.consonant-Bookmarks{position:relative;padding:19px 16px;background-color:transparent;order:1;border:0;outline:0;border-top:1px solid #eaeaea}.consonant-Bookmarks+div:last-child{margin-top:0}.consonant-Bookmarks-itemBadge{display:block;position:absolute;min-width:24px;max-width:100px;height:24px;margin:auto;padding:5px 7px;top:0;bottom:0;right:16px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:.875rem;font-weight:700;color:#fff;font-style:normal;word-break:break-word;text-align:center;white-space:nowrap;text-overflow:ellipsis;border-radius:15px;background-color:#1473e6;z-index:1;opacity:1;border:0;outline:0;transition:opacity .3s ease-in-out;transition-delay:.1s;overflow:hidden}.consonant-Bookmarks-icoWrapper{display:flex;justify-content:flex-start;align-items:center;padding:0;background-color:transparent;border:0;outline:0}.consonant-Bookmarks-icoWrapper .consonant-Bookmarks-ico{display:block;min-width:16px;height:16px;margin-right:6px;background:transparent url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNSAxMyc+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOm5vbmU7c3Ryb2tlOiM3MDcwNzB9PC9zdHlsZT48L2RlZnM+PHBhdGggY2xhc3M9J2Nscy0xJyBkPSdNMTAuNjguNUE0IDQgMCAwIDAgNy41IDIuNDEgNCA0IDAgMCAwIDQuMzIuNSAzLjgyIDMuODIgMCAwIDAgLjUgNC4zMmMwIDMuNjUgNyA4LjI3IDcgOC4yN3M3LTQuNTggNy04LjI3QTMuODIgMy44MiAwIDAgMCAxMC42OC41eicvPjwvc3ZnPg==") no-repeat 50% 50%;background-size:contain}.consonant-Bookmarks-title{display:block;padding-right:55px;padding-bottom:1px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1rem;font-weight:700;color:#505050;font-style:normal;word-break:break-word;text-align:left;transition:color .3s ease-in-out}.consonant-Bookmarks.is-selected .consonant-Bookmarks-ico{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNSAxMyc+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiMxNDkyZTY7c3Ryb2tlOiMxNDkyZTZ9PC9zdHlsZT48L2RlZnM+PHBhdGggY2xhc3M9J2Nscy0xJyBkPSdNMTAuNjguNUE0IDQgMCAwIDAgNy41IDIuNDEgNCA0IDAgMCAwIDQuMzIuNSAzLjgyIDMuODIgMCAwIDAgLjUgNC4zMmMwIDMuNjUgNyA4LjI3IDcgOC4yN3M3LTQuNTggNy04LjI3QTMuODIgMy44MiAwIDAgMCAxMC42OC41eicvPjwvc3ZnPg==")}@media only screen and (min-width:1200px){.consonant-Bookmarks{position:relative;display:flex;margin-top:-1px;padding:14px 0;border:2px solid transparent;order:0}.consonant-Bookmarks:focus{border-color:#1492e6}.consonant-Bookmarks:after{content:"";position:absolute;display:block;height:1px;width:100%;left:0;top:0;background-color:#eaeaea;z-index:1}.consonant-Bookmarks-itemBadge{right:30px;font-size:.875rem;line-height:.875rem}.consonant-Bookmarks-itemBadge:active,.consonant-Bookmarks-itemBadge:hover{font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:.875rem;font-weight:700;color:#fff;font-style:normal;word-break:break-word;text-align:center}.consonant-Bookmarks-title:hover{color:#707070}}.consonant-SearchIco{display:flex;justify-content:center;align-items:center;box-sizing:border-box;align-self:stretch;height:32px;padding-left:20px;padding-right:20px;border:0;outline:0;background-color:transparent;transition:background-color .15s ease-in-out;font-size:0;line-height:0}.consonant-SearchIco:active,.consonant-SearchIco:hover{background-color:hsla(0,0%,92%,.3)}.consonant-SearchIco span{display:block;width:15px;height:15px;background:transparent url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxNScgaGVpZ2h0PScxNScgdmlld0JveD0nMCAwIDE1IDE1Jz48ZGVmcz48c3R5bGU+LmF7ZmlsbDojZmYxM2RjO29wYWNpdHk6MH0uYntmaWxsOiM1MDUwNTB9PC9zdHlsZT48L2RlZnM+PHBhdGggY2xhc3M9J2EnIGQ9J00wIDBoMTV2MTVIMHonLz48cGF0aCBjbGFzcz0nYicgZD0nTTEzLjUyNyAxMi40MzVMMTAuMzggOS4yODlhNS4xOTIgNS4xOTIgMCAxIDAtMS4yIDEuMmwzLjE0NiAzLjE0NmEuODUuODUgMCAwIDAgMS4yLTEuMnptLTExLTYuMTU5QTMuNjQzIDMuNjQzIDAgMSAxIDYuMTcgOS45MmEzLjY0MyAzLjY0MyAwIDAgMS0zLjY0My0zLjY0NHonLz48L3N2Zz4=") no-repeat 0 0;background-size:contain}@media only screen and (min-width:1200px){.consonant-SearchIco{padding-left:18px;padding-right:18px;border:2px solid transparent}.consonant-SearchIco:focus{border-color:#1492e6}}.consonant-NoResultsView{max-width:86%;margin-left:auto;margin-right:auto;margin-bottom:20px;padding:24px;overflow:hidden}.consonant-NoResultsView-title{display:block;margin-bottom:20px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:1.125rem;line-height:1.6875rem;font-weight:400;color:#505050;font-style:normal;word-break:break-word;text-align:center}.consonant-NoResultsView-description{text-align:center}.consonant-NoResultsView-description *{font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.3125rem;font-weight:400;color:#505050;font-style:normal;word-break:break-word;text-align:center}.consonant-NoResultsView-description strong{font-weight:700}.consonant-NoResultsView--withLightText .consonant-NoResultsView-description *,.consonant-NoResultsView--withLightText .consonant-NoResultsView-title{color:#fff}.consonant-Wrapper--carousel{display:flex;justify-content:center}.consonant-Wrapper--carousel .consonant-Wrapper-inner{max-width:1200px;width:83.4%}@media only screen and (max-width:1199px){.consonant-Wrapper--carousel .consonant-Wrapper-inner{padding:0;width:100%}}@media only screen and (max-width:599px){.consonant-Wrapper--carousel .consonant-Wrapper-inner{padding:0;max-width:100%;width:100%}}.consonant-Wrapper--carousel .consonant-Wrapper-collection{min-height:100%;min-width:100%}.consonant-Wrapper--carousel .consonant-Wrapper-collection.is-loading{min-height:496px}.consonant-Wrapper--carousel .consonant-Container--carousel{min-width:100%;padding:8px 0;overflow-x:scroll}@media screen and (min-width:1200px){.consonant-Wrapper--carousel .consonant-Container--carousel{overflow:-moz-scrollbars-none;-ms-overflow-style:none}.consonant-Wrapper--carousel .consonant-Container--carousel::-webkit-scrollbar{height:0!important}}@media only screen and (max-width:1199px){.consonant-Wrapper--carousel .consonant-Container--carousel{padding-left:24px;padding-right:0}}@media only screen and (max-width:599px){.consonant-Wrapper--carousel .consonant-Container--carousel{overflow:auto;padding-bottom:24px;padding-left:8px}}.consonant-Wrapper--carousel .consonant-CarouselInfo{display:flex;padding-left:16px;justify-content:space-between}@media screen and (min-width:600px) and (max-width:1199px){.consonant-Wrapper--carousel .consonant-CarouselInfo{padding-left:32px}}.consonant-Wrapper--carousel .consonant-CarouselInfo-collectionTitle{margin:0;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:1.125rem;line-height:1.375rem;font-weight:700;color:#2c2c2c;font-style:normal;word-break:break-word;text-align:left}.consonant-Wrapper--carousel .consonant-CarouselInfo-collectionTitle--withLightText{color:#fff}.consonant-Wrapper--carousel .consonant-CarouselInfo-results{display:block;margin-left:auto;padding-left:12px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.3125rem;font-weight:400;color:#505050;font-style:normal;word-break:break-word;text-align:right}.consonant-Wrapper--carousel .consonant-CarouselInfo-results strong{font-weight:700}.consonant-Wrapper--carousel .consonant-CarouselInfo-results--withLightText{color:#eaeaea}.consonant-Wrapper--carousel .consonant-CardsGrid{grid-auto-flow:column;justify-content:flex-start;padding:8px 0;width:100%}@media only screen and (max-width:599px){.consonant-Wrapper--carousel .consonant-CardsGrid{width:1200px}}.consonant-Wrapper--carousel .consonant-CardsGrid:after{display:block;content:"";height:100%;margin-left:-16px}.consonant-Wrapper--carousel .consonant-CardsGrid--2up{grid-template-columns:repeat(auto-fill,minmax(500px,500px))}.consonant-Wrapper--carousel .consonant-CardsGrid--2up .consonant-Card{min-width:500px}.consonant-Wrapper--carousel .consonant-CardsGrid--2up:after{width:1px}@media only screen and (max-width:599px){.consonant-Wrapper--carousel .consonant-CardsGrid--2up{grid-template-columns:repeat(auto-fit,clamp(300px,90vw,500px))}.consonant-Wrapper--carousel .consonant-CardsGrid--2up .consonant-Card{min-width:300px;width:clamp(300px,90vw,500px)}.consonant-Wrapper--carousel .consonant-CardsGrid--2up:after{padding:0;width:1px}}.consonant-Wrapper--carousel .consonant-CardsGrid--3up{grid-template-columns:repeat(auto-fill,minmax(378px,378.5px))}.consonant-Wrapper--carousel .consonant-CardsGrid--3up .consonant-Card{min-width:378.5px}.consonant-Wrapper--carousel .consonant-CardsGrid--3up:after{width:1px}@media only screen and (max-width:599px){.consonant-Wrapper--carousel .consonant-CardsGrid--3up{grid-template-columns:repeat(auto-fit,clamp(300px,90vw,378px))}.consonant-Wrapper--carousel .consonant-CardsGrid--3up .consonant-Card{min-width:300px;width:clamp(300px,90vw,378px)}.consonant-Wrapper--carousel .consonant-CardsGrid--3up:after{padding:0;width:1px}}.consonant-Wrapper--carousel .consonant-CardsGrid--4up{grid-template-columns:repeat(auto-fill,minmax(276px,276px))}.consonant-Wrapper--carousel .consonant-CardsGrid--4up .consonant-Card{min-width:276px}.consonant-Wrapper--carousel .consonant-CardsGrid--4up:after{width:1px}@media only screen and (max-width:599px){.consonant-Wrapper--carousel .consonant-CardsGrid--4up{grid-template-columns:repeat(auto-fit,minmax(276px,max-content))}.consonant-Wrapper--carousel .consonant-CardsGrid--4up:after{padding:0;width:1px}}.consonant-Wrapper--carousel .consonant-CardsGrid--5up{grid-template-columns:repeat(auto-fill,minmax(228px,228px))}.consonant-Wrapper--carousel .consonant-CardsGrid--5up .consonant-Card{min-width:228px}.consonant-Wrapper--carousel .consonant-CardsGrid--5up:after{width:1px}@media only screen and (max-width:599px){.consonant-Wrapper--carousel .consonant-CardsGrid--5up{grid-template-columns:repeat(auto-fit,minmax(225px,max-content))}.consonant-Wrapper--carousel .consonant-CardsGrid--5up .consonant-Card{min-width:225px}.consonant-Wrapper--carousel .consonant-CardsGrid--5up:after{padding:0;width:1px}}@media screen and (max-width:599px){.consonant-Wrapper--carousel .consonant-CardsGrid--with4xGutter{padding-left:8px}}.consonant-Wrapper--carousel .consonant-Navigation--carousel{display:none}@media screen and (min-width:600px){.consonant-Wrapper--carousel .consonant-Navigation--carousel{display:block}}.consonant-Wrapper--carousel .consonant-Navigation--carousel button{background:#efefef;border-radius:100%;display:block;height:34px;outline:none;position:absolute;right:0;top:50%;transform:translate(50%,-50%);animation:carousel-fade-button 1s;transition:all .3s ease;width:34px;z-index:5}@media only screen and (max-width:1199px){.consonant-Wrapper--carousel .consonant-Navigation--carousel button{margin-right:36px}}.consonant-Wrapper--carousel .consonant-Navigation--carousel button.consonant-Button--previous{left:0;right:auto;transform:translate(-50%,-50%) rotate(180deg)}.consonant-Wrapper--carousel .consonant-Navigation--carousel button:after,.consonant-Wrapper--carousel .consonant-Navigation--carousel button:before{background-color:#505050;border-bottom-left-radius:25% 60%;border-bottom-right-radius:25% 60%;border-top-left-radius:25% 60%;border-top-right-radius:25%;content:"";display:block;height:3px;left:17px;position:absolute;top:14px;transform-origin:left center;transform:rotate(45deg) translate(-50%,-50%);width:11px;z-index:1}.consonant-Wrapper--carousel .consonant-Navigation--carousel button:after{border-bottom-left-radius:25% 60%;border-bottom-right-radius:25%;border-top-left-radius:25% 60%;border-top-right-radius:25% 60%;top:18px;transform:rotate(-45deg) translate(-50%,50%)}.consonant-Wrapper--carousel .consonant-Navigation--carousel button:hover:after,.consonant-Wrapper--carousel .consonant-Navigation--carousel button:hover:before{background-color:#000}.modalContainer .modal.stuck-above-footer{bottom:0;position:absolute;width:100%}.modalContainer .modal.stuck-above-footer .dexter-Modal_overlay{position:absolute}.dexter-Modal_overlay{display:flex;opacity:0;position:fixed;transition:opacity 125ms ease-in-out,background-color 125ms ease-in-out,backdrop-filter 125ms ease-in-out,-webkit-backdrop-filter 125ms ease-in-out,transform 125ms ease-in-out;visibility:hidden}.dexter-Modal_overlay.is-Open{align-items:center;background:none;bottom:0;justify-content:center;left:0;opacity:1;right:0;top:0;visibility:visible}.dexter-Modal_overlay.closePlacement-outsideTopRight{padding:5.125rem 2.625rem 2.625rem}.dexter-Modal_overlay.closePlacement-outsideTopRight .dexter-CloseButton{right:-2.0625rem;top:-2.0625rem}.dexter-Modal_overlay[data-conf-display*=onPageLoad],.dexter-Modal_overlay[data-conf-preset*=NoClose]{pointer-events:none;z-index:110}.dexter-Modal_overlay[data-conf-display*=onHashChange]:not([data-conf-preset*=NoClose]){background-color:rgba(0,0,0,.9);pointer-events:all;z-index:200}.dexter-Modal_overlay[data-conf-preset*=NoClose] .dexter-Modal{display:block;opacity:1;visibility:visible}.dexter-Modal_overlay[data-conf-preset*=NoClose] .dexter-CloseButton{display:none}.dexter-Modal_overlay.mobile-place-top{align-items:flex-start}.dexter-Modal_overlay.mobile-place-middle{align-items:center}.dexter-Modal_overlay.mobile-place-bottom,.dexter-Modal_overlay[data-conf-preset*=stickyBottom]{align-items:flex-end}@media only screen and (min-width:37.5rem){.dexter-Modal_overlay.tablet-place-top{align-items:flex-start}.dexter-Modal_overlay.tablet-place-middle{align-items:center}.dexter-Modal_overlay.tablet-place-bottom,.dexter-Modal_overlay[data-conf-preset*=stickyBottom]{align-items:flex-end}.dexter-Modal_overlay.tablet-place-left{justify-content:flex-start}.dexter-Modal_overlay.tablet-place-center{justify-content:center}.dexter-Modal_overlay.tablet-place-right{justify-content:flex-end}}@media only screen and (min-width:75rem){.dexter-Modal_overlay.closePlacement-outsideTopRight{padding-top:7.625rem}.dexter-Modal_overlay.desktop-place-top{align-items:flex-start}.dexter-Modal_overlay.desktop-place-middle{align-items:center}.dexter-Modal_overlay.desktop-place-bottom,.dexter-Modal_overlay[data-conf-preset*=stickyBottom]{align-items:flex-end}.dexter-Modal_overlay.desktop-place-left{justify-content:flex-start}.dexter-Modal_overlay.desktop-place-center{justify-content:center}.dexter-Modal_overlay.desktop-place-right{justify-content:flex-end}}.dexter-Modal{display:none;opacity:0;pointer-events:all;visibility:hidden;width:100%}.dexter-Modal:focus{outline:none}.dexter-Modal.is-Open{background:#fff;display:block;opacity:1;position:relative;visibility:visible}.dexter-Modal.mobile-height-100{height:100%}.dexter-Modal.mobile-height-auto,[data-conf-preset*=stickyBottom] .dexter-Modal{height:auto}.dexter-Modal.mobile-height-auto>.aem-Grid,[data-conf-preset*=stickyBottom] .dexter-Modal>.aem-Grid{max-height:calc(100vh - 150px);overflow-x:hidden;overflow-y:auto}.dexter-Modal.drop-shadow{box-shadow:0 .5em 1em -.125em hsla(0,0%,4%,.1),0 0 0 1px hsla(0,0%,4%,.02)}.dexter-Modal .dexter-CloseButton{border:3px solid transparent;border-radius:50%;height:24px;position:absolute;right:5px;top:5px;width:24px;z-index:1}.dexter-Modal .dexter-CloseButton.focus-ring{outline:3px solid #1473e6}.dexter-Modal .dexter-CloseButton .dexter-CloseButton_icon:after{content:"";height:44px;left:-13px;position:absolute;top:-13px;width:44px}.dexter-Modal .dexter-CloseButton .dexter-CloseButton_icon.spectrum-close-circle-light:after{background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NCIgaGVpZ2h0PSI0NCI+PHBhdGggZD0iTTI5IDE1YTEwIDEwIDAgMSAwIDAgMTQuMTJBMTAgMTAgMCAwIDAgMjkgMTVabS0zLjExIDExLjc0YS41LjUgMCAwIDEtLjcxIDBMMjIgMjMuNTZsLTMuMTggMy4xOGEuNS41IDAgMCAxLS43MSAwbC0uODUtLjg1YS41LjUgMCAwIDEgMC0uNzFMMjAuNDQgMjJsLTMuMTgtMy4xOGEuNS41IDAgMCAxIDAtLjcxbC44NS0uODVhLjUuNSAwIDAgMSAuNzEgMEwyMiAyMC40NGwzLjE4LTMuMThhLjUuNSAwIDAgMSAuNzEgMGwuODUuODVhLjUuNSAwIDAgMSAwIC43MUwyMy41NSAyMmwzLjE4IDMuMThhLjUuNSAwIDAgMSAwIC43MVoiIGZpbGw9IiNmZmYiLz48L3N2Zz4=")}.dexter-Modal .dexter-CloseButton .dexter-CloseButton_icon.spectrum-close-circle-dark:after{background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NCIgaGVpZ2h0PSI0NCI+PHBhdGggZD0iTTI5IDE1YTEwIDEwIDAgMSAwIDAgMTQuMTJBMTAgMTAgMCAwIDAgMjkgMTVabS0zLjExIDExLjc0YS41LjUgMCAwIDEtLjcxIDBMMjIgMjMuNTZsLTMuMTggMy4xOGEuNS41IDAgMCAxLS43MSAwbC0uODUtLjg1YS41LjUgMCAwIDEgMC0uNzFMMjAuNDQgMjJsLTMuMTgtMy4xOGEuNS41IDAgMCAxIDAtLjcxbC44NS0uODVhLjUuNSAwIDAgMSAuNzEgMEwyMiAyMC40NGwzLjE4LTMuMThhLjUuNSAwIDAgMSAuNzEgMGwuODUuODVhLjUuNSAwIDAgMSAwIC43MUwyMy41NSAyMmwzLjE4IDMuMThhLjUuNSAwIDAgMSAwIC43MVoiIGZpbGw9IiM3MDcwNzAiLz48L3N2Zz4=")}.dexter-Modal .aem-Grid{height:100%;overflow:auto}.dexter-Modal .aem-Grid.focus-ring,.dexter-Modal .aem-Grid:focus{outline:none}@media only screen and (min-width:37.5rem){.dexter-Modal.tablet-width-100{width:100%}.dexter-Modal.tablet-width-240{width:15rem}.dexter-Modal.tablet-width-360{width:22.5rem}.dexter-Modal.tablet-width-480{width:30rem}.dexter-Modal.tablet-width-640{width:40rem}.dexter-Modal.tablet-height-100{height:100%;top:0}.dexter-Modal.tablet-height-240{height:15rem}.dexter-Modal.tablet-height-360{height:22.5rem}.dexter-Modal.tablet-height-480{height:30rem}.dexter-Modal.tablet-height-640{height:40rem}.dexter-Modal.tablet-height-auto,[data-conf-preset*=stickyBottom] .dexter-Modal{height:auto}.dexter-Modal.tablet-height-auto>.aem-Grid,[data-conf-preset*=stickyBottom] .dexter-Modal>.aem-Grid{max-height:calc(100vh - 60px);overflow-x:hidden;overflow-y:auto}}@media only screen and (max-device-width:56.1875rem) and (orientation:landscape){.dexter-Modal.tablet-height-auto#languageNavigation{height:100%}}@media only screen and (min-width:75rem){.dexter-Modal.desktop-width-100{width:100%}.dexter-Modal.desktop-width-240{width:15rem}.dexter-Modal.desktop-width-360{width:22.5rem}.dexter-Modal.desktop-width-480{width:30rem}.dexter-Modal.desktop-width-640{width:40rem}.dexter-Modal.desktop-width-1024{width:64rem}.dexter-Modal.desktop-height-100{height:100%;top:0}.dexter-Modal.desktop-height-240{height:15rem}.dexter-Modal.desktop-height-360{height:22.5rem}.dexter-Modal.desktop-height-480{height:30rem}.dexter-Modal.desktop-height-640{height:40rem}.dexter-Modal.desktop-height-1024{height:64rem}.dexter-Modal.desktop-height-auto,.dexter-Modal.mobile-height-auto,.dexter-Modal.tablet-height-auto,[data-conf-preset*=stickyBottom] .dexter-Modal{height:auto}.dexter-Modal.desktop-height-auto>.aem-Grid,.dexter-Modal.mobile-height-auto>.aem-Grid,.dexter-Modal.tablet-height-auto>.aem-Grid,[data-conf-preset*=stickyBottom] .dexter-Modal>.aem-Grid{max-height:100vh;overflow-x:hidden;overflow-y:auto}}.consonant-TopFilters{display:block;margin:0 auto;padding-bottom:16px}.consonant-TopFilters-inner{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;max-width:100%}.consonant-TopFilters-filters:last-child>div:last-child{margin-right:0}.consonant-TopFilters-inner>:not(.consonant-TopFilters-filtersWrapper):first-child{margin-left:auto;margin-right:0}.consonant-TopFilters-searchWrapper{display:block;order:-2}.consonant-TopFilters-filtersWrapper{display:flex;justify-content:flex-end;align-items:flex-start;flex-grow:1;max-width:calc(100% - 140px * .85 - 8px)}.consonant-TopFilters-filtersWrapper:first-child{max-width:100%;justify-content:flex-start}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.consonant-TopFilters-filtersWrapper{flex-basis:100%}}.consonant-TopFilters-filtersWrapper+*{margin-left:auto}.consonant-TopFilters-filters{display:flex;justify-content:flex-start;align-items:stretch;margin-right:16px;overflow-y:auto}.consonant-TopFilters-filters:last-child{margin-right:0}.consonant-TopFilters-filters>div h3 button{white-space:nowrap}.consonant-TopFilters-filters.consonant-TopFilters-filters--truncated>div h3 button{white-space:nowrap}.consonant-TopFilters-moreBtn{margin-bottom:8px;padding:5px 12px 6px;font-size:.875rem;line-height:1.1875rem;font-weight:700;color:#505050;text-align:center;text-transform:capitalize;background-color:#fff;border:1px solid #eaeaea;border-radius:16px;outline:0}.consonant-TopFilters-moreBtn,.consonant-TopFilters-title{display:none;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-style:normal;word-break:break-word;user-select:none;white-space:nowrap}.consonant-TopFilters-title{margin-right:12px;min-width:55px;max-width:20%;text-overflow:ellipsis;overflow:hidden;font-size:1rem;line-height:2rem;font-weight:600;color:#2c2c2c;text-align:left}.consonant-TopFilters-clearBtnWrapper{position:sticky;display:flex;justify-content:center;align-items:center;right:0;min-height:32px;max-width:40%}.consonant-TopFilters-clearBtnWrapper:empty{margin-left:-16px;overflow:visible}.consonant-TopFilters-clearBtnWrapper--withBlur:after{content:"";position:absolute;width:56px;height:100%;background:transparent linear-gradient(270deg,#fff,hsla(0,0%,100%,0)) 0 0 no-repeat padding-box;top:0;bottom:0;right:100%;margin:auto;z-index:2;pointer-events:none}.consonant-TopFilters-clearBtn{padding:0;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:2rem;font-weight:700;color:#1473e6;font-style:normal;word-break:break-word;text-align:right;background-color:transparent}.consonant-TopFilters-clearBtn:focus{outline:0}@media only screen and (min-width:1200px){.consonant-TopFilters-clearBtn:focus{outline:2px solid #1492e6}}.consonant-TopFilters-selectWrapper{display:flex;justify-content:flex-end;width:119px;margin-right:8px;order:-1;overflow:visible}.consonant-TopFilters-selectWrapper:only-child{margin-left:auto;margin-right:0}.consonant-TopFilters-searchIcoWrapper{display:none}.consonant-TopFilters-infoWrapper{position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;width:100%;padding-top:16px}.consonant-TopFilters-infoWrapper:only-child{padding-top:0}.consonant-TopFilters-collectionTitle{margin:0;font-size:1.125rem;line-height:1.375rem;font-weight:700;color:#2c2c2c;text-align:left}.consonant-TopFilters-collectionTitle,.consonant-TopFilters-results{font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-style:normal;word-break:break-word}.consonant-TopFilters-results{display:block;margin-left:auto;padding-left:12px;font-size:.875rem;line-height:1.3125rem;font-weight:400;color:#505050;text-align:right}.consonant-TopFilters-results strong{font-weight:700}.consonant-TopFilters--withLightText .consonant-TopFilters-collectionTitle,.consonant-TopFilters--withLightText .consonant-TopFilters-results,.consonant-TopFilters--withLightText .consonant-TopFilters-title{color:#fff}.consonant-TopFilters:empty{display:none}@media only screen and (min-width:768px){.consonant-TopFilters{padding-bottom:32px}.consonant-TopFilters-filtersWrapper{max-width:60%;justify-content:flex-start;margin-right:16px}.consonant-TopFilters-title{display:block}.consonant-TopFilters-filters{align-items:flex-start;flex-wrap:wrap;overflow:hidden}.consonant-TopFilters-filters--truncated{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto}.consonant-TopFilters-filters--truncated .consonant-TopFilters-filters-moreBtn{display:block;min-width:120px;margin-right:24px}.consonant-TopFilters-filters--truncated>div:nth-child(n+4){display:none}.consonant-TopFilters-filters>div h3 button{white-space:normal}.consonant-TopFilters-clearBtnWrapper:after{display:none}.consonant-TopFilters-moreBtn{display:block;min-width:auto}.consonant-TopFilters-selectWrapper{max-width:140px;order:0;margin-right:0}.consonant-TopFilters-searchIcoWrapper{position:relative;display:flex;justify-content:center;align-items:center;min-width:55px;min-height:24px}.consonant-TopFilters-searchIcoWrapper>div{position:relative;width:268px;top:0;right:20px;z-index:3;margin-bottom:-20px}.consonant-TopFilters-searchIcoWrapper:only-child>div{right:0}.consonant-TopFilters-searchIcoWrapper>div+button{display:none;margin:0;padding:0}}@media only screen and (min-width:1200px){.consonant-TopFilters-searchIcoWrapper label>span:first-child{display:none}.consonant-TopFilters-selectWrapper{min-width:auto;max-width:160px;margin-right:0;margin-left:0}.consonant-TopFilters-selectWrapper>div:first-child>button{padding-left:12px;padding-right:12px;border:1px solid #eaeaea;border-radius:4px}.consonant-TopFilters-selectWrapper>div:first-child:after{right:12px}.consonant-TopFilters-filters{overflow:visible}.consonant-TopFilters-filters.consonant-TopFilters-filters--truncated{justify-content:flex-start;flex-wrap:wrap;overflow:visible}.consonant-TopFilters-filters.consonant-TopFilters-filters--truncated>div:last-child{margin-right:0}.consonant-TopFilters .is-opened{margin-bottom:8px}}.consonant-TopFilter{position:relative;margin-right:8px;margin-bottom:8px;cursor:pointer;user-select:none;border:0;outline:0}.consonant-TopFilter:after{content:"";position:absolute;top:0;bottom:0;right:8px;margin:auto;width:4px;height:4px;border:1px solid #747474;transform:rotate(-45deg) translate3d(1px,-2px,0);border-top:0;border-right:0;pointer-events:none}.consonant-TopFilter-inner{display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;width:100%;max-width:100%;max-height:90vh;background-color:transparent;border-radius:5px}.consonant-TopFilter-selectedItems,.consonant-TopFilter-selectedItems ul~.consonant-TopFilter-footer{display:none}.consonant-TopFilter-name{display:flex;align-items:center;margin:0}.consonant-TopFilter-link{display:flex;justify-content:space-between;align-items:center;width:100%;max-width:100%;padding:5px 17px 6px 12px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.1875rem;font-weight:400;color:#505050;font-style:normal;word-break:break-word;text-align:left;text-transform:capitalize;text-decoration:none;border:1px solid #eaeaea;border-radius:4px;background-color:#fff;outline:0;cursor:pointer}.consonant-TopFilter-link:focus{outline:0}@media only screen and (min-width:1200px){.consonant-TopFilter-link:focus{outline:2px solid #1492e6}}.consonant-TopFilter-selectedItemsQty{display:block;position:relative;margin:0 0 0 9px;padding:0 6px;overflow:visible;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.1875rem;font-weight:400;color:#323232;font-style:normal;word-break:break-word;text-align:left}.consonant-TopFilter-selectedItemsQty:after{content:"";position:absolute;width:1px;height:calc(100% + 4px + 3px);left:0;top:-4px;background-color:#eaeaea}.consonant-TopFilter-selectedItemsQty:empty{display:none}.consonant-TopFilter-items{display:block;height:50vh;margin:auto 0 0;padding:0;list-style-type:none;border-top:1px solid #eaeaea;overflow-y:auto;cursor:default}.consonant-TopFilter-items--clipped{padding-bottom:32px}.consonant-TopFilter-bg{position:relative;display:none;overflow:visible}.consonant-TopFilter-bg:after{content:"";position:absolute;width:100%;max-width:100%;height:20px;left:0;right:0;bottom:100%;background:transparent linear-gradient(180deg,hsla(0,0%,100%,.3),#fff) no-repeat 0 0;z-index:1;pointer-events:none}.consonant-TopFilter-items.consonant-TopFilter-items--clipped+aside{display:block}.consonant-TopFilter-item{display:flex;align-items:baseline;transition:background-color .3s ease-in-out}.consonant-TopFilter-item:hover{background-color:#f4f4f4}.consonant-TopFilter-itemLabel{position:relative;display:flex;align-items:center;width:100%;max-width:100%;padding:8px 20px 6px;cursor:pointer}.consonant-TopFilter-itemLabel:focus{outline:0}@media only screen and (min-width:1200px){.consonant-TopFilter-itemLabel:focus{outline:2px solid #1492e6}}.consonant-TopFilter input[type=checkbox]{width:0;height:0;max-width:0;max-height:0;margin:0;padding:0;opacity:0;border:0;outline:0}input[type=checkbox]:checked+.consonant-TopFilter-itemCheckmark{background-color:#2680eb;border-color:#2680eb}input[type=checkbox]:checked+.consonant-TopFilter-itemCheckmark:after{display:block}.consonant-TopFilter-itemCheckmark{position:relative;display:block;min-width:14px;width:14px;height:14px;margin-right:10px;border:2px solid #959595;border-radius:3px;transition:border-color .3s ease-in-out,background-color .3s ease-in-out;pointer-events:none}.consonant-TopFilter-itemCheckmark:after{display:none;content:"";position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;width:8px;height:4px;border:2px solid #fff;border-top:0;border-right:0;border-radius:2px;transform:rotate(-45deg) translate3d(1px,0,0)}.consonant-TopFilter-itemName{padding-bottom:1px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.1875rem;font-weight:400;color:#505050;font-style:normal;text-align:left;text-transform:capitalize;word-break:break-word;pointer-events:none}.consonant-TopFilter-footer{margin-top:auto;align-items:center;padding:16px;border-top:1px solid #eaeaea}.consonant-TopFilter-footerResQty{margin-right:auto;color:#505050;text-transform:capitalize}.consonant-TopFilter-footerClearBtn,.consonant-TopFilter-footerResQty{display:block;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1rem;font-weight:700;font-style:normal;word-break:break-word;text-align:left}.consonant-TopFilter-footerClearBtn{margin-right:17px;padding:0;color:#1473e6;background-color:transparent;border:0;outline:0}.consonant-TopFilter-footerClearBtn:focus{outline:0}@media only screen and (min-width:1200px){.consonant-TopFilter-footerClearBtn:focus{outline:2px solid #1492e6}}.consonant-TopFilter-footerClearBtn+.consonant-TopFilter-footerBtn{margin-left:0}.consonant-TopFilter-footerBtn{min-width:71px;margin-left:auto;padding:8px 16px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1rem;font-weight:700;color:#fff;font-style:normal;word-break:break-word;text-align:center;text-transform:capitalize;background-color:#1473e6;border-radius:20px;border:0;outline:0}.consonant-TopFilter-footerBtn:focus{outline:0}@media only screen and (min-width:1200px){.consonant-TopFilter-footerBtn:focus{outline:2px solid #1492e6}}.consonant-TopFilter.is-selected:not(.is-opened):after{display:none}.consonant-TopFilter.is-selected:not(.is-opened)>.consonant-TopFilter-inner{background-color:#f4f4f4}.consonant-TopFilter.is-selected:not(.is-opened) .consonant-TopFilter-link{border-color:#505050;padding-right:0;color:#323232;background-color:#f4f4f4}.consonant-TopFilter.is-opened{position:fixed;display:flex;justify-content:center;align-items:center;width:100%;max-width:100%;padding-left:20px;padding-right:20px;top:0;bottom:0;left:0;right:0;margin:auto;z-index:4;background-color:rgba(80,80,80,.8)}.consonant-TopFilter.is-opened:after{display:none}.consonant-TopFilter.is-opened .consonant-TopFilter-inner{position:relative;box-shadow:0 3px 15px rgba(80,80,80,.8);border:1px solid #eaeaea;border-radius:4px;background-color:#fff}.consonant-TopFilter.is-opened .consonant-TopFilter-inner:after{content:"";position:absolute;display:block;width:100%;max-width:100%;height:33px;bottom:65px;left:0;right:0;background:transparent linear-gradient(180deg,hsla(0,0%,100%,.5),#fff) no-repeat 0 0;z-index:1;pointer-events:none}.consonant-TopFilter.is-opened .consonant-TopFilter-selectedItems ul~.consonant-TopFilter-footer{display:flex}.consonant-TopFilter.is-opened .consonant-TopFilter-selectedItems{display:block}.consonant-TopFilter.is-opened .consonant-TopFilter-selectedItemsQty{display:none}.consonant-TopFilter.is-opened .consonant-TopFilter-link{padding-top:17px;padding-bottom:17px;padding-right:36px;border-bottom:0;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:1rem;line-height:1.1875rem;font-weight:700;color:#505050;font-style:normal;word-break:break-word;text-align:left;text-transform:capitalize;text-decoration:none;cursor:pointer}@media only screen and (min-width:768px){.consonant-TopFilter{max-width:100%}.consonant-TopFilter.is-opened .consonant-TopFilter-inner{max-width:70vw;margin-left:auto;margin-right:auto}}@media only screen and (min-width:1200px){.consonant-TopFilter-items{min-height:0;max-height:295px;padding-top:12px;overflow-y:auto}.consonant-TopFilter-itemLabel{padding-left:24px;padding-right:24px}.consonant-TopFilter.is-opened{position:relative;width:auto;margin:0;padding:0;margin-right:8px;margin-bottom:8px;border-radius:4px;z-index:2;background-color:transparent}.consonant-TopFilter.is-opened:after{width:4px;height:4px;top:0;bottom:0;right:8px;margin:auto;border-color:#1473e6;border-width:1px;transform:rotate(-45deg) translate3d(1px,-2px,0);transition:border-color .3s ease-in-out}.consonant-TopFilter.is-opened .consonant-TopFilter-inner{position:static;box-shadow:none;border:0;background-color:transparent}.consonant-TopFilter.is-opened .consonant-TopFilter-inner:after{display:none}.consonant-TopFilter.is-opened .consonant-TopFilter-link{display:flex;justify-content:space-between;align-items:center;height:32px;padding:5px 17px 6px 12px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.1875rem;font-weight:400;color:#1473e6;font-style:normal;word-break:break-word;text-align:left;white-space:nowrap;border:1px solid #1473e6;border-radius:4px;transition:border-color .3s ease-in-out,color .3s ease-in-out}.consonant-TopFilter.is-opened input[type=checkbox]:focus+.consonant-TopFilter-itemCheckmark{outline:2px solid #1492e6}.consonant-TopFilter.is-opened .consonant-TopFilter-absoluteWrapper{position:absolute;display:block;left:0;top:40px;width:320px;max-height:360px;overflow-y:auto;border:1px solid #eaeaea;border-radius:4px;box-shadow:0 3px 15px rgba(80,80,80,.101);background-color:#fff;z-index:2;overflow:hidden}.consonant-TopFilter.is-opened .consonant-TopFilter-selectedItemsQty{padding:0;visibility:hidden;font-size:0}.consonant-TopFilter.is-opened .consonant-TopFilter-selectedItems ul~.consonant-TopFilter-footer{display:flex}}.consonant-LeftFilters{position:static;display:flex;flex-direction:column;width:100%;max-width:100%;top:0;bottom:0;left:0;right:0;background-color:#fff;overflow:visible;user-select:none}.consonant-LeftFilters>*,.consonant-LeftFilters>.consonant-Search{display:none}.consonant-LeftFilters-header{display:flex;justify-content:space-between;align-items:center;display:none;width:100%;max-width:100%;padding:14px 12px;border-bottom:1px solid #eaeaea}.consonant-LeftFilters-deskTitle{display:none;margin:0;max-width:70%;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:1rem;line-height:1.1875rem;font-weight:700;color:#2c2c2c;font-style:normal;word-break:break-word;text-align:left}.consonant-LeftFilters-mobTitle{display:flex;align-items:center}.consonant-LeftFilters-mobTitle span{font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:1rem;line-height:1.1875rem;font-weight:400;color:#505050;font-style:normal;word-break:break-word;text-align:left}.consonant-LeftFilters-mobTitle span:focus{outline:1px solid #1492e6}.consonant-LeftFilters-mobBack{display:block;width:32px;height:32px;margin-right:13px;font-size:0;line-height:0;border:1px solid #eaeaea;border-radius:50%;background:#fff url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTAiIHZpZXdCb3g9IjAgMCAxNCAxMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEyLjk4OTkgNC4wMDAwNkgzLjQxMzg4TDUuNjk5ODggMS43MTcwNkM1Ljc5MjkyIDEuNjI0MDIgNS44NjY3MiAxLjUxMzU2IDUuOTE3MDggMS4zOTJDNS45Njc0MyAxLjI3MDQzIDUuOTkzMzUgMS4xNDAxNCA1Ljk5MzM1IDEuMDA4NTZDNS45OTMzNSAwLjg3Njk4MSA1Ljk2NzQzIDAuNzQ2Njg5IDUuOTE3MDggMC42MjUxMjVDNS44NjY3MiAwLjUwMzU2IDUuNzkyOTIgMC4zOTMxMDQgNS42OTk4OCAwLjMwMDA2MkM1LjYwNjg0IDAuMjA3MDIxIDUuNDk2MzggMC4xMzMyMTYgNS4zNzQ4MiAwLjA4Mjg2MjNDNS4yNTMyNSAwLjAzMjUwODUgNS4xMjI5NiAwLjAwNjU5MTggNC45OTEzOCAwLjAwNjU5MThDNC43MjU2NCAwLjAwNjU5MTggNC40NzA3OCAwLjExMjE1NiA0LjI4Mjg4IDAuMzAwMDYyTDAuMjk5ODc4IDQuMjkzMDZDMC4yMDY5MDIgNC4zODU5NCAwLjEzMzE0MyA0LjQ5NjIyIDAuMDgyODE4NyA0LjYxNzYyQzAuMDMyNDk0NCA0LjczOTAyIDAuMDA2NTkxOCA0Ljg2OTE1IDAuMDA2NTkxOCA1LjAwMDU2QzAuMDA2NTkxOCA1LjEzMTk4IDAuMDMyNDk0NCA1LjI2MjEgMC4wODI4MTg3IDUuMzgzNUMwLjEzMzE0MyA1LjUwNDkgMC4yMDY5MDIgNS42MTUxOSAwLjI5OTg3OCA1LjcwODA2TDQuMjgyODggOS43MDAwNkM0LjM3NTkyIDkuNzkzMSA0LjQ4NjM4IDkuODY2OTEgNC42MDc5NCA5LjkxNzI2QzQuNzI5NTEgOS45Njc2MiA0Ljg1OTggOS45OTM1MyA0Ljk5MTM4IDkuOTkzNTNDNS4xMjI5NiA5Ljk5MzUzIDUuMjUzMjUgOS45Njc2MiA1LjM3NDgyIDkuOTE3MjZDNS40OTYzOCA5Ljg2NjkxIDUuNjA2ODQgOS43OTMxIDUuNjk5ODggOS43MDAwNkM1Ljc5MjkyIDkuNjA3MDIgNS44NjY3MiA5LjQ5NjU2IDUuOTE3MDggOS4zNzVDNS45Njc0MyA5LjI1MzQzIDUuOTkzMzUgOS4xMjMxNCA1Ljk5MzM1IDguOTkxNTZDNS45OTMzNSA4Ljg1OTk4IDUuOTY3NDMgOC43Mjk2OSA1LjkxNzA4IDguNjA4MTJDNS44NjY3MiA4LjQ4NjU2IDUuNzkyOTIgOC4zNzYxIDUuNjk5ODggOC4yODMwNkwzLjQxMzg4IDYuMDAwMDZIMTIuOTg5OUMxMy4yNTUxIDYuMDAwMDYgMTMuNTA5NCA1Ljg5NDcgMTMuNjk3IDUuNzA3MTdDMTMuODg0NSA1LjUxOTYzIDEzLjk4OTkgNS4yNjUyOCAxMy45ODk5IDUuMDAwMDZDMTMuOTg5OSA0LjczNDg1IDEzLjg4NDUgNC40ODA0OSAxMy42OTcgNC4yOTI5NkMxMy41MDk0IDQuMTA1NDIgMTMuMjU1MSA0LjAwMDA2IDEyLjk4OTkgNC4wMDAwNloiIGZpbGw9IiM1MDUwNTAiLz4KPC9zdmc+Cg==") no-repeat 50% 50%;background-position:contain;outline:0}.consonant-LeftFilters-mobBack:focus{border-color:#1492e6}.consonant-LeftFilters-clearLink{display:none;padding:0;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1rem;font-weight:700;color:#bcbcbc;font-style:normal;word-break:break-word;text-align:left;text-transform:capitalize;background-color:transparent;outline:0}.consonant-LeftFilters-clearLink:focus{outline:0}@media only screen and (min-width:1200px){.consonant-LeftFilters-clearLink:focus{outline:2px solid #1492e6}}.consonant-LeftFilters-list{margin-bottom:auto;padding-left:16px;padding-right:16px;overflow-y:auto}.consonant-LeftFilters-mobileFooter{display:none;align-items:center;padding:16px;border-top:1px solid #eaeaea;order:2}.consonant-LeftFilters-mobileFooterTotalResQty{margin-right:auto;max-width:55%;color:#505050;text-transform:capitalize}.consonant-LeftFilters-mobileFooterClearBtn,.consonant-LeftFilters-mobileFooterTotalResQty{display:block;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1rem;font-weight:700;font-style:normal;word-break:break-word;text-align:left}.consonant-LeftFilters-mobileFooterClearBtn{margin-right:17px;padding:0;color:#1473e6;background-color:transparent;border:0;outline:0}.consonant-LeftFilters-mobileFooterClearBtn:focus{box-shadow:0 2px 0 0 #1492e6}.consonant-LeftFilters-mobileFooterClearBtn:first-child{margin-left:auto}.consonant-LeftFilters-mobileFooterClearBtn+.consonant-LeftFilters-mobileFooterBtn{margin-left:0}.consonant-LeftFilters-mobileFooterBtn{min-width:71px;margin-left:auto;padding:8px 16px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1rem;font-weight:700;color:#fff;font-style:normal;word-break:break-word;text-align:center;text-transform:capitalize;background-color:#1473e6;border-radius:20px;border:0;outline:0;position:relative}.consonant-LeftFilters-mobileFooterBtn:focus:after{border-radius:18px;content:"";display:block;position:absolute;left:0;right:0;bottom:0;top:0;margin:-2px;transition:box-shadow .13s ease-out,margin .13s ease-out;box-shadow:0 0 0 2px #1492e6}.consonant-LeftFilters.is-opened{position:fixed;z-index:10;display:flex}.consonant-LeftFilters.is-opened .consonant-LeftFilters-header,.consonant-LeftFilters.is-opened .consonant-LeftFilters-mobileFooter,.consonant-LeftFilters.is-opened>button{display:flex}.consonant-LeftFilters.is-opened .consonant-LeftFilters-list{display:block}.consonant-LeftFilters.is-opened .consonant-LeftFilters-itemName img{display:none;position:relative;top:4px}.consonant-LeftFilters-chosenFilters{position:relative;flex-wrap:wrap;justify-content:flex-start;align-items:center;margin-top:-16px;width:100%;max-width:100%;padding-bottom:8px;background-color:transparent}.consonant-LeftFilters-chosenFilters:empty{display:none}@media only screen and (min-width:1200px){.consonant-LeftFilters{width:204px;max-width:204px;margin-right:32px;padding:8px 16px 16px;border-radius:4px;overflow:visible}.consonant-LeftFilters-list{display:block;margin-bottom:0;padding:0;border-top:1px solid #eaeaea;overflow:hidden;z-index:1}.consonant-LeftFilters-mobTitle{display:none}.consonant-LeftFilters-header{display:flex;padding:0 0 24px;border-bottom:1px solid #eaeaea;order:-3}.consonant-LeftFilters-header+button:after{display:none}.consonant-LeftFilters-deskTitle{display:block}.consonant-LeftFilters>.consonant-Search{display:block;padding-top:13px;padding-bottom:32px}.consonant-LeftFilters>button{display:flex}.consonant-LeftFilters-clearLink{display:block;transition:color .3s ease-in-out}.consonant-LeftFilters-clearLink:active,.consonant-LeftFilters-clearLink:hover{color:#1473e6}.consonant-LeftFilters-chosenFilters{display:flex}}.consonant-LeftFilter{position:relative;border-bottom:1px solid #eaeaea;outline:0;cursor:pointer}.consonant-LeftFilter:after{content:"";position:absolute;right:16px;top:0;bottom:0;margin:auto;width:8px;height:8px;border:2px solid #d3d3d3;transform:rotate(-135deg);border-top:0;border-right:0;pointer-events:none}.consonant-LeftFilter:last-of-type{border-bottom:0}.consonant-LeftFilter-inner{display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;width:100%;max-width:100%;max-height:90vh;background-color:#fff;border-radius:5px}.consonant-LeftFilter-name{display:flex;align-items:center;margin:0}.consonant-LeftFilter-name img{display:block;max-width:16px;height:auto;max-height:16px;margin-right:6px}.consonant-LeftFilter-link{display:block;width:100%;max-width:100%;padding-top:17px;padding-bottom:17px;padding-right:36px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:1rem;line-height:1.1875rem;font-weight:700;color:#505050;font-style:normal;word-break:break-word;text-align:left;text-transform:capitalize;text-decoration:none;background-color:transparent;outline:0;cursor:pointer;border:1px solid transparent}.consonant-LeftFilter-link:focus{border-color:#1492e6}.consonant-LeftFilter-selectedItemsQty{position:relative;display:block;margin-top:4px;padding-right:18px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1rem;font-weight:400;color:#959595;font-style:normal;word-break:break-word;text-align:left;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.consonant-LeftFilter-selectedItemsQty:after{position:absolute;right:12px;content:attr(data-qty);font-weight:700;background-color:#fff}.consonant-LeftFilter-selectedItemsQty:empty{display:none}.consonant-LeftFilter-itemBadge{display:none;position:absolute;min-width:24px;max-width:100px;height:24px;padding:5px 7px;top:12px;right:30px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:.875rem;font-weight:700;color:#fff;font-style:normal;word-break:break-word;text-align:center;white-space:nowrap;text-overflow:ellipsis;border-radius:15px;background-color:#1473e6;z-index:1;opacity:1;border:0;outline:0;transition:opacity .3s ease-in-out;transition-delay:.1s;overflow:hidden}.consonant-LeftFilter-itemBadge:focus{outline:0}@media only screen and (min-width:1200px){.consonant-LeftFilter-itemBadge:focus{outline:2px solid #1492e6}}.consonant-LeftFilter-itemBadge:hover{font-size:0;line-height:0}.consonant-LeftFilter-itemBadge:after,.consonant-LeftFilter-itemBadge:before{content:"";position:absolute;width:10px;height:2px;top:0;bottom:0;left:0;right:0;margin:auto;background-color:#fff;z-index:1;opacity:0;transition:opacity .3s ease-in-out;transition-delay:.1s;transform:rotate(45deg)}.consonant-LeftFilter-itemBadge:after{transform:rotate(-45deg)}.consonant-LeftFilter-itemBadge:hover:after,.consonant-LeftFilter-itemBadge:hover:before{opacity:1}.consonant-LeftFilter-items{display:none;height:50vh;margin:auto 0 0;padding:0;list-style-type:none;border-top:1px solid #eaeaea;overflow-y:auto}.consonant-LeftFilter-itemsItem{display:flex;align-items:baseline;transition:background-color .3s ease-in-out}.consonant-LeftFilter-itemsItem:hover{background-color:#f4f4f4}.consonant-LeftFilter-itemsItem:nth-of-type(n+10):last-of-type{margin-bottom:32px}.consonant-LeftFilter-itemsItemLabel{position:relative;display:flex;align-items:center;width:100%;max-width:100%;padding:8px 20px 6px;cursor:pointer}.consonant-LeftFilter input[type=checkbox]{width:0;height:0;max-width:0;max-height:0;margin:0;padding:0;opacity:0;border:0;outline:0}input[type=checkbox]:checked+.consonant-LeftFilter-itemsItemCheckmark{background-color:#2680eb;border-color:#2680eb}input[type=checkbox]:checked+.consonant-LeftFilter-itemsItemCheckmark:after{display:block}input[type=checkbox]:focus+.consonant-LeftFilter-itemsItemCheckmark{border-color:#1492e6}.consonant-LeftFilter-itemsItemCheckmark{position:relative;display:block;min-width:14px;width:14px;height:14px;margin-right:10px;border:2px solid #959595;border-radius:3px;transition:border-color .3s ease-in-out,background-color .3s ease-in-out;pointer-events:none}.consonant-LeftFilter-itemsItemCheckmark:after{display:none;content:"";position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;width:8px;height:4px;border:2px solid #fff;border-top:0;border-right:0;border-radius:2px;transform:rotate(-45deg) translate3d(1px,0,0)}.consonant-LeftFilter-itemsItemName{padding-bottom:1px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.1875rem;font-weight:400;color:#505050;font-style:normal;text-align:left;word-break:break-word;pointer-events:none}.consonant-LeftFilter-footer{display:none;margin-top:auto;align-items:center;padding:16px;border-top:1px solid #eaeaea}.consonant-LeftFilter-footerResQty{margin-right:auto;color:#505050;text-transform:capitalize}.consonant-LeftFilter-footerClearBtn,.consonant-LeftFilter-footerResQty{display:block;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1rem;font-weight:700;font-style:normal;word-break:break-word;text-align:left}.consonant-LeftFilter-footerClearBtn{margin-right:17px;padding:0;color:#1473e6;background-color:transparent;border:0;outline:0}.consonant-LeftFilter-footerClearBtn:focus{box-shadow:0 2px 0 0 #1492e6}.consonant-LeftFilter-footerClearBtn+.consonant-LeftFilter-footerBtn{margin-left:0}.consonant-LeftFilter-footerBtn{min-width:71px;margin-left:auto;padding:8px 16px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1rem;font-weight:700;color:#fff;font-style:normal;word-break:break-word;text-align:center;text-transform:capitalize;background-color:#1473e6;border-radius:20px;border:0;outline:0;position:relative}.consonant-LeftFilter-footerBtn:focus:after{border-radius:18px;content:"";display:block;position:absolute;left:0;right:0;bottom:0;top:0;margin:-2px;transition:box-shadow .13s ease-out,margin .13s ease-out;box-shadow:0 0 0 2px #1492e6}.consonant-LeftFilter.is-opened{position:fixed;display:flex;justify-content:center;align-items:center;width:100%;max-width:100%;padding-left:20px;padding-right:20px;top:0;bottom:0;left:0;right:0;margin:auto;z-index:4;background-color:rgba(80,80,80,.8)}.consonant-LeftFilter.is-opened:after{display:none}.consonant-LeftFilter.is-opened .consonant-LeftFilter-inner{position:relative;box-shadow:0 3px 15px rgba(80,80,80,.8);border:1px solid #eaeaea;border-radius:4px}.consonant-LeftFilter.is-opened .consonant-LeftFilter-inner:after{content:"";position:absolute;display:block;width:100%;max-width:100%;height:33px;bottom:65px;left:0;right:0;background:transparent linear-gradient(180deg,hsla(0,0%,100%,.8),#fff) no-repeat 0 0;z-index:1;pointer-events:none}.consonant-LeftFilter.is-opened .consonant-LeftFilter-footer{display:flex}.consonant-LeftFilter.is-opened .consonant-LeftFilter-items{display:block}.consonant-LeftFilter.is-opened .consonant-LeftFilter-selectedItemsQty{display:none}.consonant-LeftFilter.is-opened .consonant-LeftFilter-name{padding-left:20px}@media only screen and (min-width:768px){.consonant-LeftFilter.is-opened .consonant-LeftFilter-inner{max-width:70vw;margin-left:auto;margin-right:auto}}@media only screen and (min-width:1200px){.consonant-LeftFilter:after{display:block;right:13px;border-color:#bcbcbc;transform:rotate(-45deg)}.consonant-LeftFilter-inner{border-radius:0;background-color:transparent}.consonant-LeftFilter-items{min-height:0;max-height:100%;height:auto;padding-top:12px;border-color:transparent;overflow-y:auto}.consonant-LeftFilter-itemsItemLabel{padding:6px 8px}input[type=checkbox]:focus+.consonant-LeftFilter-itemsItemCheckmark{outline:2px solid #1492e6}.consonant-LeftFilter-itemsItem:nth-of-type(n+10):last-of-type{margin-bottom:0}.consonant-LeftFilter-itemsItemName{font-size:.875rem;line-height:1rem}.consonant-LeftFilter-footer{display:none}.consonant-LeftFilter-link{padding-top:14px;padding-bottom:14px;font-size:.875rem;line-height:1rem;word-break:break-word;transition:color .3s ease-in-out;border:2px solid transparent}.consonant-LeftFilter-link:hover{color:#707070}.consonant-LeftFilter-link:focus{border-color:#1492e6}.consonant-LeftFilter-itemBadge{display:block}.consonant-LeftFilter-selectedItemsQty{display:none}.consonant-LeftFilter.is-opened{position:relative;padding:0;background-color:transparent;border-bottom-color:transparent}.consonant-LeftFilter.is-opened:after{display:block;top:24px;bottom:auto;border-color:#959595;transform:rotate(135deg)}.consonant-LeftFilter.is-opened .consonant-LeftFilter-inner{min-height:0;max-height:none;max-width:100%;margin-left:0;margin-right:0;overflow:hidden;box-shadow:none;border:0}.consonant-LeftFilter.is-opened .consonant-LeftFilter-inner:after{display:none}.consonant-LeftFilter.is-opened .consonant-LeftFilter-name{padding-left:0}.consonant-LeftFilter.is-opened .consonant-LeftFilter-name img{display:block;position:relative;top:4px}.consonant-LeftFilter.is-opened .consonant-LeftFilter-link{padding-right:36px;color:#707070}.consonant-LeftFilter.is-opened .consonant-LeftFilter-items{padding-top:4px}.consonant-LeftFilter.is-opened .consonant-LeftFilter-footer{display:none}}.consonant-ChosenFilter{position:relative;max-width:50vw;margin-right:7px;margin-bottom:8px;padding:0 17px 0 8px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.75rem;line-height:1.375rem;font-weight:400;color:#747474;font-style:normal;word-break:break-word;text-align:left;text-overflow:ellipsis;white-space:nowrap;background-color:transparent;border:1px solid #959595;border-radius:4px;outline:0;overflow:hidden}.consonant-ChosenFilter:after,.consonant-ChosenFilter:before{content:"";position:absolute;top:0;bottom:0;margin:auto;right:8px;width:7px;height:1px;background-color:#959595;transform:rotate(45deg)}.consonant-ChosenFilter:after{transform:rotate(-45deg)}.consonant-ChosenFilter:focus{outline:0}@media only screen and (min-width:1200px){.consonant-ChosenFilter:focus{outline:2px solid #1492e6}}.consonant-Card{width:100%;max-width:100%;padding-bottom:7px;text-align:left;border:1px solid #eaeaea;border-radius:4px;overflow:hidden;margin:0 auto}.consonant-Card,.consonant-Card-content{position:relative;display:flex;flex-direction:column;background-color:#fff}.consonant-Card-content{flex-grow:1;padding:20px 24px 24px;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.consonant-Card-title{max-height:2.75rem;margin:0 0 7px;font-size:1.125rem;line-height:1.375rem;font-weight:700;color:#323232;text-decoration:none;-webkit-line-clamp:2}.consonant-Card-text,.consonant-Card-title{display:-webkit-box;-webkit-box-orient:vertical;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-style:normal;text-align:left;word-break:break-word;overflow:hidden}.consonant-Card-text{max-height:3.9375rem;margin:0 0 14px;padding:0;font-size:.875rem;line-height:1.3125rem;font-weight:400;color:#747474;-webkit-line-clamp:3}.consonant-Card-text:empty{display:none}.consonant-Card-label+.consonant-Card-title+p{max-height:4rem;line-height:1rem}.consonant-Card .consonant-BtnInfobit:first-child{margin-left:0}.consonant-Card .consonant-CardFooter--divider:last-child{padding-top:20px}.consonant-Card.consonant-hide-cta .consonant-OneHalfCard-title+p{max-height:none;-webkit-line-clamp:7;margin:0}.consonant-Card.consonant-u-noBorders{border:0}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.consonant-Card{flex-grow:0;flex-shrink:0;flex-basis:300px}}@media only screen and (min-width:768px){.consonant-Card{padding-bottom:0}.consonant-Card-content{padding-bottom:24px}}.consonant-CardsGrid .consonant-Card.one-half:hover{box-shadow:0 3px 6px 0 rgba(0,0,0,.16);transition:box-shadow .3s ease-in-out}.consonant-CardsGrid .consonant-Card.one-half [class*=-header]{position:relative}.consonant-CardsGrid .consonant-Card.one-half [class*=-header]:after{position:absolute;content:"";top:0;bottom:0;left:0;right:0;margin:auto;z-index:0;background-color:rgba(0,0,0,.35);opacity:0;transition:opacity .3s ease-in-out}.consonant-CardsGrid .consonant-Card.one-half:hover [class*=-header]:after{opacity:1}.consonant-CardsGrid .consonant-Card.one-half .consonant-Card-header{position:relative;width:100%;height:213px;background-color:#eaeaea;background-position:50% 50%;background-repeat:no-repeat;background-size:cover;border-top-left-radius:4px;border-top-right-radius:4px;overflow:hidden}.consonant-CardsGrid .consonant-Card.one-half .consonant-Card-header .consonant-Card-banner{position:absolute;display:flex;justify-content:flex-start;max-width:56%;max-height:70%;top:24px;right:0;padding:8px 13px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.75rem;line-height:1.0625rem;font-weight:700;color:#fff;font-style:normal;word-break:break-word;text-align:left;letter-spacing:.72px;text-transform:uppercase;border-top-left-radius:4px;border-bottom-left-radius:4px;z-index:1;background-color:#1473e6;user-select:none;overflow-y:auto}.consonant-CardsGrid .consonant-Card.one-half .consonant-Card-header .consonant-Card-bannerIconWrapper{margin-right:4px}.consonant-CardsGrid .consonant-Card.one-half .consonant-Card-header .consonant-Card-bannerIconWrapper img{width:8px;height:8px}.consonant-CardsGrid .consonant-Card.one-half .consonant-Card-header .consonant-Card-badge{position:absolute;display:block;max-width:36%;max-height:50%;top:24px;left:24px;padding:4px 11px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.75rem;line-height:1rem;font-weight:400;color:#747474;font-style:normal;word-break:break-word;text-align:left;border:1px solid #959595;border-radius:4px;background-color:#fff;overflow-y:auto;z-index:1}.consonant-CardsGrid .consonant-Card.one-half .consonant-Card-header .consonant-Card-logo{position:absolute;display:block;bottom:16px;left:0;padding:7px 24px;border:1px solid transparent;border-top-right-radius:4px;border-bottom-right-radius:4px;background-color:#fff;z-index:1;font-size:0;line-height:0}.consonant-CardsGrid .consonant-Card.one-half .consonant-Card-header .consonant-Card-logo img{width:auto;height:auto;max-width:90px;max-height:32px;object-fit:contain;user-select:none}.consonant-CardsGrid .consonant-Card.one-half .consonant-Card-header button.consonant-Card-videoButton-wrapper{width:100%;height:100%;background-color:transparent}.consonant-CardsGrid .consonant-Card.one-half .consonant-Card-header button.consonant-Card-videoButton-wrapper .consonant-Card-videoIco{display:block;position:absolute;width:40px;height:40px;right:24px;bottom:16px;font-size:0;line-height:0;background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg data-name='40' xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg data-name='Ellipse 20182' fill='%231473e6' stroke='%23fff' stroke-width='2'%3E%3Ccircle cx='20' cy='20' r='20' stroke='none'/%3E%3Ccircle cx='20' cy='20' r='19' fill='none'/%3E%3C/g%3E%3Cpath data-name='Path 356676' d='M15 10.833v18.333l13.333-9.167z' fill='%23fff'/%3E%3C/svg%3E") no-repeat 0 0;background-size:cover;z-index:1;cursor:pointer;transform-origin:50% 50%;transition:transform .3s ease-in-out}.consonant-CardsGrid .consonant-Card.one-half .consonant-Card-header button.consonant-Card-videoButton-wrapper .consonant-Card-videoIco:active,.consonant-CardsGrid .consonant-Card.one-half .consonant-Card-header button.consonant-Card-videoButton-wrapper .consonant-Card-videoIco:hover{transform:scale(1.1);background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg data-name='40' xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg data-name='Ellipse 20182' fill='%230059c2' stroke='%23fff' stroke-width='2'%3E%3Ccircle cx='20' cy='20' r='20' stroke='none'/%3E%3Ccircle cx='20' cy='20' r='19' fill='none'/%3E%3C/g%3E%3Cpath data-name='Path 356676' d='M15 10.833v18.333l13.333-9.167z' fill='%23fff'/%3E%3C/svg%3E") no-repeat 0 0;transition:transform .3s ease-in-out}.consonant-CardsGrid .consonant-Card.one-half .consonant-Card-header button.consonant-Card-videoButton-wrapper .consonant-Card-videoIco:focus{transform:scale(1.1);transition:transform .3s ease-in-out;outline:2px solid #1492e6}.consonant-CardsGrid .consonant-Card.one-half .consonant-Card-label{display:block;max-width:100%;margin-bottom:4px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1rem;font-weight:400;color:#505050;font-style:normal;word-break:break-word;text-align:left;text-decoration:none;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.consonant-CardsGrid--2up .consonant-Card.one-half,.consonant-CardsGrid--3up .consonant-Card.one-half{min-height:448px}.consonant-CardsGrid--4up .consonant-Card.one-half{height:auto}.consonant-CardsGrid--4up .consonant-Card.one-half .consonant-Card-header{min-height:192px;max-height:192px}.consonant-CardsGrid--4up .consonant-Card.one-half .consonant-Card-content,.consonant-CardsGrid--5up .consonant-Card.one-half .consonant-Card-content{padding:16px 16px 20px}.consonant-CardsGrid .consonant-Card.three-fourths{height:448px}.consonant-CardsGrid .consonant-Card.three-fourths:hover{box-shadow:0 3px 6px 0 rgba(0,0,0,.16);transition:box-shadow .3s ease-in-out}.consonant-CardsGrid .consonant-Card.three-fourths [class*=-header]{position:relative}.consonant-CardsGrid .consonant-Card.three-fourths [class*=-header]:after{position:absolute;content:"";top:0;bottom:0;left:0;right:0;margin:auto;z-index:0;background-color:rgba(0,0,0,.35);opacity:0;transition:opacity .3s ease-in-out}.consonant-CardsGrid .consonant-Card.three-fourths:hover [class*=-header]:after{opacity:1}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-header{background-color:#eaeaea;height:316px;overflow:hidden;position:relative;background-position:50% 50%;background-repeat:no-repeat;background-size:cover}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-header button.consonant-Card-videoButton-wrapper{width:100%;height:100%;background-color:transparent}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-videoIco{display:block;position:absolute;width:40px;height:40px;right:24px;bottom:16px;font-size:0;line-height:0;background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg data-name='40' xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg data-name='Ellipse 20182' fill='%231473e6' stroke='%23fff' stroke-width='2'%3E%3Ccircle cx='20' cy='20' r='20' stroke='none'/%3E%3Ccircle cx='20' cy='20' r='19' fill='none'/%3E%3C/g%3E%3Cpath data-name='Path 356676' d='M15 10.833v18.333l13.333-9.167z' fill='%23fff'/%3E%3C/svg%3E") no-repeat 0 0;background-size:cover;z-index:1;cursor:pointer;transform-origin:50% 50%;transition:transform .3s ease-in-out}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-videoIco:active,.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-videoIco:hover{transform:scale(1.1);background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg data-name='40' xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg data-name='Ellipse 20182' fill='%230059c2' stroke='%23fff' stroke-width='2'%3E%3Ccircle cx='20' cy='20' r='20' stroke='none'/%3E%3Ccircle cx='20' cy='20' r='19' fill='none'/%3E%3C/g%3E%3Cpath data-name='Path 356676' d='M15 10.833v18.333l13.333-9.167z' fill='%23fff'/%3E%3C/svg%3E") no-repeat 0 0;transition:transform .3s ease-in-out}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-videoIco:focus{transform:scale(1.1);transition:transform .3s ease-in-out;outline:2px solid #1492e6}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-logo{position:absolute;display:block;bottom:16px;left:0;padding:7px 24px;border:1px solid transparent;border-top-right-radius:4px;border-bottom-right-radius:4px;z-index:1;background-color:#fff;font-size:0;line-height:0}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-logo img{width:auto;height:auto;max-width:90px;max-height:32px;object-fit:contain;user-select:none}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-label{display:block;max-width:100%;max-height:1rem;margin-bottom:4px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1rem;font-weight:400;color:#505050;font-style:normal;word-break:break-word;text-align:left;text-decoration:none;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-label:empty{display:none}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-content{padding:20px 20px 24px}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-title{max-height:2.75rem;margin:0 0 7px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:1.125rem;line-height:1.375rem;font-weight:700;color:#323232;font-style:normal;text-align:left;text-decoration:none;word-break:break-word;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-title:only-child{max-height:5.5rem;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-title:empty{display:none}.consonant-Card-label+.consonant-CardsGrid .consonant-Card.three-fourths-title:last-child{max-height:4.125rem;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-text{max-height:2rem;margin:0;padding:0;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1rem;font-weight:400;color:#747474;font-style:normal;word-break:break-word;text-align:left;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-text:empty{display:none}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-text:only-child{max-height:5rem;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-label+.consonant-Card-text:last-child{max-height:4rem;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-label+.consonant-Card-title+.consonant-Card-text{max-height:1rem;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-banner{position:absolute;display:flex;justify-content:flex-start;max-width:56%;max-height:70%;top:24px;right:0;padding:8px 13px 7px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.75rem;line-height:1.0625rem;font-weight:700;color:#fff;font-style:normal;word-break:break-word;text-align:left;letter-spacing:.72px;text-transform:uppercase;border-top-left-radius:4px;border-bottom-left-radius:4px;z-index:1;background-color:#1473e6;user-select:none;overflow-y:auto}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-bannerIconWrapper{margin-right:4px}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-bannerIconWrapper img{width:8px;height:8px}.consonant-CardsGrid .consonant-Card.three-fourths .consonant-Card-badge{position:absolute;display:block;max-width:36%;max-height:50%;top:24px;left:24px;padding:4px 11px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.75rem;line-height:1rem;font-weight:400;color:#747474;font-style:normal;word-break:break-word;text-align:left;border:1px solid #959595;border-radius:4px;background-color:#fff;overflow-y:auto;z-index:1}.consonant-CardsGrid--4up .consonant-Card.three-fourths .consonant-Card-title,.consonant-CardsGrid--5up .consonant-Card.three-fourths .consonant-Card-title{margin-bottom:0;max-height:2.75rem;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.consonant-CardsGrid--4up .consonant-Card.three-fourths .consonant-Card-title:first-child,.consonant-CardsGrid--5up .consonant-Card.three-fourths .consonant-Card-title:first-child{max-height:4.125rem;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.consonant-CardsGrid--4up .consonant-Card.three-fourths .consonant-Card-text,.consonant-CardsGrid--5up .consonant-Card.three-fourths .consonant-Card-text{display:none!important}.consonant-CardsGrid--4up .consonant-Card.three-fourths .consonant-Card-badge,.consonant-CardsGrid--5up .consonant-Card.three-fourths .consonant-Card-badge{position:absolute;display:block;max-width:36%;max-height:50%;top:24px;left:24px;padding:4px 11px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.75rem;line-height:1rem;font-weight:400;color:#747474;font-style:normal;word-break:break-word;text-align:left;border:1px solid #959595;border-radius:4px;background-color:#fff;overflow-y:auto;z-index:1}.consonant-CardsGrid--4up .consonant-Card.three-fourths{height:384px}.consonant-CardsGrid--4up .consonant-Card.three-fourths .consonant-Card-header{min-height:232px;height:276px}.consonant-CardsGrid--5up .consonant-Card.three-fourths{height:344px}.consonant-CardsGrid--5up .consonant-Card-header{min-height:232px;height:232px}.consonant-CardsGrid .consonant-Card.full-card{height:448px}.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-content{position:absolute;bottom:0;display:flex;flex-direction:column;justify-content:flex-end;min-height:108px;margin-top:auto;padding:0 24px 24px;text-decoration:none;background:transparent linear-gradient(180deg,transparent,rgba(0,0,0,.501) 36%,rgba(0,0,0,.701)) 0 0 no-repeat padding-box;outline:0}.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-content:before{content:"";position:absolute;right:24px;bottom:32px;width:12px;height:12px;border:1px solid #fff;box-shadow:1px 1px 0 0 #fff;border-top:0;border-left:0;transform:rotate(-45deg)}.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-content:active,.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-content:hover{text-decoration:none}.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-header{position:absolute!important;width:100%;height:auto;max-height:none;background-color:#eaeaea;background-position:50% 50%;background-repeat:no-repeat;background-size:cover;z-index:0;top:0;bottom:0;left:0;right:0}.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-header img{min-width:100%;min-height:100%}.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-header button.consonant-Card-videoButton-wrapper{width:100%;height:100%;background-color:transparent}.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-videoIco{display:block;position:absolute;width:40px;height:40px;right:24px;bottom:16px;font-size:0;line-height:0;background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg data-name='40' xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg data-name='Ellipse 20182' fill='%231473e6' stroke='%23fff' stroke-width='2'%3E%3Ccircle cx='20' cy='20' r='20' stroke='none'/%3E%3Ccircle cx='20' cy='20' r='19' fill='none'/%3E%3C/g%3E%3Cpath data-name='Path 356676' d='M15 10.833v18.333l13.333-9.167z' fill='%23fff'/%3E%3C/svg%3E") no-repeat 0 0;background-size:cover;z-index:1;cursor:pointer;transform-origin:50% 50%;transition:transform .3s ease-in-out;bottom:124px}.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-videoIco:active,.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-videoIco:hover{transform:scale(1.1);background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg data-name='40' xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg data-name='Ellipse 20182' fill='%230059c2' stroke='%23fff' stroke-width='2'%3E%3Ccircle cx='20' cy='20' r='20' stroke='none'/%3E%3Ccircle cx='20' cy='20' r='19' fill='none'/%3E%3C/g%3E%3Cpath data-name='Path 356676' d='M15 10.833v18.333l13.333-9.167z' fill='%23fff'/%3E%3C/svg%3E") no-repeat 0 0;transition:transform .3s ease-in-out}.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-videoIco:focus{transform:scale(1.1);transition:transform .3s ease-in-out;outline:2px solid #1492e6}.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-logo{position:absolute;display:block;bottom:124px;left:0;padding:7px 24px;border:1px solid transparent;border-top-right-radius:4px;border-bottom-right-radius:4px;background-color:#fff;z-index:3;font-size:0;line-height:0}.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-logo img{width:auto;height:auto;max-width:90px;max-height:32px;object-fit:contain;user-select:none}.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-label{display:block;max-width:100%;margin-bottom:5px;font-size:.875rem;line-height:1rem;font-weight:400;white-space:nowrap;text-overflow:ellipsis}.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-label,.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-title{font-family:adobe-clean,Segoe UI,Roboto,sans-serif;color:#fff;font-style:normal;word-break:break-word;text-align:left;text-decoration:none;overflow:hidden;z-index:1}.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-title{display:-webkit-box;-webkit-box-orient:vertical;max-height:2.75rem;margin:0;padding-right:24px;font-size:1.125rem;line-height:1.375rem;font-weight:700;-webkit-line-clamp:2}.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-banner{position:absolute;display:flex;justify-content:flex-start;max-width:56%;max-height:70%;top:24px;right:0;padding:8px 13px 7px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.75rem;line-height:1.0625rem;font-weight:700;color:#fff;font-style:normal;word-break:break-word;text-align:left;letter-spacing:.72px;text-transform:uppercase;border-top-left-radius:4px;border-bottom-left-radius:4px;z-index:1;background-color:#1473e6;user-select:none;overflow-y:auto}.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-bannerIconWrapper{margin-right:4px}.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-bannerIconWrapper img{width:8px;height:8px}.consonant-CardsGrid .consonant-Card.full-card .consonant-Card-badge{position:absolute;display:block;max-width:36%;max-height:50%;top:24px;left:24px;padding:4px 11px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.75rem;line-height:1rem;font-weight:400;color:#747474;font-style:normal;word-break:break-word;text-align:left;border:1px solid #959595;border-radius:4px;background-color:#fff;overflow-y:auto;z-index:1}.consonant-CardsGrid--4up .consonant-Card.full-card{height:384px}.consonant-CardsGrid--5up .consonant-Card.full-card{height:344px}.consonant-CardsGrid .consonant-Card.half-height{height:208px}.consonant-CardsGrid .consonant-Card.half-height .consonant-Card-header{z-index:0;height:100%;background-color:#eaeaea;background-position:50% 0;background-repeat:no-repeat;background-size:cover}.consonant-CardsGrid .consonant-Card.half-height .consonant-Card-header:after{content:"";position:absolute;top:0;bottom:0;left:0;right:0;background:transparent linear-gradient(180deg,rgba(0,0,0,.1) 10%,rgba(0,0,0,.8) 80%) 0 0 no-repeat;z-index:1;opacity:1}.consonant-CardsGrid .consonant-Card.half-height .consonant-Card-videoButton-wrapper{top:-118px;background:transparent;position:absolute;height:208px;left:0;right:0;z-index:2;width:100%}.consonant-CardsGrid .consonant-Card.half-height .consonant-Card-videoIco{display:block;position:absolute;width:40px;height:40px;right:24px;bottom:16px;font-size:0;line-height:0;background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg data-name='40' xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg data-name='Ellipse 20182' fill='%231473e6' stroke='%23fff' stroke-width='2'%3E%3Ccircle cx='20' cy='20' r='20' stroke='none'/%3E%3Ccircle cx='20' cy='20' r='19' fill='none'/%3E%3C/g%3E%3Cpath data-name='Path 356676' d='M15 10.833v18.333l13.333-9.167z' fill='%23fff'/%3E%3C/svg%3E") no-repeat 0 0;background-size:cover;z-index:1;cursor:pointer;transform-origin:50% 50%;transition:transform .3s ease-in-out;top:75px;left:24px;right:auto}.consonant-CardsGrid .consonant-Card.half-height .consonant-Card-videoIco:active,.consonant-CardsGrid .consonant-Card.half-height .consonant-Card-videoIco:hover{transform:scale(1.1);background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg data-name='40' xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg data-name='Ellipse 20182' fill='%230059c2' stroke='%23fff' stroke-width='2'%3E%3Ccircle cx='20' cy='20' r='20' stroke='none'/%3E%3Ccircle cx='20' cy='20' r='19' fill='none'/%3E%3C/g%3E%3Cpath data-name='Path 356676' d='M15 10.833v18.333l13.333-9.167z' fill='%23fff'/%3E%3C/svg%3E") no-repeat 0 0;transition:transform .3s ease-in-out}.consonant-CardsGrid .consonant-Card.half-height .consonant-Card-videoIco:focus{transform:scale(1.1);transition:transform .3s ease-in-out;outline:2px solid #1492e6}.consonant-CardsGrid .consonant-Card.half-height .consonant-Card-content{position:absolute;text-decoration:none;bottom:0;background-color:transparent;flex-direction:column-reverse;padding:8px 24px 32px}.consonant-CardsGrid .consonant-Card.half-height .consonant-Card-title{margin:0 0 5px;max-height:2.5rem;padding:0;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:1rem;line-height:1.25rem;font-weight:700;color:#fff;font-style:normal;word-break:break-word;text-align:left;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.consonant-CardsGrid .consonant-Card.half-height .consonant-Card-title :only-child{margin-bottom:0}.consonant-CardsGrid .consonant-Card.half-height .consonant-Card-label{display:block;max-height:1.3125rem;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.3125rem;font-weight:400;color:#fff;font-style:normal;word-break:break-word;text-align:left;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}.consonant-CardsGrid .consonant-Card.half-height .consonant-Card-banner{position:absolute;display:flex;justify-content:flex-start;max-width:56%;max-height:31%;top:16px;right:0;padding:8px 13px 7px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.75rem;line-height:1.0625rem;font-weight:700;color:#fff;font-style:normal;word-break:break-word;text-align:left;letter-spacing:.72px;text-transform:uppercase;border-top-left-radius:4px;border-bottom-left-radius:4px;z-index:2;background-color:#1473e6;user-select:none;overflow-y:auto}.consonant-CardsGrid .consonant-Card.half-height .consonant-Card-bannerIconWrapper{margin-right:4px}.consonant-CardsGrid .consonant-Card.half-height .consonant-Card-bannerIconWrapper img{width:8px;height:8px}.consonant-CardsGrid .consonant-Card.half-height .consonant-Card--labelTop .consonant-Card-content{flex-direction:column-reverse}.consonant-CardsGrid .consonant-Card.half-height .consonant-Card--labelTop .consonant-Card-label{margin-bottom:8px}.consonant-CardsGrid .consonant-Card.half-height .consonant-Card--labelTop .consonant-Card-label :only-child,.consonant-CardsGrid .consonant-Card.half-height .consonant-Card--labelTop .consonant-Card-title{margin-bottom:0}.consonant-CardsGrid .consonant-Card.half-height .consonant-Card.consonant-u-noBorders{border:0}@media only screen and (min-width:600px){.consonant-CardsGrid .consonant-Card.half-height .consonant-Card-title{max-height:2.75rem;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:1.125rem;line-height:1.375rem;font-weight:700;color:#fff;font-style:normal;word-break:break-word;text-align:left}}@media only screen and (min-width:1200px){.consonant-CardsGrid .consonant-Card.half-height{outline:0;position:relative}.consonant-CardsGrid .consonant-Card.half-height:focus:after{content:"";position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;border:2px solid #1473e6;z-index:1}}.consonant-CardsGrid--4up{grid-template-columns:repeat(auto-fit,minmax(225px,1fr))}.consonant-CardsGrid .consonant-Card.double-wide{min-width:300px;max-width:584px;height:448px}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-header{position:relative;height:306px;overflow:hidden;background-color:#eaeaea;background-position:50% 0;background-repeat:no-repeat;background-size:cover}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-videoIco{display:block;position:absolute;width:40px;height:40px;right:24px;bottom:16px;font-size:0;line-height:0;background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg data-name='40' xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg data-name='Ellipse 20182' fill='%231473e6' stroke='%23fff' stroke-width='2'%3E%3Ccircle cx='20' cy='20' r='20' stroke='none'/%3E%3Ccircle cx='20' cy='20' r='19' fill='none'/%3E%3C/g%3E%3Cpath data-name='Path 356676' d='M15 10.833v18.333l13.333-9.167z' fill='%23fff'/%3E%3C/svg%3E") no-repeat 0 0;background-size:cover;z-index:1;cursor:pointer;transform-origin:50% 50%;transition:transform .3s ease-in-out}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-videoIco:active,.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-videoIco:hover{transform:scale(1.1);background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg data-name='40' xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg data-name='Ellipse 20182' fill='%230059c2' stroke='%23fff' stroke-width='2'%3E%3Ccircle cx='20' cy='20' r='20' stroke='none'/%3E%3Ccircle cx='20' cy='20' r='19' fill='none'/%3E%3C/g%3E%3Cpath data-name='Path 356676' d='M15 10.833v18.333l13.333-9.167z' fill='%23fff'/%3E%3C/svg%3E") no-repeat 0 0;transition:transform .3s ease-in-out}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-videoIco:focus{transform:scale(1.1);transition:transform .3s ease-in-out;outline:2px solid #1492e6}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-content{flex-grow:1;display:flex;flex-direction:column;padding:16px 24px 28px;text-decoration:none;background-color:#fff;outline:0;width:100%}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-content:active,.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-content:hover{text-decoration:none}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-content:empty{display:none}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-title{margin:0 0 5px;padding:0;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:1.125rem;line-height:1.375rem;font-weight:700;color:#323232;font-style:normal;word-break:break-word;text-align:left;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-title :only-child{margin-bottom:0}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-logo{position:absolute;display:block;bottom:16px;left:0;padding:7px 24px;border:1px solid transparent;border-top-right-radius:4px;border-bottom-right-radius:4px;background-color:#fff;z-index:1;font-size:0;line-height:0}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-logo img{width:auto;height:auto;max-width:90px;max-height:32px;object-fit:contain;user-select:none}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-label{display:block;margin-bottom:8px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.3125rem;font-weight:400;color:#505050;font-style:normal;word-break:break-word;text-align:left;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-label :only-child{margin-bottom:0}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-banner{position:absolute;display:flex;justify-content:flex-start;max-width:56%;max-height:70%;top:24px;right:0;padding:8px 13px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.75rem;line-height:1.0625rem;font-weight:700;color:#fff;font-style:normal;word-break:break-word;text-align:left;letter-spacing:.72px;text-transform:uppercase;border-top-left-radius:4px;border-bottom-left-radius:4px;z-index:1;background-color:#1473e6;user-select:none;overflow-y:auto}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-bannerIconWrapper{margin-right:4px}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-bannerIconWrapper img{width:8px;height:8px}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-text{margin:0;padding:0;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.3125rem;font-weight:400;color:#747474;font-style:normal;word-break:break-word;text-align:left;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card--contentTop{flex-direction:column-reverse}.consonant-Card--contentTop .consonant-CardsGrid .consonant-Card.double-wide-img{flex-grow:1}.consonant-Card--contentTop .consonant-CardsGrid .consonant-Card.double-wide-content{position:absolute;top:0;left:0;right:0;padding-top:24px;background-color:transparent;z-index:1}.consonant-Card--noTextInfo .consonant-CardsGrid .consonant-Card.double-wide-img{height:100%}.consonant-Card--noTextInfo .consonant-CardsGrid .consonant-Card.double-wide-content{display:none}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card.consonant-u-noBorders{border:0}@media only screen and (min-width:1200px){.consonant-CardsGrid .consonant-Card.double-wide{min-width:500px}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-content{outline:0;position:relative}.consonant-CardsGrid .consonant-Card.double-wide .consonant-Card-content:focus:after{content:"";position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;border:2px solid #1473e6;z-index:1}}@media only screen and (min-width:680px){.consonant-CardsGrid .consonant-Card.double-wide--2up .consonant-Card.double-wide{min-width:500px}.consonant-CardsGrid .consonant-Card.double-wide--3up .consonant-Card.double-wide,.consonant-CardsGrid .consonant-Card.double-wide--4up .consonant-Card.double-wide,.consonant-CardsGrid .consonant-Card.double-wide--5up .consonant-Card.double-wide{grid-template-columns:repeat(auto-fit,minmax(500px,max-content))}}.consonant-CardsGrid .consonant-Card.product{height:auto;min-height:222px}.consonant-CardsGrid .consonant-Card.product .consonant-Card-content{padding:16px 16px 20px}.consonant-CardsGrid .consonant-Card.product .consonant-Card-videoIco{display:block;position:absolute;width:40px;height:40px;right:24px;bottom:16px;font-size:0;line-height:0;background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg data-name='40' xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg data-name='Ellipse 20182' fill='%231473e6' stroke='%23fff' stroke-width='2'%3E%3Ccircle cx='20' cy='20' r='20' stroke='none'/%3E%3Ccircle cx='20' cy='20' r='19' fill='none'/%3E%3C/g%3E%3Cpath data-name='Path 356676' d='M15 10.833v18.333l13.333-9.167z' fill='%23fff'/%3E%3C/svg%3E") no-repeat 0 0;background-size:cover;z-index:1;cursor:pointer;transform-origin:50% 50%;transition:transform .3s ease-in-out}.consonant-CardsGrid .consonant-Card.product .consonant-Card-videoIco:active,.consonant-CardsGrid .consonant-Card.product .consonant-Card-videoIco:hover{transform:scale(1.1);background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg data-name='40' xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg data-name='Ellipse 20182' fill='%230059c2' stroke='%23fff' stroke-width='2'%3E%3Ccircle cx='20' cy='20' r='20' stroke='none'/%3E%3Ccircle cx='20' cy='20' r='19' fill='none'/%3E%3C/g%3E%3Cpath data-name='Path 356676' d='M15 10.833v18.333l13.333-9.167z' fill='%23fff'/%3E%3C/svg%3E") no-repeat 0 0;transition:transform .3s ease-in-out}.consonant-CardsGrid .consonant-Card.product .consonant-Card-videoIco:focus{transform:scale(1.1);transition:transform .3s ease-in-out;outline:2px solid #1492e6}.consonant-CardsGrid .consonant-Card.product .consonant-Card-row{display:flex;flex-direction:row;margin-bottom:16px;align-items:center}.consonant-CardsGrid .consonant-Card.product .consonant-Card-title{flex:1;display:-webkit-box;-webkit-box-orient:vertical;max-height:2.75rem;margin:6px 0 10px;text-decoration:none;word-break:break-word;-webkit-line-clamp:2;overflow:hidden}.consonant-CardsGrid .consonant-Card.product .consonant-Card-text{display:-webkit-box;-webkit-box-orient:vertical;max-height:3.9375rem;margin:0 0 20px;padding:0;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.3125rem;font-weight:400;color:#747474;font-style:normal;word-break:break-word;text-align:left;overflow:hidden}.consonant-CardsGrid .consonant-Card.product .consonant-Card-text:empty{display:none}.consonant-CardsGrid .consonant-Card.text-card{height:auto}.consonant-CardsGrid .consonant-Card.text-card .consonant-Card-content{padding:16px;border-bottom-left-radius:4px;border-bottom-right-radius:4px;padding-bottom:24px}.consonant-CardsGrid .consonant-Card.text-card .consonant-Card-header{flex-grow:1;position:relative;width:100%;padding:16px 0 0 16px;height:64px;max-height:64px;border-top-left-radius:4px;border-top-right-radius:4px;background-image:none!important}.consonant-CardsGrid .consonant-Card.text-card .consonant-Card-videoIco{display:block;position:absolute;width:40px;height:40px;right:24px;bottom:16px;font-size:0;line-height:0;background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg data-name='40' xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg data-name='Ellipse 20182' fill='%231473e6' stroke='%23fff' stroke-width='2'%3E%3Ccircle cx='20' cy='20' r='20' stroke='none'/%3E%3Ccircle cx='20' cy='20' r='19' fill='none'/%3E%3C/g%3E%3Cpath data-name='Path 356676' d='M15 10.833v18.333l13.333-9.167z' fill='%23fff'/%3E%3C/svg%3E") no-repeat 0 0;background-size:cover;z-index:1;cursor:pointer;transform-origin:50% 50%;transition:transform .3s ease-in-out}.consonant-CardsGrid .consonant-Card.text-card .consonant-Card-videoIco:active,.consonant-CardsGrid .consonant-Card.text-card .consonant-Card-videoIco:hover{transform:scale(1.1);background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg data-name='40' xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg data-name='Ellipse 20182' fill='%230059c2' stroke='%23fff' stroke-width='2'%3E%3Ccircle cx='20' cy='20' r='20' stroke='none'/%3E%3Ccircle cx='20' cy='20' r='19' fill='none'/%3E%3C/g%3E%3Cpath data-name='Path 356676' d='M15 10.833v18.333l13.333-9.167z' fill='%23fff'/%3E%3C/svg%3E") no-repeat 0 0;transition:transform .3s ease-in-out}.consonant-CardsGrid .consonant-Card.text-card .consonant-Card-videoIco:focus{transform:scale(1.1);transition:transform .3s ease-in-out;outline:2px solid #1492e6}.consonant-CardsGrid .consonant-Card.text-card .consonant-Card-logo{display:block;width:48px;height:48px;overflow:hidden;background-size:cover;background-position:50%;border-radius:4px;font-size:0;line-height:0}.consonant-CardsGrid .consonant-Card.text-card .consonant-Card-logo img{width:48px;height:48px;object-fit:cover;user-select:none}.consonant-CardsGrid .consonant-Card.text-card .consonant-Card-label{display:none;max-width:100%;margin-bottom:4px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1rem;font-weight:400;color:#505050;font-style:normal;word-break:break-word;text-align:left;text-decoration:none;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.consonant-CardsGrid .consonant-Card.text-card .consonant-Card-title{max-height:2.75rem;margin:0 0 6px;font-size:1.125rem;line-height:1.375rem;font-weight:700;color:#323232}.consonant-CardsGrid .consonant-Card.text-card .consonant-Card-text,.consonant-CardsGrid .consonant-Card.text-card .consonant-Card-title{display:-webkit-box;-webkit-box-orient:vertical;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-style:normal;word-break:break-word;text-align:left}.consonant-CardsGrid .consonant-Card.text-card .consonant-Card-text{max-height:3.9375rem;margin:0 0 14px;padding:0;font-size:.875rem;line-height:1.3125rem;font-weight:400;color:#747474;-webkit-line-clamp:3;overflow:hidden}.consonant-CardsGrid .consonant-Card.text-card .consonant-Card-text:empty{display:none}.consonant-Card-label+.consonant-CardsGrid .consonant-Card.text-card-title+p{max-height:3rem;line-height:1rem}.consonant-CardsGrid .consonant-Card.text-card .consonant-Card-banner{position:absolute;display:flex;justify-content:flex-start;max-width:56%;max-height:70%;top:16px;right:0;padding:8px 13px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.75rem;line-height:1.0625rem;font-weight:700;color:#fff;font-style:normal;word-break:break-word;text-align:left;letter-spacing:.72px;text-transform:uppercase;border-top-left-radius:4px;border-bottom-left-radius:4px;z-index:1;background-color:#1473e6;user-select:none;overflow-y:auto}.consonant-CardsGrid .consonant-Card.text-card .consonant-Card-bannerIconWrapper{margin-right:4px}.consonant-CardsGrid .consonant-Card.text-card .consonant-Card-bannerIconWrapper img{width:8px;height:8px}.consonant-CardsGrid .consonant-Card.text-card .consonant-Card-badge{position:absolute;display:block;max-width:36%;max-height:50%;top:24px;left:24px;padding:4px 11px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.75rem;line-height:1rem;font-weight:400;color:#747474;font-style:normal;word-break:break-word;text-align:left;border:1px solid #959595;border-radius:4px;background-color:#fff;overflow-y:auto;z-index:1}.consonant-CardsGrid .consonant-Card.text-card .consonant-DateIntervalInfobit{display:none}.consonant-CardsGrid .consonant-Card.text-card .consonant-BtnInfobit{margin-left:0}.consonant-LinkBlocker{position:absolute;top:0;left:0;display:block;background-color:transparent;width:100%;height:100%;cursor:pointer;z-index:1}.consonant-CardFooter{margin-top:auto;padding-top:24px}.consonant-CardFooter:not(:last-child){padding-top:0;padding-bottom:10px}.consonant-CardFooter+.consonant-CardFooter{margin-top:0;padding-top:10px}.consonant-CardFooter+.consonant-CardFooter:not(.consonant-CardFooter--divider){padding-top:0}.consonant-CardFooter--divider:last-child{border-top:1px solid #eaeaea}.consonant-CardFooter-row{display:flex;width:100%;justify-content:space-between;align-items:stretch;height:32px}.consonant-CardFooter-cell{display:flex;justify-content:flex-start;align-items:center;max-width:100%;flex-basis:auto;flex-grow:1}.consonant-CardFooter-cell:empty{display:none}.consonant-CardFooter-cell--left>:first-child{margin-left:0}.consonant-CardFooter-cell--center{justify-content:center}.consonant-CardFooter-cell--center:first-child:not(:only-child){justify-content:flex-start}.consonant-CardFooter-cell--center:first-child>:first-child{margin-left:0}.consonant-CardFooter-cell--right{justify-content:flex-end}.consonant-CardFooter-cell>:nth-of-type(n+11){display:none}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.consonant-CardFooter-cell{width:100%}}.consonant-CardFooter+.consonant-CardFooter~.consonant-CardFooter{display:none}span+h2+p+.consonant-CardFooter+.consonant-CardFooter{margin-bottom:-10px}[data-cells="3"]:not(.consonant-CardFooter-row--fluid) .consonant-CardFooter-cell{max-width:33.33333333%}[data-cells="2"]:not(.consonant-CardFooter-row--fluid) .consonant-CardFooter-cell{max-width:50%}[data-cells="1"]:not(.consonant-CardFooter-row--fluid) .consonant-CardFooter-cell{max-width:100%}[data-cells="0"]:not(.consonant-CardFooter-row--fluid) .consonant-CardFooter-cell{max-width:Infinity%}.consonant-BtnInfobit{display:flex;justify-content:center;align-items:center;min-width:76px;max-width:100%;height:32px;max-height:32px;margin-left:16px;padding-left:16px;padding-right:16px;text-decoration:none;border:2px solid #505050;border-radius:16px;background-color:#fff;cursor:pointer;transition:border-color .3s ease-in-out,background-color .3s ease-in-out}.consonant-BtnInfobit span{font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.8235rem;line-height:.9375rem;font-weight:700;color:#505050;font-style:normal;word-break:break-word;text-align:center;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;transition:color .3s ease-in-out}.consonant-BtnInfobit:hover{text-decoration:none!important;border-color:#505050;background-color:#505050}.consonant-BtnInfobit:hover span{color:#fff}.consonant-BtnInfobit:active{text-decoration:none!important;border-color:#323232;background-color:#323232}.consonant-BtnInfobit:active span{color:#fff}.consonant-BtnInfobit:focus{outline:0}@media only screen and (min-width:1200px){.consonant-BtnInfobit:focus{outline:2px solid #1492e6}}.consonant-BtnInfobit--cta{background-color:#2680eb;border-color:#2680eb}.consonant-BtnInfobit--cta span{color:#fff}.consonant-BtnInfobit--cta:hover{text-decoration:none!important;background-color:#1473e6;border-color:#1473e6}.consonant-BtnInfobit--cta:hover span{color:#fff}.consonant-BtnInfobit--cta:active{text-decoration:none!important;background-color:#0d66d0;border-color:#0d66d0}.consonant-BtnInfobit--cta:active span{color:#fff}.consonant-BtnInfobit-ico{width:auto;height:auto;max-width:24px;max-height:24px;margin-right:8px;overflow:hidden;object-fit:cover;user-select:none}.consonant-BtnInfobit-ico--last{order:1;margin-left:8px;margin-right:0}.consonant-BtnInfobit-ico:only-child{margin:0}.consonant-PriceInfobit{display:flex;justify-content:flex-start;align-items:baseline;min-width:0;max-width:100%;margin-left:16px}.consonant-PriceInfobit-price{max-width:100%;flex-shrink:0;font-size:1.125rem;color:#323232}.consonant-PriceInfobit-price,.consonant-PriceInfobit-term{font-family:adobe-clean,Segoe UI,Roboto,sans-serif;line-height:1.6875rem;font-weight:400;font-style:normal;word-break:break-word;text-align:left;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.consonant-PriceInfobit-term{position:relative;flex-shrink:1;font-size:.875rem;color:#959595}.consonant-PriceInfobit-term:before{content:"/"}.consonant-IconWithTextInfobit{display:flex;justify-content:flex-start;align-items:center;min-width:0;max-width:100%;margin-left:16px}.consonant-IconWithTextInfobit img{display:block;width:auto;height:auto;max-width:80px;max-height:22px;margin-right:4px;object-fit:contain;user-select:none}.consonant-IconWithTextInfobit-text{max-width:100%;max-height:2rem;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1rem;font-weight:400;color:#747474;font-style:normal;word-break:break-word;text-align:left;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.consonant-LinkWithIcoInfobit{display:flex;justify-content:flex-start;align-items:center;min-width:0;max-width:100%;margin-left:16px;text-decoration:none}.consonant-LinkWithIcoInfobit:focus{outline:0}@media only screen and (min-width:1200px){.consonant-LinkWithIcoInfobit:focus{outline:2px solid #1492e6}}.consonant-LinkWithIcoInfobit span{max-width:100%;max-height:2rem;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.9375rem;line-height:1rem;font-weight:700;color:#2680eb;font-style:normal;word-break:break-word;text-align:left;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.consonant-LinkWithIcoInfobit:hover span{text-decoration:none;color:#1473e6}.consonant-LinkWithIcoInfobit:active span{text-decoration:none;color:#0d66d0}.consonant-LinkWithIcoInfobit img{display:block;width:18px;height:auto;max-width:18px;max-height:18px;object-fit:contain;user-select:none}.consonant-LinkWithIcoInfobit img:not(:last-child){margin-right:8px}.consonant-RatingInfobit{display:flex;justify-content:flex-start;align-items:center;max-width:100%;margin-left:16px}.consonant-RatingInfobit--negMargin{margin-right:-24px}.consonant-RatingInfobit-stars{display:block;position:relative;height:15px;max-width:100%;white-space:nowrap}.consonant-RatingInfobit-stars:before{content:"";display:block;position:relative;height:15px;background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg id='Layer_1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 15'%3E%3Cstyle%3E.st0{fill:none}.st1{fill:%23d3d3d3}%3C/style%3E%3Cg id='Shape'%3E%3Cpath class='st0' d='M8.6.7c-.1 0-.3.1-.3.2L6.4 5.7l-5.2.2c-.2 0-.3.2-.3.4 0 .1 0 .2.1.2l4 3.2-1.4 5c0 .2.1.3.2.4h.1c.1 0 .1 0 .2-.1l4.3-2.8 4.3 2.8c.1.1.3.1.4-.1 0-.1.1-.2 0-.3l-1.4-5 4-3.2c.1-.1.2-.3 0-.4.3 0 .2-.1.1-.1l-5.2-.2L8.9.9C8.8.8 8.7.7 8.6.7z' transform='translate(-.029 -.412)'/%3E%3Cpath class='st1' d='M8.6 2.2L7.1 6l-.2.4h-.5l-4 .2 3.2 2.5.4.3-.2.5-1.1 3.9 3.4-2.2.4-.3.4.3 3.4 2.2-1.1-3.9-.1-.5.4-.3 3.2-2.5-4-.2h-.5L10 6 8.6 2.2m0-1.5c.1 0 .2.1.3.2l1.8 4.8 5.2.2c.1 0 .2.1.3.2 0 .1 0 .3-.1.3l-4 3.2 1.4 5v.1c0 .1-.1.2-.2.3h-.2c-.1 0-.1 0-.2-.1l-4.3-2.8-4.3 2.8c-.1 0-.1.1-.2.1H4c-.1 0-.2-.1-.2-.1 0-.1-.1-.2 0-.2l1.4-5L1 6.5c-.1-.1-.1-.2-.1-.3.1-.2.2-.3.3-.3l5.2-.2L8.3.9c0-.1.1-.2.3-.2z' transform='translate(-.029 -.412)'/%3E%3C/g%3E%3C/svg%3E") repeat-x 0 0;background-size:17px 15px;z-index:1;overflow:hidden}.consonant-RatingInfobit-stars:after{content:"";display:block;position:absolute;height:15px;background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' id='Layer_1' viewBox='0 0 17 15'%3E%3Cstyle%3E.st0{fill:%231473e6}%3C/style%3E%3Cg id='Shape'%3E%3Cpath class='st0' d='M8.6.7c-.1 0-.3.1-.3.2L6.4 5.7l-5.2.2c-.2 0-.3.2-.3.4 0 .1 0 .2.1.2l4 3.2-1.4 5c0 .2.1.3.2.4h.1c.1 0 .1 0 .2-.1l4.3-2.8 4.3 2.8c.1.1.3.1.4-.1 0-.1.1-.2 0-.3l-1.4-5 4-3.2c.1-.1.2-.3 0-.4.3 0 .2-.1.1-.1l-5.2-.2L8.9.9C8.8.8 8.7.7 8.6.7z' transform='translate(-.029 -.412)'/%3E%3Cpath class='st0' d='M8.6 2.2L7.1 6l-.2.4h-.5l-4 .2 3.2 2.5.4.3-.2.5-1.1 3.9 3.4-2.2.4-.3.4.3 3.4 2.2-1.1-3.9-.1-.5.4-.3 3.2-2.5-4-.2h-.5L10 6 8.6 2.2m0-1.5c.1 0 .2.1.3.2l1.8 4.8 5.2.2c.1 0 .2.1.3.2 0 .1 0 .3-.1.3l-4 3.2 1.4 5v.1c0 .1-.1.2-.2.3h-.2c-.1 0-.1 0-.2-.1l-4.3-2.8-4.3 2.8c-.1 0-.1.1-.2.1H4c-.1 0-.2-.1-.2-.1 0-.1-.1-.2 0-.2l1.4-5L1 6.5c-.1-.1-.1-.2-.1-.3.1-.2.2-.3.3-.3l5.2-.2L8.3.9c0-.1.1-.2.3-.2z' transform='translate(-.029 -.412)'/%3E%3C/g%3E%3C/svg%3E") repeat-x 0 0;background-size:17px 15px;z-index:2;left:0;top:0;bottom:0;overflow:hidden}.consonant-RatingInfobit-text{max-width:35%;margin-left:7px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.375rem;font-weight:400;color:#959595;font-style:normal;word-break:break-word;text-align:left;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.consonant-RatingInfobit[data-stars="5"]{min-width:109px}.consonant-RatingInfobit[data-stars="5"] .consonant-RatingInfobit-stars:before{width:85px}.consonant-RatingInfobit[data-stars="4"]{min-width:92px}.consonant-RatingInfobit[data-stars="4"] .consonant-RatingInfobit-stars:before{width:68px}.consonant-RatingInfobit[data-stars="3"]{min-width:75px}.consonant-RatingInfobit[data-stars="3"] .consonant-RatingInfobit-stars:before{width:51px}.consonant-RatingInfobit[data-stars="2"]{min-width:58px}.consonant-RatingInfobit[data-stars="2"] .consonant-RatingInfobit-stars:before{width:34px}.consonant-RatingInfobit[data-stars="1"]{min-width:41px}.consonant-RatingInfobit[data-stars="1"] .consonant-RatingInfobit-stars:before{width:17px}.consonant-RatingInfobit-stars[data-rating="100"]:after{width:100%}.consonant-RatingInfobit-stars[data-rating="99"]:after{width:99%}.consonant-RatingInfobit-stars[data-rating="98"]:after{width:98%}.consonant-RatingInfobit-stars[data-rating="97"]:after{width:97%}.consonant-RatingInfobit-stars[data-rating="96"]:after{width:96%}.consonant-RatingInfobit-stars[data-rating="95"]:after{width:95%}.consonant-RatingInfobit-stars[data-rating="94"]:after{width:94%}.consonant-RatingInfobit-stars[data-rating="93"]:after{width:93%}.consonant-RatingInfobit-stars[data-rating="92"]:after{width:92%}.consonant-RatingInfobit-stars[data-rating="91"]:after{width:91%}.consonant-RatingInfobit-stars[data-rating="90"]:after{width:90%}.consonant-RatingInfobit-stars[data-rating="89"]:after{width:89%}.consonant-RatingInfobit-stars[data-rating="88"]:after{width:88%}.consonant-RatingInfobit-stars[data-rating="87"]:after{width:87%}.consonant-RatingInfobit-stars[data-rating="86"]:after{width:86%}.consonant-RatingInfobit-stars[data-rating="85"]:after{width:85%}.consonant-RatingInfobit-stars[data-rating="84"]:after{width:84%}.consonant-RatingInfobit-stars[data-rating="83"]:after{width:83%}.consonant-RatingInfobit-stars[data-rating="82"]:after{width:82%}.consonant-RatingInfobit-stars[data-rating="81"]:after{width:81%}.consonant-RatingInfobit-stars[data-rating="80"]:after{width:80%}.consonant-RatingInfobit-stars[data-rating="79"]:after{width:79%}.consonant-RatingInfobit-stars[data-rating="78"]:after{width:78%}.consonant-RatingInfobit-stars[data-rating="77"]:after{width:77%}.consonant-RatingInfobit-stars[data-rating="76"]:after{width:76%}.consonant-RatingInfobit-stars[data-rating="75"]:after{width:75%}.consonant-RatingInfobit-stars[data-rating="74"]:after{width:74%}.consonant-RatingInfobit-stars[data-rating="73"]:after{width:73%}.consonant-RatingInfobit-stars[data-rating="72"]:after{width:72%}.consonant-RatingInfobit-stars[data-rating="71"]:after{width:71%}.consonant-RatingInfobit-stars[data-rating="70"]:after{width:70%}.consonant-RatingInfobit-stars[data-rating="69"]:after{width:69%}.consonant-RatingInfobit-stars[data-rating="68"]:after{width:68%}.consonant-RatingInfobit-stars[data-rating="67"]:after{width:67%}.consonant-RatingInfobit-stars[data-rating="66"]:after{width:66%}.consonant-RatingInfobit-stars[data-rating="65"]:after{width:65%}.consonant-RatingInfobit-stars[data-rating="64"]:after{width:64%}.consonant-RatingInfobit-stars[data-rating="63"]:after{width:63%}.consonant-RatingInfobit-stars[data-rating="62"]:after{width:62%}.consonant-RatingInfobit-stars[data-rating="61"]:after{width:61%}.consonant-RatingInfobit-stars[data-rating="60"]:after{width:60%}.consonant-RatingInfobit-stars[data-rating="59"]:after{width:59%}.consonant-RatingInfobit-stars[data-rating="58"]:after{width:58%}.consonant-RatingInfobit-stars[data-rating="57"]:after{width:57%}.consonant-RatingInfobit-stars[data-rating="56"]:after{width:56%}.consonant-RatingInfobit-stars[data-rating="55"]:after{width:55%}.consonant-RatingInfobit-stars[data-rating="54"]:after{width:54%}.consonant-RatingInfobit-stars[data-rating="53"]:after{width:53%}.consonant-RatingInfobit-stars[data-rating="52"]:after{width:52%}.consonant-RatingInfobit-stars[data-rating="51"]:after{width:51%}.consonant-RatingInfobit-stars[data-rating="50"]:after{width:50%}.consonant-RatingInfobit-stars[data-rating="49"]:after{width:49%}.consonant-RatingInfobit-stars[data-rating="48"]:after{width:48%}.consonant-RatingInfobit-stars[data-rating="47"]:after{width:47%}.consonant-RatingInfobit-stars[data-rating="46"]:after{width:46%}.consonant-RatingInfobit-stars[data-rating="45"]:after{width:45%}.consonant-RatingInfobit-stars[data-rating="44"]:after{width:44%}.consonant-RatingInfobit-stars[data-rating="43"]:after{width:43%}.consonant-RatingInfobit-stars[data-rating="42"]:after{width:42%}.consonant-RatingInfobit-stars[data-rating="41"]:after{width:41%}.consonant-RatingInfobit-stars[data-rating="40"]:after{width:40%}.consonant-RatingInfobit-stars[data-rating="39"]:after{width:39%}.consonant-RatingInfobit-stars[data-rating="38"]:after{width:38%}.consonant-RatingInfobit-stars[data-rating="37"]:after{width:37%}.consonant-RatingInfobit-stars[data-rating="36"]:after{width:36%}.consonant-RatingInfobit-stars[data-rating="35"]:after{width:35%}.consonant-RatingInfobit-stars[data-rating="34"]:after{width:34%}.consonant-RatingInfobit-stars[data-rating="33"]:after{width:33%}.consonant-RatingInfobit-stars[data-rating="32"]:after{width:32%}.consonant-RatingInfobit-stars[data-rating="31"]:after{width:31%}.consonant-RatingInfobit-stars[data-rating="30"]:after{width:30%}.consonant-RatingInfobit-stars[data-rating="29"]:after{width:29%}.consonant-RatingInfobit-stars[data-rating="28"]:after{width:28%}.consonant-RatingInfobit-stars[data-rating="27"]:after{width:27%}.consonant-RatingInfobit-stars[data-rating="26"]:after{width:26%}.consonant-RatingInfobit-stars[data-rating="25"]:after{width:25%}.consonant-RatingInfobit-stars[data-rating="24"]:after{width:24%}.consonant-RatingInfobit-stars[data-rating="23"]:after{width:23%}.consonant-RatingInfobit-stars[data-rating="22"]:after{width:22%}.consonant-RatingInfobit-stars[data-rating="21"]:after{width:21%}.consonant-RatingInfobit-stars[data-rating="20"]:after{width:20%}.consonant-RatingInfobit-stars[data-rating="19"]:after{width:19%}.consonant-RatingInfobit-stars[data-rating="18"]:after{width:18%}.consonant-RatingInfobit-stars[data-rating="17"]:after{width:17%}.consonant-RatingInfobit-stars[data-rating="16"]:after{width:16%}.consonant-RatingInfobit-stars[data-rating="15"]:after{width:15%}.consonant-RatingInfobit-stars[data-rating="14"]:after{width:14%}.consonant-RatingInfobit-stars[data-rating="13"]:after{width:13%}.consonant-RatingInfobit-stars[data-rating="12"]:after{width:12%}.consonant-RatingInfobit-stars[data-rating="11"]:after{width:11%}.consonant-RatingInfobit-stars[data-rating="10"]:after{width:10%}.consonant-RatingInfobit-stars[data-rating="9"]:after{width:9%}.consonant-RatingInfobit-stars[data-rating="8"]:after{width:8%}.consonant-RatingInfobit-stars[data-rating="7"]:after{width:7%}.consonant-RatingInfobit-stars[data-rating="6"]:after{width:6%}.consonant-RatingInfobit-stars[data-rating="5"]:after{width:5%}.consonant-RatingInfobit-stars[data-rating="4"]:after{width:4%}.consonant-RatingInfobit-stars[data-rating="3"]:after{width:3%}.consonant-RatingInfobit-stars[data-rating="2"]:after{width:2%}.consonant-RatingInfobit-stars[data-rating="1"]:after{width:1%}.consonant-RatingInfobit-stars[data-rating="0"]:after{width:0}.consonant-RatingInfobit-stars[data-rating="0"]:after,.consonant-RatingInfobit-stars[data-rating="1"]:after,.consonant-RatingInfobit-stars[data-rating="2"]:after,.consonant-RatingInfobit-stars[data-rating="3"]:after,.consonant-RatingInfobit-stars[data-rating="4"]:after,.consonant-RatingInfobit-stars[data-rating="5"]:after,.consonant-RatingInfobit-stars[data-rating="6"]:after,.consonant-RatingInfobit-stars[data-rating="7"]:after,.consonant-RatingInfobit-stars[data-rating="8"]:after,.consonant-RatingInfobit-stars[data-rating="9"]:after,.consonant-RatingInfobit-stars[data-rating="10"]:after,.consonant-RatingInfobit-stars[data-rating="11"]:after,.consonant-RatingInfobit-stars[data-rating="12"]:after,.consonant-RatingInfobit-stars[data-rating="13"]:after,.consonant-RatingInfobit-stars[data-rating="14"]:after,.consonant-RatingInfobit-stars[data-rating="15"]:after,.consonant-RatingInfobit-stars[data-rating="16"]:after,.consonant-RatingInfobit-stars[data-rating="17"]:after,.consonant-RatingInfobit-stars[data-rating="18"]:after,.consonant-RatingInfobit-stars[data-rating="19"]:after,.consonant-RatingInfobit-stars[data-rating="20"]:after{background-size:cover}.consonant-BookmarkInfobit{margin-left:16px;padding:0;font-size:0;line-height:0;border:0;outline:0;background-color:transparent}.consonant-BookmarkInfobit:focus{outline:0}@media only screen and (min-width:1200px){.consonant-BookmarkInfobit:focus{outline:2px solid #1492e6}}.consonant-BookmarkInfobit.is-active .consonant-BookmarkInfobit-ico{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 18'%3E%3Cpath stroke-width='1.5' stroke='%23747474' fill='%23747474' d='M13.6.6c-1.7.1-3.3 1-4.1 2.5C8.6 1.6 7.1.7 5.5.6c-2.8 0-5 2.2-5 5 0 4.7 9 10.8 9 10.8s9-6 9-10.8c0-2.7-2.1-5-4.9-5z'/%3E%3C/svg%3E")}.consonant-BookmarkInfobit.is-disabled{pointer-events:none;opacity:.5}.consonant-BookmarkInfobit-ico{display:block;width:19px;height:17px;background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 18'%3E%3Cpath stroke-width='1.5' fill='%23fff' stroke='%23747474' d='M13.6.6c-1.7.1-3.3 1-4.1 2.5C8.6 1.6 7.1.7 5.5.6c-2.8 0-5 2.2-5 5 0 4.7 9 10.8 9 10.8s9-6 9-10.8c0-2.7-2.1-5-4.9-5z'/%3E%3C/svg%3E") no-repeat 50% 50%;background-size:contain}.consonant-DateIntervalInfobit{display:block;min-width:0;max-width:100%;max-height:2rem;margin-left:16px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1rem;font-weight:400;color:#747474;font-style:normal;word-break:break-word;text-align:left;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;text-overflow:clip;overflow:hidden}.consonant-ProgressInfobit{min-width:0;max-width:100%;width:100%;margin-left:16px}.consonant-ProgressInfobit-wrapper{display:flex;justify-content:space-between;align-self:flex-start;margin-bottom:5px}.consonant-ProgressInfobit-text{display:block;max-width:100%;padding-right:8px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1.375rem;font-weight:700;color:#747474;font-style:normal;word-break:break-word;text-align:left;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;letter-spacing:.14px;overflow:hidden}.consonant-ProgressInfobit-text:last-of-type{padding-right:0}.consonant-ProgressInfobit-text--italic{font-style:italic}.consonant-ProgressInfobit-el{position:relative;width:100%;height:5px;background-color:#fff;border:1px solid #d3d3d3;border-radius:5px}.consonant-ProgressInfobit-val{position:absolute;top:-1px;bottom:-1px;left:-1px;z-index:1;border-radius:5px;font-size:0;line-height:0}.consonant-TextInfobit{min-width:0;max-width:100%;max-height:2rem;margin:0 0 0 16px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.875rem;line-height:1rem;font-weight:400;color:#747474;font-style:normal;word-break:break-word;text-align:left;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}img+.consonant-TextInfobit{margin-left:4px}.consonant-IconInfobit{display:block;min-width:14px;width:auto;height:auto;max-width:28px;max-height:28px;margin-left:16px;object-fit:contain;user-select:none}.consonant-IconInfobit+.consonant-IconInfobit{margin-left:12px}.consonant-LinkInfobit{min-width:0;max-width:100%;max-height:2rem;margin-left:16px;font-family:adobe-clean,Segoe UI,Roboto,sans-serif;font-size:.9375rem;line-height:1.375rem;font-weight:700;color:#2680eb;font-style:normal;word-break:break-word;text-align:left;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;text-decoration:none;transition:color .3s ease-in-out}.consonant-LinkInfobit:hover{color:#1473e6;text-decoration:none}.consonant-LinkInfobit:active{color:#0d66d0;text-decoration:none}.consonant-LinkInfobit:focus{outline:0}@media only screen and (min-width:1200px){.consonant-LinkInfobit:focus{outline:2px solid #1492e6}}:not(:last-of-type):nth-child(2)>.consonant-LinkInfobit:only-child{margin-right:0}:lang(ja) .consonant-Wrapper,:lang(ko) .consonant-Wrapper,:lang(th) .consonant-Wrapper,:lang(tw) .consonant-Wrapper,:lang(zh) .consonant-Wrapper{font-family:inherit}:lang(ja) .consonant-CardsGrid .consonant-Card.half-height .consonant-Card-title,:lang(ja) .consonant-CardsGrid .consonant-Card.one-half .consonant-Card-title,:lang(ko) .consonant-CardsGrid .consonant-Card.half-height .consonant-Card-title,:lang(ko) .consonant-CardsGrid .consonant-Card.one-half .consonant-Card-title,:lang(th) .consonant-CardsGrid .consonant-Card.half-height .consonant-Card-title,:lang(th) .consonant-CardsGrid .consonant-Card.one-half .consonant-Card-title,:lang(tw) .consonant-CardsGrid .consonant-Card.half-height .consonant-Card-title,:lang(tw) .consonant-CardsGrid .consonant-Card.one-half .consonant-Card-title,:lang(zh) .consonant-CardsGrid .consonant-Card.half-height .consonant-Card-title,:lang(zh) .consonant-CardsGrid .consonant-Card.one-half .consonant-Card-title{font-size:15px;line-height:normal}:lang(ja) .consonant-CardsGrid .consonant-Card.one-half .consonant-Card-text,:lang(ko) .consonant-CardsGrid .consonant-Card.one-half .consonant-Card-text,:lang(th) .consonant-CardsGrid .consonant-Card.one-half .consonant-Card-text,:lang(tw) .consonant-CardsGrid .consonant-Card.one-half .consonant-Card-text,:lang(zh) .consonant-CardsGrid .consonant-Card.one-half .consonant-Card-text{line-height:1.275rem} \ No newline at end of file diff --git a/dist/main.js b/dist/main.js index 7b9efa31..c19f6b3e 100644 --- a/dist/main.js +++ b/dist/main.js @@ -1,5 +1,5 @@ /*! - * Chimera UI Libraries - Build 0.11.20 (3/20/2024, 11:03:52) + * Chimera UI Libraries - Build 0.11.20 (3/19/2024, 10:54:04) * */ /******/ (function(modules) { // webpackBootstrap @@ -871,7 +871,7 @@ var getLinkTarget = exports.getLinkTarget = function getLinkTarget(link) { var ctaAction = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ''; var domain = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : window.location.hostname; - if (ctaAction || link.startsWith('#')) { + if (ctaAction) { return ctaAction; } var target = '_blank'; diff --git a/dist/main.min.js b/dist/main.min.js index cd2e14f1..225b4c32 100644 --- a/dist/main.min.js +++ b/dist/main.min.js @@ -1,12 +1,12 @@ /*! - * Chimera UI Libraries - Build 0.11.20 (3/20/2024, 11:03:52) + * Chimera UI Libraries - Build 0.11.20 (3/19/2024, 10:54:04) * */!function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=119)}([function(e,t,n){"use strict";(function(t){"production"===t.env.NODE_ENV?e.exports=n(210):e.exports=n(211)}).call(t,n(12))},function(e,t,n){(function(t){if("production"!==t.env.NODE_ENV){var r=n(109);e.exports=n(230)(r.isElement,!0)}else e.exports=n(231)()}).call(t,n(12))},function(e,t,n){var r=n(9),o=n(3),i=n(22),a=n(26),l=n(24),u="prototype",s=function(e,t,n){var c,f,d,p,h=e&s.F,m=e&s.G,v=e&s.S,y=e&s.P,g=e&s.B,b=m?r:v?r[t]||(r[t]={}):(r[t]||{})[u],w=m?o:o[t]||(o[t]={}),T=w[u]||(w[u]={});for(c in m&&(n=t),n)d=((f=!h&&b&&void 0!==b[c])?b:n)[c],p=g&&f?l(d,r):y&&"function"==typeof d?l(Function.call,d):d,b&&a(b,c,d,e&s.U),w[c]!=d&&i(w,c,p),y&&T[c]!=d&&(T[c]=d)};r.core=o,s.F=1,s.G=2,s.S=4,s.P=8,s.B=16,s.W=32,s.U=64,s.R=128,e.exports=s},function(e,t){var n=e.exports={version:"2.6.12"};"number"==typeof __e&&(__e=n)},function(e,t,n){var r=n(41)("wks"),o=n(33),i=n(9).Symbol,a="function"==typeof i;(e.exports=function(e){return r[e]||(r[e]=a&&i[e]||(a?i:o)("Symbol."+e))}).store=r},function(e,t,n){var r; /*! Copyright (c) 2018 Jed Watson. Licensed under the MIT License (MIT), see http://jedwatson.github.io/classnames -*/!function(){"use strict";var n={}.hasOwnProperty;function o(){for(var e=[],t=0;t0&&r.enqueue(t[a],l);var u=Date.parse(Date.parse(t[a].endDate)-n);t[a].endDate&&u>0&&r.enqueue(null,u)}return r};var o=n(222);function i(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);tt(n)?1:0}))},/[a-zA-Z0-9\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF\s.]/g),s=(t.sanitizeText=function(e){if(!e)return"";var t=e.toLowerCase().trim(),n=t.match(u);return t=n?n.join(""):""},t.mapObject=function(e,t){var n={};return Object.keys(e).forEach((function(r){n[r]=t(e[r])})),n}),c=t.isObject=function(e){return!!e&&e.constructor===Object},f=(t.parseToPrimitive=function e(t){if(c(t))return s(t,e);if(Array.isArray(t))return t.map(e);try{return e(JSON.parse(t))}catch(e){return t}},t.isNullish=function(e){return null==e||Number.isNaN(e)},t.isAtleastOneFilterSelected=function(e){return l(e.map((function(e){return e.items}))).some((function(e){return e.selected}))},t.stopPropagation=function(e){return e.stopPropagation()},t.generateRange=function(e,t){var n=e,r=1,o=[];for(t0?t>=n:t<=n;)o.push(n),n+=r;return o},t.getPageStartEnd=function(e,t,n){var r=Math.floor(t/2),o=void 0,i=void 0;return n<=t+1?(o=1,i=n):(o=Math.min(Math.max(1,e-r),n-t),i=Math.max(Math.min(e+r,n),t+1)),[o,i]},t.getStartNumber=function(e,t){return 1===e?1:e*t-(t-1)},t.getEndNumber=function(e,t,n){var r=e*t;return r0&&void 0!==arguments[0]?arguments[0]:"",t=arguments[1];if(!t)return e;return e.replace(/{([A-z]*)}/gi,(function(e,n){return t[n]||e}))},t.getByPath=function(e,t,n){if(!e||!t)return n;for(var r=e,o=t.split("."),i=0;i1&&void 0!==arguments[1]?arguments[1]:0,n=void 0;return function(){for(var r=arguments.length,o=Array(r),i=0;i1?n-1:0),o=1;o1&&void 0!==arguments[1]?arguments[1]:{}).array,n=new URLSearchParams;return Object.entries(e).forEach((function(e){var o=r(e,2),i=o[0],a=o[1];f(i)?Array.isArray(a)?"comma"===t?n.append(i,encodeURIComponent(a)):n.append(i,encodeURIComponent(a.join("|"))):n.append(i,encodeURIComponent(a)):n.append(i,a)})),n.toString()}},t.isDateWithinInterval=function(e,t,n){var r=Date.parse(e),o=Date.parse(t),i=Date.parse(n);return o<=r&&i>r}),p=t.isDateBeforeInterval=function(e,t){return Date.parse(e)1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:window.location.hostname;if(t||e.startsWith("#"))return t;var r="_blank";try{var o=new URL(e).hostname;n===(void 0===o?"":o)&&(r="_self")}catch(e){}return r},t.getGlobalNavHeight=function(){var e=document.querySelector("header");if(!e)return 20;var t=e.getAttribute("daa-lh")&&e.getAttribute("daa-lh").includes("bacom"),n=t?e:document.querySelector(".feds-header-wrapper");return t||n&&n.classList.contains("feds-header-wrapper--sticky")?e.offsetHeight+20:20}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.useRegistered=t.useURLState=t.useLazyLoading=t.useConfig=t.useExpandable=t.useWindowDimensions=void 0;var r=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{}).isRegistered&&r(!0)})).catch((function(){var e,t,n,o,i,l=(e=(0,a.getByPath)(window,"feds.data",null),t=(0,a.getByPath)(e,"eventName",null),n=t&&e[t]?e[t]:null,o=n?n.isRegistered:null,i=(0,a.getByPath)(e,"isRegisteredForMax",null),!(!o&&!i));l&&r(l)}))}}),[n]),n}},function(e,t){e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},function(e,t){var n=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},function(e,t,n){e.exports=!n(16)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},function(e,t,n){var r=n(8);e.exports=function(e){if(!r(e))throw TypeError(e+" is not an object!");return e}},function(e,t){var n,r,o=e.exports={};function i(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function l(e){if(n===setTimeout)return setTimeout(e,0);if((n===i||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:i}catch(e){n=i}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(e){r=a}}();var u,s=[],c=!1,f=-1;function d(){c&&u&&(c=!1,u.length?s=u.concat(s):f=-1,s.length&&p())}function p(){if(!c){var e=l(d);c=!0;for(var t=s.length;t;){for(u=s,s=[];++f1)for(var n=1;n0?o(r(e),9007199254740991):0}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.configType=t.sortOptionType=t.filterType=t.filterItemType=void 0;var r=n(1),o=n(38),i=[r.string,r.number],a=[r.string,r.number],l=[r.bool,r.string],u={title:r.string,endpoint:r.string,cardStyle:r.string,totalResultsText:r.string,resultsPerPage:(0,r.oneOfType)(i),totalCardLimit:(0,r.oneOfType)(a),displayTotalResults:(0,r.oneOfType)(l)},s=[r.string,(0,r.arrayOf)((0,r.shape)(o.cardType)),(0,r.arrayOf)(r.string)],c=[r.bool,r.string],f={enabled:(0,r.oneOfType)(c)},d=t.filterItemType={id:r.string,label:(0,r.oneOfType)([r.string,r.number])},p=t.filterType={id:r.string,group:r.string,items:(0,r.arrayOf)((0,r.shape)(d))},h=[r.string,(0,r.arrayOf)((0,r.shape)(p))],m={type:r.string,filterLogic:r.string,clearFilterText:r.string,leftPanelHeader:r.string,clearAllFiltersText:r.string,enabled:(0,r.oneOfType)(c),filters:(0,r.oneOfType)(h)},v={type:r.string,paginatorPrevLabel:r.string,paginatorNextLabel:r.string,loadMoreButtonText:r.string,enabled:(0,r.oneOfType)(c),loadMoreQuantityText:r.string,paginatorQuantityText:r.string},y={saveCardText:r.string,cardSavedIcon:r.string,unsaveCardText:r.string,cardUnsavedIcon:r.string,selectBookmarksIcon:r.string,enabled:(0,r.oneOfType)(c),bookmarksFilterTitle:r.string,unselectBookmarksIcon:r.string},g=[r.string,(0,r.arrayOf)(r.string)],b={leftPanelTitle:r.string,inputPlaceholderText:r.string,enabled:(0,r.oneOfType)(c),searchFields:(0,r.oneOfType)(g)},w=t.sortOptionType={sort:r.string,label:r.string},T={enabled:(0,r.oneOfType)(c),options:(0,r.oneOfType)([r.string,(0,r.arrayOf)((0,r.shape)(w))])};t.configType={sort:(0,r.shape)(T),search:(0,r.shape)(b),header:(0,r.shape)(f),bookmarks:(0,r.shape)(y),collection:(0,r.shape)(u),pagination:(0,r.shape)(v),filterPanel:(0,r.shape)(m),featuredCards:(0,r.oneOfType)(s)}},function(e,t){e.exports=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e}},function(e,t,n){var r=n(13),o=n(32);e.exports=n(10)?function(e,t,n){return r.f(e,t,o(1,n))}:function(e,t,n){return e[t]=n,e}},function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},function(e,t,n){var r=n(28);e.exports=function(e,t,n){if(r(e),void 0===t)return e;switch(n){case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,o){return e.call(t,n,r,o)}}return function(){return e.apply(t,arguments)}}},function(e,t,n){var r=n(35),o=n(32),i=n(18),a=n(31),l=n(23),u=n(72),s=Object.getOwnPropertyDescriptor;t.f=n(10)?s:function(e,t){if(e=i(e),t=a(t,!0),u)try{return s(e,t)}catch(e){}if(l(e,t))return o(!r.f.call(e,t),e[t])}},function(e,t,n){var r=n(9),o=n(22),i=n(23),a=n(33)("src"),l=n(124),u="toString",s=(""+l).split(u);n(3).inspectSource=function(e){return l.call(e)},(e.exports=function(e,t,n,l){var u="function"==typeof n;u&&(i(n,"name")||o(n,"name",t)),e[t]!==n&&(u&&(i(n,a)||o(n,a,e[t]?""+e[t]:s.join(String(t)))),e===r?e[t]=n:l?e[t]?e[t]=n:o(e,t,n):(delete e[t],o(e,t,n)))})(Function.prototype,u,(function(){return"function"==typeof this&&this[a]||l.call(this)}))},function(e,t){e.exports=!1},function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e}},function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},function(e,t,n){var r=n(75),o=n(54);e.exports=Object.keys||function(e){return r(e,o)}},function(e,t,n){var r=n(8);e.exports=function(e,t){if(!r(e))return e;var n,o;if(t&&"function"==typeof(n=e.toString)&&!r(o=n.call(e)))return o;if("function"==typeof(n=e.valueOf)&&!r(o=n.call(e)))return o;if(!t&&"function"==typeof(n=e.toString)&&!r(o=n.call(e)))return o;throw TypeError("Can't convert object to primitive value")}},function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t){var n=0,r=Math.random();e.exports=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++n+r).toString(36))}},function(e,t){var n=Math.ceil,r=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?r:n)(e)}},function(e,t){t.f={}.propertyIsEnumerable},function(e,t,n){var r=n(29),o=n(4)("toStringTag"),i="Arguments"==r(function(){return arguments}());e.exports=function(e){var t,n,a;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),o))?n:i?r(t):"Object"==(a=r(t))&&"function"==typeof t.callee?"Arguments":a}},function(e,t,n){"use strict"; +*/!function(){"use strict";var n={}.hasOwnProperty;function o(){for(var e=[],t=0;t0&&r.enqueue(t[a],l);var u=Date.parse(Date.parse(t[a].endDate)-n);t[a].endDate&&u>0&&r.enqueue(null,u)}return r};var o=n(222);function i(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);tt(n)?1:0}))},/[a-zA-Z0-9\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF\s.]/g),s=(t.sanitizeText=function(e){if(!e)return"";var t=e.toLowerCase().trim(),n=t.match(u);return t=n?n.join(""):""},t.mapObject=function(e,t){var n={};return Object.keys(e).forEach((function(r){n[r]=t(e[r])})),n}),c=t.isObject=function(e){return!!e&&e.constructor===Object},f=(t.parseToPrimitive=function e(t){if(c(t))return s(t,e);if(Array.isArray(t))return t.map(e);try{return e(JSON.parse(t))}catch(e){return t}},t.isNullish=function(e){return null==e||Number.isNaN(e)},t.isAtleastOneFilterSelected=function(e){return l(e.map((function(e){return e.items}))).some((function(e){return e.selected}))},t.stopPropagation=function(e){return e.stopPropagation()},t.generateRange=function(e,t){var n=e,r=1,o=[];for(t0?t>=n:t<=n;)o.push(n),n+=r;return o},t.getPageStartEnd=function(e,t,n){var r=Math.floor(t/2),o=void 0,i=void 0;return n<=t+1?(o=1,i=n):(o=Math.min(Math.max(1,e-r),n-t),i=Math.max(Math.min(e+r,n),t+1)),[o,i]},t.getStartNumber=function(e,t){return 1===e?1:e*t-(t-1)},t.getEndNumber=function(e,t,n){var r=e*t;return r0&&void 0!==arguments[0]?arguments[0]:"",t=arguments[1];if(!t)return e;return e.replace(/{([A-z]*)}/gi,(function(e,n){return t[n]||e}))},t.getByPath=function(e,t,n){if(!e||!t)return n;for(var r=e,o=t.split("."),i=0;i1&&void 0!==arguments[1]?arguments[1]:0,n=void 0;return function(){for(var r=arguments.length,o=Array(r),i=0;i1?n-1:0),o=1;o1&&void 0!==arguments[1]?arguments[1]:{}).array,n=new URLSearchParams;return Object.entries(e).forEach((function(e){var o=r(e,2),i=o[0],a=o[1];f(i)?Array.isArray(a)?"comma"===t?n.append(i,encodeURIComponent(a)):n.append(i,encodeURIComponent(a.join("|"))):n.append(i,encodeURIComponent(a)):n.append(i,a)})),n.toString()}},t.isDateWithinInterval=function(e,t,n){var r=Date.parse(e),o=Date.parse(t),i=Date.parse(n);return o<=r&&i>r}),p=t.isDateBeforeInterval=function(e,t){return Date.parse(e)1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:window.location.hostname;if(t)return t;var r="_blank";try{var o=new URL(e).hostname;n===(void 0===o?"":o)&&(r="_self")}catch(e){}return r},t.getGlobalNavHeight=function(){var e=document.querySelector("header");if(!e)return 20;var t=e.getAttribute("daa-lh")&&e.getAttribute("daa-lh").includes("bacom"),n=t?e:document.querySelector(".feds-header-wrapper");return t||n&&n.classList.contains("feds-header-wrapper--sticky")?e.offsetHeight+20:20}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.useRegistered=t.useURLState=t.useLazyLoading=t.useConfig=t.useExpandable=t.useWindowDimensions=void 0;var r=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{}).isRegistered&&r(!0)})).catch((function(){var e,t,n,o,i,l=(e=(0,a.getByPath)(window,"feds.data",null),t=(0,a.getByPath)(e,"eventName",null),n=t&&e[t]?e[t]:null,o=n?n.isRegistered:null,i=(0,a.getByPath)(e,"isRegisteredForMax",null),!(!o&&!i));l&&r(l)}))}}),[n]),n}},function(e,t){e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},function(e,t){var n=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},function(e,t,n){e.exports=!n(16)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},function(e,t,n){var r=n(8);e.exports=function(e){if(!r(e))throw TypeError(e+" is not an object!");return e}},function(e,t){var n,r,o=e.exports={};function i(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function l(e){if(n===setTimeout)return setTimeout(e,0);if((n===i||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:i}catch(e){n=i}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(e){r=a}}();var u,s=[],c=!1,f=-1;function d(){c&&u&&(c=!1,u.length?s=u.concat(s):f=-1,s.length&&p())}function p(){if(!c){var e=l(d);c=!0;for(var t=s.length;t;){for(u=s,s=[];++f1)for(var n=1;n0?o(r(e),9007199254740991):0}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.configType=t.sortOptionType=t.filterType=t.filterItemType=void 0;var r=n(1),o=n(38),i=[r.string,r.number],a=[r.string,r.number],l=[r.bool,r.string],u={title:r.string,endpoint:r.string,cardStyle:r.string,totalResultsText:r.string,resultsPerPage:(0,r.oneOfType)(i),totalCardLimit:(0,r.oneOfType)(a),displayTotalResults:(0,r.oneOfType)(l)},s=[r.string,(0,r.arrayOf)((0,r.shape)(o.cardType)),(0,r.arrayOf)(r.string)],c=[r.bool,r.string],f={enabled:(0,r.oneOfType)(c)},d=t.filterItemType={id:r.string,label:(0,r.oneOfType)([r.string,r.number])},p=t.filterType={id:r.string,group:r.string,items:(0,r.arrayOf)((0,r.shape)(d))},h=[r.string,(0,r.arrayOf)((0,r.shape)(p))],m={type:r.string,filterLogic:r.string,clearFilterText:r.string,leftPanelHeader:r.string,clearAllFiltersText:r.string,enabled:(0,r.oneOfType)(c),filters:(0,r.oneOfType)(h)},v={type:r.string,paginatorPrevLabel:r.string,paginatorNextLabel:r.string,loadMoreButtonText:r.string,enabled:(0,r.oneOfType)(c),loadMoreQuantityText:r.string,paginatorQuantityText:r.string},y={saveCardText:r.string,cardSavedIcon:r.string,unsaveCardText:r.string,cardUnsavedIcon:r.string,selectBookmarksIcon:r.string,enabled:(0,r.oneOfType)(c),bookmarksFilterTitle:r.string,unselectBookmarksIcon:r.string},g=[r.string,(0,r.arrayOf)(r.string)],b={leftPanelTitle:r.string,inputPlaceholderText:r.string,enabled:(0,r.oneOfType)(c),searchFields:(0,r.oneOfType)(g)},w=t.sortOptionType={sort:r.string,label:r.string},T={enabled:(0,r.oneOfType)(c),options:(0,r.oneOfType)([r.string,(0,r.arrayOf)((0,r.shape)(w))])};t.configType={sort:(0,r.shape)(T),search:(0,r.shape)(b),header:(0,r.shape)(f),bookmarks:(0,r.shape)(y),collection:(0,r.shape)(u),pagination:(0,r.shape)(v),filterPanel:(0,r.shape)(m),featuredCards:(0,r.oneOfType)(s)}},function(e,t){e.exports=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e}},function(e,t,n){var r=n(13),o=n(32);e.exports=n(10)?function(e,t,n){return r.f(e,t,o(1,n))}:function(e,t,n){return e[t]=n,e}},function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},function(e,t,n){var r=n(28);e.exports=function(e,t,n){if(r(e),void 0===t)return e;switch(n){case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,o){return e.call(t,n,r,o)}}return function(){return e.apply(t,arguments)}}},function(e,t,n){var r=n(35),o=n(32),i=n(18),a=n(31),l=n(23),u=n(72),s=Object.getOwnPropertyDescriptor;t.f=n(10)?s:function(e,t){if(e=i(e),t=a(t,!0),u)try{return s(e,t)}catch(e){}if(l(e,t))return o(!r.f.call(e,t),e[t])}},function(e,t,n){var r=n(9),o=n(22),i=n(23),a=n(33)("src"),l=n(124),u="toString",s=(""+l).split(u);n(3).inspectSource=function(e){return l.call(e)},(e.exports=function(e,t,n,l){var u="function"==typeof n;u&&(i(n,"name")||o(n,"name",t)),e[t]!==n&&(u&&(i(n,a)||o(n,a,e[t]?""+e[t]:s.join(String(t)))),e===r?e[t]=n:l?e[t]?e[t]=n:o(e,t,n):(delete e[t],o(e,t,n)))})(Function.prototype,u,(function(){return"function"==typeof this&&this[a]||l.call(this)}))},function(e,t){e.exports=!1},function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e}},function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},function(e,t,n){var r=n(75),o=n(54);e.exports=Object.keys||function(e){return r(e,o)}},function(e,t,n){var r=n(8);e.exports=function(e,t){if(!r(e))return e;var n,o;if(t&&"function"==typeof(n=e.toString)&&!r(o=n.call(e)))return o;if("function"==typeof(n=e.valueOf)&&!r(o=n.call(e)))return o;if(!t&&"function"==typeof(n=e.toString)&&!r(o=n.call(e)))return o;throw TypeError("Can't convert object to primitive value")}},function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t){var n=0,r=Math.random();e.exports=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++n+r).toString(36))}},function(e,t){var n=Math.ceil,r=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?r:n)(e)}},function(e,t){t.f={}.propertyIsEnumerable},function(e,t,n){var r=n(29),o=n(4)("toStringTag"),i="Arguments"==r(function(){return arguments}());e.exports=function(e){var t,n,a;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),o))?n:i?r(t):"Object"==(a=r(t))&&"function"==typeof t.callee?"Arguments":a}},function(e,t,n){"use strict"; /* object-assign (c) Sindre Sorhus diff --git a/dist/main.source.js b/dist/main.source.js index 4ce2eda6..32f86366 100644 --- a/dist/main.source.js +++ b/dist/main.source.js @@ -105,7 +105,7 @@ eval("var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!\n\tCop /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getGlobalNavHeight = exports.getLinkTarget = exports.getEventBanner = exports.getCurrentDate = exports.isDateBeforeInterval = exports.isDateWithinInterval = exports.qs = exports.mergeDeep = exports.setByPath = exports.debounce = exports.getSelectedItemsCount = exports.getByPath = exports.template = exports.getEndNumber = exports.getStartNumber = exports.getPageStartEnd = exports.generateRange = exports.stopPropagation = exports.isAtleastOneFilterSelected = exports.isNullish = exports.parseToPrimitive = exports.isObject = exports.mapObject = exports.sanitizeText = exports.sortByKey = exports.intersection = exports.isSuperset = exports.chainFromIterable = exports.chain = exports.removeDuplicatesByKey = exports.truncateList = exports.truncateString = exports.readInclusionsFromLocalStorage = exports.readBookmarksFromLocalStorage = exports.saveBookmarksToLocalStorage = undefined;\n\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\nexports.getTransitions = getTransitions;\n\nvar _priorityQueue = __webpack_require__(222);\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\n/**\n * Saves a card to local storage\n * @param {Number} bookmarksValue - The id of the card to save\n * @return {Void}\n */\nvar saveBookmarksToLocalStorage = exports.saveBookmarksToLocalStorage = function saveBookmarksToLocalStorage(bookmarksValue) {\n localStorage.setItem('bookmarks', JSON.stringify(bookmarksValue, null, 2));\n};\n\n/**\n * Returns all cards saved in local storage\n * @return {Array} - All saved bookmarks\n */\nvar readBookmarksFromLocalStorage = exports.readBookmarksFromLocalStorage = function readBookmarksFromLocalStorage() {\n var bookmarks = JSON.parse(localStorage.getItem('bookmarks'));\n return Array.isArray(bookmarks) ? bookmarks : [];\n};\n\nvar readInclusionsFromLocalStorage = exports.readInclusionsFromLocalStorage = function readInclusionsFromLocalStorage() {\n var favorites = JSON.parse(localStorage.getItem('chimera.favorites')) || [];\n var schedule = JSON.parse(localStorage.getItem('chimera.schedule')) || [];\n var lastWatched = localStorage.getItem('chimera.lastWatched') || '';\n\n return new Set([].concat(favorites, [lastWatched], schedule));\n};\n\n/**\n * Helper method to truncate strings\n * @param {String} str - The string to truncate\n * @param {Number} num - How much to truncate\n * @return {String} - The truncated string\n */\nvar truncateString = exports.truncateString = function truncateString(str, num) {\n if (str.length <= num) return str;\n return str.slice(0, num) + '...';\n};\n\n/**\n * Helper method to truncate a list of cards\n * @param {Number} limit - How much to truncate by\n * @param {Array} list - What to truncate\n * @return {Array} - The truncated list\n */\nvar truncateList = exports.truncateList = function truncateList(limit, list) {\n // No limit, return all;\n if (limit < 0) return list;\n\n // Slice received data to required q-ty;\n return list.slice(0, limit);\n};\n\n/**\n * Helper method to remove duplicate cards from list\n * @param {Array} list - The list of cards\n * @param {key} key - What key to search for duplicates for\n * @return {Array} - A list of cards with no duplicates\n */\nvar removeDuplicatesByKey = exports.removeDuplicatesByKey = function removeDuplicatesByKey(list, key) {\n var newList = [];\n var ids = new Set();\n list.forEach(function (item) {\n if (!ids.has(item[key])) {\n newList.push(item);\n ids.add(item[key]);\n }\n });\n return newList;\n};\n\n/**\n * Helper method that chains lists together\n * @param {Any} args - Any set of args\n * @example chain(['A', 'B', 'C'], ['D', 'E', 'F']) --> ['A' 'B' 'C' 'D' 'E' 'F']\n */\nvar chain = exports.chain = function chain() {\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return args.reduce(function (a, b) {\n return a.concat(b);\n }, []);\n};\n\n/**\n * Helper method that chains iterables together\n * @param {Any} args - Any set of iterable arguments\n * @example chainFromIterable(someIterable) --> ['A' 'B' 'C' 'D' 'E' 'F']\n */\nvar chainFromIterable = exports.chainFromIterable = function chainFromIterable(args) {\n return chain.apply(undefined, _toConsumableArray(args));\n};\n\n/**\n * Helper method to determine wheether set A is a superset of set B\n * @param {Set} superset - The first set\n * @param {Set} subset - The second set\n * @return {Boolean} - Whether set A is a superset of set B\n */\nvar isSuperset = exports.isSuperset = function isSuperset(superset, subset) {\n // eslint-disable-next-line no-restricted-syntax\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = subset[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var elem = _step.value;\n\n if (!superset.has(elem)) {\n return false;\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n\n return true;\n};\n\n/**\n * Helper method to do determine whether the two sets have an intersection\n * @param {Set} setA - The first set\n * @param {Set} setB - The second set\n * @return {Boolean} - Whether there is an intersection of elements between the sets\n */\nvar intersection = exports.intersection = function intersection(setA, setB) {\n var intersectionSet = new Set();\n // eslint-disable-next-line no-restricted-syntax\n var _iteratorNormalCompletion2 = true;\n var _didIteratorError2 = false;\n var _iteratorError2 = undefined;\n\n try {\n for (var _iterator2 = setB[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var elem = _step2.value;\n\n if (setA.has(elem)) {\n intersectionSet.add(elem);\n }\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n\n return intersectionSet;\n};\n\n/**\n * Helper method to sort by keys\n * @param {Iterable} iterable - The iterable object\n * @param {Function} keyFunc - The function to apply\n */\nvar sortByKey = exports.sortByKey = function sortByKey(iterable, keyFunc) {\n return [].concat(_toConsumableArray(iterable)).sort(function (a, b) {\n if (keyFunc(a) < keyFunc(b)) return -1;\n if (keyFunc(a) > keyFunc(b)) return 1;\n return 0;\n });\n};\n\nvar allowedChars = /[a-zA-Z0-9\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF\\s.]/g;\n\n/**\n * Returns cleaned up text\n * don't allow urls\n * @param {String} text - The text so sanitize\n * @return {String} - The cleaned up text\n */\nvar sanitizeText = exports.sanitizeText = function sanitizeText(text) {\n if (!text) return '';\n var sanitized = text.toLowerCase().trim();\n // remove any invalid chars\n var matchedAllowedChars = sanitized.match(allowedChars);\n sanitized = matchedAllowedChars ? matchedAllowedChars.join('') : '';\n return sanitized;\n};\n\n/**\n * For a given object, applies a function to key in that object\n * @param {Object} object - The object to apply the function to\n * @param {Function} func - The function to apply to the entries in the object\n * @return {Object} - The new object\n */\nvar mapObject = exports.mapObject = function mapObject(object, func) {\n var newObj = {};\n var keys = Object.keys(object);\n\n keys.forEach(function (key) {\n newObj[key] = func(object[key]);\n });\n\n return newObj;\n};\n\n/**\n * Determines whether the passed in value is an object or not\n * @param {Any} val - Start value in the range array;\n * @return {Boolean} - Whether the passed in value is nullish or not\n */\nvar isObject = exports.isObject = function isObject(val) {\n return !!val && val.constructor === Object;\n};\n\n/**\n * Support method so HTL/Sightly can pass authored properties to React\n * @param {Object} value - Start value in the range array;\n * @return {Object} - Authored config used by react component\n */\nvar parseToPrimitive = exports.parseToPrimitive = function parseToPrimitive(value) {\n if (isObject(value)) {\n return mapObject(value, parseToPrimitive);\n } else if (Array.isArray(value)) {\n return value.map(parseToPrimitive);\n }\n\n try {\n return parseToPrimitive(JSON.parse(value));\n } catch (e) {\n return value;\n }\n};\n\n/**\n * Determines whether the passed in value is nullish or not\n * @param {Any} val - Start value in the range array;\n * @return {Boolean} - Whether the passed in value is nullish or not\n */\nvar isNullish = exports.isNullish = function isNullish(val) {\n return val === undefined || val === null || Number.isNaN(val);\n};\n\nvar isAtleastOneFilterSelected = exports.isAtleastOneFilterSelected = function isAtleastOneFilterSelected(filters) {\n return chainFromIterable(filters.map(function (f) {\n return f.items;\n })).some(function (item) {\n return item.selected;\n });\n};\n\n/**\n * Helper method to stop propagation for events\n * @param {Event} e - The event to stop propagation for\n * @return {Void}\n */\nvar stopPropagation = exports.stopPropagation = function stopPropagation(e) {\n return e.stopPropagation();\n};\n\n/**\n * Return a range of numbers from [start, ... , end];\n * @param {number} startVal - Start value in the range array;\n * @param {number} end - End value in the range array;\n * @return {Array}\n */\nvar generateRange = exports.generateRange = function generateRange(startVal, end) {\n var start = startVal;\n var step = 1;\n var range = [];\n\n if (end < start) {\n step = -step;\n }\n\n while (step > 0 ? end >= start : end <= start) {\n range.push(start);\n start += step;\n }\n\n return range;\n};\n\n/**\n * Gets what start and end numbers should be for a given page\n * @param {number} pageCount - Total pages to display\n * @param {number} currentPageNumber - Current page user is on\n * @param {number} totalPages - Total number of pages available\n * @return {Array} - The start and end page numbers\n */\nvar getPageStartEnd = exports.getPageStartEnd = function getPageStartEnd(currentPageNumber, pageCount, totalPages) {\n var halfPageCount = Math.floor(pageCount / 2);\n var start = void 0;\n var end = void 0;\n\n if (totalPages <= pageCount + 1) {\n // show all pages\n start = 1;\n end = totalPages;\n } else {\n start = Math.min(Math.max(1, currentPageNumber - halfPageCount), totalPages - pageCount);\n end = Math.max(Math.min(currentPageNumber + halfPageCount, totalPages), pageCount + 1);\n }\n\n return [start, end];\n};\n\n/**\n * Gets the start number for Paginator Component\n * @param {Number} currentPageNumber - Current page the user is on\n * @param {Number} showItemsPerPage - How many items to show per page\n * @returns {Number} - The start number for Paginator Component\n */\nvar getStartNumber = exports.getStartNumber = function getStartNumber(currentPageNumber, showItemsPerPage) {\n if (currentPageNumber === 1) return 1;\n return currentPageNumber * showItemsPerPage - (showItemsPerPage - 1);\n};\n\n/**\n * Gets the end number for Paginator Component\n * @param {Number} currentPageNumber - Current page the user is on\n * @param {Number} showItemsPerPage - How many items to show per page\n * @param {Number} totalResults - Total count of cards in collection\n * @returns {Number} - The end number for Paginator Component\n */\nvar getEndNumber = exports.getEndNumber = function getEndNumber(currentPageNumber, showItemsPerPage, totalResults) {\n var res = currentPageNumber * showItemsPerPage;\n return res < totalResults ? res : totalResults;\n};\n\n/**\n * Gets the end number for Paginator Component\n * @param {string} text - template string like a '{0} {1}'\n * @param {object} props - object with props to replace part of text in brackets\n * @returns {string} - ('{placeholderKey}', { placeholderKey: 'placeholderValue' })\n * => 'placeholderValue'\n */\nvar template = exports.template = function template() {\n var text = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var props = arguments[1];\n\n if (!props) return text;\n\n var regExp = /{([A-z]*)}/gi;\n var replacer = function replacer(fullMatch, key) {\n return props[key] || fullMatch;\n };\n\n return text.replace(regExp, replacer);\n};\n\n/**\n * Gets the object/path/defaultValue and return object value by this path\n * @param {Object} object - object to get value\n * @param {String} path - path to searched value\n * @param {any} defaultValue - will return when no value was found\n * @returns {any} - searched value\n */\nvar getByPath = exports.getByPath = function getByPath(object, path, defaultValue) {\n if (!object || !path) return defaultValue;\n\n var result = object;\n var chunks = path.split('.');\n\n for (var index = 0; index < chunks.length; index += 1) {\n var chunk = chunks[index];\n\n /* eslint-disable-next-line no-prototype-builtins */\n if (result != null && result.hasOwnProperty(chunk)) {\n result = result[chunk];\n } else {\n result = defaultValue;\n break;\n }\n }\n\n return result;\n};\n\n/**\n * Return sum of the selected filters\n * @param {items} array - filter items\n * @returns {number} - selected items count\n */\nvar getSelectedItemsCount = exports.getSelectedItemsCount = function getSelectedItemsCount(items) {\n return items.filter(function (_ref) {\n var selected = _ref.selected;\n return Boolean(selected);\n }).length;\n};\n\n/**\n * Func to make debounced functions\n * @param {Function} func - target function\n * @param {number} timeout - debounce delay\n * @returns {func} - debounced function\n */\nvar debounce = exports.debounce = function debounce(func) {\n var timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n\n var timer = void 0;\n\n return function () {\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n clearTimeout(timer);\n\n timer = setTimeout(function () {\n func.apply(undefined, args);\n }, timeout);\n };\n};\n\n/**\n * Set object value by path\n * @param {Object} object - target object\n * @param {string} path - destination path\n * @param {any} value - value which should be assign\n */\nvar setByPath = exports.setByPath = function setByPath(object, path, value) {\n if (!object || !path) return;\n\n var chunks = path.split('.');\n var withoutLast = chunks.slice(0, -1);\n var lastChunk = chunks[chunks.length - 1];\n\n var target = withoutLast.reduce(function (accumulator, chunk) {\n if (!isObject(accumulator[chunk])) {\n accumulator[chunk] = {};\n }\n return accumulator[chunk];\n }, object);\n\n target[lastChunk] = value;\n};\n\n/**\n * Deep merge objects without undefined values\n * @param {Object} target - target object\n * @param {...Object} sources - objects to merge\n * @return {Obect} merge object\n */\nvar mergeDeep = exports.mergeDeep = function mergeDeep(target) {\n for (var _len3 = arguments.length, sources = Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n sources[_key3 - 1] = arguments[_key3];\n }\n\n if (!sources.length) return target;\n\n var source = sources.shift();\n\n if (isObject(target) && isObject(source)) {\n var keys = Object.keys(source);\n\n keys.forEach(function (key) {\n if (isObject(source[key])) {\n if (!target[key]) target[key] = {};\n\n mergeDeep(target[key], source[key]);\n } else if (source[key] !== undefined) {\n Object.assign(target, _defineProperty({}, key, source[key]));\n }\n });\n }\n\n return mergeDeep.apply(undefined, [target].concat(sources));\n};\n\nvar isCaasGroup = function isCaasGroup(group) {\n return group.indexOf('ch_') === 0;\n};\n\n/**\n * Methods to create/parse queryString\n */\nvar qs = exports.qs = {\n parse: function parse(string) {\n var searchParams = new URLSearchParams(string);\n\n return [].concat(_toConsumableArray(searchParams.keys())).reduce(function (accumulator, key) {\n if (!accumulator[key]) {\n var value = searchParams.getAll(key);\n\n if (isCaasGroup(key)) {\n if (value.length === 1) {\n var _value = value,\n _value2 = _slicedToArray(_value, 1),\n firstItem = _value2[0];\n\n if (firstItem.includes('|')) {\n value = firstItem.split('|');\n }\n }\n accumulator[key] = decodeURIComponent(value);\n } else {\n accumulator[key] = value;\n }\n }\n\n return accumulator;\n }, {});\n },\n stringify: function stringify(obj) {\n var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n array = _ref2.array;\n\n var searchParams = new URLSearchParams();\n Object.entries(obj).forEach(function (_ref3) {\n var _ref4 = _slicedToArray(_ref3, 2),\n key = _ref4[0],\n value = _ref4[1];\n\n if (isCaasGroup(key)) {\n if (Array.isArray(value)) {\n if (array === 'comma') {\n searchParams.append(key, encodeURIComponent(value));\n } else {\n searchParams.append(key, encodeURIComponent(value.join('|')));\n }\n } else {\n searchParams.append(key, encodeURIComponent(value));\n }\n } else {\n searchParams.append(key, value);\n }\n });\n\n return searchParams.toString();\n }\n};\n\nvar isDateWithinInterval = exports.isDateWithinInterval = function isDateWithinInterval(currentDate, startDate, endDate) {\n var curr = Date.parse(currentDate);\n var start = Date.parse(startDate);\n var end = Date.parse(endDate);\n\n return start <= curr && end > curr;\n};\n\nvar isDateBeforeInterval = exports.isDateBeforeInterval = function isDateBeforeInterval(currentDate, startDate) {\n var curr = Date.parse(currentDate);\n var start = Date.parse(startDate);\n\n return curr < start;\n};\n\nvar getCurrentDate = exports.getCurrentDate = function getCurrentDate() {\n var urlParams = new URLSearchParams(window.location.search);\n var servertime = parseInt(urlParams.get('servertime'), 10);\n var timeSinceArrival = performance.now();\n var currDate = servertime ? new Date(servertime + timeSinceArrival) : new Date();\n return currDate;\n};\n\nvar getEventBanner = exports.getEventBanner = function foo(startDate, endDate, bannerMap) {\n var currDate = getCurrentDate();\n if (isDateWithinInterval(currDate, startDate, endDate)) {\n return bannerMap.live;\n } else if (isDateBeforeInterval(currDate, startDate)) {\n return bannerMap.upcoming;\n }\n return bannerMap.onDemand;\n};\n\nfunction getTransitions(cardsPtr) {\n var cards = [].concat(_toConsumableArray(cardsPtr));\n var currentDate = getCurrentDate();\n var transitions = new _priorityQueue.MinPriorityQueue();\n\n /* eslint-disable no-plusplus */\n for (var i = 0; i < cards.length; i++) {\n var priority = Date.parse(cards[i].startDate) - currentDate;\n if (priority && priority > 0) {\n transitions.enqueue(cards[i], priority);\n }\n var endPriority = Date.parse(Date.parse(cards[i].endDate) - currentDate);\n if (cards[i].endDate && endPriority > 0) {\n transitions.enqueue(null, endPriority);\n }\n }\n return transitions;\n}\n\nvar getLinkTarget = exports.getLinkTarget = function getLinkTarget(link) {\n var ctaAction = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var domain = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : window.location.hostname;\n\n if (ctaAction || link.startsWith('#')) {\n return ctaAction;\n }\n var target = '_blank';\n try {\n var _ref5 = new URL(link),\n _ref5$hostname = _ref5.hostname,\n linkHostName = _ref5$hostname === undefined ? '' : _ref5$hostname;\n\n if (domain === linkHostName) {\n target = '_self';\n }\n } catch (e) {\n /* eslint-disable-line no-empty */\n }\n return target;\n};\n\nvar getGlobalNavHeight = exports.getGlobalNavHeight = function getGlobalNavHeight() {\n var header = document.querySelector('header');\n var offSet = 20; // margin above card collection\n if (!header) return offSet;\n\n var isBacom = header.getAttribute('daa-lh') && header.getAttribute('daa-lh').includes('bacom');\n var headerWrapper = isBacom ? header : document.querySelector('.feds-header-wrapper');\n\n return isBacom || headerWrapper && headerWrapper.classList.contains('feds-header-wrapper--sticky') ? header.offsetHeight + offSet : offSet;\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZWFjdC9zcmMvanMvY29tcG9uZW50cy9Db25zb25hbnQvSGVscGVycy9nZW5lcmFsLmpzP2UyMDEiXSwibmFtZXMiOlsiZ2V0VHJhbnNpdGlvbnMiLCJzYXZlQm9va21hcmtzVG9Mb2NhbFN0b3JhZ2UiLCJib29rbWFya3NWYWx1ZSIsImxvY2FsU3RvcmFnZSIsInNldEl0ZW0iLCJKU09OIiwic3RyaW5naWZ5IiwicmVhZEJvb2ttYXJrc0Zyb21Mb2NhbFN0b3JhZ2UiLCJib29rbWFya3MiLCJwYXJzZSIsImdldEl0ZW0iLCJBcnJheSIsImlzQXJyYXkiLCJyZWFkSW5jbHVzaW9uc0Zyb21Mb2NhbFN0b3JhZ2UiLCJmYXZvcml0ZXMiLCJzY2hlZHVsZSIsImxhc3RXYXRjaGVkIiwiU2V0IiwiY29uY2F0IiwidHJ1bmNhdGVTdHJpbmciLCJzdHIiLCJudW0iLCJsZW5ndGgiLCJzbGljZSIsInRydW5jYXRlTGlzdCIsImxpbWl0IiwibGlzdCIsInJlbW92ZUR1cGxpY2F0ZXNCeUtleSIsImtleSIsIm5ld0xpc3QiLCJpZHMiLCJmb3JFYWNoIiwiaXRlbSIsImhhcyIsInB1c2giLCJhZGQiLCJjaGFpbiIsImFyZ3MiLCJyZWR1Y2UiLCJhIiwiYiIsImNoYWluRnJvbUl0ZXJhYmxlIiwiaXNTdXBlcnNldCIsInN1cGVyc2V0Iiwic3Vic2V0IiwiZWxlbSIsImludGVyc2VjdGlvbiIsInNldEEiLCJzZXRCIiwiaW50ZXJzZWN0aW9uU2V0Iiwic29ydEJ5S2V5IiwiaXRlcmFibGUiLCJrZXlGdW5jIiwic29ydCIsImFsbG93ZWRDaGFycyIsInNhbml0aXplVGV4dCIsInRleHQiLCJzYW5pdGl6ZWQiLCJ0b0xvd2VyQ2FzZSIsInRyaW0iLCJtYXRjaGVkQWxsb3dlZENoYXJzIiwibWF0Y2giLCJqb2luIiwibWFwT2JqZWN0Iiwib2JqZWN0IiwiZnVuYyIsIm5ld09iaiIsImtleXMiLCJPYmplY3QiLCJpc09iamVjdCIsInZhbCIsImNvbnN0cnVjdG9yIiwicGFyc2VUb1ByaW1pdGl2ZSIsInZhbHVlIiwibWFwIiwiZSIsImlzTnVsbGlzaCIsInVuZGVmaW5lZCIsIk51bWJlciIsImlzTmFOIiwiaXNBdGxlYXN0T25lRmlsdGVyU2VsZWN0ZWQiLCJmaWx0ZXJzIiwiZiIsIml0ZW1zIiwic29tZSIsInNlbGVjdGVkIiwic3RvcFByb3BhZ2F0aW9uIiwiZ2VuZXJhdGVSYW5nZSIsInN0YXJ0VmFsIiwiZW5kIiwic3RhcnQiLCJzdGVwIiwicmFuZ2UiLCJnZXRQYWdlU3RhcnRFbmQiLCJjdXJyZW50UGFnZU51bWJlciIsInBhZ2VDb3VudCIsInRvdGFsUGFnZXMiLCJoYWxmUGFnZUNvdW50IiwiTWF0aCIsImZsb29yIiwibWluIiwibWF4IiwiZ2V0U3RhcnROdW1iZXIiLCJzaG93SXRlbXNQZXJQYWdlIiwiZ2V0RW5kTnVtYmVyIiwidG90YWxSZXN1bHRzIiwicmVzIiwidGVtcGxhdGUiLCJwcm9wcyIsInJlZ0V4cCIsInJlcGxhY2VyIiwiZnVsbE1hdGNoIiwicmVwbGFjZSIsImdldEJ5UGF0aCIsInBhdGgiLCJkZWZhdWx0VmFsdWUiLCJyZXN1bHQiLCJjaHVua3MiLCJzcGxpdCIsImluZGV4IiwiY2h1bmsiLCJoYXNPd25Qcm9wZXJ0eSIsImdldFNlbGVjdGVkSXRlbXNDb3VudCIsImZpbHRlciIsIkJvb2xlYW4iLCJkZWJvdW5jZSIsInRpbWVvdXQiLCJ0aW1lciIsImNsZWFyVGltZW91dCIsInNldFRpbWVvdXQiLCJzZXRCeVBhdGgiLCJ3aXRob3V0TGFzdCIsImxhc3RDaHVuayIsInRhcmdldCIsImFjY3VtdWxhdG9yIiwibWVyZ2VEZWVwIiwic291cmNlcyIsInNvdXJjZSIsInNoaWZ0IiwiYXNzaWduIiwiaXNDYWFzR3JvdXAiLCJncm91cCIsImluZGV4T2YiLCJxcyIsInN0cmluZyIsInNlYXJjaFBhcmFtcyIsIlVSTFNlYXJjaFBhcmFtcyIsImdldEFsbCIsImZpcnN0SXRlbSIsImluY2x1ZGVzIiwiZGVjb2RlVVJJQ29tcG9uZW50Iiwib2JqIiwiYXJyYXkiLCJlbnRyaWVzIiwiYXBwZW5kIiwiZW5jb2RlVVJJQ29tcG9uZW50IiwidG9TdHJpbmciLCJpc0RhdGVXaXRoaW5JbnRlcnZhbCIsImN1cnJlbnREYXRlIiwic3RhcnREYXRlIiwiZW5kRGF0ZSIsImN1cnIiLCJEYXRlIiwiaXNEYXRlQmVmb3JlSW50ZXJ2YWwiLCJnZXRDdXJyZW50RGF0ZSIsInVybFBhcmFtcyIsIndpbmRvdyIsImxvY2F0aW9uIiwic2VhcmNoIiwic2VydmVydGltZSIsInBhcnNlSW50IiwiZ2V0IiwidGltZVNpbmNlQXJyaXZhbCIsInBlcmZvcm1hbmNlIiwibm93IiwiY3VyckRhdGUiLCJnZXRFdmVudEJhbm5lciIsImZvbyIsImJhbm5lck1hcCIsImxpdmUiLCJ1cGNvbWluZyIsIm9uRGVtYW5kIiwiY2FyZHNQdHIiLCJjYXJkcyIsInRyYW5zaXRpb25zIiwiTWluUHJpb3JpdHlRdWV1ZSIsImkiLCJwcmlvcml0eSIsImVucXVldWUiLCJlbmRQcmlvcml0eSIsImdldExpbmtUYXJnZXQiLCJsaW5rIiwiY3RhQWN0aW9uIiwiZG9tYWluIiwiaG9zdG5hbWUiLCJzdGFydHNXaXRoIiwiVVJMIiwibGlua0hvc3ROYW1lIiwiZ2V0R2xvYmFsTmF2SGVpZ2h0IiwiaGVhZGVyIiwiZG9jdW1lbnQiLCJxdWVyeVNlbGVjdG9yIiwib2ZmU2V0IiwiaXNCYWNvbSIsImdldEF0dHJpYnV0ZSIsImhlYWRlcldyYXBwZXIiLCJjbGFzc0xpc3QiLCJjb250YWlucyIsIm9mZnNldEhlaWdodCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O1FBK2VnQkEsYyxHQUFBQSxjOztBQS9laEI7Ozs7OztBQUVBOzs7OztBQUtPLElBQU1DLG9FQUE4QixTQUE5QkEsMkJBQThCLENBQUNDLGNBQUQsRUFBb0I7QUFDM0RDLGlCQUFhQyxPQUFiLENBQXFCLFdBQXJCLEVBQWtDQyxLQUFLQyxTQUFMLENBQWVKLGNBQWYsRUFBK0IsSUFBL0IsRUFBcUMsQ0FBckMsQ0FBbEM7QUFDSCxDQUZNOztBQUlQOzs7O0FBSU8sSUFBTUssd0VBQWdDLFNBQWhDQSw2QkFBZ0MsR0FBTTtBQUMvQyxRQUFNQyxZQUFZSCxLQUFLSSxLQUFMLENBQVdOLGFBQWFPLE9BQWIsQ0FBcUIsV0FBckIsQ0FBWCxDQUFsQjtBQUNBLFdBQU9DLE1BQU1DLE9BQU4sQ0FBY0osU0FBZCxJQUEyQkEsU0FBM0IsR0FBdUMsRUFBOUM7QUFDSCxDQUhNOztBQUtBLElBQU1LLDBFQUFpQyxTQUFqQ0EsOEJBQWlDLEdBQU07QUFDaEQsUUFBTUMsWUFBWVQsS0FBS0ksS0FBTCxDQUFXTixhQUFhTyxPQUFiLENBQXFCLG1CQUFyQixDQUFYLEtBQXlELEVBQTNFO0FBQ0EsUUFBTUssV0FBV1YsS0FBS0ksS0FBTCxDQUFXTixhQUFhTyxPQUFiLENBQXFCLGtCQUFyQixDQUFYLEtBQXdELEVBQXpFO0FBQ0EsUUFBTU0sY0FBY2IsYUFBYU8sT0FBYixDQUFxQixxQkFBckIsS0FBK0MsRUFBbkU7O0FBRUEsV0FBTyxJQUFJTyxHQUFKLENBQVEsR0FBR0MsTUFBSCxDQUFVSixTQUFWLEVBQXFCLENBQUNFLFdBQUQsQ0FBckIsRUFBb0NELFFBQXBDLENBQVIsQ0FBUDtBQUNILENBTk07O0FBUVA7Ozs7OztBQU1PLElBQU1JLDBDQUFpQixTQUFqQkEsY0FBaUIsQ0FBQ0MsR0FBRCxFQUFNQyxHQUFOLEVBQWM7QUFDeEMsUUFBSUQsSUFBSUUsTUFBSixJQUFjRCxHQUFsQixFQUF1QixPQUFPRCxHQUFQO0FBQ3ZCLFdBQVVBLElBQUlHLEtBQUosQ0FBVSxDQUFWLEVBQWFGLEdBQWIsQ0FBVjtBQUNILENBSE07O0FBS1A7Ozs7OztBQU1PLElBQU1HLHNDQUFlLFNBQWZBLFlBQWUsQ0FBQ0MsS0FBRCxFQUFRQyxJQUFSLEVBQWlCO0FBQ3pDO0FBQ0EsUUFBSUQsUUFBUSxDQUFaLEVBQWUsT0FBT0MsSUFBUDs7QUFFZjtBQUNBLFdBQU9BLEtBQUtILEtBQUwsQ0FBVyxDQUFYLEVBQWNFLEtBQWQsQ0FBUDtBQUNILENBTk07O0FBUVA7Ozs7OztBQU1PLElBQU1FLHdEQUF3QixTQUF4QkEscUJBQXdCLENBQUNELElBQUQsRUFBT0UsR0FBUCxFQUFlO0FBQ2hELFFBQU1DLFVBQVUsRUFBaEI7QUFDQSxRQUFNQyxNQUFNLElBQUliLEdBQUosRUFBWjtBQUNBUyxTQUFLSyxPQUFMLENBQWEsVUFBQ0MsSUFBRCxFQUFVO0FBQ25CLFlBQUksQ0FBQ0YsSUFBSUcsR0FBSixDQUFRRCxLQUFLSixHQUFMLENBQVIsQ0FBTCxFQUF5QjtBQUNyQkMsb0JBQVFLLElBQVIsQ0FBYUYsSUFBYjtBQUNBRixnQkFBSUssR0FBSixDQUFRSCxLQUFLSixHQUFMLENBQVI7QUFDSDtBQUNKLEtBTEQ7QUFNQSxXQUFPQyxPQUFQO0FBQ0gsQ0FWTTs7QUFZUDs7Ozs7QUFLTyxJQUFNTyx3QkFBUSxTQUFSQSxLQUFRO0FBQUEsc0NBQUlDLElBQUo7QUFBSUEsWUFBSjtBQUFBOztBQUFBLFdBQWFBLEtBQUtDLE1BQUwsQ0FBWSxVQUFDQyxDQUFELEVBQUlDLENBQUo7QUFBQSxlQUFVRCxFQUFFckIsTUFBRixDQUFTc0IsQ0FBVCxDQUFWO0FBQUEsS0FBWixFQUFtQyxFQUFuQyxDQUFiO0FBQUEsQ0FBZDs7QUFFUDs7Ozs7QUFLTyxJQUFNQyxnREFBb0IsU0FBcEJBLGlCQUFvQjtBQUFBLFdBQVFMLDBDQUFTQyxJQUFULEVBQVI7QUFBQSxDQUExQjs7QUFFUDs7Ozs7O0FBTU8sSUFBTUssa0NBQWEsU0FBYkEsVUFBYSxDQUFDQyxRQUFELEVBQVdDLE1BQVgsRUFBc0I7QUFDNUM7QUFENEM7QUFBQTtBQUFBOztBQUFBO0FBRTVDLDZCQUFtQkEsTUFBbkIsOEhBQTJCO0FBQUEsZ0JBQWhCQyxJQUFnQjs7QUFDdkIsZ0JBQUksQ0FBQ0YsU0FBU1YsR0FBVCxDQUFhWSxJQUFiLENBQUwsRUFBeUI7QUFDckIsdUJBQU8sS0FBUDtBQUNIO0FBQ0o7QUFOMkM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFPNUMsV0FBTyxJQUFQO0FBQ0gsQ0FSTTs7QUFVUDs7Ozs7O0FBTU8sSUFBTUMsc0NBQWUsU0FBZkEsWUFBZSxDQUFDQyxJQUFELEVBQU9DLElBQVAsRUFBZ0I7QUFDeEMsUUFBTUMsa0JBQWtCLElBQUloQyxHQUFKLEVBQXhCO0FBQ0E7QUFGd0M7QUFBQTtBQUFBOztBQUFBO0FBR3hDLDhCQUFtQitCLElBQW5CLG1JQUF5QjtBQUFBLGdCQUFkSCxJQUFjOztBQUNyQixnQkFBSUUsS0FBS2QsR0FBTCxDQUFTWSxJQUFULENBQUosRUFBb0I7QUFDaEJJLGdDQUFnQmQsR0FBaEIsQ0FBb0JVLElBQXBCO0FBQ0g7QUFDSjtBQVB1QztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQVF4QyxXQUFPSSxlQUFQO0FBQ0gsQ0FUTTs7QUFXUDs7Ozs7QUFLTyxJQUFNQyxnQ0FBWSxTQUFaQSxTQUFZLENBQUNDLFFBQUQsRUFBV0MsT0FBWDtBQUFBLFdBQ3JCLDZCQUFJRCxRQUFKLEdBQWNFLElBQWQsQ0FBbUIsVUFBQ2QsQ0FBRCxFQUFJQyxDQUFKLEVBQVU7QUFDekIsWUFBSVksUUFBUWIsQ0FBUixJQUFhYSxRQUFRWixDQUFSLENBQWpCLEVBQTZCLE9BQU8sQ0FBQyxDQUFSO0FBQzdCLFlBQUlZLFFBQVFiLENBQVIsSUFBYWEsUUFBUVosQ0FBUixDQUFqQixFQUE2QixPQUFPLENBQVA7QUFDN0IsZUFBTyxDQUFQO0FBQ0gsS0FKRCxDQURxQjtBQUFBLENBQWxCOztBQU9QLElBQU1jLGVBQWUsd0RBQXJCOztBQUVBOzs7Ozs7QUFNTyxJQUFNQyxzQ0FBZSxTQUFmQSxZQUFlLENBQUNDLElBQUQsRUFBVTtBQUNsQyxRQUFJLENBQUNBLElBQUwsRUFBVyxPQUFPLEVBQVA7QUFDWCxRQUFJQyxZQUFZRCxLQUFLRSxXQUFMLEdBQW1CQyxJQUFuQixFQUFoQjtBQUNBO0FBQ0EsUUFBTUMsc0JBQXNCSCxVQUFVSSxLQUFWLENBQWdCUCxZQUFoQixDQUE1QjtBQUNBRyxnQkFBWUcsc0JBQXNCQSxvQkFBb0JFLElBQXBCLENBQXlCLEVBQXpCLENBQXRCLEdBQXFELEVBQWpFO0FBQ0EsV0FBT0wsU0FBUDtBQUNILENBUE07O0FBU1A7Ozs7OztBQU1PLElBQU1NLGdDQUFZLFNBQVpBLFNBQVksQ0FBQ0MsTUFBRCxFQUFTQyxJQUFULEVBQWtCO0FBQ3ZDLFFBQU1DLFNBQVMsRUFBZjtBQUNBLFFBQU1DLE9BQU9DLE9BQU9ELElBQVAsQ0FBWUgsTUFBWixDQUFiOztBQUVBRyxTQUFLcEMsT0FBTCxDQUFhLFVBQUNILEdBQUQsRUFBUztBQUNsQnNDLGVBQU90QyxHQUFQLElBQWNxQyxLQUFLRCxPQUFPcEMsR0FBUCxDQUFMLENBQWQ7QUFDSCxLQUZEOztBQUlBLFdBQU9zQyxNQUFQO0FBQ0gsQ0FUTTs7QUFXUDs7Ozs7QUFLTyxJQUFNRyw4QkFBVyxTQUFYQSxRQUFXO0FBQUEsV0FBTyxDQUFDLENBQUNDLEdBQUYsSUFBU0EsSUFBSUMsV0FBSixLQUFvQkgsTUFBcEM7QUFBQSxDQUFqQjs7QUFFUDs7Ozs7QUFLTyxJQUFNSSw4Q0FBbUIsU0FBbkJBLGdCQUFtQixDQUFDQyxLQUFELEVBQVc7QUFDdkMsUUFBSUosU0FBU0ksS0FBVCxDQUFKLEVBQXFCO0FBQ2pCLGVBQU9WLFVBQVVVLEtBQVYsRUFBaUJELGdCQUFqQixDQUFQO0FBQ0gsS0FGRCxNQUVPLElBQUk3RCxNQUFNQyxPQUFOLENBQWM2RCxLQUFkLENBQUosRUFBMEI7QUFDN0IsZUFBT0EsTUFBTUMsR0FBTixDQUFVRixnQkFBVixDQUFQO0FBQ0g7O0FBRUQsUUFBSTtBQUNBLGVBQU9BLGlCQUFpQm5FLEtBQUtJLEtBQUwsQ0FBV2dFLEtBQVgsQ0FBakIsQ0FBUDtBQUNILEtBRkQsQ0FFRSxPQUFPRSxDQUFQLEVBQVU7QUFDUixlQUFPRixLQUFQO0FBQ0g7QUFDSixDQVpNOztBQWNQOzs7OztBQUtPLElBQU1HLGdDQUFZLFNBQVpBLFNBQVk7QUFBQSxXQUNyQk4sUUFBUU8sU0FBUixJQUFxQlAsUUFBUSxJQUE3QixJQUFxQ1EsT0FBT0MsS0FBUCxDQUFhVCxHQUFiLENBRGhCO0FBQUEsQ0FBbEI7O0FBR0EsSUFBTVUsa0VBQTZCLFNBQTdCQSwwQkFBNkI7QUFBQSxXQUN0Q3ZDLGtCQUFrQndDLFFBQVFQLEdBQVIsQ0FBWTtBQUFBLGVBQUtRLEVBQUVDLEtBQVA7QUFBQSxLQUFaLENBQWxCLEVBQTZDQyxJQUE3QyxDQUFrRDtBQUFBLGVBQVFwRCxLQUFLcUQsUUFBYjtBQUFBLEtBQWxELENBRHNDO0FBQUEsQ0FBbkM7O0FBR1A7Ozs7O0FBS08sSUFBTUMsNENBQWtCLFNBQWxCQSxlQUFrQjtBQUFBLFdBQUtYLEVBQUVXLGVBQUYsRUFBTDtBQUFBLENBQXhCOztBQUVQOzs7Ozs7QUFNTyxJQUFNQyx3Q0FBZ0IsU0FBaEJBLGFBQWdCLENBQUNDLFFBQUQsRUFBV0MsR0FBWCxFQUFtQjtBQUM1QyxRQUFJQyxRQUFRRixRQUFaO0FBQ0EsUUFBSUcsT0FBTyxDQUFYO0FBQ0EsUUFBTUMsUUFBUSxFQUFkOztBQUVBLFFBQUlILE1BQU1DLEtBQVYsRUFBaUI7QUFDYkMsZUFBTyxDQUFDQSxJQUFSO0FBQ0g7O0FBRUQsV0FBT0EsT0FBTyxDQUFQLEdBQVdGLE9BQU9DLEtBQWxCLEdBQTBCRCxPQUFPQyxLQUF4QyxFQUErQztBQUMzQ0UsY0FBTTFELElBQU4sQ0FBV3dELEtBQVg7QUFDQUEsaUJBQVNDLElBQVQ7QUFDSDs7QUFFRCxXQUFPQyxLQUFQO0FBQ0gsQ0FmTTs7QUFpQlA7Ozs7Ozs7QUFPTyxJQUFNQyw0Q0FBa0IsU0FBbEJBLGVBQWtCLENBQUNDLGlCQUFELEVBQW9CQyxTQUFwQixFQUErQkMsVUFBL0IsRUFBOEM7QUFDekUsUUFBTUMsZ0JBQWdCQyxLQUFLQyxLQUFMLENBQVdKLFlBQVksQ0FBdkIsQ0FBdEI7QUFDQSxRQUFJTCxjQUFKO0FBQ0EsUUFBSUQsWUFBSjs7QUFFQSxRQUFJTyxjQUFjRCxZQUFZLENBQTlCLEVBQWlDO0FBQzdCO0FBQ0FMLGdCQUFRLENBQVI7QUFDQUQsY0FBTU8sVUFBTjtBQUNILEtBSkQsTUFJTztBQUNITixnQkFBUVEsS0FBS0UsR0FBTCxDQUNKRixLQUFLRyxHQUFMLENBQVMsQ0FBVCxFQUFZUCxvQkFBb0JHLGFBQWhDLENBREksRUFFSkQsYUFBYUQsU0FGVCxDQUFSO0FBSUFOLGNBQU1TLEtBQUtHLEdBQUwsQ0FDRkgsS0FBS0UsR0FBTCxDQUFTTixvQkFBb0JHLGFBQTdCLEVBQTRDRCxVQUE1QyxDQURFLEVBRUZELFlBQVksQ0FGVixDQUFOO0FBSUg7O0FBRUQsV0FBTyxDQUFDTCxLQUFELEVBQVFELEdBQVIsQ0FBUDtBQUNILENBckJNOztBQXVCUDs7Ozs7O0FBTU8sSUFBTWEsMENBQWlCLFNBQWpCQSxjQUFpQixDQUFDUixpQkFBRCxFQUFvQlMsZ0JBQXBCLEVBQXlDO0FBQ25FLFFBQUlULHNCQUFzQixDQUExQixFQUE2QixPQUFPLENBQVA7QUFDN0IsV0FBUUEsb0JBQW9CUyxnQkFBckIsSUFBMENBLG1CQUFtQixDQUE3RCxDQUFQO0FBQ0gsQ0FITTs7QUFLUDs7Ozs7OztBQU9PLElBQU1DLHNDQUFlLFNBQWZBLFlBQWUsQ0FDeEJWLGlCQUR3QixFQUV4QlMsZ0JBRndCLEVBR3hCRSxZQUh3QixFQUl2QjtBQUNELFFBQU1DLE1BQU1aLG9CQUFvQlMsZ0JBQWhDO0FBQ0EsV0FBT0csTUFBTUQsWUFBTixHQUFxQkMsR0FBckIsR0FBMkJELFlBQWxDO0FBQ0gsQ0FQTTs7QUFTUDs7Ozs7OztBQU9PLElBQU1FLDhCQUFXLFNBQVhBLFFBQVcsR0FBc0I7QUFBQSxRQUFyQm5ELElBQXFCLHVFQUFkLEVBQWM7QUFBQSxRQUFWb0QsS0FBVTs7QUFDMUMsUUFBSSxDQUFDQSxLQUFMLEVBQVksT0FBT3BELElBQVA7O0FBRVosUUFBTXFELFNBQVMsY0FBZjtBQUNBLFFBQU1DLFdBQVcsU0FBWEEsUUFBVyxDQUFDQyxTQUFELEVBQVluRixHQUFaO0FBQUEsZUFBb0JnRixNQUFNaEYsR0FBTixLQUFjbUYsU0FBbEM7QUFBQSxLQUFqQjs7QUFFQSxXQUFPdkQsS0FBS3dELE9BQUwsQ0FBYUgsTUFBYixFQUFxQkMsUUFBckIsQ0FBUDtBQUNILENBUE07O0FBU1A7Ozs7Ozs7QUFPTyxJQUFNRyxnQ0FBWSxTQUFaQSxTQUFZLENBQUNqRCxNQUFELEVBQVNrRCxJQUFULEVBQWVDLFlBQWYsRUFBZ0M7QUFDckQsUUFBSSxDQUFDbkQsTUFBRCxJQUFXLENBQUNrRCxJQUFoQixFQUFzQixPQUFPQyxZQUFQOztBQUV0QixRQUFJQyxTQUFTcEQsTUFBYjtBQUNBLFFBQU1xRCxTQUFTSCxLQUFLSSxLQUFMLENBQVcsR0FBWCxDQUFmOztBQUVBLFNBQUssSUFBSUMsUUFBUSxDQUFqQixFQUFvQkEsUUFBUUYsT0FBTy9GLE1BQW5DLEVBQTJDaUcsU0FBUyxDQUFwRCxFQUF1RDtBQUNuRCxZQUFNQyxRQUFRSCxPQUFPRSxLQUFQLENBQWQ7O0FBRUE7QUFDQSxZQUFJSCxVQUFVLElBQVYsSUFBa0JBLE9BQU9LLGNBQVAsQ0FBc0JELEtBQXRCLENBQXRCLEVBQW9EO0FBQ2hESixxQkFBU0EsT0FBT0ksS0FBUCxDQUFUO0FBQ0gsU0FGRCxNQUVPO0FBQ0hKLHFCQUFTRCxZQUFUO0FBQ0E7QUFDSDtBQUNKOztBQUVELFdBQU9DLE1BQVA7QUFDSCxDQW5CTTs7QUFxQlA7Ozs7O0FBS08sSUFBTU0sd0RBQXdCLFNBQXhCQSxxQkFBd0I7QUFBQSxXQUNqQ3ZDLE1BQU13QyxNQUFOLENBQWE7QUFBQSxZQUFHdEMsUUFBSCxRQUFHQSxRQUFIO0FBQUEsZUFBa0J1QyxRQUFRdkMsUUFBUixDQUFsQjtBQUFBLEtBQWIsRUFBa0QvRCxNQURqQjtBQUFBLENBQTlCOztBQUdQOzs7Ozs7QUFNTyxJQUFNdUcsOEJBQVcsU0FBWEEsUUFBVyxDQUFDNUQsSUFBRCxFQUF1QjtBQUFBLFFBQWhCNkQsT0FBZ0IsdUVBQU4sQ0FBTTs7QUFDM0MsUUFBSUMsY0FBSjs7QUFFQSxXQUFPLFlBQWE7QUFBQSwyQ0FBVDFGLElBQVM7QUFBVEEsZ0JBQVM7QUFBQTs7QUFDaEIyRixxQkFBYUQsS0FBYjs7QUFFQUEsZ0JBQVFFLFdBQVcsWUFBTTtBQUNyQmhFLGtDQUFRNUIsSUFBUjtBQUNILFNBRk8sRUFFTHlGLE9BRkssQ0FBUjtBQUdILEtBTkQ7QUFPSCxDQVZNOztBQVlQOzs7Ozs7QUFNTyxJQUFNSSxnQ0FBWSxTQUFaQSxTQUFZLENBQUNsRSxNQUFELEVBQVNrRCxJQUFULEVBQWV6QyxLQUFmLEVBQXlCO0FBQzlDLFFBQUksQ0FBQ1QsTUFBRCxJQUFXLENBQUNrRCxJQUFoQixFQUFzQjs7QUFFdEIsUUFBTUcsU0FBU0gsS0FBS0ksS0FBTCxDQUFXLEdBQVgsQ0FBZjtBQUNBLFFBQU1hLGNBQWNkLE9BQU85RixLQUFQLENBQWEsQ0FBYixFQUFnQixDQUFDLENBQWpCLENBQXBCO0FBQ0EsUUFBTTZHLFlBQVlmLE9BQU9BLE9BQU8vRixNQUFQLEdBQWdCLENBQXZCLENBQWxCOztBQUVBLFFBQU0rRyxTQUFTRixZQUFZN0YsTUFBWixDQUFtQixVQUFDZ0csV0FBRCxFQUFjZCxLQUFkLEVBQXdCO0FBQ3RELFlBQUksQ0FBQ25ELFNBQVNpRSxZQUFZZCxLQUFaLENBQVQsQ0FBTCxFQUFtQztBQUMvQmMsd0JBQVlkLEtBQVosSUFBcUIsRUFBckI7QUFDSDtBQUNELGVBQU9jLFlBQVlkLEtBQVosQ0FBUDtBQUNILEtBTGMsRUFLWnhELE1BTFksQ0FBZjs7QUFPQXFFLFdBQU9ELFNBQVAsSUFBb0IzRCxLQUFwQjtBQUNILENBZk07O0FBaUJQOzs7Ozs7QUFNTyxJQUFNOEQsZ0NBQVksU0FBWkEsU0FBWSxDQUFDRixNQUFELEVBQXdCO0FBQUEsdUNBQVpHLE9BQVk7QUFBWkEsZUFBWTtBQUFBOztBQUM3QyxRQUFJLENBQUNBLFFBQVFsSCxNQUFiLEVBQXFCLE9BQU8rRyxNQUFQOztBQUVyQixRQUFNSSxTQUFTRCxRQUFRRSxLQUFSLEVBQWY7O0FBRUEsUUFBSXJFLFNBQVNnRSxNQUFULEtBQW9CaEUsU0FBU29FLE1BQVQsQ0FBeEIsRUFBMEM7QUFDdEMsWUFBTXRFLE9BQU9DLE9BQU9ELElBQVAsQ0FBWXNFLE1BQVosQ0FBYjs7QUFFQXRFLGFBQUtwQyxPQUFMLENBQWEsVUFBQ0gsR0FBRCxFQUFTO0FBQ2xCLGdCQUFJeUMsU0FBU29FLE9BQU83RyxHQUFQLENBQVQsQ0FBSixFQUEyQjtBQUN2QixvQkFBSSxDQUFDeUcsT0FBT3pHLEdBQVAsQ0FBTCxFQUFrQnlHLE9BQU96RyxHQUFQLElBQWMsRUFBZDs7QUFFbEIyRywwQkFBVUYsT0FBT3pHLEdBQVAsQ0FBVixFQUF1QjZHLE9BQU83RyxHQUFQLENBQXZCO0FBQ0gsYUFKRCxNQUlPLElBQUk2RyxPQUFPN0csR0FBUCxNQUFnQmlELFNBQXBCLEVBQStCO0FBQ2xDVCx1QkFBT3VFLE1BQVAsQ0FBY04sTUFBZCxzQkFBeUJ6RyxHQUF6QixFQUErQjZHLE9BQU83RyxHQUFQLENBQS9CO0FBQ0g7QUFDSixTQVJEO0FBU0g7O0FBRUQsV0FBTzJHLDRCQUFVRixNQUFWLFNBQXFCRyxPQUFyQixFQUFQO0FBQ0gsQ0FwQk07O0FBc0JQLElBQU1JLGNBQWMsU0FBZEEsV0FBYztBQUFBLFdBQVNDLE1BQU1DLE9BQU4sQ0FBYyxLQUFkLE1BQXlCLENBQWxDO0FBQUEsQ0FBcEI7O0FBRUE7OztBQUdPLElBQU1DLGtCQUFLO0FBQ2R0SSxXQUFPLGVBQUN1SSxNQUFELEVBQVk7QUFDZixZQUFNQyxlQUFlLElBQUlDLGVBQUosQ0FBb0JGLE1BQXBCLENBQXJCOztBQUVBLGVBQU8sNkJBQUlDLGFBQWE5RSxJQUFiLEVBQUosR0FBeUI3QixNQUF6QixDQUFnQyxVQUFDZ0csV0FBRCxFQUFjMUcsR0FBZCxFQUFzQjtBQUN6RCxnQkFBSSxDQUFDMEcsWUFBWTFHLEdBQVosQ0FBTCxFQUF1QjtBQUNuQixvQkFBSTZDLFFBQVF3RSxhQUFhRSxNQUFiLENBQW9CdkgsR0FBcEIsQ0FBWjs7QUFFQSxvQkFBSWdILFlBQVloSCxHQUFaLENBQUosRUFBc0I7QUFDbEIsd0JBQUk2QyxNQUFNbkQsTUFBTixLQUFpQixDQUFyQixFQUF3QjtBQUFBLHFDQUNBbUQsS0FEQTtBQUFBO0FBQUEsNEJBQ2IyRSxTQURhOztBQUdwQiw0QkFBSUEsVUFBVUMsUUFBVixDQUFtQixHQUFuQixDQUFKLEVBQTZCO0FBQ3pCNUUsb0NBQVEyRSxVQUFVOUIsS0FBVixDQUFnQixHQUFoQixDQUFSO0FBQ0g7QUFDSjtBQUNEZ0IsZ0NBQVkxRyxHQUFaLElBQW1CMEgsbUJBQW1CN0UsS0FBbkIsQ0FBbkI7QUFDSCxpQkFURCxNQVNPO0FBQ0g2RCxnQ0FBWTFHLEdBQVosSUFBbUI2QyxLQUFuQjtBQUNIO0FBQ0o7O0FBRUQsbUJBQU82RCxXQUFQO0FBQ0gsU0FuQk0sRUFtQkosRUFuQkksQ0FBUDtBQW9CSCxLQXhCYTtBQXlCZGhJLGVBQVcsbUJBQUNpSixHQUFELEVBQXlCO0FBQUEsd0ZBQVAsRUFBTztBQUFBLFlBQWpCQyxLQUFpQixTQUFqQkEsS0FBaUI7O0FBQ2hDLFlBQU1QLGVBQWUsSUFBSUMsZUFBSixFQUFyQjtBQUNBOUUsZUFBT3FGLE9BQVAsQ0FBZUYsR0FBZixFQUFvQnhILE9BQXBCLENBQTRCLGlCQUFrQjtBQUFBO0FBQUEsZ0JBQWhCSCxHQUFnQjtBQUFBLGdCQUFYNkMsS0FBVzs7QUFDMUMsZ0JBQUltRSxZQUFZaEgsR0FBWixDQUFKLEVBQXNCO0FBQ2xCLG9CQUFJakIsTUFBTUMsT0FBTixDQUFjNkQsS0FBZCxDQUFKLEVBQTBCO0FBQ3RCLHdCQUFJK0UsVUFBVSxPQUFkLEVBQXVCO0FBQ25CUCxxQ0FBYVMsTUFBYixDQUFvQjlILEdBQXBCLEVBQXlCK0gsbUJBQW1CbEYsS0FBbkIsQ0FBekI7QUFDSCxxQkFGRCxNQUVPO0FBQ0h3RSxxQ0FBYVMsTUFBYixDQUFvQjlILEdBQXBCLEVBQXlCK0gsbUJBQW1CbEYsTUFBTVgsSUFBTixDQUFXLEdBQVgsQ0FBbkIsQ0FBekI7QUFDSDtBQUNKLGlCQU5ELE1BTU87QUFDSG1GLGlDQUFhUyxNQUFiLENBQW9COUgsR0FBcEIsRUFBeUIrSCxtQkFBbUJsRixLQUFuQixDQUF6QjtBQUNIO0FBQ0osYUFWRCxNQVVPO0FBQ0h3RSw2QkFBYVMsTUFBYixDQUFvQjlILEdBQXBCLEVBQXlCNkMsS0FBekI7QUFDSDtBQUNKLFNBZEQ7O0FBZ0JBLGVBQU93RSxhQUFhVyxRQUFiLEVBQVA7QUFDSDtBQTVDYSxDQUFYOztBQStDQSxJQUFNQyxzREFBdUIsU0FBdkJBLG9CQUF1QixDQUFDQyxXQUFELEVBQWNDLFNBQWQsRUFBeUJDLE9BQXpCLEVBQXFDO0FBQ3JFLFFBQU1DLE9BQU9DLEtBQUt6SixLQUFMLENBQVdxSixXQUFYLENBQWI7QUFDQSxRQUFNcEUsUUFBUXdFLEtBQUt6SixLQUFMLENBQVdzSixTQUFYLENBQWQ7QUFDQSxRQUFNdEUsTUFBTXlFLEtBQUt6SixLQUFMLENBQVd1SixPQUFYLENBQVo7O0FBRUEsV0FBUXRFLFNBQVN1RSxJQUFULElBQWlCeEUsTUFBTXdFLElBQS9CO0FBQ0gsQ0FOTTs7QUFRQSxJQUFNRSxzREFBdUIsU0FBdkJBLG9CQUF1QixDQUFDTCxXQUFELEVBQWNDLFNBQWQsRUFBNEI7QUFDNUQsUUFBTUUsT0FBT0MsS0FBS3pKLEtBQUwsQ0FBV3FKLFdBQVgsQ0FBYjtBQUNBLFFBQU1wRSxRQUFRd0UsS0FBS3pKLEtBQUwsQ0FBV3NKLFNBQVgsQ0FBZDs7QUFFQSxXQUFPRSxPQUFPdkUsS0FBZDtBQUNILENBTE07O0FBT0EsSUFBTTBFLDBDQUFpQixTQUFqQkEsY0FBaUIsR0FBTTtBQUNoQyxRQUFNQyxZQUFZLElBQUluQixlQUFKLENBQW9Cb0IsT0FBT0MsUUFBUCxDQUFnQkMsTUFBcEMsQ0FBbEI7QUFDQSxRQUFNQyxhQUFhQyxTQUFTTCxVQUFVTSxHQUFWLENBQWMsWUFBZCxDQUFULEVBQXNDLEVBQXRDLENBQW5CO0FBQ0EsUUFBTUMsbUJBQW1CQyxZQUFZQyxHQUFaLEVBQXpCO0FBQ0EsUUFBTUMsV0FBV04sYUFBYSxJQUFJUCxJQUFKLENBQVNPLGFBQWFHLGdCQUF0QixDQUFiLEdBQXVELElBQUlWLElBQUosRUFBeEU7QUFDQSxXQUFPYSxRQUFQO0FBQ0gsQ0FOTTs7QUFRQSxJQUFNQywwQ0FBaUIsU0FBU0MsR0FBVCxDQUFhbEIsU0FBYixFQUF3QkMsT0FBeEIsRUFBaUNrQixTQUFqQyxFQUE0QztBQUN0RSxRQUFNSCxXQUFXWCxnQkFBakI7QUFDQSxRQUFJUCxxQkFBcUJrQixRQUFyQixFQUErQmhCLFNBQS9CLEVBQTBDQyxPQUExQyxDQUFKLEVBQXdEO0FBQ3BELGVBQU9rQixVQUFVQyxJQUFqQjtBQUNILEtBRkQsTUFFTyxJQUFJaEIscUJBQXFCWSxRQUFyQixFQUErQmhCLFNBQS9CLENBQUosRUFBK0M7QUFDbEQsZUFBT21CLFVBQVVFLFFBQWpCO0FBQ0g7QUFDRCxXQUFPRixVQUFVRyxRQUFqQjtBQUNILENBUk07O0FBV0EsU0FBU3JMLGNBQVQsQ0FBd0JzTCxRQUF4QixFQUFrQztBQUNyQyxRQUFNQyxxQ0FBWUQsUUFBWixFQUFOO0FBQ0EsUUFBTXhCLGNBQWNNLGdCQUFwQjtBQUNBLFFBQU1vQixjQUFjLElBQUlDLCtCQUFKLEVBQXBCOztBQUVBO0FBQ0EsU0FBSyxJQUFJQyxJQUFJLENBQWIsRUFBZ0JBLElBQUlILE1BQU1qSyxNQUExQixFQUFrQ29LLEdBQWxDLEVBQXVDO0FBQ25DLFlBQU1DLFdBQVd6QixLQUFLekosS0FBTCxDQUFXOEssTUFBTUcsQ0FBTixFQUFTM0IsU0FBcEIsSUFBaUNELFdBQWxEO0FBQ0EsWUFBSTZCLFlBQVlBLFdBQVcsQ0FBM0IsRUFBOEI7QUFDMUJILHdCQUFZSSxPQUFaLENBQW9CTCxNQUFNRyxDQUFOLENBQXBCLEVBQThCQyxRQUE5QjtBQUNIO0FBQ0QsWUFBTUUsY0FBYzNCLEtBQUt6SixLQUFMLENBQVd5SixLQUFLekosS0FBTCxDQUFXOEssTUFBTUcsQ0FBTixFQUFTMUIsT0FBcEIsSUFBK0JGLFdBQTFDLENBQXBCO0FBQ0EsWUFBSXlCLE1BQU1HLENBQU4sRUFBUzFCLE9BQVQsSUFBb0I2QixjQUFjLENBQXRDLEVBQXlDO0FBQ3JDTCx3QkFBWUksT0FBWixDQUFvQixJQUFwQixFQUEwQkMsV0FBMUI7QUFDSDtBQUNKO0FBQ0QsV0FBT0wsV0FBUDtBQUNIOztBQUdNLElBQU1NLHdDQUFnQixTQUFoQkEsYUFBZ0IsQ0FBQ0MsSUFBRCxFQUE2RDtBQUFBLFFBQXREQyxTQUFzRCx1RUFBMUMsRUFBMEM7QUFBQSxRQUF0Q0MsTUFBc0MsdUVBQTdCM0IsT0FBT0MsUUFBUCxDQUFnQjJCLFFBQWE7O0FBQ3RGLFFBQUlGLGFBQWFELEtBQUtJLFVBQUwsQ0FBZ0IsR0FBaEIsQ0FBakIsRUFBdUM7QUFDbkMsZUFBT0gsU0FBUDtBQUNIO0FBQ0QsUUFBSTNELFNBQVMsUUFBYjtBQUNBLFFBQUk7QUFBQSxvQkFDd0MsSUFBSStELEdBQUosQ0FBUUwsSUFBUixDQUR4QztBQUFBLG1DQUNRRyxRQURSO0FBQUEsWUFDa0JHLFlBRGxCLGtDQUNpQyxFQURqQzs7QUFFQSxZQUFJSixXQUFXSSxZQUFmLEVBQTZCO0FBQ3pCaEUscUJBQVMsT0FBVDtBQUNIO0FBQ0osS0FMRCxDQUtFLE9BQU8xRCxDQUFQLEVBQVU7QUFDUjtBQUNIO0FBQ0QsV0FBTzBELE1BQVA7QUFDSCxDQWRNOztBQWdCQSxJQUFNaUUsa0RBQXFCLFNBQXJCQSxrQkFBcUIsR0FBTTtBQUNwQyxRQUFNQyxTQUFTQyxTQUFTQyxhQUFULENBQXVCLFFBQXZCLENBQWY7QUFDQSxRQUFNQyxTQUFTLEVBQWYsQ0FGb0MsQ0FFakI7QUFDbkIsUUFBSSxDQUFDSCxNQUFMLEVBQWEsT0FBT0csTUFBUDs7QUFFYixRQUFNQyxVQUFVSixPQUFPSyxZQUFQLENBQW9CLFFBQXBCLEtBQWlDTCxPQUFPSyxZQUFQLENBQW9CLFFBQXBCLEVBQThCdkQsUUFBOUIsQ0FBdUMsT0FBdkMsQ0FBakQ7QUFDQSxRQUFNd0QsZ0JBQWdCRixVQUFVSixNQUFWLEdBQW1CQyxTQUFTQyxhQUFULENBQXVCLHNCQUF2QixDQUF6Qzs7QUFFQSxXQUFPRSxXQUFZRSxpQkFBaUJBLGNBQWNDLFNBQWQsQ0FBd0JDLFFBQXhCLENBQWlDLDZCQUFqQyxDQUE3QixHQUNEUixPQUFPUyxZQUFQLEdBQXNCTixNQURyQixHQUVEQSxNQUZOO0FBR0gsQ0FYTSIsImZpbGUiOiI2LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWluUHJpb3JpdHlRdWV1ZSB9IGZyb20gJ0BkYXRhc3RydWN0dXJlcy1qcy9wcmlvcml0eS1xdWV1ZSc7XG5cbi8qKlxuICogU2F2ZXMgYSBjYXJkIHRvIGxvY2FsIHN0b3JhZ2VcbiAqIEBwYXJhbSB7TnVtYmVyfSBib29rbWFya3NWYWx1ZSAtIFRoZSBpZCBvZiB0aGUgY2FyZCB0byBzYXZlXG4gKiBAcmV0dXJuIHtWb2lkfVxuICovXG5leHBvcnQgY29uc3Qgc2F2ZUJvb2ttYXJrc1RvTG9jYWxTdG9yYWdlID0gKGJvb2ttYXJrc1ZhbHVlKSA9PiB7XG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2Jvb2ttYXJrcycsIEpTT04uc3RyaW5naWZ5KGJvb2ttYXJrc1ZhbHVlLCBudWxsLCAyKSk7XG59O1xuXG4vKipcbiAqIFJldHVybnMgYWxsIGNhcmRzIHNhdmVkIGluIGxvY2FsIHN0b3JhZ2VcbiAqIEByZXR1cm4ge0FycmF5fSAtIEFsbCBzYXZlZCBib29rbWFya3NcbiAqL1xuZXhwb3J0IGNvbnN0IHJlYWRCb29rbWFya3NGcm9tTG9jYWxTdG9yYWdlID0gKCkgPT4ge1xuICAgIGNvbnN0IGJvb2ttYXJrcyA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2Jvb2ttYXJrcycpKTtcbiAgICByZXR1cm4gQXJyYXkuaXNBcnJheShib29rbWFya3MpID8gYm9va21hcmtzIDogW107XG59O1xuXG5leHBvcnQgY29uc3QgcmVhZEluY2x1c2lvbnNGcm9tTG9jYWxTdG9yYWdlID0gKCkgPT4ge1xuICAgIGNvbnN0IGZhdm9yaXRlcyA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2NoaW1lcmEuZmF2b3JpdGVzJykpIHx8IFtdO1xuICAgIGNvbnN0IHNjaGVkdWxlID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnY2hpbWVyYS5zY2hlZHVsZScpKSB8fCBbXTtcbiAgICBjb25zdCBsYXN0V2F0Y2hlZCA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdjaGltZXJhLmxhc3RXYXRjaGVkJykgfHwgJyc7XG5cbiAgICByZXR1cm4gbmV3IFNldChbXS5jb25jYXQoZmF2b3JpdGVzLCBbbGFzdFdhdGNoZWRdLCBzY2hlZHVsZSkpO1xufTtcblxuLyoqXG4gKiBIZWxwZXIgbWV0aG9kIHRvIHRydW5jYXRlIHN0cmluZ3NcbiAqIEBwYXJhbSB7U3RyaW5nfSBzdHIgLSBUaGUgc3RyaW5nIHRvIHRydW5jYXRlXG4gKiBAcGFyYW0ge051bWJlcn0gbnVtIC0gSG93IG11Y2ggdG8gdHJ1bmNhdGVcbiAqIEByZXR1cm4ge1N0cmluZ30gLSBUaGUgdHJ1bmNhdGVkIHN0cmluZ1xuICovXG5leHBvcnQgY29uc3QgdHJ1bmNhdGVTdHJpbmcgPSAoc3RyLCBudW0pID0+IHtcbiAgICBpZiAoc3RyLmxlbmd0aCA8PSBudW0pIHJldHVybiBzdHI7XG4gICAgcmV0dXJuIGAke3N0ci5zbGljZSgwLCBudW0pfS4uLmA7XG59O1xuXG4vKipcbiAqIEhlbHBlciBtZXRob2QgdG8gdHJ1bmNhdGUgYSBsaXN0IG9mIGNhcmRzXG4gKiBAcGFyYW0ge051bWJlcn0gbGltaXQgLSBIb3cgbXVjaCB0byB0cnVuY2F0ZSBieVxuICogQHBhcmFtIHtBcnJheX0gbGlzdCAtIFdoYXQgdG8gdHJ1bmNhdGVcbiAqIEByZXR1cm4ge0FycmF5fSAtIFRoZSB0cnVuY2F0ZWQgbGlzdFxuICovXG5leHBvcnQgY29uc3QgdHJ1bmNhdGVMaXN0ID0gKGxpbWl0LCBsaXN0KSA9PiB7XG4gICAgLy8gTm8gbGltaXQsIHJldHVybiBhbGw7XG4gICAgaWYgKGxpbWl0IDwgMCkgcmV0dXJuIGxpc3Q7XG5cbiAgICAvLyBTbGljZSByZWNlaXZlZCBkYXRhIHRvIHJlcXVpcmVkIHEtdHk7XG4gICAgcmV0dXJuIGxpc3Quc2xpY2UoMCwgbGltaXQpO1xufTtcblxuLyoqXG4gKiBIZWxwZXIgbWV0aG9kIHRvIHJlbW92ZSBkdXBsaWNhdGUgY2FyZHMgZnJvbSBsaXN0XG4gKiBAcGFyYW0ge0FycmF5fSBsaXN0IC0gVGhlIGxpc3Qgb2YgY2FyZHNcbiAqIEBwYXJhbSB7a2V5fSBrZXkgLSBXaGF0IGtleSB0byBzZWFyY2ggZm9yIGR1cGxpY2F0ZXMgZm9yXG4gKiBAcmV0dXJuIHtBcnJheX0gLSBBIGxpc3Qgb2YgY2FyZHMgd2l0aCBubyBkdXBsaWNhdGVzXG4gKi9cbmV4cG9ydCBjb25zdCByZW1vdmVEdXBsaWNhdGVzQnlLZXkgPSAobGlzdCwga2V5KSA9PiB7XG4gICAgY29uc3QgbmV3TGlzdCA9IFtdO1xuICAgIGNvbnN0IGlkcyA9IG5ldyBTZXQoKTtcbiAgICBsaXN0LmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgaWYgKCFpZHMuaGFzKGl0ZW1ba2V5XSkpIHtcbiAgICAgICAgICAgIG5ld0xpc3QucHVzaChpdGVtKTtcbiAgICAgICAgICAgIGlkcy5hZGQoaXRlbVtrZXldKTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBuZXdMaXN0O1xufTtcblxuLyoqXG4gKiBIZWxwZXIgbWV0aG9kIHRoYXQgY2hhaW5zIGxpc3RzIHRvZ2V0aGVyXG4gKiBAcGFyYW0ge0FueX0gYXJncyAtIEFueSBzZXQgb2YgYXJnc1xuICogQGV4YW1wbGUgY2hhaW4oWydBJywgJ0InLCAnQyddLCBbJ0QnLCAnRScsICdGJ10pIC0tPiBbJ0EnICdCJyAnQycgJ0QnICdFJyAnRiddXG4gKi9cbmV4cG9ydCBjb25zdCBjaGFpbiA9ICguLi5hcmdzKSA9PiBhcmdzLnJlZHVjZSgoYSwgYikgPT4gYS5jb25jYXQoYiksIFtdKTtcblxuLyoqXG4gKiBIZWxwZXIgbWV0aG9kIHRoYXQgY2hhaW5zIGl0ZXJhYmxlcyB0b2dldGhlclxuICogQHBhcmFtIHtBbnl9IGFyZ3MgLSBBbnkgc2V0IG9mIGl0ZXJhYmxlIGFyZ3VtZW50c1xuICogQGV4YW1wbGUgY2hhaW5Gcm9tSXRlcmFibGUoc29tZUl0ZXJhYmxlKSAtLT4gWydBJyAnQicgJ0MnICdEJyAnRScgJ0YnXVxuICovXG5leHBvcnQgY29uc3QgY2hhaW5Gcm9tSXRlcmFibGUgPSBhcmdzID0+IGNoYWluKC4uLmFyZ3MpO1xuXG4vKipcbiAqIEhlbHBlciBtZXRob2QgdG8gZGV0ZXJtaW5lIHdoZWV0aGVyIHNldCBBIGlzIGEgc3VwZXJzZXQgb2Ygc2V0IEJcbiAqIEBwYXJhbSB7U2V0fSBzdXBlcnNldCAtIFRoZSBmaXJzdCBzZXRcbiAqIEBwYXJhbSB7U2V0fSBzdWJzZXQgLSBUaGUgc2Vjb25kIHNldFxuICogQHJldHVybiB7Qm9vbGVhbn0gLSBXaGV0aGVyIHNldCBBIGlzIGEgc3VwZXJzZXQgb2Ygc2V0IEJcbiAqL1xuZXhwb3J0IGNvbnN0IGlzU3VwZXJzZXQgPSAoc3VwZXJzZXQsIHN1YnNldCkgPT4ge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1yZXN0cmljdGVkLXN5bnRheFxuICAgIGZvciAoY29uc3QgZWxlbSBvZiBzdWJzZXQpIHtcbiAgICAgICAgaWYgKCFzdXBlcnNldC5oYXMoZWxlbSkpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbn07XG5cbi8qKlxuICogSGVscGVyIG1ldGhvZCB0byBkbyBkZXRlcm1pbmUgd2hldGhlciB0aGUgdHdvIHNldHMgaGF2ZSBhbiBpbnRlcnNlY3Rpb25cbiAqIEBwYXJhbSB7U2V0fSBzZXRBIC0gVGhlIGZpcnN0IHNldFxuICogQHBhcmFtIHtTZXR9IHNldEIgLSBUaGUgc2Vjb25kIHNldFxuICogQHJldHVybiB7Qm9vbGVhbn0gLSBXaGV0aGVyIHRoZXJlIGlzIGFuIGludGVyc2VjdGlvbiBvZiBlbGVtZW50cyBiZXR3ZWVuIHRoZSBzZXRzXG4gKi9cbmV4cG9ydCBjb25zdCBpbnRlcnNlY3Rpb24gPSAoc2V0QSwgc2V0QikgPT4ge1xuICAgIGNvbnN0IGludGVyc2VjdGlvblNldCA9IG5ldyBTZXQoKTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVzdHJpY3RlZC1zeW50YXhcbiAgICBmb3IgKGNvbnN0IGVsZW0gb2Ygc2V0Qikge1xuICAgICAgICBpZiAoc2V0QS5oYXMoZWxlbSkpIHtcbiAgICAgICAgICAgIGludGVyc2VjdGlvblNldC5hZGQoZWxlbSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGludGVyc2VjdGlvblNldDtcbn07XG5cbi8qKlxuICogSGVscGVyIG1ldGhvZCB0byBzb3J0IGJ5IGtleXNcbiAqIEBwYXJhbSB7SXRlcmFibGV9IGl0ZXJhYmxlIC0gVGhlIGl0ZXJhYmxlIG9iamVjdFxuICogQHBhcmFtIHtGdW5jdGlvbn0ga2V5RnVuYyAtIFRoZSBmdW5jdGlvbiB0byBhcHBseVxuICovXG5leHBvcnQgY29uc3Qgc29ydEJ5S2V5ID0gKGl0ZXJhYmxlLCBrZXlGdW5jKSA9PlxuICAgIFsuLi5pdGVyYWJsZV0uc29ydCgoYSwgYikgPT4ge1xuICAgICAgICBpZiAoa2V5RnVuYyhhKSA8IGtleUZ1bmMoYikpIHJldHVybiAtMTtcbiAgICAgICAgaWYgKGtleUZ1bmMoYSkgPiBrZXlGdW5jKGIpKSByZXR1cm4gMTtcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgfSk7XG5cbmNvbnN0IGFsbG93ZWRDaGFycyA9IC9bYS16QS1aMC05XFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXFxzLl0vZztcblxuLyoqXG4gKiBSZXR1cm5zIGNsZWFuZWQgdXAgdGV4dFxuICogZG9uJ3QgYWxsb3cgdXJsc1xuICogQHBhcmFtIHtTdHJpbmd9IHRleHQgLSBUaGUgdGV4dCBzbyBzYW5pdGl6ZVxuICogQHJldHVybiB7U3RyaW5nfSAtIFRoZSBjbGVhbmVkIHVwIHRleHRcbiAqL1xuZXhwb3J0IGNvbnN0IHNhbml0aXplVGV4dCA9ICh0ZXh0KSA9PiB7XG4gICAgaWYgKCF0ZXh0KSByZXR1cm4gJyc7XG4gICAgbGV0IHNhbml0aXplZCA9IHRleHQudG9Mb3dlckNhc2UoKS50cmltKCk7XG4gICAgLy8gcmVtb3ZlIGFueSBpbnZhbGlkIGNoYXJzXG4gICAgY29uc3QgbWF0Y2hlZEFsbG93ZWRDaGFycyA9IHNhbml0aXplZC5tYXRjaChhbGxvd2VkQ2hhcnMpO1xuICAgIHNhbml0aXplZCA9IG1hdGNoZWRBbGxvd2VkQ2hhcnMgPyBtYXRjaGVkQWxsb3dlZENoYXJzLmpvaW4oJycpIDogJyc7XG4gICAgcmV0dXJuIHNhbml0aXplZDtcbn07XG5cbi8qKlxuICogRm9yIGEgZ2l2ZW4gb2JqZWN0LCBhcHBsaWVzIGEgZnVuY3Rpb24gdG8ga2V5IGluIHRoYXQgb2JqZWN0XG4gKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IC0gVGhlIG9iamVjdCB0byBhcHBseSB0aGUgZnVuY3Rpb24gdG9cbiAqIEBwYXJhbSB7RnVuY3Rpb259IGZ1bmMgLSBUaGUgZnVuY3Rpb24gdG8gYXBwbHkgdG8gdGhlIGVudHJpZXMgaW4gdGhlIG9iamVjdFxuICogQHJldHVybiB7T2JqZWN0fSAtIFRoZSBuZXcgb2JqZWN0XG4gKi9cbmV4cG9ydCBjb25zdCBtYXBPYmplY3QgPSAob2JqZWN0LCBmdW5jKSA9PiB7XG4gICAgY29uc3QgbmV3T2JqID0ge307XG4gICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKG9iamVjdCk7XG5cbiAgICBrZXlzLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICBuZXdPYmpba2V5XSA9IGZ1bmMob2JqZWN0W2tleV0pO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIG5ld09iajtcbn07XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBwYXNzZWQgaW4gdmFsdWUgaXMgYW4gb2JqZWN0IG9yIG5vdFxuICogQHBhcmFtIHtBbnl9IHZhbCAtIFN0YXJ0IHZhbHVlIGluIHRoZSByYW5nZSBhcnJheTtcbiAqIEByZXR1cm4ge0Jvb2xlYW59IC0gV2hldGhlciB0aGUgcGFzc2VkIGluIHZhbHVlIGlzIG51bGxpc2ggb3Igbm90XG4gKi9cbmV4cG9ydCBjb25zdCBpc09iamVjdCA9IHZhbCA9PiAhIXZhbCAmJiB2YWwuY29uc3RydWN0b3IgPT09IE9iamVjdDtcblxuLyoqXG4gKiBTdXBwb3J0IG1ldGhvZCBzbyBIVEwvU2lnaHRseSBjYW4gcGFzcyBhdXRob3JlZCBwcm9wZXJ0aWVzIHRvIFJlYWN0XG4gKiBAcGFyYW0ge09iamVjdH0gdmFsdWUgLSBTdGFydCB2YWx1ZSBpbiB0aGUgcmFuZ2UgYXJyYXk7XG4gKiBAcmV0dXJuIHtPYmplY3R9IC0gQXV0aG9yZWQgY29uZmlnIHVzZWQgYnkgcmVhY3QgY29tcG9uZW50XG4gKi9cbmV4cG9ydCBjb25zdCBwYXJzZVRvUHJpbWl0aXZlID0gKHZhbHVlKSA9PiB7XG4gICAgaWYgKGlzT2JqZWN0KHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gbWFwT2JqZWN0KHZhbHVlLCBwYXJzZVRvUHJpbWl0aXZlKTtcbiAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZS5tYXAocGFyc2VUb1ByaW1pdGl2ZSk7XG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIHBhcnNlVG9QcmltaXRpdmUoSlNPTi5wYXJzZSh2YWx1ZSkpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cbn07XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBwYXNzZWQgaW4gdmFsdWUgaXMgbnVsbGlzaCBvciBub3RcbiAqIEBwYXJhbSB7QW55fSB2YWwgLSBTdGFydCB2YWx1ZSBpbiB0aGUgcmFuZ2UgYXJyYXk7XG4gKiBAcmV0dXJuIHtCb29sZWFufSAtIFdoZXRoZXIgdGhlIHBhc3NlZCBpbiB2YWx1ZSBpcyBudWxsaXNoIG9yIG5vdFxuICovXG5leHBvcnQgY29uc3QgaXNOdWxsaXNoID0gdmFsID0+XG4gICAgdmFsID09PSB1bmRlZmluZWQgfHwgdmFsID09PSBudWxsIHx8IE51bWJlci5pc05hTih2YWwpO1xuXG5leHBvcnQgY29uc3QgaXNBdGxlYXN0T25lRmlsdGVyU2VsZWN0ZWQgPSBmaWx0ZXJzID0+XG4gICAgY2hhaW5Gcm9tSXRlcmFibGUoZmlsdGVycy5tYXAoZiA9PiBmLml0ZW1zKSkuc29tZShpdGVtID0+IGl0ZW0uc2VsZWN0ZWQpO1xuXG4vKipcbiAqIEhlbHBlciBtZXRob2QgdG8gc3RvcCBwcm9wYWdhdGlvbiBmb3IgZXZlbnRzXG4gKiBAcGFyYW0ge0V2ZW50fSBlIC0gVGhlIGV2ZW50IHRvIHN0b3AgcHJvcGFnYXRpb24gZm9yXG4gKiBAcmV0dXJuIHtWb2lkfVxuICovXG5leHBvcnQgY29uc3Qgc3RvcFByb3BhZ2F0aW9uID0gZSA9PiBlLnN0b3BQcm9wYWdhdGlvbigpO1xuXG4vKipcbiAqIFJldHVybiBhIHJhbmdlIG9mIG51bWJlcnMgZnJvbSBbc3RhcnQsIC4uLiAsIGVuZF07XG4gKiBAcGFyYW0ge251bWJlcn0gc3RhcnRWYWwgLSBTdGFydCB2YWx1ZSBpbiB0aGUgcmFuZ2UgYXJyYXk7XG4gKiBAcGFyYW0ge251bWJlcn0gZW5kIC0gRW5kIHZhbHVlIGluIHRoZSByYW5nZSBhcnJheTtcbiAqIEByZXR1cm4ge0FycmF5fVxuICovXG5leHBvcnQgY29uc3QgZ2VuZXJhdGVSYW5nZSA9IChzdGFydFZhbCwgZW5kKSA9PiB7XG4gICAgbGV0IHN0YXJ0ID0gc3RhcnRWYWw7XG4gICAgbGV0IHN0ZXAgPSAxO1xuICAgIGNvbnN0IHJhbmdlID0gW107XG5cbiAgICBpZiAoZW5kIDwgc3RhcnQpIHtcbiAgICAgICAgc3RlcCA9IC1zdGVwO1xuICAgIH1cblxuICAgIHdoaWxlIChzdGVwID4gMCA/IGVuZCA+PSBzdGFydCA6IGVuZCA8PSBzdGFydCkge1xuICAgICAgICByYW5nZS5wdXNoKHN0YXJ0KTtcbiAgICAgICAgc3RhcnQgKz0gc3RlcDtcbiAgICB9XG5cbiAgICByZXR1cm4gcmFuZ2U7XG59O1xuXG4vKipcbiAqIEdldHMgd2hhdCBzdGFydCBhbmQgZW5kIG51bWJlcnMgc2hvdWxkIGJlIGZvciBhIGdpdmVuIHBhZ2VcbiAqIEBwYXJhbSB7bnVtYmVyfSBwYWdlQ291bnQgLSBUb3RhbCBwYWdlcyB0byBkaXNwbGF5XG4gKiBAcGFyYW0ge251bWJlcn0gY3VycmVudFBhZ2VOdW1iZXIgLSBDdXJyZW50IHBhZ2UgdXNlciBpcyBvblxuICogQHBhcmFtIHtudW1iZXJ9IHRvdGFsUGFnZXMgLSBUb3RhbCBudW1iZXIgb2YgcGFnZXMgYXZhaWxhYmxlXG4gKiBAcmV0dXJuIHtBcnJheX0gLSBUaGUgc3RhcnQgYW5kIGVuZCBwYWdlIG51bWJlcnNcbiAqL1xuZXhwb3J0IGNvbnN0IGdldFBhZ2VTdGFydEVuZCA9IChjdXJyZW50UGFnZU51bWJlciwgcGFnZUNvdW50LCB0b3RhbFBhZ2VzKSA9PiB7XG4gICAgY29uc3QgaGFsZlBhZ2VDb3VudCA9IE1hdGguZmxvb3IocGFnZUNvdW50IC8gMik7XG4gICAgbGV0IHN0YXJ0O1xuICAgIGxldCBlbmQ7XG5cbiAgICBpZiAodG90YWxQYWdlcyA8PSBwYWdlQ291bnQgKyAxKSB7XG4gICAgICAgIC8vIHNob3cgYWxsIHBhZ2VzXG4gICAgICAgIHN0YXJ0ID0gMTtcbiAgICAgICAgZW5kID0gdG90YWxQYWdlcztcbiAgICB9IGVsc2Uge1xuICAgICAgICBzdGFydCA9IE1hdGgubWluKFxuICAgICAgICAgICAgTWF0aC5tYXgoMSwgY3VycmVudFBhZ2VOdW1iZXIgLSBoYWxmUGFnZUNvdW50KSxcbiAgICAgICAgICAgIHRvdGFsUGFnZXMgLSBwYWdlQ291bnQsXG4gICAgICAgICk7XG4gICAgICAgIGVuZCA9IE1hdGgubWF4KFxuICAgICAgICAgICAgTWF0aC5taW4oY3VycmVudFBhZ2VOdW1iZXIgKyBoYWxmUGFnZUNvdW50LCB0b3RhbFBhZ2VzKSxcbiAgICAgICAgICAgIHBhZ2VDb3VudCArIDEsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIFtzdGFydCwgZW5kXTtcbn07XG5cbi8qKlxuICogR2V0cyB0aGUgc3RhcnQgbnVtYmVyIGZvciBQYWdpbmF0b3IgQ29tcG9uZW50XG4gKiBAcGFyYW0ge051bWJlcn0gY3VycmVudFBhZ2VOdW1iZXIgLSBDdXJyZW50IHBhZ2UgdGhlIHVzZXIgaXMgb25cbiAqIEBwYXJhbSB7TnVtYmVyfSBzaG93SXRlbXNQZXJQYWdlIC0gSG93IG1hbnkgaXRlbXMgdG8gc2hvdyBwZXIgcGFnZVxuICogQHJldHVybnMge051bWJlcn0gLSBUaGUgc3RhcnQgbnVtYmVyIGZvciBQYWdpbmF0b3IgQ29tcG9uZW50XG4gKi9cbmV4cG9ydCBjb25zdCBnZXRTdGFydE51bWJlciA9IChjdXJyZW50UGFnZU51bWJlciwgc2hvd0l0ZW1zUGVyUGFnZSkgPT4ge1xuICAgIGlmIChjdXJyZW50UGFnZU51bWJlciA9PT0gMSkgcmV0dXJuIDE7XG4gICAgcmV0dXJuIChjdXJyZW50UGFnZU51bWJlciAqIHNob3dJdGVtc1BlclBhZ2UpIC0gKHNob3dJdGVtc1BlclBhZ2UgLSAxKTtcbn07XG5cbi8qKlxuICogR2V0cyB0aGUgZW5kIG51bWJlciBmb3IgUGFnaW5hdG9yIENvbXBvbmVudFxuICogQHBhcmFtIHtOdW1iZXJ9IGN1cnJlbnRQYWdlTnVtYmVyIC0gQ3VycmVudCBwYWdlIHRoZSB1c2VyIGlzIG9uXG4gKiBAcGFyYW0ge051bWJlcn0gc2hvd0l0ZW1zUGVyUGFnZSAtIEhvdyBtYW55IGl0ZW1zIHRvIHNob3cgcGVyIHBhZ2VcbiAqIEBwYXJhbSB7TnVtYmVyfSB0b3RhbFJlc3VsdHMgLSBUb3RhbCBjb3VudCBvZiBjYXJkcyBpbiBjb2xsZWN0aW9uXG4gKiBAcmV0dXJucyB7TnVtYmVyfSAtIFRoZSBlbmQgbnVtYmVyIGZvciBQYWdpbmF0b3IgQ29tcG9uZW50XG4gKi9cbmV4cG9ydCBjb25zdCBnZXRFbmROdW1iZXIgPSAoXG4gICAgY3VycmVudFBhZ2VOdW1iZXIsXG4gICAgc2hvd0l0ZW1zUGVyUGFnZSxcbiAgICB0b3RhbFJlc3VsdHMsXG4pID0+IHtcbiAgICBjb25zdCByZXMgPSBjdXJyZW50UGFnZU51bWJlciAqIHNob3dJdGVtc1BlclBhZ2U7XG4gICAgcmV0dXJuIHJlcyA8IHRvdGFsUmVzdWx0cyA/IHJlcyA6IHRvdGFsUmVzdWx0cztcbn07XG5cbi8qKlxuICogR2V0cyB0aGUgZW5kIG51bWJlciBmb3IgUGFnaW5hdG9yIENvbXBvbmVudFxuICogQHBhcmFtIHtzdHJpbmd9IHRleHQgLSB0ZW1wbGF0ZSBzdHJpbmcgbGlrZSBhICd7MH0gezF9J1xuICogQHBhcmFtIHtvYmplY3R9IHByb3BzIC0gb2JqZWN0IHdpdGggcHJvcHMgdG8gcmVwbGFjZSBwYXJ0IG9mIHRleHQgaW4gYnJhY2tldHNcbiAqIEByZXR1cm5zIHtzdHJpbmd9IC0gKCd7cGxhY2Vob2xkZXJLZXl9JywgeyBwbGFjZWhvbGRlcktleTogJ3BsYWNlaG9sZGVyVmFsdWUnIH0pXG4gKiAgPT4gJ3BsYWNlaG9sZGVyVmFsdWUnXG4gKi9cbmV4cG9ydCBjb25zdCB0ZW1wbGF0ZSA9ICh0ZXh0ID0gJycsIHByb3BzKSA9PiB7XG4gICAgaWYgKCFwcm9wcykgcmV0dXJuIHRleHQ7XG5cbiAgICBjb25zdCByZWdFeHAgPSAveyhbQS16XSopfS9naTtcbiAgICBjb25zdCByZXBsYWNlciA9IChmdWxsTWF0Y2gsIGtleSkgPT4gcHJvcHNba2V5XSB8fCBmdWxsTWF0Y2g7XG5cbiAgICByZXR1cm4gdGV4dC5yZXBsYWNlKHJlZ0V4cCwgcmVwbGFjZXIpO1xufTtcblxuLyoqXG4gKiBHZXRzIHRoZSBvYmplY3QvcGF0aC9kZWZhdWx0VmFsdWUgYW5kIHJldHVybiBvYmplY3QgdmFsdWUgYnkgdGhpcyBwYXRoXG4gKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IC0gb2JqZWN0IHRvIGdldCB2YWx1ZVxuICogQHBhcmFtIHtTdHJpbmd9IHBhdGggLSBwYXRoIHRvIHNlYXJjaGVkIHZhbHVlXG4gKiBAcGFyYW0ge2FueX0gZGVmYXVsdFZhbHVlIC0gd2lsbCByZXR1cm4gd2hlbiBubyB2YWx1ZSB3YXMgZm91bmRcbiAqIEByZXR1cm5zIHthbnl9IC0gc2VhcmNoZWQgdmFsdWVcbiAqL1xuZXhwb3J0IGNvbnN0IGdldEJ5UGF0aCA9IChvYmplY3QsIHBhdGgsIGRlZmF1bHRWYWx1ZSkgPT4ge1xuICAgIGlmICghb2JqZWN0IHx8ICFwYXRoKSByZXR1cm4gZGVmYXVsdFZhbHVlO1xuXG4gICAgbGV0IHJlc3VsdCA9IG9iamVjdDtcbiAgICBjb25zdCBjaHVua3MgPSBwYXRoLnNwbGl0KCcuJyk7XG5cbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgY2h1bmtzLmxlbmd0aDsgaW5kZXggKz0gMSkge1xuICAgICAgICBjb25zdCBjaHVuayA9IGNodW5rc1tpbmRleF07XG5cbiAgICAgICAgLyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXByb3RvdHlwZS1idWlsdGlucyAqL1xuICAgICAgICBpZiAocmVzdWx0ICE9IG51bGwgJiYgcmVzdWx0Lmhhc093blByb3BlcnR5KGNodW5rKSkge1xuICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0W2NodW5rXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJlc3VsdCA9IGRlZmF1bHRWYWx1ZTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbn07XG5cbi8qKlxuICogUmV0dXJuIHN1bSBvZiB0aGUgc2VsZWN0ZWQgZmlsdGVyc1xuICogQHBhcmFtIHtpdGVtc30gYXJyYXkgLSBmaWx0ZXIgaXRlbXNcbiAqIEByZXR1cm5zIHtudW1iZXJ9IC0gc2VsZWN0ZWQgaXRlbXMgY291bnRcbiAqL1xuZXhwb3J0IGNvbnN0IGdldFNlbGVjdGVkSXRlbXNDb3VudCA9IGl0ZW1zID0+XG4gICAgaXRlbXMuZmlsdGVyKCh7IHNlbGVjdGVkIH0pID0+IEJvb2xlYW4oc2VsZWN0ZWQpKS5sZW5ndGg7XG5cbi8qKlxuICogRnVuYyB0byBtYWtlIGRlYm91bmNlZCBmdW5jdGlvbnNcbiAqIEBwYXJhbSB7RnVuY3Rpb259IGZ1bmMgLSB0YXJnZXQgZnVuY3Rpb25cbiAqIEBwYXJhbSB7bnVtYmVyfSB0aW1lb3V0IC0gZGVib3VuY2UgZGVsYXlcbiAqIEByZXR1cm5zIHtmdW5jfSAtIGRlYm91bmNlZCBmdW5jdGlvblxuICovXG5leHBvcnQgY29uc3QgZGVib3VuY2UgPSAoZnVuYywgdGltZW91dCA9IDApID0+IHtcbiAgICBsZXQgdGltZXI7XG5cbiAgICByZXR1cm4gKC4uLmFyZ3MpID0+IHtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVyKTtcblxuICAgICAgICB0aW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgZnVuYyguLi5hcmdzKTtcbiAgICAgICAgfSwgdGltZW91dCk7XG4gICAgfTtcbn07XG5cbi8qKlxuICogU2V0IG9iamVjdCB2YWx1ZSBieSBwYXRoXG4gKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IC0gdGFyZ2V0IG9iamVjdFxuICogQHBhcmFtIHtzdHJpbmd9IHBhdGggLSBkZXN0aW5hdGlvbiBwYXRoXG4gKiBAcGFyYW0ge2FueX0gdmFsdWUgLSB2YWx1ZSB3aGljaCBzaG91bGQgYmUgYXNzaWduXG4gKi9cbmV4cG9ydCBjb25zdCBzZXRCeVBhdGggPSAob2JqZWN0LCBwYXRoLCB2YWx1ZSkgPT4ge1xuICAgIGlmICghb2JqZWN0IHx8ICFwYXRoKSByZXR1cm47XG5cbiAgICBjb25zdCBjaHVua3MgPSBwYXRoLnNwbGl0KCcuJyk7XG4gICAgY29uc3Qgd2l0aG91dExhc3QgPSBjaHVua3Muc2xpY2UoMCwgLTEpO1xuICAgIGNvbnN0IGxhc3RDaHVuayA9IGNodW5rc1tjaHVua3MubGVuZ3RoIC0gMV07XG5cbiAgICBjb25zdCB0YXJnZXQgPSB3aXRob3V0TGFzdC5yZWR1Y2UoKGFjY3VtdWxhdG9yLCBjaHVuaykgPT4ge1xuICAgICAgICBpZiAoIWlzT2JqZWN0KGFjY3VtdWxhdG9yW2NodW5rXSkpIHtcbiAgICAgICAgICAgIGFjY3VtdWxhdG9yW2NodW5rXSA9IHt9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhY2N1bXVsYXRvcltjaHVua107XG4gICAgfSwgb2JqZWN0KTtcblxuICAgIHRhcmdldFtsYXN0Q2h1bmtdID0gdmFsdWU7XG59O1xuXG4vKipcbiAqIERlZXAgbWVyZ2Ugb2JqZWN0cyB3aXRob3V0IHVuZGVmaW5lZCB2YWx1ZXNcbiAqIEBwYXJhbSB7T2JqZWN0fSB0YXJnZXQgLSB0YXJnZXQgb2JqZWN0XG4gKiBAcGFyYW0gey4uLk9iamVjdH0gc291cmNlcyAtIG9iamVjdHMgdG8gbWVyZ2VcbiAqIEByZXR1cm4ge09iZWN0fSBtZXJnZSBvYmplY3RcbiAqL1xuZXhwb3J0IGNvbnN0IG1lcmdlRGVlcCA9ICh0YXJnZXQsIC4uLnNvdXJjZXMpID0+IHtcbiAgICBpZiAoIXNvdXJjZXMubGVuZ3RoKSByZXR1cm4gdGFyZ2V0O1xuXG4gICAgY29uc3Qgc291cmNlID0gc291cmNlcy5zaGlmdCgpO1xuXG4gICAgaWYgKGlzT2JqZWN0KHRhcmdldCkgJiYgaXNPYmplY3Qoc291cmNlKSkge1xuICAgICAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMoc291cmNlKTtcblxuICAgICAgICBrZXlzLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICAgICAgaWYgKGlzT2JqZWN0KHNvdXJjZVtrZXldKSkge1xuICAgICAgICAgICAgICAgIGlmICghdGFyZ2V0W2tleV0pIHRhcmdldFtrZXldID0ge307XG5cbiAgICAgICAgICAgICAgICBtZXJnZURlZXAodGFyZ2V0W2tleV0sIHNvdXJjZVtrZXldKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoc291cmNlW2tleV0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIE9iamVjdC5hc3NpZ24odGFyZ2V0LCB7IFtrZXldOiBzb3VyY2Vba2V5XSB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG1lcmdlRGVlcCh0YXJnZXQsIC4uLnNvdXJjZXMpO1xufTtcblxuY29uc3QgaXNDYWFzR3JvdXAgPSBncm91cCA9PiBncm91cC5pbmRleE9mKCdjaF8nKSA9PT0gMDtcblxuLyoqXG4gKiBNZXRob2RzIHRvIGNyZWF0ZS9wYXJzZSBxdWVyeVN0cmluZ1xuICovXG5leHBvcnQgY29uc3QgcXMgPSB7XG4gICAgcGFyc2U6IChzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3Qgc2VhcmNoUGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyhzdHJpbmcpO1xuXG4gICAgICAgIHJldHVybiBbLi4uc2VhcmNoUGFyYW1zLmtleXMoKV0ucmVkdWNlKChhY2N1bXVsYXRvciwga2V5KSA9PiB7XG4gICAgICAgICAgICBpZiAoIWFjY3VtdWxhdG9yW2tleV0pIHtcbiAgICAgICAgICAgICAgICBsZXQgdmFsdWUgPSBzZWFyY2hQYXJhbXMuZ2V0QWxsKGtleSk7XG5cbiAgICAgICAgICAgICAgICBpZiAoaXNDYWFzR3JvdXAoa2V5KSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAodmFsdWUubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBbZmlyc3RJdGVtXSA9IHZhbHVlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZmlyc3RJdGVtLmluY2x1ZGVzKCd8JykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IGZpcnN0SXRlbS5zcGxpdCgnfCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGFjY3VtdWxhdG9yW2tleV0gPSBkZWNvZGVVUklDb21wb25lbnQodmFsdWUpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGFjY3VtdWxhdG9yW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBhY2N1bXVsYXRvcjtcbiAgICAgICAgfSwge30pO1xuICAgIH0sXG4gICAgc3RyaW5naWZ5OiAob2JqLCB7IGFycmF5IH0gPSB7fSkgPT4ge1xuICAgICAgICBjb25zdCBzZWFyY2hQYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKCk7XG4gICAgICAgIE9iamVjdC5lbnRyaWVzKG9iaikuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgICAgICBpZiAoaXNDYWFzR3JvdXAoa2V5KSkge1xuICAgICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoYXJyYXkgPT09ICdjb21tYScpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlYXJjaFBhcmFtcy5hcHBlbmQoa2V5LCBlbmNvZGVVUklDb21wb25lbnQodmFsdWUpKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlYXJjaFBhcmFtcy5hcHBlbmQoa2V5LCBlbmNvZGVVUklDb21wb25lbnQodmFsdWUuam9pbignfCcpKSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBzZWFyY2hQYXJhbXMuYXBwZW5kKGtleSwgZW5jb2RlVVJJQ29tcG9uZW50KHZhbHVlKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBzZWFyY2hQYXJhbXMuYXBwZW5kKGtleSwgdmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gc2VhcmNoUGFyYW1zLnRvU3RyaW5nKCk7XG4gICAgfSxcbn07XG5cbmV4cG9ydCBjb25zdCBpc0RhdGVXaXRoaW5JbnRlcnZhbCA9IChjdXJyZW50RGF0ZSwgc3RhcnREYXRlLCBlbmREYXRlKSA9PiB7XG4gICAgY29uc3QgY3VyciA9IERhdGUucGFyc2UoY3VycmVudERhdGUpO1xuICAgIGNvbnN0IHN0YXJ0ID0gRGF0ZS5wYXJzZShzdGFydERhdGUpO1xuICAgIGNvbnN0IGVuZCA9IERhdGUucGFyc2UoZW5kRGF0ZSk7XG5cbiAgICByZXR1cm4gKHN0YXJ0IDw9IGN1cnIgJiYgZW5kID4gY3Vycik7XG59O1xuXG5leHBvcnQgY29uc3QgaXNEYXRlQmVmb3JlSW50ZXJ2YWwgPSAoY3VycmVudERhdGUsIHN0YXJ0RGF0ZSkgPT4ge1xuICAgIGNvbnN0IGN1cnIgPSBEYXRlLnBhcnNlKGN1cnJlbnREYXRlKTtcbiAgICBjb25zdCBzdGFydCA9IERhdGUucGFyc2Uoc3RhcnREYXRlKTtcblxuICAgIHJldHVybiBjdXJyIDwgc3RhcnQ7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Q3VycmVudERhdGUgPSAoKSA9PiB7XG4gICAgY29uc3QgdXJsUGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyh3aW5kb3cubG9jYXRpb24uc2VhcmNoKTtcbiAgICBjb25zdCBzZXJ2ZXJ0aW1lID0gcGFyc2VJbnQodXJsUGFyYW1zLmdldCgnc2VydmVydGltZScpLCAxMCk7XG4gICAgY29uc3QgdGltZVNpbmNlQXJyaXZhbCA9IHBlcmZvcm1hbmNlLm5vdygpO1xuICAgIGNvbnN0IGN1cnJEYXRlID0gc2VydmVydGltZSA/IG5ldyBEYXRlKHNlcnZlcnRpbWUgKyB0aW1lU2luY2VBcnJpdmFsKSA6IG5ldyBEYXRlKCk7XG4gICAgcmV0dXJuIGN1cnJEYXRlO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldEV2ZW50QmFubmVyID0gZnVuY3Rpb24gZm9vKHN0YXJ0RGF0ZSwgZW5kRGF0ZSwgYmFubmVyTWFwKSB7XG4gICAgY29uc3QgY3VyckRhdGUgPSBnZXRDdXJyZW50RGF0ZSgpO1xuICAgIGlmIChpc0RhdGVXaXRoaW5JbnRlcnZhbChjdXJyRGF0ZSwgc3RhcnREYXRlLCBlbmREYXRlKSkge1xuICAgICAgICByZXR1cm4gYmFubmVyTWFwLmxpdmU7XG4gICAgfSBlbHNlIGlmIChpc0RhdGVCZWZvcmVJbnRlcnZhbChjdXJyRGF0ZSwgc3RhcnREYXRlKSkge1xuICAgICAgICByZXR1cm4gYmFubmVyTWFwLnVwY29taW5nO1xuICAgIH1cbiAgICByZXR1cm4gYmFubmVyTWFwLm9uRGVtYW5kO1xufTtcblxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VHJhbnNpdGlvbnMoY2FyZHNQdHIpIHtcbiAgICBjb25zdCBjYXJkcyA9IFsuLi5jYXJkc1B0cl07XG4gICAgY29uc3QgY3VycmVudERhdGUgPSBnZXRDdXJyZW50RGF0ZSgpO1xuICAgIGNvbnN0IHRyYW5zaXRpb25zID0gbmV3IE1pblByaW9yaXR5UXVldWUoKTtcblxuICAgIC8qIGVzbGludC1kaXNhYmxlIG5vLXBsdXNwbHVzICovXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjYXJkcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBwcmlvcml0eSA9IERhdGUucGFyc2UoY2FyZHNbaV0uc3RhcnREYXRlKSAtIGN1cnJlbnREYXRlO1xuICAgICAgICBpZiAocHJpb3JpdHkgJiYgcHJpb3JpdHkgPiAwKSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9ucy5lbnF1ZXVlKGNhcmRzW2ldLCBwcmlvcml0eSk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZW5kUHJpb3JpdHkgPSBEYXRlLnBhcnNlKERhdGUucGFyc2UoY2FyZHNbaV0uZW5kRGF0ZSkgLSBjdXJyZW50RGF0ZSk7XG4gICAgICAgIGlmIChjYXJkc1tpXS5lbmREYXRlICYmIGVuZFByaW9yaXR5ID4gMCkge1xuICAgICAgICAgICAgdHJhbnNpdGlvbnMuZW5xdWV1ZShudWxsLCBlbmRQcmlvcml0eSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRyYW5zaXRpb25zO1xufVxuXG5cbmV4cG9ydCBjb25zdCBnZXRMaW5rVGFyZ2V0ID0gKGxpbmssIGN0YUFjdGlvbiA9ICcnLCBkb21haW4gPSB3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUpID0+IHtcbiAgICBpZiAoY3RhQWN0aW9uIHx8IGxpbmsuc3RhcnRzV2l0aCgnIycpKSB7XG4gICAgICAgIHJldHVybiBjdGFBY3Rpb247XG4gICAgfVxuICAgIGxldCB0YXJnZXQgPSAnX2JsYW5rJztcbiAgICB0cnkge1xuICAgICAgICBjb25zdCB7IGhvc3RuYW1lOiBsaW5rSG9zdE5hbWUgPSAnJyB9ID0gbmV3IFVSTChsaW5rKTtcbiAgICAgICAgaWYgKGRvbWFpbiA9PT0gbGlua0hvc3ROYW1lKSB7XG4gICAgICAgICAgICB0YXJnZXQgPSAnX3NlbGYnO1xuICAgICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAvKiBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLWVtcHR5ICovXG4gICAgfVxuICAgIHJldHVybiB0YXJnZXQ7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0R2xvYmFsTmF2SGVpZ2h0ID0gKCkgPT4ge1xuICAgIGNvbnN0IGhlYWRlciA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2hlYWRlcicpO1xuICAgIGNvbnN0IG9mZlNldCA9IDIwOyAvLyBtYXJnaW4gYWJvdmUgY2FyZCBjb2xsZWN0aW9uXG4gICAgaWYgKCFoZWFkZXIpIHJldHVybiBvZmZTZXQ7XG5cbiAgICBjb25zdCBpc0JhY29tID0gaGVhZGVyLmdldEF0dHJpYnV0ZSgnZGFhLWxoJykgJiYgaGVhZGVyLmdldEF0dHJpYnV0ZSgnZGFhLWxoJykuaW5jbHVkZXMoJ2JhY29tJyk7XG4gICAgY29uc3QgaGVhZGVyV3JhcHBlciA9IGlzQmFjb20gPyBoZWFkZXIgOiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuZmVkcy1oZWFkZXItd3JhcHBlcicpO1xuXG4gICAgcmV0dXJuIGlzQmFjb20gfHwgKGhlYWRlcldyYXBwZXIgJiYgaGVhZGVyV3JhcHBlci5jbGFzc0xpc3QuY29udGFpbnMoJ2ZlZHMtaGVhZGVyLXdyYXBwZXItLXN0aWNreScpKVxuICAgICAgICA/IGhlYWRlci5vZmZzZXRIZWlnaHQgKyBvZmZTZXRcbiAgICAgICAgOiBvZmZTZXQ7XG59O1xuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vcmVhY3Qvc3JjL2pzL2NvbXBvbmVudHMvQ29uc29uYW50L0hlbHBlcnMvZ2VuZXJhbC5qcyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///6\n"); +eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getGlobalNavHeight = exports.getLinkTarget = exports.getEventBanner = exports.getCurrentDate = exports.isDateBeforeInterval = exports.isDateWithinInterval = exports.qs = exports.mergeDeep = exports.setByPath = exports.debounce = exports.getSelectedItemsCount = exports.getByPath = exports.template = exports.getEndNumber = exports.getStartNumber = exports.getPageStartEnd = exports.generateRange = exports.stopPropagation = exports.isAtleastOneFilterSelected = exports.isNullish = exports.parseToPrimitive = exports.isObject = exports.mapObject = exports.sanitizeText = exports.sortByKey = exports.intersection = exports.isSuperset = exports.chainFromIterable = exports.chain = exports.removeDuplicatesByKey = exports.truncateList = exports.truncateString = exports.readInclusionsFromLocalStorage = exports.readBookmarksFromLocalStorage = exports.saveBookmarksToLocalStorage = undefined;\n\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\nexports.getTransitions = getTransitions;\n\nvar _priorityQueue = __webpack_require__(222);\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\n/**\n * Saves a card to local storage\n * @param {Number} bookmarksValue - The id of the card to save\n * @return {Void}\n */\nvar saveBookmarksToLocalStorage = exports.saveBookmarksToLocalStorage = function saveBookmarksToLocalStorage(bookmarksValue) {\n localStorage.setItem('bookmarks', JSON.stringify(bookmarksValue, null, 2));\n};\n\n/**\n * Returns all cards saved in local storage\n * @return {Array} - All saved bookmarks\n */\nvar readBookmarksFromLocalStorage = exports.readBookmarksFromLocalStorage = function readBookmarksFromLocalStorage() {\n var bookmarks = JSON.parse(localStorage.getItem('bookmarks'));\n return Array.isArray(bookmarks) ? bookmarks : [];\n};\n\nvar readInclusionsFromLocalStorage = exports.readInclusionsFromLocalStorage = function readInclusionsFromLocalStorage() {\n var favorites = JSON.parse(localStorage.getItem('chimera.favorites')) || [];\n var schedule = JSON.parse(localStorage.getItem('chimera.schedule')) || [];\n var lastWatched = localStorage.getItem('chimera.lastWatched') || '';\n\n return new Set([].concat(favorites, [lastWatched], schedule));\n};\n\n/**\n * Helper method to truncate strings\n * @param {String} str - The string to truncate\n * @param {Number} num - How much to truncate\n * @return {String} - The truncated string\n */\nvar truncateString = exports.truncateString = function truncateString(str, num) {\n if (str.length <= num) return str;\n return str.slice(0, num) + '...';\n};\n\n/**\n * Helper method to truncate a list of cards\n * @param {Number} limit - How much to truncate by\n * @param {Array} list - What to truncate\n * @return {Array} - The truncated list\n */\nvar truncateList = exports.truncateList = function truncateList(limit, list) {\n // No limit, return all;\n if (limit < 0) return list;\n\n // Slice received data to required q-ty;\n return list.slice(0, limit);\n};\n\n/**\n * Helper method to remove duplicate cards from list\n * @param {Array} list - The list of cards\n * @param {key} key - What key to search for duplicates for\n * @return {Array} - A list of cards with no duplicates\n */\nvar removeDuplicatesByKey = exports.removeDuplicatesByKey = function removeDuplicatesByKey(list, key) {\n var newList = [];\n var ids = new Set();\n list.forEach(function (item) {\n if (!ids.has(item[key])) {\n newList.push(item);\n ids.add(item[key]);\n }\n });\n return newList;\n};\n\n/**\n * Helper method that chains lists together\n * @param {Any} args - Any set of args\n * @example chain(['A', 'B', 'C'], ['D', 'E', 'F']) --> ['A' 'B' 'C' 'D' 'E' 'F']\n */\nvar chain = exports.chain = function chain() {\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return args.reduce(function (a, b) {\n return a.concat(b);\n }, []);\n};\n\n/**\n * Helper method that chains iterables together\n * @param {Any} args - Any set of iterable arguments\n * @example chainFromIterable(someIterable) --> ['A' 'B' 'C' 'D' 'E' 'F']\n */\nvar chainFromIterable = exports.chainFromIterable = function chainFromIterable(args) {\n return chain.apply(undefined, _toConsumableArray(args));\n};\n\n/**\n * Helper method to determine wheether set A is a superset of set B\n * @param {Set} superset - The first set\n * @param {Set} subset - The second set\n * @return {Boolean} - Whether set A is a superset of set B\n */\nvar isSuperset = exports.isSuperset = function isSuperset(superset, subset) {\n // eslint-disable-next-line no-restricted-syntax\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = subset[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var elem = _step.value;\n\n if (!superset.has(elem)) {\n return false;\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n\n return true;\n};\n\n/**\n * Helper method to do determine whether the two sets have an intersection\n * @param {Set} setA - The first set\n * @param {Set} setB - The second set\n * @return {Boolean} - Whether there is an intersection of elements between the sets\n */\nvar intersection = exports.intersection = function intersection(setA, setB) {\n var intersectionSet = new Set();\n // eslint-disable-next-line no-restricted-syntax\n var _iteratorNormalCompletion2 = true;\n var _didIteratorError2 = false;\n var _iteratorError2 = undefined;\n\n try {\n for (var _iterator2 = setB[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var elem = _step2.value;\n\n if (setA.has(elem)) {\n intersectionSet.add(elem);\n }\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n\n return intersectionSet;\n};\n\n/**\n * Helper method to sort by keys\n * @param {Iterable} iterable - The iterable object\n * @param {Function} keyFunc - The function to apply\n */\nvar sortByKey = exports.sortByKey = function sortByKey(iterable, keyFunc) {\n return [].concat(_toConsumableArray(iterable)).sort(function (a, b) {\n if (keyFunc(a) < keyFunc(b)) return -1;\n if (keyFunc(a) > keyFunc(b)) return 1;\n return 0;\n });\n};\n\nvar allowedChars = /[a-zA-Z0-9\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF\\s.]/g;\n\n/**\n * Returns cleaned up text\n * don't allow urls\n * @param {String} text - The text so sanitize\n * @return {String} - The cleaned up text\n */\nvar sanitizeText = exports.sanitizeText = function sanitizeText(text) {\n if (!text) return '';\n var sanitized = text.toLowerCase().trim();\n // remove any invalid chars\n var matchedAllowedChars = sanitized.match(allowedChars);\n sanitized = matchedAllowedChars ? matchedAllowedChars.join('') : '';\n return sanitized;\n};\n\n/**\n * For a given object, applies a function to key in that object\n * @param {Object} object - The object to apply the function to\n * @param {Function} func - The function to apply to the entries in the object\n * @return {Object} - The new object\n */\nvar mapObject = exports.mapObject = function mapObject(object, func) {\n var newObj = {};\n var keys = Object.keys(object);\n\n keys.forEach(function (key) {\n newObj[key] = func(object[key]);\n });\n\n return newObj;\n};\n\n/**\n * Determines whether the passed in value is an object or not\n * @param {Any} val - Start value in the range array;\n * @return {Boolean} - Whether the passed in value is nullish or not\n */\nvar isObject = exports.isObject = function isObject(val) {\n return !!val && val.constructor === Object;\n};\n\n/**\n * Support method so HTL/Sightly can pass authored properties to React\n * @param {Object} value - Start value in the range array;\n * @return {Object} - Authored config used by react component\n */\nvar parseToPrimitive = exports.parseToPrimitive = function parseToPrimitive(value) {\n if (isObject(value)) {\n return mapObject(value, parseToPrimitive);\n } else if (Array.isArray(value)) {\n return value.map(parseToPrimitive);\n }\n\n try {\n return parseToPrimitive(JSON.parse(value));\n } catch (e) {\n return value;\n }\n};\n\n/**\n * Determines whether the passed in value is nullish or not\n * @param {Any} val - Start value in the range array;\n * @return {Boolean} - Whether the passed in value is nullish or not\n */\nvar isNullish = exports.isNullish = function isNullish(val) {\n return val === undefined || val === null || Number.isNaN(val);\n};\n\nvar isAtleastOneFilterSelected = exports.isAtleastOneFilterSelected = function isAtleastOneFilterSelected(filters) {\n return chainFromIterable(filters.map(function (f) {\n return f.items;\n })).some(function (item) {\n return item.selected;\n });\n};\n\n/**\n * Helper method to stop propagation for events\n * @param {Event} e - The event to stop propagation for\n * @return {Void}\n */\nvar stopPropagation = exports.stopPropagation = function stopPropagation(e) {\n return e.stopPropagation();\n};\n\n/**\n * Return a range of numbers from [start, ... , end];\n * @param {number} startVal - Start value in the range array;\n * @param {number} end - End value in the range array;\n * @return {Array}\n */\nvar generateRange = exports.generateRange = function generateRange(startVal, end) {\n var start = startVal;\n var step = 1;\n var range = [];\n\n if (end < start) {\n step = -step;\n }\n\n while (step > 0 ? end >= start : end <= start) {\n range.push(start);\n start += step;\n }\n\n return range;\n};\n\n/**\n * Gets what start and end numbers should be for a given page\n * @param {number} pageCount - Total pages to display\n * @param {number} currentPageNumber - Current page user is on\n * @param {number} totalPages - Total number of pages available\n * @return {Array} - The start and end page numbers\n */\nvar getPageStartEnd = exports.getPageStartEnd = function getPageStartEnd(currentPageNumber, pageCount, totalPages) {\n var halfPageCount = Math.floor(pageCount / 2);\n var start = void 0;\n var end = void 0;\n\n if (totalPages <= pageCount + 1) {\n // show all pages\n start = 1;\n end = totalPages;\n } else {\n start = Math.min(Math.max(1, currentPageNumber - halfPageCount), totalPages - pageCount);\n end = Math.max(Math.min(currentPageNumber + halfPageCount, totalPages), pageCount + 1);\n }\n\n return [start, end];\n};\n\n/**\n * Gets the start number for Paginator Component\n * @param {Number} currentPageNumber - Current page the user is on\n * @param {Number} showItemsPerPage - How many items to show per page\n * @returns {Number} - The start number for Paginator Component\n */\nvar getStartNumber = exports.getStartNumber = function getStartNumber(currentPageNumber, showItemsPerPage) {\n if (currentPageNumber === 1) return 1;\n return currentPageNumber * showItemsPerPage - (showItemsPerPage - 1);\n};\n\n/**\n * Gets the end number for Paginator Component\n * @param {Number} currentPageNumber - Current page the user is on\n * @param {Number} showItemsPerPage - How many items to show per page\n * @param {Number} totalResults - Total count of cards in collection\n * @returns {Number} - The end number for Paginator Component\n */\nvar getEndNumber = exports.getEndNumber = function getEndNumber(currentPageNumber, showItemsPerPage, totalResults) {\n var res = currentPageNumber * showItemsPerPage;\n return res < totalResults ? res : totalResults;\n};\n\n/**\n * Gets the end number for Paginator Component\n * @param {string} text - template string like a '{0} {1}'\n * @param {object} props - object with props to replace part of text in brackets\n * @returns {string} - ('{placeholderKey}', { placeholderKey: 'placeholderValue' })\n * => 'placeholderValue'\n */\nvar template = exports.template = function template() {\n var text = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var props = arguments[1];\n\n if (!props) return text;\n\n var regExp = /{([A-z]*)}/gi;\n var replacer = function replacer(fullMatch, key) {\n return props[key] || fullMatch;\n };\n\n return text.replace(regExp, replacer);\n};\n\n/**\n * Gets the object/path/defaultValue and return object value by this path\n * @param {Object} object - object to get value\n * @param {String} path - path to searched value\n * @param {any} defaultValue - will return when no value was found\n * @returns {any} - searched value\n */\nvar getByPath = exports.getByPath = function getByPath(object, path, defaultValue) {\n if (!object || !path) return defaultValue;\n\n var result = object;\n var chunks = path.split('.');\n\n for (var index = 0; index < chunks.length; index += 1) {\n var chunk = chunks[index];\n\n /* eslint-disable-next-line no-prototype-builtins */\n if (result != null && result.hasOwnProperty(chunk)) {\n result = result[chunk];\n } else {\n result = defaultValue;\n break;\n }\n }\n\n return result;\n};\n\n/**\n * Return sum of the selected filters\n * @param {items} array - filter items\n * @returns {number} - selected items count\n */\nvar getSelectedItemsCount = exports.getSelectedItemsCount = function getSelectedItemsCount(items) {\n return items.filter(function (_ref) {\n var selected = _ref.selected;\n return Boolean(selected);\n }).length;\n};\n\n/**\n * Func to make debounced functions\n * @param {Function} func - target function\n * @param {number} timeout - debounce delay\n * @returns {func} - debounced function\n */\nvar debounce = exports.debounce = function debounce(func) {\n var timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n\n var timer = void 0;\n\n return function () {\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n clearTimeout(timer);\n\n timer = setTimeout(function () {\n func.apply(undefined, args);\n }, timeout);\n };\n};\n\n/**\n * Set object value by path\n * @param {Object} object - target object\n * @param {string} path - destination path\n * @param {any} value - value which should be assign\n */\nvar setByPath = exports.setByPath = function setByPath(object, path, value) {\n if (!object || !path) return;\n\n var chunks = path.split('.');\n var withoutLast = chunks.slice(0, -1);\n var lastChunk = chunks[chunks.length - 1];\n\n var target = withoutLast.reduce(function (accumulator, chunk) {\n if (!isObject(accumulator[chunk])) {\n accumulator[chunk] = {};\n }\n return accumulator[chunk];\n }, object);\n\n target[lastChunk] = value;\n};\n\n/**\n * Deep merge objects without undefined values\n * @param {Object} target - target object\n * @param {...Object} sources - objects to merge\n * @return {Obect} merge object\n */\nvar mergeDeep = exports.mergeDeep = function mergeDeep(target) {\n for (var _len3 = arguments.length, sources = Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n sources[_key3 - 1] = arguments[_key3];\n }\n\n if (!sources.length) return target;\n\n var source = sources.shift();\n\n if (isObject(target) && isObject(source)) {\n var keys = Object.keys(source);\n\n keys.forEach(function (key) {\n if (isObject(source[key])) {\n if (!target[key]) target[key] = {};\n\n mergeDeep(target[key], source[key]);\n } else if (source[key] !== undefined) {\n Object.assign(target, _defineProperty({}, key, source[key]));\n }\n });\n }\n\n return mergeDeep.apply(undefined, [target].concat(sources));\n};\n\nvar isCaasGroup = function isCaasGroup(group) {\n return group.indexOf('ch_') === 0;\n};\n\n/**\n * Methods to create/parse queryString\n */\nvar qs = exports.qs = {\n parse: function parse(string) {\n var searchParams = new URLSearchParams(string);\n\n return [].concat(_toConsumableArray(searchParams.keys())).reduce(function (accumulator, key) {\n if (!accumulator[key]) {\n var value = searchParams.getAll(key);\n\n if (isCaasGroup(key)) {\n if (value.length === 1) {\n var _value = value,\n _value2 = _slicedToArray(_value, 1),\n firstItem = _value2[0];\n\n if (firstItem.includes('|')) {\n value = firstItem.split('|');\n }\n }\n accumulator[key] = decodeURIComponent(value);\n } else {\n accumulator[key] = value;\n }\n }\n\n return accumulator;\n }, {});\n },\n stringify: function stringify(obj) {\n var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n array = _ref2.array;\n\n var searchParams = new URLSearchParams();\n Object.entries(obj).forEach(function (_ref3) {\n var _ref4 = _slicedToArray(_ref3, 2),\n key = _ref4[0],\n value = _ref4[1];\n\n if (isCaasGroup(key)) {\n if (Array.isArray(value)) {\n if (array === 'comma') {\n searchParams.append(key, encodeURIComponent(value));\n } else {\n searchParams.append(key, encodeURIComponent(value.join('|')));\n }\n } else {\n searchParams.append(key, encodeURIComponent(value));\n }\n } else {\n searchParams.append(key, value);\n }\n });\n\n return searchParams.toString();\n }\n};\n\nvar isDateWithinInterval = exports.isDateWithinInterval = function isDateWithinInterval(currentDate, startDate, endDate) {\n var curr = Date.parse(currentDate);\n var start = Date.parse(startDate);\n var end = Date.parse(endDate);\n\n return start <= curr && end > curr;\n};\n\nvar isDateBeforeInterval = exports.isDateBeforeInterval = function isDateBeforeInterval(currentDate, startDate) {\n var curr = Date.parse(currentDate);\n var start = Date.parse(startDate);\n\n return curr < start;\n};\n\nvar getCurrentDate = exports.getCurrentDate = function getCurrentDate() {\n var urlParams = new URLSearchParams(window.location.search);\n var servertime = parseInt(urlParams.get('servertime'), 10);\n var timeSinceArrival = performance.now();\n var currDate = servertime ? new Date(servertime + timeSinceArrival) : new Date();\n return currDate;\n};\n\nvar getEventBanner = exports.getEventBanner = function foo(startDate, endDate, bannerMap) {\n var currDate = getCurrentDate();\n if (isDateWithinInterval(currDate, startDate, endDate)) {\n return bannerMap.live;\n } else if (isDateBeforeInterval(currDate, startDate)) {\n return bannerMap.upcoming;\n }\n return bannerMap.onDemand;\n};\n\nfunction getTransitions(cardsPtr) {\n var cards = [].concat(_toConsumableArray(cardsPtr));\n var currentDate = getCurrentDate();\n var transitions = new _priorityQueue.MinPriorityQueue();\n\n /* eslint-disable no-plusplus */\n for (var i = 0; i < cards.length; i++) {\n var priority = Date.parse(cards[i].startDate) - currentDate;\n if (priority && priority > 0) {\n transitions.enqueue(cards[i], priority);\n }\n var endPriority = Date.parse(Date.parse(cards[i].endDate) - currentDate);\n if (cards[i].endDate && endPriority > 0) {\n transitions.enqueue(null, endPriority);\n }\n }\n return transitions;\n}\n\nvar getLinkTarget = exports.getLinkTarget = function getLinkTarget(link) {\n var ctaAction = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var domain = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : window.location.hostname;\n\n if (ctaAction) {\n return ctaAction;\n }\n var target = '_blank';\n try {\n var _ref5 = new URL(link),\n _ref5$hostname = _ref5.hostname,\n linkHostName = _ref5$hostname === undefined ? '' : _ref5$hostname;\n\n if (domain === linkHostName) {\n target = '_self';\n }\n } catch (e) {\n /* eslint-disable-line no-empty */\n }\n return target;\n};\n\nvar getGlobalNavHeight = exports.getGlobalNavHeight = function getGlobalNavHeight() {\n var header = document.querySelector('header');\n var offSet = 20; // margin above card collection\n if (!header) return offSet;\n\n var isBacom = header.getAttribute('daa-lh') && header.getAttribute('daa-lh').includes('bacom');\n var headerWrapper = isBacom ? header : document.querySelector('.feds-header-wrapper');\n\n return isBacom || headerWrapper && headerWrapper.classList.contains('feds-header-wrapper--sticky') ? header.offsetHeight + offSet : offSet;\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZWFjdC9zcmMvanMvY29tcG9uZW50cy9Db25zb25hbnQvSGVscGVycy9nZW5lcmFsLmpzP2UyMDEiXSwibmFtZXMiOlsiZ2V0VHJhbnNpdGlvbnMiLCJzYXZlQm9va21hcmtzVG9Mb2NhbFN0b3JhZ2UiLCJib29rbWFya3NWYWx1ZSIsImxvY2FsU3RvcmFnZSIsInNldEl0ZW0iLCJKU09OIiwic3RyaW5naWZ5IiwicmVhZEJvb2ttYXJrc0Zyb21Mb2NhbFN0b3JhZ2UiLCJib29rbWFya3MiLCJwYXJzZSIsImdldEl0ZW0iLCJBcnJheSIsImlzQXJyYXkiLCJyZWFkSW5jbHVzaW9uc0Zyb21Mb2NhbFN0b3JhZ2UiLCJmYXZvcml0ZXMiLCJzY2hlZHVsZSIsImxhc3RXYXRjaGVkIiwiU2V0IiwiY29uY2F0IiwidHJ1bmNhdGVTdHJpbmciLCJzdHIiLCJudW0iLCJsZW5ndGgiLCJzbGljZSIsInRydW5jYXRlTGlzdCIsImxpbWl0IiwibGlzdCIsInJlbW92ZUR1cGxpY2F0ZXNCeUtleSIsImtleSIsIm5ld0xpc3QiLCJpZHMiLCJmb3JFYWNoIiwiaXRlbSIsImhhcyIsInB1c2giLCJhZGQiLCJjaGFpbiIsImFyZ3MiLCJyZWR1Y2UiLCJhIiwiYiIsImNoYWluRnJvbUl0ZXJhYmxlIiwiaXNTdXBlcnNldCIsInN1cGVyc2V0Iiwic3Vic2V0IiwiZWxlbSIsImludGVyc2VjdGlvbiIsInNldEEiLCJzZXRCIiwiaW50ZXJzZWN0aW9uU2V0Iiwic29ydEJ5S2V5IiwiaXRlcmFibGUiLCJrZXlGdW5jIiwic29ydCIsImFsbG93ZWRDaGFycyIsInNhbml0aXplVGV4dCIsInRleHQiLCJzYW5pdGl6ZWQiLCJ0b0xvd2VyQ2FzZSIsInRyaW0iLCJtYXRjaGVkQWxsb3dlZENoYXJzIiwibWF0Y2giLCJqb2luIiwibWFwT2JqZWN0Iiwib2JqZWN0IiwiZnVuYyIsIm5ld09iaiIsImtleXMiLCJPYmplY3QiLCJpc09iamVjdCIsInZhbCIsImNvbnN0cnVjdG9yIiwicGFyc2VUb1ByaW1pdGl2ZSIsInZhbHVlIiwibWFwIiwiZSIsImlzTnVsbGlzaCIsInVuZGVmaW5lZCIsIk51bWJlciIsImlzTmFOIiwiaXNBdGxlYXN0T25lRmlsdGVyU2VsZWN0ZWQiLCJmaWx0ZXJzIiwiZiIsIml0ZW1zIiwic29tZSIsInNlbGVjdGVkIiwic3RvcFByb3BhZ2F0aW9uIiwiZ2VuZXJhdGVSYW5nZSIsInN0YXJ0VmFsIiwiZW5kIiwic3RhcnQiLCJzdGVwIiwicmFuZ2UiLCJnZXRQYWdlU3RhcnRFbmQiLCJjdXJyZW50UGFnZU51bWJlciIsInBhZ2VDb3VudCIsInRvdGFsUGFnZXMiLCJoYWxmUGFnZUNvdW50IiwiTWF0aCIsImZsb29yIiwibWluIiwibWF4IiwiZ2V0U3RhcnROdW1iZXIiLCJzaG93SXRlbXNQZXJQYWdlIiwiZ2V0RW5kTnVtYmVyIiwidG90YWxSZXN1bHRzIiwicmVzIiwidGVtcGxhdGUiLCJwcm9wcyIsInJlZ0V4cCIsInJlcGxhY2VyIiwiZnVsbE1hdGNoIiwicmVwbGFjZSIsImdldEJ5UGF0aCIsInBhdGgiLCJkZWZhdWx0VmFsdWUiLCJyZXN1bHQiLCJjaHVua3MiLCJzcGxpdCIsImluZGV4IiwiY2h1bmsiLCJoYXNPd25Qcm9wZXJ0eSIsImdldFNlbGVjdGVkSXRlbXNDb3VudCIsImZpbHRlciIsIkJvb2xlYW4iLCJkZWJvdW5jZSIsInRpbWVvdXQiLCJ0aW1lciIsImNsZWFyVGltZW91dCIsInNldFRpbWVvdXQiLCJzZXRCeVBhdGgiLCJ3aXRob3V0TGFzdCIsImxhc3RDaHVuayIsInRhcmdldCIsImFjY3VtdWxhdG9yIiwibWVyZ2VEZWVwIiwic291cmNlcyIsInNvdXJjZSIsInNoaWZ0IiwiYXNzaWduIiwiaXNDYWFzR3JvdXAiLCJncm91cCIsImluZGV4T2YiLCJxcyIsInN0cmluZyIsInNlYXJjaFBhcmFtcyIsIlVSTFNlYXJjaFBhcmFtcyIsImdldEFsbCIsImZpcnN0SXRlbSIsImluY2x1ZGVzIiwiZGVjb2RlVVJJQ29tcG9uZW50Iiwib2JqIiwiYXJyYXkiLCJlbnRyaWVzIiwiYXBwZW5kIiwiZW5jb2RlVVJJQ29tcG9uZW50IiwidG9TdHJpbmciLCJpc0RhdGVXaXRoaW5JbnRlcnZhbCIsImN1cnJlbnREYXRlIiwic3RhcnREYXRlIiwiZW5kRGF0ZSIsImN1cnIiLCJEYXRlIiwiaXNEYXRlQmVmb3JlSW50ZXJ2YWwiLCJnZXRDdXJyZW50RGF0ZSIsInVybFBhcmFtcyIsIndpbmRvdyIsImxvY2F0aW9uIiwic2VhcmNoIiwic2VydmVydGltZSIsInBhcnNlSW50IiwiZ2V0IiwidGltZVNpbmNlQXJyaXZhbCIsInBlcmZvcm1hbmNlIiwibm93IiwiY3VyckRhdGUiLCJnZXRFdmVudEJhbm5lciIsImZvbyIsImJhbm5lck1hcCIsImxpdmUiLCJ1cGNvbWluZyIsIm9uRGVtYW5kIiwiY2FyZHNQdHIiLCJjYXJkcyIsInRyYW5zaXRpb25zIiwiTWluUHJpb3JpdHlRdWV1ZSIsImkiLCJwcmlvcml0eSIsImVucXVldWUiLCJlbmRQcmlvcml0eSIsImdldExpbmtUYXJnZXQiLCJsaW5rIiwiY3RhQWN0aW9uIiwiZG9tYWluIiwiaG9zdG5hbWUiLCJVUkwiLCJsaW5rSG9zdE5hbWUiLCJnZXRHbG9iYWxOYXZIZWlnaHQiLCJoZWFkZXIiLCJkb2N1bWVudCIsInF1ZXJ5U2VsZWN0b3IiLCJvZmZTZXQiLCJpc0JhY29tIiwiZ2V0QXR0cmlidXRlIiwiaGVhZGVyV3JhcHBlciIsImNsYXNzTGlzdCIsImNvbnRhaW5zIiwib2Zmc2V0SGVpZ2h0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7UUErZWdCQSxjLEdBQUFBLGM7O0FBL2VoQjs7Ozs7O0FBRUE7Ozs7O0FBS08sSUFBTUMsb0VBQThCLFNBQTlCQSwyQkFBOEIsQ0FBQ0MsY0FBRCxFQUFvQjtBQUMzREMsaUJBQWFDLE9BQWIsQ0FBcUIsV0FBckIsRUFBa0NDLEtBQUtDLFNBQUwsQ0FBZUosY0FBZixFQUErQixJQUEvQixFQUFxQyxDQUFyQyxDQUFsQztBQUNILENBRk07O0FBSVA7Ozs7QUFJ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dERDLFNBQXNELHVFQUExQyxFQUEwQztBQUFBLFFBQXRDQyxNQUFzQyx1RUFBN0IzQixPQUFPQyxRQUFQLENBQWdCMkIsUUFBYTs7QUFDdEYsUUFBSUYsU0FBSixFQUFlO0FBQ1gsZUFBT0EsU0FBUDtBQUNIO0FBQ0QsUUFBSTNELFNBQVMsUUFBYjtBQUNBLFFBQUk7QUFBQSxvQkFDd0MsSUFBSThELEdBQUosQ0FBUUosSUFBUixDQUR4QztBQUFBLG1DQUNRRyxRQURSO0FBQUEsWUFDa0JFLFlBRGxCLGtDQUNpQyxFQURqQzs7QUFFQSxZQUFJSCxXQUFXRyxZQUFmLEVBQTZCO0FBQ3pCL0QscUJBQVMsT0FBVDtBQUNIO0FBQ0osS0FMRCxDQUtFLE9BQU8xRCxDQUFQLEVBQVU7QUFDUjtBQUNIO0FBQ0QsV0FBTzBELE1BQVA7QUFDSCxDQWRNOztBQWlCQSxJQUFNZ0Usa0RBQXFCLFNBQXJCQSxrQkFBcUIsR0FBTTtBQUNwQyxRQUFNQyxTQUFTQyxTQUFTQyxhQUFULENBQXVCLFFBQXZCLENBQWY7QUFDQSxRQUFNQyxTQUFTLEVBQWYsQ0FGb0MsQ0FFakI7QUFDbkIsUUFBSSxDQUFDSCxNQUFMLEVBQWEsT0FBT0csTUFBUDs7QUFFYixRQUFNQyxVQUFVSixPQUFPSyxZQUFQLENBQW9CLFFBQXBCLEtBQWlDTCxPQUFPSyxZQUFQLENBQW9CLFFBQXBCLEVBQThCdEQsUUFBOUIsQ0FBdUMsT0FBdkMsQ0FBakQ7QUFDQSxRQUFNdUQsZ0JBQWdCRixVQUFVSixNQUFWLEdBQW1CQyxTQUFTQyxhQUFULENBQXVCLHNCQUF2QixDQUF6Qzs7QUFFQSxXQUFPRSxXQUFZRSxpQkFBaUJBLGNBQWNDLFNBQWQsQ0FBd0JDLFFBQXhCLENBQWlDLDZCQUFqQyxDQUE3QixHQUNEUixPQUFPUyxZQUFQLEdBQXNCTixNQURyQixHQUVEQSxNQUZOO0FBR0gsQ0FYTSIsImZpbGUiOiI2LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWluUHJpb3JpdHlRdWV1ZSB9IGZyb20gJ0BkYXRhc3RydWN0dXJlcy1qcy9wcmlvcml0eS1xdWV1ZSc7XG5cbi8qKlxuICogU2F2ZXMgYSBjYXJkIHRvIGxvY2FsIHN0b3JhZ2VcbiAqIEBwYXJhbSB7TnVtYmVyfSBib29rbWFya3NWYWx1ZSAtIFRoZSBpZCBvZiB0aGUgY2FyZCB0byBzYXZlXG4gKiBAcmV0dXJuIHtWb2lkfVxuICovXG5leHBvcnQgY29uc3Qgc2F2ZUJvb2ttYXJrc1RvTG9jYWxTdG9yYWdlID0gKGJvb2ttYXJrc1ZhbHVlKSA9PiB7XG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2Jvb2ttYXJrcycsIEpTT04uc3RyaW5naWZ5KGJvb2ttYXJrc1ZhbHVlLCBudWxsLCAyKSk7XG59O1xuXG4vKipcbiAqIFJldHVybnMgYWxsIGNhcmRzIHNhdmVkIGluIGxvY2FsIHN0b3JhZ2VcbiAqIEByZXR1cm4ge0FycmF5fSAtIEFsbCBzYXZlZCBib29rbWFya3NcbiAqL1xuZXhwb3J0IGNvbnN0IHJlYWRCb29rbWFya3NGcm9tTG9jYWxTdG9yYWdlID0gKCkgPT4ge1xuICAgIGNvbnN0IGJvb2ttYXJrcyA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2Jvb2ttYXJrcycpKTtcbiAgICByZXR1cm4gQXJyYXkuaXNBcnJheShib29rbWFya3MpID8gYm9va21hcmtzIDogW107XG59O1xuXG5leHBvcnQgY29uc3QgcmVhZEluY2x1c2lvbnNGcm9tTG9jYWxTdG9yYWdlID0gKCkgPT4ge1xuICAgIGNvbnN0IGZhdm9yaXRlcyA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2NoaW1lcmEuZmF2b3JpdGVzJykpIHx8IFtdO1xuICAgIGNvbnN0IHNjaGVkdWxlID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnY2hpbWVyYS5zY2hlZHVsZScpKSB8fCBbXTtcbiAgICBjb25zdCBsYXN0V2F0Y2hlZCA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdjaGltZXJhLmxhc3RXYXRjaGVkJykgfHwgJyc7XG5cbiAgICByZXR1cm4gbmV3IFNldChbXS5jb25jYXQoZmF2b3JpdGVzLCBbbGFzdFdhdGNoZWRdLCBzY2hlZHVsZSkpO1xufTtcblxuLyoqXG4gKiBIZWxwZXIgbWV0aG9kIHRvIHRydW5jYXRlIHN0cmluZ3NcbiAqIEBwYXJhbSB7U3RyaW5nfSBzdHIgLSBUaGUgc3RyaW5nIHRvIHRydW5jYXRlXG4gKiBAcGFyYW0ge051bWJlcn0gbnVtIC0gSG93IG11Y2ggdG8gdHJ1bmNhdGVcbiAqIEByZXR1cm4ge1N0cmluZ30gLSBUaGUgdHJ1bmNhdGVkIHN0cmluZ1xuICovXG5leHBvcnQgY29uc3QgdHJ1bmNhdGVTdHJpbmcgPSAoc3RyLCBudW0pID0+IHtcbiAgICBpZiAoc3RyLmxlbmd0aCA8PSBudW0pIHJldHVybiBzdHI7XG4gICAgcmV0dXJuIGAke3N0ci5zbGljZSgwLCBudW0pfS4uLmA7XG59O1xuXG4vKipcbiAqIEhlbHBlciBtZXRob2QgdG8gdHJ1bmNhdGUgYSBsaXN0IG9mIGNhcmRzXG4gKiBAcGFyYW0ge051bWJlcn0gbGltaXQgLSBIb3cgbXVjaCB0byB0cnVuY2F0ZSBieVxuICogQHBhcmFtIHtBcnJheX0gbGlzdCAtIFdoYXQgdG8gdHJ1bmNhdGVcbiAqIEByZXR1cm4ge0FycmF5fSAtIFRoZSB0cnVuY2F0ZWQgbGlzdFxuICovXG5leHBvcnQgY29uc3QgdHJ1bmNhdGVMaXN0ID0gKGxpbWl0LCBsaXN0KSA9PiB7XG4gICAgLy8gTm8gbGltaXQsIHJldHVybiBhbGw7XG4gICAgaWYgKGxpbWl0IDwgMCkgcmV0dXJuIGxpc3Q7XG5cbiAgICAvLyBTbGljZSByZWNlaXZlZCBkYXRhIHRvIHJlcXVpcmVkIHEtdHk7XG4gICAgcmV0dXJuIGxpc3Quc2xpY2UoMCwgbGltaXQpO1xufTtcblxuLyoqXG4gKiBIZWxwZXIgbWV0aG9kIHRvIHJlbW92ZSBkdXBsaWNhdGUgY2FyZHMgZnJvbSBsaXN0XG4gKiBAcGFyYW0ge0FycmF5fSBsaXN0IC0gVGhlIGxpc3Qgb2YgY2FyZHNcbiAqIEBwYXJhbSB7a2V5fSBrZXkgLSBXaGF0IGtleSB0byBzZWFyY2ggZm9yIGR1cGxpY2F0ZXMgZm9yXG4gKiBAcmV0dXJuIHtBcnJheX0gLSBBIGxpc3Qgb2YgY2FyZHMgd2l0aCBubyBkdXBsaWNhdGVzXG4gKi9cbmV4cG9ydCBjb25zdCByZW1vdmVEdXBsaWNhdGVzQnlLZXkgPSAobGlzdCwga2V5KSA9PiB7XG4gICAgY29uc3QgbmV3TGlzdCA9IFtdO1xuICAgIGNvbnN0IGlkcyA9IG5ldyBTZXQoKTtcbiAgICBsaXN0LmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgaWYgKCFpZHMuaGFzKGl0ZW1ba2V5XSkpIHtcbiAgICAgICAgICAgIG5ld0xpc3QucHVzaChpdGVtKTtcbiAgICAgICAgICAgIGlkcy5hZGQoaXRlbVtrZXldKTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBuZXdMaXN0O1xufTtcblxuLyoqXG4gKiBIZWxwZXIgbWV0aG9kIHRoYXQgY2hhaW5zIGxpc3RzIHRvZ2V0aGVyXG4gKiBAcGFyYW0ge0FueX0gYXJncyAtIEFueSBzZXQgb2YgYXJnc1xuICogQGV4YW1wbGUgY2hhaW4oWydBJywgJ0InLCAnQyddLCBbJ0QnLCAnRScsICdGJ10pIC0tPiBbJ0EnICdCJyAnQycgJ0QnICdFJyAnRiddXG4gKi9cbmV4cG9ydCBjb25zdCBjaGFpbiA9ICguLi5hcmdzKSA9PiBhcmdzLnJlZHVjZSgoYSwgYikgPT4gYS5jb25jYXQoYiksIFtdKTtcblxuLyoqXG4gKiBIZWxwZXIgbWV0aG9kIHRoYXQgY2hhaW5zIGl0ZXJhYmxlcyB0b2dldGhlclxuICogQHBhcmFtIHtBbnl9IGFyZ3MgLSBBbnkgc2V0IG9mIGl0ZXJhYmxlIGFyZ3VtZW50c1xuICogQGV4YW1wbGUgY2hhaW5Gcm9tSXRlcmFibGUoc29tZUl0ZXJhYmxlKSAtLT4gWydBJyAnQicgJ0MnICdEJyAnRScgJ0YnXVxuICovXG5leHBvcnQgY29uc3QgY2hhaW5Gcm9tSXRlcmFibGUgPSBhcmdzID0+IGNoYWluKC4uLmFyZ3MpO1xuXG4vKipcbiAqIEhlbHBlciBtZXRob2QgdG8gZGV0ZXJtaW5lIHdoZWV0aGVyIHNldCBBIGlzIGEgc3VwZXJzZXQgb2Ygc2V0IEJcbiAqIEBwYXJhbSB7U2V0fSBzdXBlcnNldCAtIFRoZSBmaXJzdCBzZXRcbiAqIEBwYXJhbSB7U2V0fSBzdWJzZXQgLSBUaGUgc2Vjb25kIHNldFxuICogQHJldHVybiB7Qm9vbGVhbn0gLSBXaGV0aGVyIHNldCBBIGlzIGEgc3VwZXJzZXQgb2Ygc2V0IEJcbiAqL1xuZXhwb3J0IGNvbnN0IGlzU3VwZXJzZXQgPSAoc3VwZXJzZXQsIHN1YnNldCkgPT4ge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1yZXN0cmljdGVkLXN5bnRheFxuICAgIGZvciAoY29uc3QgZWxlbSBvZiBzdWJzZXQpIHtcbiAgICAgICAgaWYgKCFzdXBlcnNldC5oYXMoZWxlbSkpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbn07XG5cbi8qKlxuICogSGVscGVyIG1ldGhvZCB0byBkbyBkZXRlcm1pbmUgd2hldGhlciB0aGUgdHdvIHNldHMgaGF2ZSBhbiBpbnRlcnNlY3Rpb25cbiAqIEBwYXJhbSB7U2V0fSBzZXRBIC0gVGhlIGZpcnN0IHNldFxuICogQHBhcmFtIHtTZXR9IHNldEIgLSBUaGUgc2Vjb25kIHNldFxuICogQHJldHVybiB7Qm9vbGVhbn0gLSBXaGV0aGVyIHRoZXJlIGlzIGFuIGludGVyc2VjdGlvbiBvZiBlbGVtZW50cyBiZXR3ZWVuIHRoZSBzZXRzXG4gKi9cbmV4cG9ydCBjb25zdCBpbnRlcnNlY3Rpb24gPSAoc2V0QSwgc2V0QikgPT4ge1xuICAgIGNvbnN0IGludGVyc2VjdGlvblNldCA9IG5ldyBTZXQoKTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVzdHJpY3RlZC1zeW50YXhcbiAgICBmb3IgKGNvbnN0IGVsZW0gb2Ygc2V0Qikge1xuICAgICAgICBpZiAoc2V0QS5oYXMoZWxlbSkpIHtcbiAgICAgICAgICAgIGludGVyc2VjdGlvblNldC5hZGQoZWxlbSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGludGVyc2VjdGlvblNldDtcbn07XG5cbi8qKlxuICogSGVscGVyIG1ldGhvZCB0byBzb3J0IGJ5IGtleXNcbiAqIEBwYXJhbSB7SXRlcmFibGV9IGl0ZXJhYmxlIC0gVGhlIGl0ZXJhYmxlIG9iamVjdFxuICogQHBhcmFtIHtGdW5jdGlvbn0ga2V5RnVuYyAtIFRoZSBmdW5jdGlvbiB0byBhcHBseVxuICovXG5leHBvcnQgY29uc3Qgc29ydEJ5S2V5ID0gKGl0ZXJhYmxlLCBrZXlGdW5jKSA9PlxuICAgIFsuLi5pdGVyYWJsZV0uc29ydCgoYSwgYikgPT4ge1xuICAgICAgICBpZiAoa2V5RnVuYyhhKSA8IGtleUZ1bmMoYikpIHJldHVybiAtMTtcbiAgICAgICAgaWYgKGtleUZ1bmMoYSkgPiBrZXlGdW5jKGIpKSByZXR1cm4gMTtcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgfSk7XG5cbmNvbnN0IGFsbG93ZWRDaGFycyA9IC9bYS16QS1aMC05XFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXFxzLl0vZztcblxuLyoqXG4gKiBSZXR1cm5zIGNsZWFuZWQgdXAgdGV4dFxuICogZG9uJ3QgYWxsb3cgdXJsc1xuICogQHBhcmFtIHtTdHJpbmd9IHRleHQgLSBUaGUgdGV4dCBzbyBzYW5pdGl6ZVxuICogQHJldHVybiB7U3RyaW5nfSAtIFRoZSBjbGVhbmVkIHVwIHRleHRcbiAqL1xuZXhwb3J0IGNvbnN0IHNhbml0aXplVGV4dCA9ICh0ZXh0KSA9PiB7XG4gICAgaWYgKCF0ZXh0KSByZXR1cm4gJyc7XG4gICAgbGV0IHNhbml0aXplZCA9IHRleHQudG9Mb3dlckNhc2UoKS50cmltKCk7XG4gICAgLy8gcmVtb3ZlIGFueSBpbnZhbGlkIGNoYXJzXG4gICAgY29uc3QgbWF0Y2hlZEFsbG93ZWRDaGFycyA9IHNhbml0aXplZC5tYXRjaChhbGxvd2VkQ2hhcnMpO1xuICAgIHNhbml0aXplZCA9IG1hdGNoZWRBbGxvd2VkQ2hhcnMgPyBtYXRjaGVkQWxsb3dlZENoYXJzLmpvaW4oJycpIDogJyc7XG4gICAgcmV0dXJuIHNhbml0aXplZDtcbn07XG5cbi8qKlxuICogRm9yIGEgZ2l2ZW4gb2JqZWN0LCBhcHBsaWVzIGEgZnVuY3Rpb24gdG8ga2V5IGluIHRoYXQgb2JqZWN0XG4gKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IC0gVGhlIG9iamVjdCB0byBhcHBseSB0aGUgZnVuY3Rpb24gdG9cbiAqIEBwYXJhbSB7RnVuY3Rpb259IGZ1bmMgLSBUaGUgZnVuY3Rpb24gdG8gYXBwbHkgdG8gdGhlIGVudHJpZXMgaW4gdGhlIG9iamVjdFxuICogQHJldHVybiB7T2JqZWN0fSAtIFRoZSBuZXcgb2JqZWN0XG4gKi9cbmV4cG9ydCBjb25zdCBtYXBPYmplY3QgPSAob2JqZWN0LCBmdW5jKSA9PiB7XG4gICAgY29uc3QgbmV3T2JqID0ge307XG4gICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKG9iamVjdCk7XG5cbiAgICBrZXlzLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICBuZXdPYmpba2V5XSA9IGZ1bmMob2JqZWN0W2tleV0pO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIG5ld09iajtcbn07XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBwYXNzZWQgaW4gdmFsdWUgaXMgYW4gb2JqZWN0IG9yIG5vdFxuICogQHBhcmFtIHtBbnl9IHZhbCAtIFN0YXJ0IHZhbHVlIGluIHRoZSByYW5nZSBhcnJheTtcbiAqIEByZXR1cm4ge0Jvb2xlYW59IC0gV2hldGhlciB0aGUgcGFzc2VkIGluIHZhbHVlIGlzIG51bGxpc2ggb3Igbm90XG4gKi9cbmV4cG9ydCBjb25zdCBpc09iamVjdCA9IHZhbCA9PiAhIXZhbCAmJiB2YWwuY29uc3RydWN0b3IgPT09IE9iamVjdDtcblxuLyoqXG4gKiBTdXBwb3J0IG1ldGhvZCBzbyBIVEwvU2lnaHRseSBjYW4gcGFzcyBhdXRob3JlZCBwcm9wZXJ0aWVzIHRvIFJlYWN0XG4gKiBAcGFyYW0ge09iamVjdH0gdmFsdWUgLSBTdGFydCB2YWx1ZSBpbiB0aGUgcmFuZ2UgYXJyYXk7XG4gKiBAcmV0dXJuIHtPYmplY3R9IC0gQXV0aG9yZWQgY29uZmlnIHVzZWQgYnkgcmVhY3QgY29tcG9uZW50XG4gKi9cbmV4cG9ydCBjb25zdCBwYXJzZVRvUHJpbWl0aXZlID0gKHZhbHVlKSA9PiB7XG4gICAgaWYgKGlzT2JqZWN0KHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gbWFwT2JqZWN0KHZhbHVlLCBwYXJzZVRvUHJpbWl0aXZlKTtcbiAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZS5tYXAocGFyc2VUb1ByaW1pdGl2ZSk7XG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIHBhcnNlVG9QcmltaXRpdmUoSlNPTi5wYXJzZSh2YWx1ZSkpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cbn07XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBwYXNzZWQgaW4gdmFsdWUgaXMgbnVsbGlzaCBvciBub3RcbiAqIEBwYXJhbSB7QW55fSB2YWwgLSBTdGFydCB2YWx1ZSBpbiB0aGUgcmFuZ2UgYXJyYXk7XG4gKiBAcmV0dXJuIHtCb29sZWFufSAtIFdoZXRoZXIgdGhlIHBhc3NlZCBpbiB2YWx1ZSBpcyBudWxsaXNoIG9yIG5vdFxuICovXG5leHBvcnQgY29uc3QgaXNOdWxsaXNoID0gdmFsID0+XG4gICAgdmFsID09PSB1bmRlZmluZWQgfHwgdmFsID09PSBudWxsIHx8IE51bWJlci5pc05hTih2YWwpO1xuXG5leHBvcnQgY29uc3QgaXNBdGxlYXN0T25lRmlsdGVyU2VsZWN0ZWQgPSBmaWx0ZXJzID0+XG4gICAgY2hhaW5Gcm9tSXRlcmFibGUoZmlsdGVycy5tYXAoZiA9PiBmLml0ZW1zKSkuc29tZShpdGVtID0+IGl0ZW0uc2VsZWN0ZWQpO1xuXG4vKipcbiAqIEhlbHBlciBtZXRob2QgdG8gc3RvcCBwcm9wYWdhdGlvbiBmb3IgZXZlbnRzXG4gKiBAcGFyYW0ge0V2ZW50fSBlIC0gVGhlIGV2ZW50IHRvIHN0b3AgcHJvcGFnYXRpb24gZm9yXG4gKiBAcmV0dXJuIHtWb2lkfVxuICovXG5leHBvcnQgY29uc3Qgc3RvcFByb3BhZ2F0aW9uID0gZSA9PiBlLnN0b3BQcm9wYWdhdGlvbigpO1xuXG4vKipcbiAqIFJldHVybiBhIHJhbmdlIG9mIG51bWJlcnMgZnJvbSBbc3RhcnQsIC4uLiAsIGVuZF07XG4gKiBAcGFyYW0ge251bWJlcn0gc3RhcnRWYWwgLSBTdGFydCB2YWx1ZSBpbiB0aGUgcmFuZ2UgYXJyYXk7XG4gKiBAcGFyYW0ge251bWJlcn0gZW5kIC0gRW5kIHZhbHVlIGluIHRoZSByYW5nZSBhcnJheTtcbiAqIEByZXR1cm4ge0FycmF5fVxuICovXG5leHBvcnQgY29uc3QgZ2VuZXJhdGVSYW5nZSA9IChzdGFydFZhbCwgZW5kKSA9PiB7XG4gICAgbGV0IHN0YXJ0ID0gc3RhcnRWYWw7XG4gICAgbGV0IHN0ZXAgPSAxO1xuICAgIGNvbnN0IHJhbmdlID0gW107XG5cbiAgICBpZiAoZW5kIDwgc3RhcnQpIHtcbiAgICAgICAgc3RlcCA9IC1zdGVwO1xuICAgIH1cblxuICAgIHdoaWxlIChzdGVwID4gMCA/IGVuZCA+PSBzdGFydCA6IGVuZCA8PSBzdGFydCkge1xuICAgICAgICByYW5nZS5wdXNoKHN0YXJ0KTtcbiAgICAgICAgc3RhcnQgKz0gc3RlcDtcbiAgICB9XG5cbiAgICByZXR1cm4gcmFuZ2U7XG59O1xuXG4vKipcbiAqIEdldHMgd2hhdCBzdGFydCBhbmQgZW5kIG51bWJlcnMgc2hvdWxkIGJlIGZvciBhIGdpdmVuIHBhZ2VcbiAqIEBwYXJhbSB7bnVtYmVyfSBwYWdlQ291bnQgLSBUb3RhbCBwYWdlcyB0byBkaXNwbGF5XG4gKiBAcGFyYW0ge251bWJlcn0gY3VycmVudFBhZ2VOdW1iZXIgLSBDdXJyZW50IHBhZ2UgdXNlciBpcyBvblxuICogQHBhcmFtIHtudW1iZXJ9IHRvdGFsUGFnZXMgLSBUb3RhbCBudW1iZXIgb2YgcGFnZXMgYXZhaWxhYmxlXG4gKiBAcmV0dXJuIHtBcnJheX0gLSBUaGUgc3RhcnQgYW5kIGVuZCBwYWdlIG51bWJlcnNcbiAqL1xuZXhwb3J0IGNvbnN0IGdldFBhZ2VTdGFydEVuZCA9IChjdXJyZW50UGFnZU51bWJlciwgcGFnZUNvdW50LCB0b3RhbFBhZ2VzKSA9PiB7XG4gICAgY29uc3QgaGFsZlBhZ2VDb3VudCA9IE1hdGguZmxvb3IocGFnZUNvdW50IC8gMik7XG4gICAgbGV0IHN0YXJ0O1xuICAgIGxldCBlbmQ7XG5cbiAgICBpZiAodG90YWxQYWdlcyA8PSBwYWdlQ291bnQgKyAxKSB7XG4gICAgICAgIC8vIHNob3cgYWxsIHBhZ2VzXG4gICAgICAgIHN0YXJ0ID0gMTtcbiAgICAgICAgZW5kID0gdG90YWxQYWdlcztcbiAgICB9IGVsc2Uge1xuICAgICAgICBzdGFydCA9IE1hdGgubWluKFxuICAgICAgICAgICAgTWF0aC5tYXgoMSwgY3VycmVudFBhZ2VOdW1iZXIgLSBoYWxmUGFnZUNvdW50KSxcbiAgICAgICAgICAgIHRvdGFsUGFnZXMgLSBwYWdlQ291bnQsXG4gICAgICAgICk7XG4gICAgICAgIGVuZCA9IE1hdGgubWF4KFxuICAgICAgICAgICAgTWF0aC5taW4oY3VycmVudFBhZ2VOdW1iZXIgKyBoYWxmUGFnZUNvdW50LCB0b3RhbFBhZ2VzKSxcbiAgICAgICAgICAgIHBhZ2VDb3VudCArIDEsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIFtzdGFydCwgZW5kXTtcbn07XG5cbi8qKlxuICogR2V0cyB0aGUgc3RhcnQgbnVtYmVyIGZvciBQYWdpbmF0b3IgQ29tcG9uZW50XG4gKiBAcGFyYW0ge051bWJlcn0gY3VycmVudFBhZ2VOdW1iZXIgLSBDdXJyZW50IHBhZ2UgdGhlIHVzZXIgaXMgb25cbiAqIEBwYXJhbSB7TnVtYmVyfSBzaG93SXRlbXNQZXJQYWdlIC0gSG93IG1hbnkgaXRlbXMgdG8gc2hvdyBwZXIgcGFnZVxuICogQHJldHVybnMge051bWJlcn0gLSBUaGUgc3RhcnQgbnVtYmVyIGZvciBQYWdpbmF0b3IgQ29tcG9uZW50XG4gKi9cbmV4cG9ydCBjb25zdCBnZXRTdGFydE51bWJlciA9IChjdXJyZW50UGFnZU51bWJlciwgc2hvd0l0ZW1zUGVyUGFnZSkgPT4ge1xuICAgIGlmIChjdXJyZW50UGFnZU51bWJlciA9PT0gMSkgcmV0dXJuIDE7XG4gICAgcmV0dXJuIChjdXJyZW50UGFnZU51bWJlciAqIHNob3dJdGVtc1BlclBhZ2UpIC0gKHNob3dJdGVtc1BlclBhZ2UgLSAxKTtcbn07XG5cbi8qKlxuICogR2V0cyB0aGUgZW5kIG51bWJlciBmb3IgUGFnaW5hdG9yIENvbXBvbmVudFxuICogQHBhcmFtIHtOdW1iZXJ9IGN1cnJlbnRQYWdlTnVtYmVyIC0gQ3VycmVudCBwYWdlIHRoZSB1c2VyIGlzIG9uXG4gKiBAcGFyYW0ge051bWJlcn0gc2hvd0l0ZW1zUGVyUGFnZSAtIEhvdyBtYW55IGl0ZW1zIHRvIHNob3cgcGVyIHBhZ2VcbiAqIEBwYXJhbSB7TnVtYmVyfSB0b3RhbFJlc3VsdHMgLSBUb3RhbCBjb3VudCBvZiBjYXJkcyBpbiBjb2xsZWN0aW9uXG4gKiBAcmV0dXJucyB7TnVtYmVyfSAtIFRoZSBlbmQgbnVtYmVyIGZvciBQYWdpbmF0b3IgQ29tcG9uZW50XG4gKi9cbmV4cG9ydCBjb25zdCBnZXRFbmROdW1iZXIgPSAoXG4gICAgY3VycmVudFBhZ2VOdW1iZXIsXG4gICAgc2hvd0l0ZW1zUGVyUGFnZSxcbiAgICB0b3RhbFJlc3VsdHMsXG4pID0+IHtcbiAgICBjb25zdCByZXMgPSBjdXJyZW50UGFnZU51bWJlciAqIHNob3dJdGVtc1BlclBhZ2U7XG4gICAgcmV0dXJuIHJlcyA8IHRvdGFsUmVzdWx0cyA/IHJlcyA6IHRvdGFsUmVzdWx0cztcbn07XG5cbi8qKlxuICogR2V0cyB0aGUgZW5kIG51bWJlciBmb3IgUGFnaW5hdG9yIENvbXBvbmVudFxuICogQHBhcmFtIHtzdHJpbmd9IHRleHQgLSB0ZW1wbGF0ZSBzdHJpbmcgbGlrZSBhICd7MH0gezF9J1xuICogQHBhcmFtIHtvYmplY3R9IHByb3BzIC0gb2JqZWN0IHdpdGggcHJvcHMgdG8gcmVwbGFjZSBwYXJ0IG9mIHRleHQgaW4gYnJhY2tldHNcbiAqIEByZXR1cm5zIHtzdHJpbmd9IC0gKCd7cGxhY2Vob2xkZXJLZXl9JywgeyBwbGFjZWhvbGRlcktleTogJ3BsYWNlaG9sZGVyVmFsdWUnIH0pXG4gKiAgPT4gJ3BsYWNlaG9sZGVyVmFsdWUnXG4gKi9cbmV4cG9ydCBjb25zdCB0ZW1wbGF0ZSA9ICh0ZXh0ID0gJycsIHByb3BzKSA9PiB7XG4gICAgaWYgKCFwcm9wcykgcmV0dXJuIHRleHQ7XG5cbiAgICBjb25zdCByZWdFeHAgPSAveyhbQS16XSopfS9naTtcbiAgICBjb25zdCByZXBsYWNlciA9IChmdWxsTWF0Y2gsIGtleSkgPT4gcHJvcHNba2V5XSB8fCBmdWxsTWF0Y2g7XG5cbiAgICByZXR1cm4gdGV4dC5yZXBsYWNlKHJlZ0V4cCwgcmVwbGFjZXIpO1xufTtcblxuLyoqXG4gKiBHZXRzIHRoZSBvYmplY3QvcGF0aC9kZWZhdWx0VmFsdWUgYW5kIHJldHVybiBvYmplY3QgdmFsdWUgYnkgdGhpcyBwYXRoXG4gKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IC0gb2JqZWN0IHRvIGdldCB2YWx1ZVxuICogQHBhcmFtIHtTdHJpbmd9IHBhdGggLSBwYXRoIHRvIHNlYXJjaGVkIHZhbHVlXG4gKiBAcGFyYW0ge2FueX0gZGVmYXVsdFZhbHVlIC0gd2lsbCByZXR1cm4gd2hlbiBubyB2YWx1ZSB3YXMgZm91bmRcbiAqIEByZXR1cm5zIHthbnl9IC0gc2VhcmNoZWQgdmFsdWVcbiAqL1xuZXhwb3J0IGNvbnN0IGdldEJ5UGF0aCA9IChvYmplY3QsIHBhdGgsIGRlZmF1bHRWYWx1ZSkgPT4ge1xuICAgIGlmICghb2JqZWN0IHx8ICFwYXRoKSByZXR1cm4gZGVmYXVsdFZhbHVlO1xuXG4gICAgbGV0IHJlc3VsdCA9IG9iamVjdDtcbiAgICBjb25zdCBjaHVua3MgPSBwYXRoLnNwbGl0KCcuJyk7XG5cbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgY2h1bmtzLmxlbmd0aDsgaW5kZXggKz0gMSkge1xuICAgICAgICBjb25zdCBjaHVuayA9IGNodW5rc1tpbmRleF07XG5cbiAgICAgICAgLyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXByb3RvdHlwZS1idWlsdGlucyAqL1xuICAgICAgICBpZiAocmVzdWx0ICE9IG51bGwgJiYgcmVzdWx0Lmhhc093blByb3BlcnR5KGNodW5rKSkge1xuICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0W2NodW5rXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJlc3VsdCA9IGRlZmF1bHRWYWx1ZTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbn07XG5cbi8qKlxuICogUmV0dXJuIHN1bSBvZiB0aGUgc2VsZWN0ZWQgZmlsdGVyc1xuICogQHBhcmFtIHtpdGVtc30gYXJyYXkgLSBmaWx0ZXIgaXRlbXNcbiAqIEByZXR1cm5zIHtudW1iZXJ9IC0gc2VsZWN0ZWQgaXRlbXMgY291bnRcbiAqL1xuZXhwb3J0IGNvbnN0IGdldFNlbGVjdGVkSXRlbXNDb3VudCA9IGl0ZW1zID0+XG4gICAgaXRlbXMuZmlsdGVyKCh7IHNlbGVjdGVkIH0pID0+IEJvb2xlYW4oc2VsZWN0ZWQpKS5sZW5ndGg7XG5cbi8qKlxuICogRnVuYyB0byBtYWtlIGRlYm91bmNlZCBmdW5jdGlvbnNcbiAqIEBwYXJhbSB7RnVuY3Rpb259IGZ1bmMgLSB0YXJnZXQgZnVuY3Rpb25cbiAqIEBwYXJhbSB7bnVtYmVyfSB0aW1lb3V0IC0gZGVib3VuY2UgZGVsYXlcbiAqIEByZXR1cm5zIHtmdW5jfSAtIGRlYm91bmNlZCBmdW5jdGlvblxuICovXG5leHBvcnQgY29uc3QgZGVib3VuY2UgPSAoZnVuYywgdGltZW91dCA9IDApID0+IHtcbiAgICBsZXQgdGltZXI7XG5cbiAgICByZXR1cm4gKC4uLmFyZ3MpID0+IHtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVyKTtcblxuICAgICAgICB0aW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgZnVuYyguLi5hcmdzKTtcbiAgICAgICAgfSwgdGltZW91dCk7XG4gICAgfTtcbn07XG5cbi8qKlxuICogU2V0IG9iamVjdCB2YWx1ZSBieSBwYXRoXG4gKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IC0gdGFyZ2V0IG9iamVjdFxuICogQHBhcmFtIHtzdHJpbmd9IHBhdGggLSBkZXN0aW5hdGlvbiBwYXRoXG4gKiBAcGFyYW0ge2FueX0gdmFsdWUgLSB2YWx1ZSB3aGljaCBzaG91bGQgYmUgYXNzaWduXG4gKi9cbmV4cG9ydCBjb25zdCBzZXRCeVBhdGggPSAob2JqZWN0LCBwYXRoLCB2YWx1ZSkgPT4ge1xuICAgIGlmICghb2JqZWN0IHx8ICFwYXRoKSByZXR1cm47XG5cbiAgICBjb25zdCBjaHVua3MgPSBwYXRoLnNwbGl0KCcuJyk7XG4gICAgY29uc3Qgd2l0aG91dExhc3QgPSBjaHVua3Muc2xpY2UoMCwgLTEpO1xuICAgIGNvbnN0IGxhc3RDaHVuayA9IGNodW5rc1tjaHVua3MubGVuZ3RoIC0gMV07XG5cbiAgICBjb25zdCB0YXJnZXQgPSB3aXRob3V0TGFzdC5yZWR1Y2UoKGFjY3VtdWxhdG9yLCBjaHVuaykgPT4ge1xuICAgICAgICBpZiAoIWlzT2JqZWN0KGFjY3VtdWxhdG9yW2NodW5rXSkpIHtcbiAgICAgICAgICAgIGFjY3VtdWxhdG9yW2NodW5rXSA9IHt9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhY2N1bXVsYXRvcltjaHVua107XG4gICAgfSwgb2JqZWN0KTtcblxuICAgIHRhcmdldFtsYXN0Q2h1bmtdID0gdmFsdWU7XG59O1xuXG4vKipcbiAqIERlZXAgbWVyZ2Ugb2JqZWN0cyB3aXRob3V0IHVuZGVmaW5lZCB2YWx1ZXNcbiAqIEBwYXJhbSB7T2JqZWN0fSB0YXJnZXQgLSB0YXJnZXQgb2JqZWN0XG4gKiBAcGFyYW0gey4uLk9iamVjdH0gc291cmNlcyAtIG9iamVjdHMgdG8gbWVyZ2VcbiAqIEByZXR1cm4ge09iZWN0fSBtZXJnZSBvYmplY3RcbiAqL1xuZXhwb3J0IGNvbnN0IG1lcmdlRGVlcCA9ICh0YXJnZXQsIC4uLnNvdXJjZXMpID0+IHtcbiAgICBpZiAoIXNvdXJjZXMubGVuZ3RoKSByZXR1cm4gdGFyZ2V0O1xuXG4gICAgY29uc3Qgc291cmNlID0gc291cmNlcy5zaGlmdCgpO1xuXG4gICAgaWYgKGlzT2JqZWN0KHRhcmdldCkgJiYgaXNPYmplY3Qoc291cmNlKSkge1xuICAgICAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMoc291cmNlKTtcblxuICAgICAgICBrZXlzLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICAgICAgaWYgKGlzT2JqZWN0KHNvdXJjZVtrZXldKSkge1xuICAgICAgICAgICAgICAgIGlmICghdGFyZ2V0W2tleV0pIHRhcmdldFtrZXldID0ge307XG5cbiAgICAgICAgICAgICAgICBtZXJnZURlZXAodGFyZ2V0W2tleV0sIHNvdXJjZVtrZXldKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoc291cmNlW2tleV0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIE9iamVjdC5hc3NpZ24odGFyZ2V0LCB7IFtrZXldOiBzb3VyY2Vba2V5XSB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG1lcmdlRGVlcCh0YXJnZXQsIC4uLnNvdXJjZXMpO1xufTtcblxuY29uc3QgaXNDYWFzR3JvdXAgPSBncm91cCA9PiBncm91cC5pbmRleE9mKCdjaF8nKSA9PT0gMDtcblxuLyoqXG4gKiBNZXRob2RzIHRvIGNyZWF0ZS9wYXJzZSBxdWVyeVN0cmluZ1xuICovXG5leHBvcnQgY29uc3QgcXMgPSB7XG4gICAgcGFyc2U6IChzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3Qgc2VhcmNoUGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyhzdHJpbmcpO1xuXG4gICAgICAgIHJldHVybiBbLi4uc2VhcmNoUGFyYW1zLmtleXMoKV0ucmVkdWNlKChhY2N1bXVsYXRvciwga2V5KSA9PiB7XG4gICAgICAgICAgICBpZiAoIWFjY3VtdWxhdG9yW2tleV0pIHtcbiAgICAgICAgICAgICAgICBsZXQgdmFsdWUgPSBzZWFyY2hQYXJhbXMuZ2V0QWxsKGtleSk7XG5cbiAgICAgICAgICAgICAgICBpZiAoaXNDYWFzR3JvdXAoa2V5KSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAodmFsdWUubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBbZmlyc3RJdGVtXSA9IHZhbHVlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZmlyc3RJdGVtLmluY2x1ZGVzKCd8JykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IGZpcnN0SXRlbS5zcGxpdCgnfCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGFjY3VtdWxhdG9yW2tleV0gPSBkZWNvZGVVUklDb21wb25lbnQodmFsdWUpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGFjY3VtdWxhdG9yW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBhY2N1bXVsYXRvcjtcbiAgICAgICAgfSwge30pO1xuICAgIH0sXG4gICAgc3RyaW5naWZ5OiAob2JqLCB7IGFycmF5IH0gPSB7fSkgPT4ge1xuICAgICAgICBjb25zdCBzZWFyY2hQYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKCk7XG4gICAgICAgIE9iamVjdC5lbnRyaWVzKG9iaikuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgICAgICBpZiAoaXNDYWFzR3JvdXAoa2V5KSkge1xuICAgICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoYXJyYXkgPT09ICdjb21tYScpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlYXJjaFBhcmFtcy5hcHBlbmQoa2V5LCBlbmNvZGVVUklDb21wb25lbnQodmFsdWUpKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlYXJjaFBhcmFtcy5hcHBlbmQoa2V5LCBlbmNvZGVVUklDb21wb25lbnQodmFsdWUuam9pbignfCcpKSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBzZWFyY2hQYXJhbXMuYXBwZW5kKGtleSwgZW5jb2RlVVJJQ29tcG9uZW50KHZhbHVlKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBzZWFyY2hQYXJhbXMuYXBwZW5kKGtleSwgdmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gc2VhcmNoUGFyYW1zLnRvU3RyaW5nKCk7XG4gICAgfSxcbn07XG5cbmV4cG9ydCBjb25zdCBpc0RhdGVXaXRoaW5JbnRlcnZhbCA9IChjdXJyZW50RGF0ZSwgc3RhcnREYXRlLCBlbmREYXRlKSA9PiB7XG4gICAgY29uc3QgY3VyciA9IERhdGUucGFyc2UoY3VycmVudERhdGUpO1xuICAgIGNvbnN0IHN0YXJ0ID0gRGF0ZS5wYXJzZShzdGFydERhdGUpO1xuICAgIGNvbnN0IGVuZCA9IERhdGUucGFyc2UoZW5kRGF0ZSk7XG5cbiAgICByZXR1cm4gKHN0YXJ0IDw9IGN1cnIgJiYgZW5kID4gY3Vycik7XG59O1xuXG5leHBvcnQgY29uc3QgaXNEYXRlQmVmb3JlSW50ZXJ2YWwgPSAoY3VycmVudERhdGUsIHN0YXJ0RGF0ZSkgPT4ge1xuICAgIGNvbnN0IGN1cnIgPSBEYXRlLnBhcnNlKGN1cnJlbnREYXRlKTtcbiAgICBjb25zdCBzdGFydCA9IERhdGUucGFyc2Uoc3RhcnREYXRlKTtcblxuICAgIHJldHVybiBjdXJyIDwgc3RhcnQ7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Q3VycmVudERhdGUgPSAoKSA9PiB7XG4gICAgY29uc3QgdXJsUGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyh3aW5kb3cubG9jYXRpb24uc2VhcmNoKTtcbiAgICBjb25zdCBzZXJ2ZXJ0aW1lID0gcGFyc2VJbnQodXJsUGFyYW1zLmdldCgnc2VydmVydGltZScpLCAxMCk7XG4gICAgY29uc3QgdGltZVNpbmNlQXJyaXZhbCA9IHBlcmZvcm1hbmNlLm5vdygpO1xuICAgIGNvbnN0IGN1cnJEYXRlID0gc2VydmVydGltZSA/IG5ldyBEYXRlKHNlcnZlcnRpbWUgKyB0aW1lU2luY2VBcnJpdmFsKSA6IG5ldyBEYXRlKCk7XG4gICAgcmV0dXJuIGN1cnJEYXRlO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldEV2ZW50QmFubmVyID0gZnVuY3Rpb24gZm9vKHN0YXJ0RGF0ZSwgZW5kRGF0ZSwgYmFubmVyTWFwKSB7XG4gICAgY29uc3QgY3VyckRhdGUgPSBnZXRDdXJyZW50RGF0ZSgpO1xuICAgIGlmIChpc0RhdGVXaXRoaW5JbnRlcnZhbChjdXJyRGF0ZSwgc3RhcnREYXRlLCBlbmREYXRlKSkge1xuICAgICAgICByZXR1cm4gYmFubmVyTWFwLmxpdmU7XG4gICAgfSBlbHNlIGlmIChpc0RhdGVCZWZvcmVJbnRlcnZhbChjdXJyRGF0ZSwgc3RhcnREYXRlKSkge1xuICAgICAgICByZXR1cm4gYmFubmVyTWFwLnVwY29taW5nO1xuICAgIH1cbiAgICByZXR1cm4gYmFubmVyTWFwLm9uRGVtYW5kO1xufTtcblxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VHJhbnNpdGlvbnMoY2FyZHNQdHIpIHtcbiAgICBjb25zdCBjYXJkcyA9IFsuLi5jYXJkc1B0cl07XG4gICAgY29uc3QgY3VycmVudERhdGUgPSBnZXRDdXJyZW50RGF0ZSgpO1xuICAgIGNvbnN0IHRyYW5zaXRpb25zID0gbmV3IE1pblByaW9yaXR5UXVldWUoKTtcblxuICAgIC8qIGVzbGludC1kaXNhYmxlIG5vLXBsdXNwbHVzICovXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjYXJkcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBwcmlvcml0eSA9IERhdGUucGFyc2UoY2FyZHNbaV0uc3RhcnREYXRlKSAtIGN1cnJlbnREYXRlO1xuICAgICAgICBpZiAocHJpb3JpdHkgJiYgcHJpb3JpdHkgPiAwKSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9ucy5lbnF1ZXVlKGNhcmRzW2ldLCBwcmlvcml0eSk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZW5kUHJpb3JpdHkgPSBEYXRlLnBhcnNlKERhdGUucGFyc2UoY2FyZHNbaV0uZW5kRGF0ZSkgLSBjdXJyZW50RGF0ZSk7XG4gICAgICAgIGlmIChjYXJkc1tpXS5lbmREYXRlICYmIGVuZFByaW9yaXR5ID4gMCkge1xuICAgICAgICAgICAgdHJhbnNpdGlvbnMuZW5xdWV1ZShudWxsLCBlbmRQcmlvcml0eSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRyYW5zaXRpb25zO1xufVxuXG5cbmV4cG9ydCBjb25zdCBnZXRMaW5rVGFyZ2V0ID0gKGxpbmssIGN0YUFjdGlvbiA9ICcnLCBkb21haW4gPSB3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUpID0+IHtcbiAgICBpZiAoY3RhQWN0aW9uKSB7XG4gICAgICAgIHJldHVybiBjdGFBY3Rpb247XG4gICAgfVxuICAgIGxldCB0YXJnZXQgPSAnX2JsYW5rJztcbiAgICB0cnkge1xuICAgICAgICBjb25zdCB7IGhvc3RuYW1lOiBsaW5rSG9zdE5hbWUgPSAnJyB9ID0gbmV3IFVSTChsaW5rKTtcbiAgICAgICAgaWYgKGRvbWFpbiA9PT0gbGlua0hvc3ROYW1lKSB7XG4gICAgICAgICAgICB0YXJnZXQgPSAnX3NlbGYnO1xuICAgICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAvKiBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLWVtcHR5ICovXG4gICAgfVxuICAgIHJldHVybiB0YXJnZXQ7XG59O1xuXG5cbmV4cG9ydCBjb25zdCBnZXRHbG9iYWxOYXZIZWlnaHQgPSAoKSA9PiB7XG4gICAgY29uc3QgaGVhZGVyID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignaGVhZGVyJyk7XG4gICAgY29uc3Qgb2ZmU2V0ID0gMjA7IC8vIG1hcmdpbiBhYm92ZSBjYXJkIGNvbGxlY3Rpb25cbiAgICBpZiAoIWhlYWRlcikgcmV0dXJuIG9mZlNldDtcblxuICAgIGNvbnN0IGlzQmFjb20gPSBoZWFkZXIuZ2V0QXR0cmlidXRlKCdkYWEtbGgnKSAmJiBoZWFkZXIuZ2V0QXR0cmlidXRlKCdkYWEtbGgnKS5pbmNsdWRlcygnYmFjb20nKTtcbiAgICBjb25zdCBoZWFkZXJXcmFwcGVyID0gaXNCYWNvbSA/IGhlYWRlciA6IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5mZWRzLWhlYWRlci13cmFwcGVyJyk7XG5cbiAgICByZXR1cm4gaXNCYWNvbSB8fCAoaGVhZGVyV3JhcHBlciAmJiBoZWFkZXJXcmFwcGVyLmNsYXNzTGlzdC5jb250YWlucygnZmVkcy1oZWFkZXItd3JhcHBlci0tc3RpY2t5JykpXG4gICAgICAgID8gaGVhZGVyLm9mZnNldEhlaWdodCArIG9mZlNldFxuICAgICAgICA6IG9mZlNldDtcbn07XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9yZWFjdC9zcmMvanMvY29tcG9uZW50cy9Db25zb25hbnQvSGVscGVycy9nZW5lcmFsLmpzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///6\n"); /***/ }), /* 7 */ diff --git a/react/src/js/components/Consonant/Helpers/general.js b/react/src/js/components/Consonant/Helpers/general.js index 7c6df405..75a585ce 100644 --- a/react/src/js/components/Consonant/Helpers/general.js +++ b/react/src/js/components/Consonant/Helpers/general.js @@ -514,7 +514,7 @@ export function getTransitions(cardsPtr) { export const getLinkTarget = (link, ctaAction = '', domain = window.location.hostname) => { - if (ctaAction || link.startsWith('#')) { + if (ctaAction) { return ctaAction; } let target = '_blank'; @@ -529,6 +529,7 @@ export const getLinkTarget = (link, ctaAction = '', domain = window.location.hos return target; }; + export const getGlobalNavHeight = () => { const header = document.querySelector('header'); const offSet = 20; // margin above card collection