@font-face {
  font-family: Montserrat;
  font-style: italic;
  font-weight: 100;
  src: local("Montserrat Thin Italic"),local(Montserrat-ThinItalic),url(//fonts.gstatic.com/s/montserrat/v10/1809Y0aW9bpFOPXsQTFwf9P2OS6Bzu7BENq0TH5sayk.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v10/1809Y0aW9bpFOPXsQTFwf1dBB84BqlWy1BjOnCrU9PY.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v10/1809Y0aW9bpFOPXsQTFwfy1dfeF-hbOdKKuBDEXxqhQ.woff) format("woff"); }
@font-face {
  font-family: Montserrat;
  font-style: italic;
  font-weight: 200;
  src: local("Montserrat ExtraLight Italic"),local(Montserrat-ExtraLightItalic),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9Ft2hUd5_HpjpfImmlNZG9RF4.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9Ft5dxImagpP7sHxM18iKeP-M.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9Ft_7J9eW2S58LCMPoFblzf2g.woff) format("woff"); }
@font-face {
  font-family: Montserrat;
  font-style: italic;
  font-weight: 300;
  src: local("Montserrat Light Italic"),local(Montserrat-LightItalic),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9Ft4ySLpARcVRs9uFJp0LRZgE.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9Ft04GofcKVZz6wtzX_QUIqsI.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9Ft2Fp2sMiApZm5Dx7NpSTOZk.woff) format("woff"); }
@font-face {
  font-family: Montserrat;
  font-style: italic;
  font-weight: 400;
  src: local("Montserrat Italic"),local(Montserrat-Italic),url(//fonts.gstatic.com/s/montserrat/v10/-iqwlckIhsmvkx0N6rwPmnZ2MAKAc2x4R1uOSeegc5U.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v10/-iqwlckIhsmvkx0N6rwPmugdm0LZdjqr5-oayXSOefg.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v10/-iqwlckIhsmvkx0N6rwPmnhCUOGz7vYGh680lGh-uXM.woff) format("woff"); }
@font-face {
  font-family: Montserrat;
  font-style: italic;
  font-weight: 500;
  src: local("Montserrat Medium Italic"),local(Montserrat-MediumItalic),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9FtzHhXAPWOXQc-mHRKx4oalk.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9Ft81Lch-SD8r0CsJ60meulZ8.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9FtxF47VQSRrvbVYTKIrepY7I.woff) format("woff"); }
@font-face {
  font-family: Montserrat;
  font-style: italic;
  font-weight: 600;
  src: local("Montserrat SemiBold Italic"),local(Montserrat-SemiBoldItalic),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9FtzBIQ40lcwWW3vj9tFMKvqw.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9Ft_Bf3Xtc57ojmY2ox2Xv8Go.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9Ft9Od4RnLmtUrdSQkDmC5b8k.woff) format("woff"); }
@font-face {
  font-family: Montserrat;
  font-style: italic;
  font-weight: 700;
  src: local("Montserrat Bold Italic"),local(Montserrat-BoldItalic),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9Ft2msoyWrDyoltQVIP7q_RGg.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9Ft3NuWYKPzoeKl5tYj8yhly0.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9Ft3l4twXkwp3_u9ZoePkT564.woff) format("woff"); }
@font-face {
  font-family: Montserrat;
  font-style: italic;
  font-weight: 800;
  src: local("Montserrat ExtraBold Italic"),local(Montserrat-ExtraBoldItalic),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9Ft9Kd--5SjvBBPdO8SYNBozY.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9FtxqoE9FO9sRveXk8Nnop4Zo.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9Ft2pVmE9oLybi4D_AN-2K110.woff) format("woff"); }
@font-face {
  font-family: Montserrat;
  font-style: italic;
  font-weight: 900;
  src: local("Montserrat Black Italic"),local(Montserrat-BlackItalic),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9Ft19iNfvTt1gMvrhy159_6ck.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9Ft9DLwwZd-mS_8JqJ_KGXwxs.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v10/zhwB3-BAdyKDf0geWr9Ftwi3Hume1-TKjJz2lX0jYjo.woff) format("woff"); }
@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 100;
  src: local("Montserrat Thin"),local(Montserrat-Thin),url(//fonts.gstatic.com/s/montserrat/v10/CdKWaRAal2Bxq9mORLKRRXZ2MAKAc2x4R1uOSeegc5U.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v10/CdKWaRAal2Bxq9mORLKRRegdm0LZdjqr5-oayXSOefg.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v10/CdKWaRAal2Bxq9mORLKRRXhCUOGz7vYGh680lGh-uXM.woff) format("woff"); }
@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 200;
  src: local("Montserrat ExtraLight"),local(Montserrat-ExtraLight),url(//fonts.gstatic.com/s/montserrat/v10/eWRmKHdPNWGn_iFyeEYja26IuzAwjfI5Pbb6jofSqzk.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v10/eWRmKHdPNWGn_iFyeEYja6EWXqnGSfwnQD3YDlprsb0.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v10/eWRmKHdPNWGn_iFyeEYjaxp4ivTFcMoDJtPEqAe9hmM.woff) format("woff"); }
@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 300;
  src: local("Montserrat Light"),local(Montserrat-Light),url(//fonts.gstatic.com/s/montserrat/v10/IVeH6A3MiFyaSEiudUMXE6SxSvC1lIsK_unZDHWqTBg.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v10/IVeH6A3MiFyaSEiudUMXE8u2Q0OS-KeTAWjgkS85mDg.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v10/IVeH6A3MiFyaSEiudUMXE9kZXW4sYc4BjuAIFc1SXII.woff) format("woff"); }
@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 400;
  src: local("Montserrat Regular"),local(Montserrat-Regular),url(//fonts.gstatic.com/s/montserrat/v10/zhcz-_WihjSQC0oHJ9TCYFQlYEbsez9cZjKsNMjLOwM.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v10/zhcz-_WihjSQC0oHJ9TCYPk_vArhqVIZ0nv9q090hN8.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v10/zhcz-_WihjSQC0oHJ9TCYBsxEYwM7FgeyaSgU71cLG0.woff) format("woff"); }
@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 500;
  src: local("Montserrat Medium"),local(Montserrat-Medium),url(//fonts.gstatic.com/s/montserrat/v10/BYPM-GE291ZjIXBWrtCweoJh5taHiwXv-DjBEZUuYXM.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v10/BYPM-GE291ZjIXBWrtCwejOo-lJoxoMO4vrg2XwIHQk.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v10/BYPM-GE291ZjIXBWrtCweu46x7QEqGuF-FJIFiH1W2g.woff) format("woff"); }
@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 600;
  src: local("Montserrat SemiBold"),local(Montserrat-SemiBold),url(//fonts.gstatic.com/s/montserrat/v10/q2OIMsAtXEkOulLQVdSl08G3e9iX24ta7lLMfbqPFME.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v10/q2OIMsAtXEkOulLQVdSl06VlZKEoJGujTpfWnQT9bUY.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v10/q2OIMsAtXEkOulLQVdSl024H_cQCpNmkmj7HsMzmiiM.woff) format("woff"); }
@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 700;
  src: local("Montserrat Bold"),local(Montserrat-Bold),url(//fonts.gstatic.com/s/montserrat/v10/IQHow_FEYlDC4Gzy_m8fcmzklk6MJbhg7BmBP42CjCQ.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v10/IQHow_FEYlDC4Gzy_m8fcoWiMMZ7xLd792ULpGE4W_Y.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v10/IQHow_FEYlDC4Gzy_m8fcgFhaRv2pGgT5Kf0An0s4MM.woff) format("woff"); }
@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 800;
  src: local("Montserrat ExtraBold"),local(Montserrat-ExtraBold),url(//fonts.gstatic.com/s/montserrat/v10/H8_7oktkjVeeX06kbAvc0B8AHhEfjUJjouFVttJjJoo.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v10/H8_7oktkjVeeX06kbAvc0Ary2jK1Y0oNyoF1xLf3zMQ.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v10/H8_7oktkjVeeX06kbAvc0CS-0kw_uRLN9JEz12uqVRQ.woff) format("woff"); }
@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 900;
  src: local("Montserrat Black"),local(Montserrat-Black),url(//fonts.gstatic.com/s/montserrat/v10/aEu-9ATAroJ1iN4zmQ55BsWwaGkf25P-zZOrMBTzpJc.eot?#) format("eot"),url(//fonts.gstatic.com/s/montserrat/v10/aEu-9ATAroJ1iN4zmQ55Bsjsb7Oq0o-uqUFW7Ygu5rM.woff2) format("woff2"),url(//fonts.gstatic.com/s/montserrat/v10/aEu-9ATAroJ1iN4zmQ55BoPAkl-0rCkX4F4zIO7lYWE.woff) format("woff"); }
/**************************************************************************
		        Main style JX Mosaic Products
**************************************************************************/
.mosaic-block {
  padding-top: 6.25rem; }
  @media (min-width: 1200px) {
    .mosaic-block.displaytopcolumn {
      padding-top: 10.3125rem; } }
  .mosaic-block.displayhome {
    padding-bottom: 6.25rem; }
    @media (min-width: 1200px) {
      .mosaic-block.displayhome {
        padding-bottom: 9.0625rem; } }
  .mosaic-block .title_block, .mosaic-block .description {
    display: none; }
  @media (max-width: 767px) {
    .mosaic-block .title_block:after {
      display: none; } }
  .mosaic-block .block-container-row .jxmp-frontend-banner h3,
  .mosaic-block .block-container-row .wrapper-slider h3,
  .mosaic-block .block-container-row .jxmp-frontend-html h3,
  .mosaic-block .block-container-row .jxmp-frontend-video h3 {
    margin: 0 0 1.5625rem; }
  .mosaic-block .block-container-row .wrapper-slider > h3 {
    font-size: 1.875rem;
    text-align: center; }
  .mosaic-block.displayhome .block-container-row + .block-container-row {
    margin-top: 1.875rem; }
    @media (min-width: 768px) {
      .mosaic-block.displayhome .block-container-row + .block-container-row {
        margin-top: 1.25rem; } }

/* jxmp_row_2 */
@media (max-width: 767px) {
  .jxmp_row_2 > li:first-child > div {
    padding-bottom: 1.875rem;
    margin-bottom: 1.875rem; } }

/* jxmp_row_3 */
@media (max-width: 767px) {
  .jxmp_row_3 li:nth-child(-n+2) > div {
    padding-bottom: 1.875rem;
    margin-bottom: 1.875rem; } }

/* jxmp_row_4 */
@media (max-width: 767px) {
  .jxmp_row_4 li:nth-child(-n+3) > div {
    padding-bottom: 1.875rem;
    margin-bottom: 1.875rem; } }

@media (min-width: 768px) and (max-width: 991px) {
  .jxmp_row_4 li:nth-child(3) {
    clear: left; } }

@media (min-width: 768px) and (max-width: 991px) {
  .jxmp_row_4 li:nth-child(-n+2) > div {
    padding-bottom: 1.875rem;
    margin-bottom: 1.875rem; } }

/* jxmp_row_6 */
@media (min-width: 992px) and (max-width: 1199px) {
  .jxmp_row_6 li:nth-child(4) {
    clear: left; } }

@media (min-width: 768px) and (max-width: 991px) {
  .jxmp_row_6 li:nth-child(-n+4) > div {
    padding-bottom: 1.875rem;
    margin-bottom: 1.875rem; } }

@media (max-width: 767px) {
  .jxmp_row_6 li:nth-child(-n+5) > div {
    padding-bottom: 1.875rem;
    margin-bottom: 1.875rem; } }

/* jxmp_row_1_4 */
.jxmp_row_1_4 > li:last-child > ul > li:nth-child(3) {
  clear: left; }

@media (min-width: 768px) {
  .jxmp_row_1_4 > li:last-child > .row {
    margin-left: -0.625rem;
    margin-right: -0.625rem; }
    .jxmp_row_1_4 > li:last-child > .row > [class*='col-'] {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }

@media (min-width: 768px) {
  .jxmp_row_1_4 > li > ul > li:nth-child(n+3):nth-child(-n+4) > div {
    margin-top: 1.25rem; } }

@media (max-width: 767px) {
  .jxmp_row_1_4 > li > ul > li > div {
    margin-top: 1.875rem; } }

/* jxmp_row_4_1 */
.jxmp_row_4_1 ul > li:nth-child(3) {
  clear: left; }

@media (min-width: 768px) {
  .jxmp_row_4_1 > li > ul > li:nth-child(n+3):nth-child(-n+4) > div {
    margin-top: 1.25rem; } }

@media (max-width: 767px) {
  .jxmp_row_4_1 li {
    margin-bottom: 1.875rem; } }

/* jxmp_row_2_1_2 */
@media (min-width: 768px) {
  .jxmp_row_2_1_2 > li:first-child > ul > li + li,
  .jxmp_row_2_1_2 li:nth-child(3) > ul > li + li {
    margin-top: 1.25rem; } }

@media (max-width: 575px) {
  .jxmp_row_2_1_2 > li:first-child > ul > li + li,
  .jxmp_row_2_1_2 li:nth-child(3) > ul > li + li {
    margin-top: 1.875rem; } }

@media (max-width: 767px) {
  .jxmp_row_2_1_2 > li + li {
    margin-top: 1.875rem; } }

@media (min-width: 768px) {
  .displayhome .jxmp_row_2_1_2.row, .displayhome .jxmp_row_1_4.row, .displayhome .jxmp_row_4_1.row {
    margin-left: -0.625rem;
    margin-right: -0.625rem; }
    .displayhome .jxmp_row_2_1_2.row .row, .displayhome .jxmp_row_1_4.row .row, .displayhome .jxmp_row_4_1.row .row {
      margin-left: -0.625rem;
      margin-right: -0.625rem; }
    .displayhome .jxmp_row_2_1_2.row [class*='col-'], .displayhome .jxmp_row_1_4.row [class*='col-'], .displayhome .jxmp_row_4_1.row [class*='col-'] {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }

@media (max-width: 767px) {
  .displayhome .jxmp_row_2_1_2, .displayhome .jxmp_row_1_4, .displayhome .jxmp_row_4_1 {
    margin-bottom: 0; } }

/**************************************************************************
		        Style for banner and html content
**************************************************************************/
.jxmp-banner-description img,
.jxmp-frontend-html img {
  max-width: 100%;
  height: auto; }

.mosaic-block .block-container-row .jxmp-frontend-banner {
  position: relative; }
  @media (min-width: 768px) {
    .mosaic-block .block-container-row .jxmp-frontend-banner {
      margin-right: 2.5rem; } }
  .mosaic-block .block-container-row .jxmp-frontend-banner > h3 {
    display: none; }
  .mosaic-block .block-container-row .jxmp-frontend-banner > a {
    display: block;
    padding-top: 2.0625rem;
    padding-bottom: 2.0625rem;
    position: relative;
    z-index: 0; }
    @media (max-width: 1199px) {
      .mosaic-block .block-container-row .jxmp-frontend-banner > a {
        padding-top: 1.25rem;
        padding-bottom: 1.25rem; } }
  .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description h3 {
    text-align: center;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    bottom: 100%;
    font: 400 1.875rem/2.125rem "Montserrat", sans-serif;
    color: #000;
    text-transform: capitalize;
    margin: 0 0 -1.125rem 0;
    background: #fff;
    padding-left: 0.625rem;
    padding-right: 0.625rem;
    z-index: 2; }
    @media (min-width: 1870px) {
      .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description h3 {
        padding-left: 2.375rem;
        padding-right: 2.375rem; } }
    @media (max-width: 1199px) {
      .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description h3 {
        font-size: 1.25rem;
        line-height: 1.5rem;
        margin-bottom: -0.625rem; } }
    @media (max-width: 767px) {
      .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description h3 {
        font-size: 1.5rem; } }
  .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description .first-level-line:before, .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description .first-level-line:after {
    position: absolute;
    content: '';
    width: 0.0625rem;
    background: #000;
    top: 0;
    bottom: 0;
    z-index: 1; }
  .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description .first-level-line:before {
    left: 2rem; }
  .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description .first-level-line:after {
    right: 2rem; }
  .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description .second-level-line:before, .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description .second-level-line:after {
    position: absolute;
    content: '';
    height: 0.0625rem;
    background: #000;
    left: 2rem;
    right: 2rem;
    z-index: 1; }
  .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description .second-level-line:before {
    top: 0; }
  .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description .second-level-line:after {
    bottom: 0; }
  @media (max-width: 1199px) {
    .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description .first-level-line:before {
      left: 1.25rem; }
    .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description .first-level-line:after {
      right: 1.25rem; }
    .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description .second-level-line:before, .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description .second-level-line:after {
      left: 1.25rem;
      right: 1.25rem; } }
  @media (max-width: 767px) {
    .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description .first-level-line:before, .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description .first-level-line:after {
      width: 0.1875rem; }
    .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description .second-level-line:before, .mosaic-block .block-container-row .jxmp-frontend-banner .jxmp-banner-description .second-level-line:after {
      height: 0.125rem; } }

/**************************************************************************
		        Style for Video
**************************************************************************/
.video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden; }
  .video-container iframe,
  .video-container video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.jxmp-frontend-video .vjs-default-skin .vjs-big-play-button {
  height: 1.6em;
  width: 3em;
  font-size: 1.5em;
  border-radius: 0.5em; }
  .jxmp-frontend-video .vjs-default-skin .vjs-big-play-button:before {
    line-height: 1.5em; }

/**************************************************************************
		        Style for Slider
**************************************************************************/
.mosaic-block .img-responsive {
  max-width: 100%;
  display: block; }

.mosaic-block .bx-wrapper li img {
  max-width: 100%;
  height: auto; }

.mosaic-block .bx-wrapper .bx-controls-direction a {
  top: -2.5rem;
  height: 2.5rem;
  width: 2.5rem;
  text-align: center; }
  @media (max-width: 767px) {
    .mosaic-block .bx-wrapper .bx-controls-direction a {
      display: none; } }
  .mosaic-block .bx-wrapper .bx-controls-direction a:before {
    color: #333;
    font-size: 2.5rem; }
  .mosaic-block .bx-wrapper .bx-controls-direction a:hover:before {
    color: #777; }
  .mosaic-block .bx-wrapper .bx-controls-direction a.bx-next {
    right: -0.75rem; }
    .mosaic-block .bx-wrapper .bx-controls-direction a.bx-next:before {
      content: "\E315";
      font-family: "Material Icons"; }
  .mosaic-block .bx-wrapper .bx-controls-direction a.bx-prev {
    left: inherit;
    right: 1.25rem; }
    .mosaic-block .bx-wrapper .bx-controls-direction a.bx-prev:before {
      content: "\E314";
      font-family: "Material Icons"; }

.mosaic-block .bx-wrapper .bx-pager.bx-default-pager {
  bottom: -2.8125rem; }
  .mosaic-block .bx-wrapper .bx-pager.bx-default-pager a {
    background: #f5f5f5;
    height: 0.9375rem;
    width: 0.9375rem;
    border-radius: 50%; }
    .mosaic-block .bx-wrapper .bx-pager.bx-default-pager a.active, .mosaic-block .bx-wrapper .bx-pager.bx-default-pager a:hover {
      background: #333; }

/**************************************************************************
		        Style for Product
**************************************************************************/
.block-container-row .product-miniature {
  margin-bottom: 0; }

.block-container-row .btn-default {
  margin-top: 4.25rem; }
  @media (min-width: 768px) and (max-width: 1199px) {
    .block-container-row .btn-default {
      margin-top: 1.25rem;
      padding: 0.875rem 1.5625rem;
      font-size: 0.75rem;
      line-height: 1rem; }
      .block-container-row .btn-default span {
        padding-right: 1.25rem; } }
  @media (max-width: 767px) {
    .block-container-row .btn-default {
      margin-top: 2.5rem; } }

.block-container-row .product-miniature-container {
  position: relative;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  -webkit-box-shadow: 0px 0px 1.875rem 0px transparent;
          box-shadow: 0px 0px 1.875rem 0px transparent; }
  .block-container-row .product-miniature-container .product-thumbnail {
    position: relative; }
    .block-container-row .product-miniature-container .product-thumbnail:before {
      position: absolute;
      content: '';
      background: #fff;
      opacity: 0;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      visibility: hidden;
      -webkit-transition: all 0.3s ease-in-out;
      transition: all 0.3s ease-in-out; }
    .block-container-row .product-miniature-container .product-thumbnail .product_img_link {
      background: #e9e9e9;
      -webkit-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out;
      padding: 0.625rem 1.875rem; }
  .block-container-row .product-miniature-container .product-info-container {
    text-align: center; }
  .block-container-row .product-miniature-container .product-top-container, .block-container-row .product-miniature-container .product-bottom-information {
    position: absolute;
    left: 0;
    right: 0;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    -webkit-transform: translateY(-40%);
            transform: translateY(-40%);
    -webkit-transition-delay: 0.15s;
            transition-delay: 0.15s;
    opacity: 0;
    visibility: hidden;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem; }
  .block-container-row .product-miniature-container .product-top-container {
    top: 42%; }
  .block-container-row .product-miniature-container .product-bottom-information {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    top: 87%; }
  .block-container-row .product-miniature-container .product-actions .add_to_cart_button {
    display: block;
    color: #000;
    margin-right: 1.875rem; }
    .block-container-row .product-miniature-container .product-actions .add_to_cart_button span {
      display: none; }
    .block-container-row .product-miniature-container .product-actions .add_to_cart_button i {
      font-size: 1.5rem;
      line-height: 1; }
    .block-container-row .product-miniature-container .product-actions .add_to_cart_button:hover {
      color: #bd41b8; }
    @media (min-width: 768px) and (max-width: 1199px) {
      .block-container-row .product-miniature-container .product-actions .add_to_cart_button i {
        font-size: 1.25rem; } }
  .block-container-row .product-miniature-container .js-compare-button i,
  .block-container-row .product-miniature-container #wishlist_button i,
  .block-container-row .product-miniature-container #wishlist_button_nopop i,
  .block-container-row .product-miniature-container .wishlist_button i,
  .block-container-row .product-miniature-container .wishlist_button_nopop i {
    font-size: 1.5rem; }
  @media (min-width: 768px) and (max-width: 1199px) {
    .block-container-row .product-miniature-container .js-compare-button i,
    .block-container-row .product-miniature-container #wishlist_button i,
    .block-container-row .product-miniature-container #wishlist_button_nopop i,
    .block-container-row .product-miniature-container .wishlist_button i,
    .block-container-row .product-miniature-container .wishlist_button_nopop i {
      font-size: 1.25rem; } }
  .block-container-row .product-miniature-container:hover, .block-container-row .product-miniature-container:focus {
    -webkit-box-shadow: 0px 0px 1.875rem 0px rgba(0, 0, 0, 0.1);
            box-shadow: 0px 0px 1.875rem 0px rgba(0, 0, 0, 0.1); }
    .block-container-row .product-miniature-container:hover .product-top-container, .block-container-row .product-miniature-container:hover .product-bottom-information, .block-container-row .product-miniature-container:focus .product-top-container, .block-container-row .product-miniature-container:focus .product-bottom-information {
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      opacity: 1;
      visibility: visible; }
    .block-container-row .product-miniature-container:hover .product-thumbnail:before, .block-container-row .product-miniature-container:focus .product-thumbnail:before {
      opacity: .9;
      visibility: visible; }
    .block-container-row .product-miniature-container:hover .product-thumbnail .product_img_link, .block-container-row .product-miniature-container:focus .product-thumbnail .product_img_link {
      background: #fff; }
  @media (max-width: 1869px) {
    .block-container-row .product-miniature-container .product-title {
      margin-bottom: 0.625rem;
      font-size: 1rem;
      line-height: 1.625rem; }
      .block-container-row .product-miniature-container .product-title a {
        font-size: 1rem;
        line-height: 1.625rem; } }
  @media (max-width: 1199px) {
    .block-container-row .product-miniature-container .product-thumbnail .product_img_link {
      padding: 0.625rem 1.5625rem; }
    .block-container-row .product-miniature-container .product-prices-md .daydeal-box {
      display: none; }
    .block-container-row .product-miniature-container .product-top-container, .block-container-row .product-miniature-container .product-bottom-information {
      padding-left: 0.3125rem;
      padding-right: 0.3125rem; } }
  @media (max-width: 767px) {
    .block-container-row .product-miniature-container .product-top-container, .block-container-row .product-miniature-container .product-bottom-information {
      padding-left: 0.1875rem;
      padding-right: 0.1875rem; } }
  @media (min-width: 768px) and (max-width: 1199px) {
    .block-container-row .product-miniature-container .product-top-container {
      top: 37%; }
    .block-container-row .product-miniature-container .product-title {
      font-size: 0.75rem;
      line-height: 1rem;
      margin-bottom: 0.3125rem; }
      .block-container-row .product-miniature-container .product-title a {
        font-size: 0.75rem;
        line-height: 1rem; }
    .block-container-row .product-miniature-container .product-prices-md .price, .block-container-row .product-miniature-container .product-prices-md .regular-price {
      font-size: 0.75rem;
      line-height: 0.875rem; }
    .block-container-row .product-miniature-container .product-prices-md .discount {
      font-size: 1.125rem;
      line-height: 1.375rem; } }

.displayhome .block-container-row li:not(.big-block-for-product) .product-miniature-container .product-thumbnail .product_img_link {
  padding-top: 0.4375rem;
  padding-bottom: 0.5rem; }
  @media (min-width: 1870px) {
    .displayhome .block-container-row li:not(.big-block-for-product) .product-miniature-container .product-thumbnail .product_img_link {
      padding-top: 1.25rem;
      padding-bottom: 1.25rem; } }

@media (max-width: 1869px) {
  .displayhome .block-container-row .big-block-for-product .product-miniature-container .product-thumbnail .product_img_link {
    padding: 0.625rem 3.4375rem; } }

@media (max-width: 1199px) {
  .displayhome .block-container-row .big-block-for-product .product-miniature-container .product-thumbnail .product_img_link {
    padding: 0.625rem 2.8125rem; } }

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9tb2R1bGVzL2p4bW9zYWljcHJvZHVjdHMvdmlld3MvY3NzL0Q6L3dhbXAvd3d3L3ByZXN0YXNob3AvVGhlbWUxNDk1X1dpbnRlclNwb3J0L3RoZW1lcy90aGVtZTE0OTUvX2Rldi88bm8gc291cmNlPiIsIndlYnBhY2s6Ly8vLi9tb2R1bGVzL2p4bW9zYWljcHJvZHVjdHMvdmlld3MvY3NzL0Q6L3dhbXAvd3d3L3ByZXN0YXNob3AvVGhlbWUxNDk1X1dpbnRlclNwb3J0L3RoZW1lcy90aGVtZTE0OTUvX2Rldi9tb2R1bGVzL2p4bW9zYWljcHJvZHVjdHMvdmlld3MvY3NzL2p4bW9zYWljcHJvZHVjdHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9tb2R1bGVzL2p4bW9zYWljcHJvZHVjdHMvdmlld3MvY3NzL0Q6L3dhbXAvd3d3L3ByZXN0YXNob3AvVGhlbWUxNDk1X1dpbnRlclNwb3J0L3RoZW1lcy90aGVtZTE0OTUvX2Rldi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovLy8uL21vZHVsZXMvanhtb3NhaWNwcm9kdWN0cy92aWV3cy9jc3MvRDovd2FtcC93d3cvcHJlc3Rhc2hvcC9UaGVtZTE0OTVfV2ludGVyU3BvcnQvdGhlbWVzL3RoZW1lMTQ5NS9fZGV2L2Nzcy9wYXJ0aWFscy9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbW9kdWxlcy9qeG1vc2FpY3Byb2R1Y3RzL3ZpZXdzL2Nzcy9EOi93YW1wL3d3dy9wcmVzdGFzaG9wL1RoZW1lMTQ5NV9XaW50ZXJTcG9ydC90aGVtZXMvdGhlbWUxNDk1L19kZXYvY3NzL3BhcnRpYWxzL192YXJpYWJsZXNfY29sb3Iuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0FBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtBQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7QUFBQTtF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SlEsd0JBQWlCO01BQ2pCLHlCQUFrQixFQUNuQjtFQ2hmSDtJRDhWSjtNQXNKUSx3QkFBaUI7TUFDakIseUJBQWtCLEVBQ25CO0VDeGVMO0lEZ1ZGO01BK0pRLFNBQVEsRUFDVDtJQWhLUDtNQWtLUSxtQkFBZTtNQUNmLGtCQUFpQjtNQUNqQix5QkFBa0IsRUFLbkI7TUF6S1A7UUFzS1UsbUJBQWU7UUFDZixrQkFBaUIsRUFDbEI7SUF4S1Q7TUE0S1UsbUJBQWU7TUFDZixzQkFBaUIsRUFDbEI7SUE5S1Q7TUFnTFUsb0JBQWU7TUFDZixzQkFBaUIsRUFDbEI7O0FBTVQ7RUFJUSx1QkFBZ0I7RUFDaEIsdUJBQW1CLEVBS3BCO0VDN2lCSDtJRG1pQko7TUFPVSxxQkFBaUI7TUFDakIsd0JBQW9CLEVBRXZCOztBQ2hpQkg7RURxaUJKO0lBSVEsNEJBQWtCLEVBQ25COztBQzFpQkg7RURxaUJKO0lBU1EsNEJBQWtCLEVBQ25CIiwiZmlsZSI6Ii4uXFxtb2R1bGVzXFxqeG1vc2FpY3Byb2R1Y3RzXFx2aWV3c1xcY3NzXFxqeG1vc2FpY3Byb2R1Y3RzLmNzcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbCwiQGltcG9ydCBcImNzcy9wYXJ0aWFscy9fdmFyaWFibGVzXCI7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cdFx0ICAgICAgICBNYWluIHN0eWxlIEpYIE1vc2FpYyBQcm9kdWN0c1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuXHJcbi5tb3NhaWMtYmxvY2sge1xyXG4gIHBhZGRpbmctdG9wOiAxMDBweDtcclxuICAmLmRpc3BsYXl0b3Bjb2x1bW4ge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xyXG4gICAgICBwYWRkaW5nLXRvcDogMTY1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuZGlzcGxheWhvbWUge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTQ1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC50aXRsZV9ibG9jaywgLmRlc2NyaXB0aW9uIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gIC50aXRsZV9ibG9jayB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuYmxvY2stY29udGFpbmVyLXJvdyB7XHJcbiAgICAuanhtcC1mcm9udGVuZC1iYW5uZXIsXHJcbiAgICAud3JhcHBlci1zbGlkZXIsXHJcbiAgICAuanhtcC1mcm9udGVuZC1odG1sLFxyXG4gICAgLmp4bXAtZnJvbnRlbmQtdmlkZW8ge1xyXG4gICAgICBoMyB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMjVweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLndyYXBwZXItc2xpZGVyIHtcclxuICAgICAgPiBoMyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLmRpc3BsYXlob21lIHtcclxuICAgIC5ibG9jay1jb250YWluZXItcm93ICsgLmJsb2NrLWNvbnRhaW5lci1yb3cge1xyXG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyoganhtcF9yb3dfMiAqL1xyXG4uanhtcF9yb3dfMiA+IGxpOmZpcnN0LWNoaWxkID4gZGl2IHtcclxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICB9XHJcbn1cclxuXHJcbi8qIGp4bXBfcm93XzMgKi9cclxuLmp4bXBfcm93XzMgbGk6bnRoLWNoaWxkKC1uKzIpID4gZGl2IHtcclxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICB9XHJcbn1cclxuXHJcbi8qIGp4bXBfcm93XzQgKi9cclxuLmp4bXBfcm93XzQgbGk6bnRoLWNoaWxkKC1uKzMpID4gZGl2IHtcclxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICB9XHJcbn1cclxuXHJcbi5qeG1wX3Jvd180IGxpOm50aC1jaGlsZCgzKSB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgIGNsZWFyOiBsZWZ0O1xyXG4gIH1cclxufVxyXG5cclxuLmp4bXBfcm93XzQgbGk6bnRoLWNoaWxkKC1uKzIpID4gZGl2IHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gIH1cclxufVxyXG5cclxuLyoganhtcF9yb3dfNiAqL1xyXG4uanhtcF9yb3dfNiBsaTpudGgtY2hpbGQoNCkge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xyXG4gICAgY2xlYXI6IGxlZnQ7XHJcbiAgfVxyXG59XHJcblxyXG4uanhtcF9yb3dfNiBsaTpudGgtY2hpbGQoLW4rNCkgPiBkaXYge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uanhtcF9yb3dfNiBsaTpudGgtY2hpbGQoLW4rNSkgPiBkaXYge1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gIH1cclxufVxyXG5cclxuLyoganhtcF9yb3dfMV80ICovXHJcbi5qeG1wX3Jvd18xXzQgPiBsaTpsYXN0LWNoaWxkID4gdWwgPiBsaTpudGgtY2hpbGQoMykge1xyXG4gIGNsZWFyOiBsZWZ0O1xyXG59XHJcblxyXG4uanhtcF9yb3dfMV80ID4gbGk6bGFzdC1jaGlsZCA+IC5yb3cge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICA+IFtjbGFzcyo9J2NvbC0nXSB7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5qeG1wX3Jvd18xXzQgPiBsaSA+IHVsID4gbGk6bnRoLWNoaWxkKG4rMyk6bnRoLWNoaWxkKC1uKzQpID4gZGl2IHtcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gIH1cclxufVxyXG5cclxuLmp4bXBfcm93XzFfNCA+IGxpID4gdWwgPiBsaSA+IGRpdiB7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gIH1cclxufVxyXG5cclxuLyoganhtcF9yb3dfNF8xICovXHJcbi5qeG1wX3Jvd180XzEgdWwgPiBsaTpudGgtY2hpbGQoMykge1xyXG4gIGNsZWFyOiBsZWZ0O1xyXG59XHJcblxyXG4uanhtcF9yb3dfNF8xID4gbGkgPiB1bCA+IGxpOm50aC1jaGlsZChuKzMpOm50aC1jaGlsZCgtbis0KSA+IGRpdiB7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICB9XHJcbn1cclxuXHJcbi5qeG1wX3Jvd180XzEgbGkge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICB9XHJcbn1cclxuXHJcbi8qIGp4bXBfcm93XzJfMV8yICovXHJcbi5qeG1wX3Jvd18yXzFfMiA+IGxpOmZpcnN0LWNoaWxkID4gdWwgPiBsaSArIGxpLFxyXG4uanhtcF9yb3dfMl8xXzIgbGk6bnRoLWNoaWxkKDMpID4gdWwgPiBsaSArIGxpIHtcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gIH1cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcclxuICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uanhtcF9yb3dfMl8xXzIgPiBsaSArIGxpIHtcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uZGlzcGxheWhvbWUge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIC5qeG1wX3Jvd18yXzFfMi5yb3csIC5qeG1wX3Jvd18xXzQucm93LCAuanhtcF9yb3dfNF8xLnJvdyB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuICAgICAgLnJvdyB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgICAgIH1cclxuICAgICAgW2NsYXNzKj0nY29sLSddIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgIC5qeG1wX3Jvd18yXzFfMiwgLmp4bXBfcm93XzFfNCwgLmp4bXBfcm93XzRfMSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHRcdCAgICAgICAgU3R5bGUgZm9yIGJhbm5lciBhbmQgaHRtbCBjb250ZW50XHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5cclxuLmp4bXAtYmFubmVyLWRlc2NyaXB0aW9uLFxyXG4uanhtcC1mcm9udGVuZC1odG1sIHtcclxuICBpbWcge1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gIH1cclxufVxyXG5cclxuLm1vc2FpYy1ibG9jayAuYmxvY2stY29udGFpbmVyLXJvdyB7XHJcbiAgLmp4bXAtZnJvbnRlbmQtYmFubmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xyXG4gICAgfVxyXG4gICAgPiBoMyB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgPiBhIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAzM3B4O1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzNweDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB6LWluZGV4OiAwO1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmp4bXAtYmFubmVyLWRlc2NyaXB0aW9uIHtcclxuICAgICAgaDMge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgICAgICBib3R0b206IDEwMCU7XHJcbiAgICAgICAgZm9udDogNDAwIDMwcHgvMzRweCAkZm9udC1mYW1pbHktYmFzZTtcclxuICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xyXG4gICAgICAgIG1hcmdpbjogMCAwIC0xOHB4IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4eGwpIHtcclxuICAgICAgICAgIHBhZGRpbmctbGVmdDogMzhweDtcclxuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDM4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5maXJzdC1sZXZlbC1saW5lIHtcclxuICAgICAgICAmOmJlZm9yZSwgJjphZnRlciB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBsZWZ0OiAzMnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIHJpZ2h0OiAzMnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuc2Vjb25kLWxldmVsLWxpbmUge1xyXG4gICAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XHJcbiAgICAgICAgICBsZWZ0OiAzMnB4O1xyXG4gICAgICAgICAgcmlnaHQ6IDMycHg7XHJcbiAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgICAuZmlyc3QtbGV2ZWwtbGluZSB7XHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zZWNvbmQtbGV2ZWwtbGluZSB7XHJcbiAgICAgICAgICAmOmJlZm9yZSwgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcclxuICAgICAgICAuZmlyc3QtbGV2ZWwtbGluZSB7XHJcbiAgICAgICAgICAmOmJlZm9yZSwgJjphZnRlciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zZWNvbmQtbGV2ZWwtbGluZSB7XHJcbiAgICAgICAgICAmOmJlZm9yZSwgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblx0XHQgICAgICAgIFN0eWxlIGZvciBWaWRlb1xyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuXHJcbi52aWRlby1jb250YWluZXIge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xyXG4gIGhlaWdodDogMDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGlmcmFtZSxcclxuICB2aWRlbyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG4uanhtcC1mcm9udGVuZC12aWRlbyAudmpzLWRlZmF1bHQtc2tpbiAudmpzLWJpZy1wbGF5LWJ1dHRvbiB7XHJcbiAgaGVpZ2h0OiAxLjZlbTtcclxuICB3aWR0aDogM2VtO1xyXG4gIGZvbnQtc2l6ZTogMS41ZW07XHJcbiAgYm9yZGVyLXJhZGl1czogMC41ZW07XHJcbiAgJjpiZWZvcmUge1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xyXG4gIH1cclxufVxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcblx0XHQgICAgICAgIFN0eWxlIGZvciBTbGlkZXJcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcblxyXG4ubW9zYWljLWJsb2NrIHtcclxuICAuaW1nLXJlc3BvbnNpdmUge1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG4gIC5ieC13cmFwcGVyIHtcclxuICAgIGxpIGltZyB7XHJcbiAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gICAgLmJ4LWNvbnRyb2xzLWRpcmVjdGlvbiBhIHtcclxuICAgICAgdG9wOiAtNDBweDtcclxuICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICB3aWR0aDogNDBweDtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb2xvcjogIzMzMztcclxuICAgICAgICBmb250LXNpemU6IDQwcHg7XHJcbiAgICAgIH1cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgY29sb3I6ICM3Nzc7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYuYngtbmV4dCB7XHJcbiAgICAgICAgcmlnaHQ6IC0xMnB4O1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxFMzE1XCI7XHJcbiAgICAgICAgICBmb250LWZhbWlseTogXCJNYXRlcmlhbCBJY29uc1wiO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmLmJ4LXByZXYge1xyXG4gICAgICAgIGxlZnQ6IGluaGVyaXQ7XHJcbiAgICAgICAgcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDogXCJcXEUzMTRcIjtcclxuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIk1hdGVyaWFsIEljb25zXCI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuYngtcGFnZXIuYngtZGVmYXVsdC1wYWdlciB7XHJcbiAgICAgIGJvdHRvbTogLTQ1cHg7XHJcbiAgICAgIGEge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmNWY1ZjU7XHJcbiAgICAgICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgICAgIHdpZHRoOiAxNXB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAmLmFjdGl2ZSxcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICMzMzM7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHRcdCAgICAgICAgU3R5bGUgZm9yIFByb2R1Y3RcclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcblxyXG4uYmxvY2stY29udGFpbmVyLXJvdyB7XHJcbiAgLnByb2R1Y3QtbWluaWF0dXJlIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgfVxyXG4gIC5idG4tZGVmYXVsdCB7XHJcbiAgICBtYXJnaW4tdG9wOiA2OHB4O1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKG1kLCBsZykge1xyXG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICBwYWRkaW5nOiAxNHB4IDI1cHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XHJcbiAgICAgIHNwYW4ge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xyXG4gICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAucHJvZHVjdC1taW5pYXR1cmUtY29udGFpbmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDApO1xyXG4gICAgLnByb2R1Y3QtdGh1bWJuYWlsIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuICAgICAgLnByb2R1Y3RfaW1nX2xpbmsge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRncmF5LTkxO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMzBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnByb2R1Y3QtaW5mby1jb250YWluZXIge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAucHJvZHVjdC10b3AtY29udGFpbmVyLCAucHJvZHVjdC1ib3R0b20taW5mb3JtYXRpb24ge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00MCUpO1xyXG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjE1cztcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XHJcblxyXG4gICAgfVxyXG4gICAgLnByb2R1Y3QtdG9wLWNvbnRhaW5lciB7XHJcbiAgICAgIHRvcDogNDIlO1xyXG4gICAgfVxyXG4gICAgLnByb2R1Y3QtYm90dG9tLWluZm9ybWF0aW9uIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIHRvcDogODclO1xyXG4gICAgfVxyXG4gICAgLnByb2R1Y3QtYWN0aW9ucyB7XHJcbiAgICAgIC5hZGRfdG9fY2FydF9idXR0b24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbihtZCwgbGcpIHtcclxuICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuanMtY29tcGFyZS1idXR0b24sXHJcbiAgICAjd2lzaGxpc3RfYnV0dG9uLFxyXG4gICAgI3dpc2hsaXN0X2J1dHRvbl9ub3BvcCxcclxuICAgIC53aXNobGlzdF9idXR0b24sXHJcbiAgICAud2lzaGxpc3RfYnV0dG9uX25vcG9wIHtcclxuICAgICAgaSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbihtZCwgbGcpIHtcclxuICAgICAgICBpIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICAgICAgLnByb2R1Y3QtdG9wLWNvbnRhaW5lciwgLnByb2R1Y3QtYm90dG9tLWluZm9ybWF0aW9uIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICB9XHJcbiAgICAgIC5wcm9kdWN0LXRodW1ibmFpbCB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgb3BhY2l0eTogLjk7XHJcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAucHJvZHVjdF9pbWdfbGluayB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhsKSB7XHJcbiAgICAgIC5wcm9kdWN0LXRpdGxlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XHJcbiAgICAgIC5wcm9kdWN0LXRodW1ibmFpbCB7XHJcbiAgICAgICAgLnByb2R1Y3RfaW1nX2xpbmsge1xyXG4gICAgICAgICAgcGFkZGluZzogMTBweCAyNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAucHJvZHVjdC1wcmljZXMtbWQge1xyXG4gICAgICAgIC5kYXlkZWFsLWJveCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAucHJvZHVjdC10b3AtY29udGFpbmVyLCAucHJvZHVjdC1ib3R0b20taW5mb3JtYXRpb24ge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XHJcbiAgICAgIC5wcm9kdWN0LXRvcC1jb250YWluZXIsIC5wcm9kdWN0LWJvdHRvbS1pbmZvcm1hdGlvbiB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzcHg7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogM3B4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcclxuXHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWJldHdlZW4obWQsIGxnKSB7XHJcbiAgICAgIC5wcm9kdWN0LXRvcC1jb250YWluZXIge1xyXG4gICAgICAgIHRvcDogMzclO1xyXG4gICAgICB9XHJcbiAgICAgIC5wcm9kdWN0LXRpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5wcm9kdWN0LXByaWNlcy1tZCB7XHJcbiAgICAgICAgLnByaWNlLCAucmVndWxhci1wcmljZSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmRpc2NvdW50IHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmRpc3BsYXlob21lIHtcclxuICAuYmxvY2stY29udGFpbmVyLXJvdyBsaTpub3QoLmJpZy1ibG9jay1mb3ItcHJvZHVjdCkge1xyXG4gICAgLnByb2R1Y3QtbWluaWF0dXJlLWNvbnRhaW5lciB7XHJcbiAgICAgIC5wcm9kdWN0LXRodW1ibmFpbCAucHJvZHVjdF9pbWdfbGluayB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDdweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeHhsKSB7XHJcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmRpc3BsYXlob21lIC5ibG9jay1jb250YWluZXItcm93IC5iaWctYmxvY2stZm9yLXByb2R1Y3Qge1xyXG4gIC5wcm9kdWN0LW1pbmlhdHVyZS1jb250YWluZXIge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhsKSB7XHJcbiAgICAgIC5wcm9kdWN0LXRodW1ibmFpbCAucHJvZHVjdF9pbWdfbGluayB7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCA1NXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcclxuICAgICAgLnByb2R1Y3QtdGh1bWJuYWlsIC5wcm9kdWN0X2ltZ19saW5rIHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDQ1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9tb2R1bGVzL2p4bW9zYWljcHJvZHVjdHMvdmlld3MvY3NzL0Q6L3dhbXAvd3d3L3ByZXN0YXNob3AvVGhlbWUxNDk1X1dpbnRlclNwb3J0L3RoZW1lcy90aGVtZTE0OTUvX2Rldi9tb2R1bGVzL2p4bW9zYWljcHJvZHVjdHMvdmlld3MvY3NzL2p4bW9zYWljcHJvZHVjdHMuc2NzcyIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgbGFyZ2VzdCAobGFzdCkgYnJlYWtwb2ludC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIG1pbmltdW0gb2YgdGhlIG5leHQgb25lIGxlc3MgMC4xLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIDFweCwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW5mcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUpXG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUpXG4gIH1cbn1cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL21vZHVsZXMvanhtb3NhaWNwcm9kdWN0cy92aWV3cy9jc3MvRDovd2FtcC93d3cvcHJlc3Rhc2hvcC9UaGVtZTE0OTVfV2ludGVyU3BvcnQvdGhlbWVzL3RoZW1lMTQ5NS9fZGV2L25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJAaW1wb3J0IFwidmFyaWFibGVzX2NvbG9yXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC9zY3NzL21peGluc1wiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuXG4vL21haW4gY29sb3JzXG4kYnJhbmQtcHJpbWFyeTogJG1hZ2VudGE7XG4kYnJhbmQtc2Vjb25kYXJ5OiAkZ3JheS02MDA7XG4kYnJhbmQtc3VjY2VzczogJGdyZWVuO1xuJGJyYW5kLWluZm86ICRjeWFuO1xuJGJyYW5kLXdhcm5pbmc6ICRvcmFuZ2U7XG4kYnJhbmQtZGFuZ2VyOiAkcmVkO1xuJGJvZHktY29sb3I6ICRncmF5LTYyO1xuJGZvb3Rlci1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kaGVhZGVyLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRtYWluLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRib2R5LWJnOiAkZm9vdGVyLWJhY2tncm91bmQ7XG4kcHJvZHVjdC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kcHJvZHVjdC1jb2xvcjogJGJsYWNrO1xuJHByaWNlLWNvbG9yOiAkYmxhY2s7XG4kcmVndWxhci1wcmljZS1jb2xvcjogJGdyYXktNjI7XG4kcHJpY2UtbmV3LWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiRicmFuZC1zdWNjZXNzOiAjNzBkZmJmO1xuJGJyYW5kLXdhcm5pbmc6ICNmZmEyNmY7XG4kYnJhbmQtZGFuZ2VyOiAjZjc2MDYzO1xuJGJyYW5kLWluZm86ICM4OWRkZTc7XG4kaW4tc3RvY2s6ICMxYzU2ZTg7XG5cbi8vZm9udHNcbiRmb250LWZhbWlseS1iYXNlOiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XG4kZm9udC1saW5lYXJpY29uczogJ0xpbmVhcmljb25zJztcbiRib2R5LWZvbnQ6IDQwMCAxNHB4LzIwcHggJGZvbnQtZmFtaWx5LWJhc2U7XG4kZm9udC14czogNDAwIDEycHgvMThweCAkZm9udC1mYW1pbHktYmFzZTtcbiRmb250LW1kOiA0MDAgMThweC8zMHB4ICRmb250LWZhbWlseS1iYXNlO1xuJGZvbnQtbGc6IDQwMCAzMHB4LzQwcHggJGZvbnQtZmFtaWx5LWJhc2U7XG4kcHJvZHVjdC1mb250OiA0MDAgMThweC8zMHB4ICRmb250LWZhbWlseS1iYXNlO1xuJHBhY2stcHJvZHVjdC1mb250OiA0MDAgMTZweC8yMHB4ICRmb250LWZhbWlseS1iYXNlO1xuJHByb2R1Y3QtZm9udC1zbTogNDAwIDE0cHgvMjBweCAkZm9udC1mYW1pbHktYmFzZTtcbiRwcm9kdWN0LWZvbnQtbGc6IDYwMCA0MHB4LzUwcHggJGZvbnQtZmFtaWx5LWJhc2U7XG4kcHJpY2UtZm9udDogNjAwIDE4cHgvMjRweCAkZm9udC1mYW1pbHktYmFzZTtcbiRkaXNjb3VudC1wcmljZS1mb250OiA2MDAgMzBweC8zNHB4ICRmb250LWZhbWlseS1iYXNlO1xuJGZvbnQtc3ViaGVhZGluZzogJGZvbnQtbWQ7XG5cblxuLy9MaW5rc1xuJGxpbmstY29sb3I6ICRncmF5LTgwMDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAkZ3JheS02MDA7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiBub25lO1xuXG4vL2ZvbnQgc2l6ZVxuJGZvbnQtc2l6ZS1iYXNlOiAwLjg3NXJlbTtcbiRmb250LXNpemUtbGc6IDFyZW07XG4kZm9udC1zaXplLXNtOiAwLjc1cmVtO1xuJGZvbnQtd2VpZ2h0LWJhc2U6IDQwMDtcbiRsaW5lLWhlaWdodC1iYXNlOiAxLjI4NjtcbiRoMS1mb250LXNpemU6IDIuNXJlbTtcbiRoMi1mb250LXNpemU6IDEuNzUwcmVtO1xuJGgzLWZvbnQtc2l6ZTogMS41cmVtO1xuJGg0LWZvbnQtc2l6ZTogMS41cmVtO1xuJGg1LWZvbnQtc2l6ZTogMS4xMjVyZW07XG4kaDYtZm9udC1zaXplOiAxLjEyNXJlbTtcbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAyN3B4O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiBib2xkO1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAxLjU7XG4kaGVhZGluZ3MtY29sb3I6ICRncmF5LTgwMDtcblxuLy9idXR0b25zXG4kYnRuLWZvbnQtd2VpZ2h0OiBib2xkO1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAwO1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAwO1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAwO1xuJGJ0bi1ib3gtc2hhZG93OiBub25lO1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiBub25lO1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogbm9uZTtcblxuLy9TcGFjaW5nXG4kYm9yZGVyLXJhZGl1czogMDtcbiRib3JkZXItcmFkaXVzLXNtOiAwO1xuJGJvcmRlci1yYWRpdXMtbGc6IDA7XG4kc3BhY2VyOiAycmVtO1xuJGV4dHJhLXNtYWxsLXNwYWNlOiAkc3BhY2VyICogLjI1O1xuJHNtYWxsLXNwYWNlOiAkc3BhY2VyICogLjU7XG4kbWVkaXVtLXNwYWNlOiAkc3BhY2VyO1xuJGxhcmdlLXNwYWNlOiAkc3BhY2VyICogMS41O1xuJGV4dHJhLWxhcmdlLXNwYWNlOiAkc3BhY2VyICogMztcblxuLy9mb3Jtc1xuJGlucHV0LWJnOiAkd2hpdGU7XG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogMXB4O1xuJGlucHV0LWJvcmRlci1jb2xvcjogJGdyYXktMjAwO1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogJGdyYXktMzAwO1xuJGlucHV0LWZvY3VzLWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRncmF5LTYwMDtcbiRpbnB1dC1ib3gtc2hhZG93OiBub25lO1xuJGlucHV0LWdyb3VwLWJ0bi1ib3JkZXItY29sb3I6IGluaXRpYWw7XG5cbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6IDEuNTtcbiRpbnB1dC1idG4tcGFkZGluZy15OiAwLjYyNXJlbTtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAxLjEyNXJlbTtcblxuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTogMS41O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206IDAuNXJlbTtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAxcmVtO1xuXG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnOiAxLjU7XG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogMS4xNXJlbTtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAyLjRyZW07XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAqIDIgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAoJGZvbnQtc2l6ZS1zbSAqICRpbnB1dC1idG4tbGluZS1oZWlnaHQpICsgKCRpbnB1dC1idG4tcGFkZGluZy15ICogMikgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0OiBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lcn0gKyAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSkgIWRlZmF1bHQ7XG5cbi8vY3VzdG9tIGZvcm1zXG4kY3VzdG9tLWNvbnRyb2wtZ3V0dGVyOiAyN3B4O1xuJGN1c3RvbS1jb250cm9sLXNwYWNlci15OiAxMHB4O1xuJGN1c3RvbS1jb250cm9sLXNwYWNlci14OiAwO1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAxLjE4OHJlbTtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6IHRyYW5zcGFyZW50O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiA3MCUgNzAlICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggJGdyYXktMjAwO1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZzogJGdyYXktMTAwO1xuJGN1c3RvbS1jb250cm9sLWRlc2NyaXB0aW9uLWRpc2FibGVkLWNvbG9yOiAkZ3JheS0xMDA7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICRncmF5LTgwMDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdzogbm9uZTtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAkZ3JheS04MDA7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4O2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUJsYm1OdlpHbHVaejBpZFhSbUxUZ2lQejRLUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIaHRiRzV6T25oc2FXNXJQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUwzaHNhVzVySWlCMlpYSnphVzl1UFNJeExqRWlJSFpwWlhkQ2IzZzlJakFnTUNBeE1qa2dNVEk1SWlCbGJtRmliR1V0WW1GamEyZHliM1Z1WkQwaWJtVjNJREFnTUNBeE1qa2dNVEk1SWlCM2FXUjBhRDBpTVRad2VDSWdhR1ZwWjJoMFBTSXhObkI0SWo0S0lDQThaejRLSUNBZ0lEeHdZWFJvSUdROUltMHhNakV1TXl3ek5DNDJZeTB4TGpZdE1TNDJMVFF1TWkweExqWXROUzQ0TERCc0xUVXhMRFV4TGpFdE5URXVNUzAxTVM0eFl5MHhMall0TVM0MkxUUXVNaTB4TGpZdE5TNDRMREF0TVM0MkxERXVOaTB4TGpZc05DNHlJREFzTlM0NGJEVXpMamtzTlRNdU9XTXdMamdzTUM0NElERXVPQ3d4TGpJZ01pNDVMREV1TWlBeExEQWdNaTR4TFRBdU5DQXlMamt0TVM0eWJEVXpMamt0TlRNdU9XTXhMamN0TVM0MklERXVOeTAwTGpJZ01DNHhMVFV1T0hvaUlHWnBiR3c5SWlNd01EQXdNREFpTHo0S0lDQThMMmMrQ2p3dmMzWm5QZ289XCIpO1xuJGN1c3RvbS1zZWxlY3QtYmc6ICRncmF5LTIwMDtcbiRjdXN0b20tc2VsZWN0LWNvbG9yOiAkZ3JheS02MDA7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICRncmF5LTMwMDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6IG5vbmU7XG5cbi8vbW9kYWxzXG4kbW9kYWwtbGc6IDE0NTBweDtcbiRtb2RhbC1tZDogMTAwMHB4O1xuJG1vZGFsLXNtOiA1MDBweDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogMzBweDtcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAzMHB4O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogbm9uZTtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6IG5vbmU7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6IDA7XG5cbi8vZHJvcGRvd25zXG4kZHJvcGRvd24tbWluLXdpZHRoOiAyMDBweDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6IDVweDtcbiRkcm9wZG93bi1zcGFjZXI6IDA7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAwO1xuJGRyb3Bkb3duLWJnOiB3aGl0ZTtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAwIDVweCA0M3B4IHJnYmEoMCwgMCwgMCwgMC4xMSk7XG4kZW5hYmxlLXNoYWRvd3M6IHRydWU7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6IDEwcHg7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6IDE1cHg7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogJGdyYXktNjAwO1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6IHRyYW5zcGFyZW50O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogdHJhbnNwYXJlbnQ7XG5cbi8vZ3JpZCBleGFtcGxlXG4kZ3JpZC1jb2x1bW5zOiAxMjtcbiRncmlkLWd1dHRlci13aWR0aDogMzBweDtcblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgLy8gRXh0cmEgc21hbGwgc2NyZWVuIC8gcGhvbmVcbiAgeHM6IDAsXG4gIC8vIFNtYWxsIHNjcmVlbiAvIHBob25lXG4gIHNtOiA1NzZweCxcbiAgLy8gTWVkaXVtIHNjcmVlbiAvIHRhYmxldFxuICBtZDogNzY4cHgsXG4gIC8vIExhcmdlIHNjcmVlbiAvIGRlc2t0b3BcbiAgbGc6IDk5MnB4LFxuICAvLyBFeHRyYSBsYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3BcbiAgeGw6IDEyMDBweCxcbiAgLy8gRXh0cmEgbGFyZ2Ugc2NyZWVuIDIgLyB3aWRlIGRlc2t0b3BcbiAgeHhsOiAxODcwcHhcbik7XG5cbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNjEwcHgsXG4gIG1kOiA3NjBweCxcbiAgbGc6IDk5MHB4LFxuICB4bDogMTE3MHB4LFxuICB4eGw6IDE4NDBweFxuKTtcblxuLy9DdXN0b20gbWVkaWEgcG9pbnRcbiRzY3JlZW4tY3VzdG9tLW1pbjogMTgwMHB4O1xuJHNjcmVlbi1jdXN0b20tbWF4OiAxNzk5cHg7XG5cbi8vaW5wdXRzXG4kaW5wdXQtaGVpZ2h0OiA0N3B4O1xuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL21vZHVsZXMvanhtb3NhaWNwcm9kdWN0cy92aWV3cy9jc3MvRDovd2FtcC93d3cvcHJlc3Rhc2hvcC9UaGVtZTE0OTVfV2ludGVyU3BvcnQvdGhlbWVzL3RoZW1lMTQ5NS9fZGV2L2Nzcy9wYXJ0aWFscy9fdmFyaWFibGVzLnNjc3MiLCIvL1xyXG4vLyBDb2xvciBzeXN0ZW1cclxuLy9cclxuJHdoaXRlOiAgI2ZmZiAhZGVmYXVsdDtcclxuJGdyYXktMTAwOiAjZmFmYWZhICAhZGVmYXVsdDtcclxuJGdyYXktMjAwOiAjZjFmMWYxICFkZWZhdWx0O1xyXG4kZ3JheS0zMDA6ICNlN2U3ZTcgIWRlZmF1bHQ7XHJcbiRncmF5LTQwMDogI2RkZGRkZCAhZGVmYXVsdDtcclxuJGdyYXktNTAwOiAjYTJhMmEyICFkZWZhdWx0O1xyXG4kZ3JheS02MDA6ICM4ODg4ODggIWRlZmF1bHQ7XHJcbiRncmF5LTcwMDogIzU1NTU1NSAhZGVmYXVsdDtcclxuJGdyYXktODAwOiAjM2EzYTNhICFkZWZhdWx0O1xyXG4kZ3JheS05MDA6ICMxNDE0MTQgIWRlZmF1bHQ7XHJcbiRibGFjazogICMwMDAgIWRlZmF1bHQ7XHJcbiRncmF5LTgwOiAjY2NjY2NjO1xyXG4kZ3JheS02ODogI2FkYWRhZDtcclxuJGdyYXktNjI6ICM5ZTllOWU7XHJcbiRncmF5LTkwOiAjZTVlNWU1O1xyXG4kZ3JheS05MTogI2U5ZTllOTtcclxuJGdyYXktOTI6ICNlZGVkZWQ7XHJcbiRib3JkZXItY29sb3I6ICRncmF5LTkxO1xyXG5cclxuJGdyYXlzOiAoXHJcbiAgMTAwOiAkZ3JheS0xMDAsXHJcbiAgMjAwOiAkZ3JheS0yMDAsXHJcbiAgMzAwOiAkZ3JheS0zMDAsXHJcbiAgNDAwOiAkZ3JheS00MDAsXHJcbiAgNTAwOiAkZ3JheS01MDAsXHJcbiAgNjAwOiAkZ3JheS02MDAsXHJcbiAgNzAwOiAkZ3JheS03MDAsXHJcbiAgODAwOiAkZ3JheS04MDAsXHJcbiAgOTAwOiAkZ3JheS05MDBcclxuKSAhZGVmYXVsdDtcclxuXHJcbiRibHVlOiAgICAjNWQ5Y2VjICFkZWZhdWx0O1xyXG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcclxuJHB1cnBsZTogICM2ZjQyYzEgIWRlZmF1bHQ7XHJcbiRwaW5rOiAgICAjZGU2ZDZkICFkZWZhdWx0O1xyXG4kcmVkOiAgICAgI2QwNTY1NiAhZGVmYXVsdDtcclxuJG9yYW5nZTogICNmZWIzODAgIWRlZmF1bHQ7XHJcbiR5ZWxsb3c6ICAjZmZmMWJjICFkZWZhdWx0O1xyXG4kZ3JlZW46ICAgIzdjZDIyZiAhZGVmYXVsdDtcclxuJHRlYWw6ICAgICMyMGM5OTcgIWRlZmF1bHQ7XHJcbiRjeWFuOiAgICAjYzVmMmZkICFkZWZhdWx0O1xyXG4kbWFnZW50YTogI2JkNDFiOCAhZGVmYXVsdDtcclxuXHJcbiRjb2xvcnM6IChcclxuICBibHVlOiAkYmx1ZSxcclxuICBpbmRpZ286ICRpbmRpZ28sXHJcbiAgcHVycGxlOiAkcHVycGxlLFxyXG4gIHBpbms6ICRwaW5rLFxyXG4gIHJlZDogJHJlZCxcclxuICBvcmFuZ2U6ICRvcmFuZ2UsXHJcbiAgeWVsbG93OiAkeWVsbG93LFxyXG4gIGdyZWVuOiAkZ3JlZW4sXHJcbiAgdGVhbDogJHRlYWwsXHJcbiAgY3lhbjogJGN5YW4sXHJcbiAgbWFnZW50YTogJG1hZ2VudGEsXHJcbiAgd2hpdGU6ICR3aGl0ZSxcclxuICBncmF5OiAkZ3JheS02MDAsXHJcbiAgZ3JheS1kYXJrOiAkZ3JheS04MDAsXHJcbiAgZ3JheS1kYXJrZXI6ICRncmF5LTkwMCxcclxuICBncmF5LWxpZ2h0OiAkZ3JheS0yMDAsXHJcbiAgZ3JheS1saWdodGVyOiAkZ3JheS0xMDBcclxuKSAhZGVmYXVsdDtcclxuXHJcbiR0aGVtZS1jb2xvcnM6IChcclxuICBwcmltYXJ5OiAkcGluayxcclxuICBzZWNvbmRhcnk6ICRncmF5LTgwMCxcclxuICBzdWNjZXNzOiAkZ3JlZW4sXHJcbiAgaW5mbzogJGN5YW4sXHJcbiAgd2FybmluZzogJG9yYW5nZSxcclxuICBkYW5nZXI6ICRwaW5rLFxyXG4gIGxpZ2h0OiAkZ3JheS0yMDAsXHJcbiAgd2hpdGU6ICR3aGl0ZVxyXG4pICFkZWZhdWx0O1xuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL21vZHVsZXMvanhtb3NhaWNwcm9kdWN0cy92aWV3cy9jc3MvRDovd2FtcC93d3cvcHJlc3Rhc2hvcC9UaGVtZTE0OTVfV2ludGVyU3BvcnQvdGhlbWVzL3RoZW1lMTQ5NS9fZGV2L2Nzcy9wYXJ0aWFscy9fdmFyaWFibGVzX2NvbG9yLnNjc3MiXSwic291cmNlUm9vdCI6IiJ9*/