@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"); }
@charset "UTF-8";
.row.full-width {
  margin-left: auto;
  margin-right: auto; }

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

@media (max-width: 991px) {
  .row.row-custom > div + div {
    margin-top: 1.25rem; } }

.mt-custom {
  margin-top: 1.25rem; }

@media (max-width: 767px) {
  .mt-custom-sm {
    margin-top: 1.25rem; } }

.background-gray {
  background: #e9e9e9;
  position: relative;
  z-index: 0; }
  .background-gray:before, .background-gray:after {
    position: absolute;
    content: '';
    width: 625rem;
    top: 0;
    bottom: 0;
    background: #e9e9e9;
    z-index: -1; }
  .background-gray:before {
    right: 99%; }
  .background-gray:after {
    left: 99%; }

/* Extra content */
/* Banners */
.jx-custom-banner {
  position: relative;
  overflow: hidden; }
  .jx-custom-banner .jxml-banner-title {
    display: none; }
  .jx-custom-banner .jxml-banner-link {
    display: block; }
  .jx-custom-banner .jxml-banner-img {
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    will-change: transform;
    width: 100%; }
  .jx-custom-banner .jxml-banner-description {
    font-size: 1rem; }
    .jx-custom-banner .jxml-banner-description h2, .jx-custom-banner .jxml-banner-description h3, .jx-custom-banner .jxml-banner-description h4 {
      text-transform: uppercase;
      letter-spacing: 0;
      margin: 0;
      font-family: "Montserrat", sans-serif;
      color: #000; }
    .jx-custom-banner .jxml-banner-description .color-white {
      color: #fff; }
      .jx-custom-banner .jxml-banner-description .color-white a {
        color: #fff; }
        .jx-custom-banner .jxml-banner-description .color-white a:hover {
          color: #bd41b8; }
    .jx-custom-banner .jxml-banner-description h2 {
      font-weight: 600;
      line-height: 1;
      font-size: 8.750em; }
    .jx-custom-banner .jxml-banner-description h3 {
      font-weight: 600;
      line-height: 1.143;
      font-size: 4.375em; }
      .jx-custom-banner .jxml-banner-description h3 span {
        font-weight: 200; }
    .jx-custom-banner .jxml-banner-description h4 {
      font-weight: 600;
      line-height: 1.25;
      font-size: 2.500em; }
      .jx-custom-banner .jxml-banner-description h4 span {
        font-weight: 300; }
    .jx-custom-banner .jxml-banner-description .link-block {
      margin: 2.5rem 0 0 0; }
    .jx-custom-banner .jxml-banner-description .btn-wrapper {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin-top: 3.25rem; }
      .jx-custom-banner .jxml-banner-description .btn-wrapper > p {
        margin: 0.1875rem 0.5625rem; }
    @media (min-width: 1200px) {
      .jx-custom-banner .jxml-banner-description .btn-wrapper--brands > p {
        position: relative;
        padding-top: 3.4375rem; }
        .jx-custom-banner .jxml-banner-description .btn-wrapper--brands > p:before {
          position: absolute;
          content: '';
          top: 0;
          left: 50%;
          -webkit-transform: translateX(-50%);
                  transform: translateX(-50%);
          width: 100%;
          height: 1.9375rem; }
      .jx-custom-banner .jxml-banner-description .btn-wrapper--brands .btn-md {
        min-width: 14.375rem; }
      .jx-custom-banner .jxml-banner-description .btn-md {
        min-width: 12.625rem; } }
    @media (max-width: 1869px) {
      .jx-custom-banner .jxml-banner-description {
        font-size: 0.625rem; } }
    @media (max-width: 1199px) {
      .jx-custom-banner .jxml-banner-description {
        font-size: 0.5rem; }
        .jx-custom-banner .jxml-banner-description .btn-wrapper {
          margin-top: 1.25rem; }
        .jx-custom-banner .jxml-banner-description .btn-md {
          padding: 0.625rem 0.625rem; }
        .jx-custom-banner .jxml-banner-description .btn {
          font-size: 0.75rem; } }
  .jx-custom-banner:hover .jxml-banner-img {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1); }

.banner-default .jxml-banner-description {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  padding-left: 3.375rem; }

.banner-default.right-align .jxml-banner-description {
  left: auto;
  right: 0;
  padding-right: 2.5rem;
  padding-left: 0;
  width: 50%; }

@media (max-width: 1869px) {
  .banner-default .jxml-banner-description {
    padding-left: 1.875rem; } }

.banner-primary .jxml-banner-description {
  text-align: center;
  position: absolute;
  left: 0;
  right: 0;
  top: 6.875rem; }

.banner-primary.bottom-align .jxml-banner-description {
  top: auto;
  bottom: 6.75rem; }

.banner-primary.left-align .jxml-banner-description {
  right: auto;
  padding-left: 5.625rem;
  top: 10rem; }

.banner-primary.center-align .jxml-banner-description {
  top: 47%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%); }

@media (max-width: 1869px) {
  .banner-primary .jxml-banner-description {
    top: 3.125rem; }
  .banner-primary.left-align .jxml-banner-description {
    padding-left: 1.875rem;
    top: 3.125rem; } }

@media (max-width: 1199px) {
  .banner-primary .jxml-banner-description {
    top: 1.875rem; }
  .banner-primary.bottom-align .jxml-banner-description {
    bottom: 1.875rem; } }

@media (max-width: 991px) {
  .banner-primary .jxml-banner-description {
    top: 1.5625rem; } }

@media (max-width: 575px) {
  .banner-primary.left-align .jxml-banner-description {
    padding-left: 0.3125rem;
    top: 1.25rem;
    text-align: left;
    font-size: 0.375rem; }
    .banner-primary.left-align .jxml-banner-description .btn-wrapper {
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start; } }

@media (min-width: 576px) and (max-width: 991px) {
  .banner-primary--md .jxml-banner-description {
    font-size: 0.875rem; } }

.banner-secondary {
  overflow: hidden;
  position: relative;
  z-index: 0;
  margin-bottom: 3.75rem; }
  @media (min-width: 768px) {
    .banner-secondary {
      margin-bottom: 5.625rem; } }
  @media (min-width: 1200px) {
    .banner-secondary {
      margin-bottom: 7.8125rem; } }
  .banner-secondary .jxml-banner-title {
    display: none; }
  .banner-secondary .jxml-banner-description .custom-background {
    position: absolute;
    top: 0;
    bottom: -0.0625rem;
    right: -0.0625rem;
    background: #fff;
    -webkit-transform: skewX(15deg);
            transform: skewX(15deg);
    -webkit-transform-origin: right top;
            transform-origin: right top;
    width: 44%;
    z-index: 1; }
    @media (max-width: 767px) {
      .banner-secondary .jxml-banner-description .custom-background {
        width: 50%; } }
    .banner-secondary .jxml-banner-description .custom-background:before {
      position: absolute;
      content: '';
      background: #e9e9e9;
      top: 0;
      left: 0;
      right: 0;
      bottom: 3.625rem;
      z-index: 1; }
    @media (max-width: 1599px) {
      .banner-secondary .jxml-banner-description .custom-background:before {
        bottom: 1.875rem; } }
    @media (max-width: 767px) {
      .banner-secondary .jxml-banner-description .custom-background:before {
        bottom: 0.625rem; } }
  .banner-secondary .jxml-banner-description .text-overlay {
    position: absolute;
    top: 48%;
    right: 0.9375rem;
    width: 37%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    font-size: 1rem;
    z-index: 2;
    text-align: center; }
    .banner-secondary .jxml-banner-description .text-overlay h5 {
      font-weight: 400;
      font-family: "Montserrat", sans-serif;
      font-size: 1.875em;
      line-height: 1.333;
      color: #000;
      text-transform: none;
      letter-spacing: 0;
      margin: 2.8125rem 0 0 0; }
    .banner-secondary .jxml-banner-description .text-overlay .btn {
      margin-top: 3.125rem; }
    .banner-secondary .jxml-banner-description .text-overlay .logo-brand {
      display: inline-block;
      width: 30.75rem;
      height: 9.5rem;
      background-size: 100% auto; }
    @media (max-width: 1599px) {
      .banner-secondary .jxml-banner-description .text-overlay {
        font-size: 0.8125rem; }
        .banner-secondary .jxml-banner-description .text-overlay .logo-brand {
          width: 12.5rem;
          height: 4.375rem; }
        .banner-secondary .jxml-banner-description .text-overlay h5 {
          margin-top: 1.5625rem; }
        .banner-secondary .jxml-banner-description .text-overlay .btn {
          margin-top: 1.25rem; } }
    @media (max-width: 1199px) {
      .banner-secondary .jxml-banner-description .text-overlay {
        font-size: 0.625rem; }
        .banner-secondary .jxml-banner-description .text-overlay .btn-lg {
          padding: 0.625rem 0.9375rem;
          font-size: 0.75rem;
          line-height: 1rem; }
        .banner-secondary .jxml-banner-description .text-overlay .btn.icon-right > span {
          padding-right: 1.25rem; } }
    @media (max-width: 991px) {
      .banner-secondary .jxml-banner-description .text-overlay {
        font-size: 0.5rem; }
        .banner-secondary .jxml-banner-description .text-overlay .logo-brand {
          width: 9.375rem;
          height: 3.125rem; }
        .banner-secondary .jxml-banner-description .text-overlay h5 {
          margin-top: 0.9375rem; } }
    @media (max-width: 767px) {
      .banner-secondary .jxml-banner-description .text-overlay .logo-brand {
        display: none; }
      .banner-secondary .jxml-banner-description .text-overlay h5 {
        margin-top: 0; }
      .banner-secondary .jxml-banner-description .text-overlay .btn {
        margin-top: 0.625rem; } }
    @media (max-width: 575px) {
      .banner-secondary .jxml-banner-description .text-overlay {
        font-size: 0.375rem; }
        .banner-secondary .jxml-banner-description .text-overlay .btn-lg {
          padding: 0.375rem 0.5rem; } }

@media (max-width: 991px) {
  .banner-long-md {
    min-height: 50rem;
    overflow: hidden; }
    .banner-long-md .jxml-banner-img {
      position: absolute;
      top: 70%;
      left: 0;
      right: 0;
      max-width: inherit;
      -webkit-transform: scale(1.1) translateY(-50%);
              transform: scale(1.1) translateY(-50%); }
    .banner-long-md:hover .jxml-banner-img {
      -webkit-transform: scale(1, 1) translateY(-50%);
              transform: scale(1, 1) translateY(-50%); } }

@media (max-width: 767px) {
  .banner-long-md {
    min-height: 40.625rem; } }

@media (max-width: 575px) {
  .banner-long-md {
    min-height: 25.625rem; } }

/* Html */
.footer-html {
  margin-top: 3.125rem; }
  .footer-html .jxml-html-title {
    display: none; }
  .footer-html .jxml-html-description p {
    font: 400 1.125rem/1.875rem "Montserrat", sans-serif;
    color: #9e9e9e; }
  @media (min-width: 1870px) {
    .footer-html {
      padding-right: 4.375rem; } }
  @media (min-width: 1200px) {
    .footer-html {
      padding-right: 1.875rem; } }
  @media (max-width: 1199px) {
    .footer-html {
      margin-top: 1.25rem; }
      .footer-html .jxml-html-description p {
        font-size: 0.875rem;
        line-height: 1.25rem; } }

.testimonials-slider {
  background: #e9e9e9;
  position: relative;
  z-index: 0;
  margin-top: 5rem;
  /* navigation */
  /* pagination */ }
  .testimonials-slider:before, .testimonials-slider:after {
    position: absolute;
    content: '';
    background: #e9e9e9;
    top: 0;
    bottom: 0;
    width: 625rem;
    z-index: -1; }
  .testimonials-slider:before {
    right: 99%; }
  .testimonials-slider:after {
    left: 99%; }
  @media (min-width: 768px) {
    .testimonials-slider {
      margin-top: 6.875rem; } }
  @media (min-width: 1200px) {
    .testimonials-slider {
      margin-top: 10rem; } }
  .testimonials-slider .jxml-slider-title {
    display: none; }
  .testimonials-slider .testimonials-slide {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 5rem 2.1875rem 2.5rem; }
    @media (min-width: 768px) {
      .testimonials-slider .testimonials-slide {
        padding-left: 3.125rem;
        padding-right: 3.125rem; } }
    @media (min-width: 1200px) {
      .testimonials-slider .testimonials-slide {
        padding-top: 8.125rem;
        padding-bottom: 4.6875rem; } }
    .testimonials-slider .testimonials-slide .jxml-banner-title {
      display: none; }
    .testimonials-slider .testimonials-slide .jxml-banner-img {
      border: 1rem solid #fff;
      border-radius: 50%; }
    .testimonials-slider .testimonials-slide .jxml-banner-description {
      text-align: center;
      margin-top: 2.5rem;
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
      .testimonials-slider .testimonials-slide .jxml-banner-description p {
        font-size: 0.75rem; }
        @media (min-width: 768px) {
          .testimonials-slider .testimonials-slide .jxml-banner-description p {
            font-size: 0.875rem; } }
        @media (min-width: 1200px) {
          .testimonials-slider .testimonials-slide .jxml-banner-description p {
            font-size: 1rem; } }
      .testimonials-slider .testimonials-slide .jxml-banner-description q, .testimonials-slider .testimonials-slide .jxml-banner-description em {
        font-family: "Montserrat", sans-serif; }
      .testimonials-slider .testimonials-slide .jxml-banner-description q {
        font-weight: 400;
        font-size: 1.875em;
        line-height: 1.3333;
        color: #9e9e9e; }
        .testimonials-slider .testimonials-slide .jxml-banner-description q:before, .testimonials-slider .testimonials-slide .jxml-banner-description q:after {
          content: ''; }
      .testimonials-slider .testimonials-slide .jxml-banner-description em {
        font-weight: 600;
        font-size: 1.125em;
        line-height: 1.6667;
        color: #000;
        text-transform: capitalize;
        margin-top: 1.25rem;
        font-style: normal;
        display: inline-block; }
      @media (min-width: 1200px) {
        .testimonials-slider .testimonials-slide .jxml-banner-description {
          -webkit-box-flex: 0;
              -ms-flex: 0 0 83.33333%;
                  flex: 0 0 83.33333%;
          max-width: 83.33333%; } }
      @media (min-width: 1870px) {
        .testimonials-slider .testimonials-slide .jxml-banner-description {
          -webkit-box-flex: 0;
              -ms-flex: 0 0 66.66667%;
                  flex: 0 0 66.66667%;
          max-width: 66.66667%; } }
  .testimonials-slider .swiper-button-prev {
    left: 0; }
    .testimonials-slider .swiper-button-prev:before {
      font-family: 'Linearicons';
      content: "\EC43";
      font-size: 2.5rem;
      line-height: 1;
      color: rgba(0, 0, 0, 0.5); }
    @media (max-width: 767px) {
      .testimonials-slider .swiper-button-prev {
        left: -0.3125rem; } }
  .testimonials-slider .swiper-button-next {
    right: 0; }
    .testimonials-slider .swiper-button-next:before {
      font-family: 'Linearicons';
      content: "\EC44";
      font-size: 2.5rem;
      line-height: 1;
      color: rgba(0, 0, 0, 0.5); }
    @media (max-width: 767px) {
      .testimonials-slider .swiper-button-next {
        right: -0.3125rem; } }
  .testimonials-slider .swiper-button-prev, .testimonials-slider .swiper-button-next {
    top: 46%; }
    .testimonials-slider .swiper-button-prev:before, .testimonials-slider .swiper-button-next:before {
      -webkit-transition: all 0.3s ease-in-out;
      transition: all 0.3s ease-in-out; }
    .testimonials-slider .swiper-button-prev:hover:before, .testimonials-slider .swiper-button-prev:active:before, .testimonials-slider .swiper-button-prev:focus:before, .testimonials-slider .swiper-button-next:hover:before, .testimonials-slider .swiper-button-next:active:before, .testimonials-slider .swiper-button-next:focus:before {
      color: #000; }
    @media (max-width: 767px) {
      .testimonials-slider .swiper-button-prev:before, .testimonials-slider .swiper-button-next:before {
        font-size: 1.875rem; } }
  .testimonials-slider .swiper-pagination .swiper-pagination-bullet {
    border: solid 0.125rem rgba(0, 0, 0, 0.5);
    -webkit-box-shadow: none;
            box-shadow: none; }
    .testimonials-slider .swiper-pagination .swiper-pagination-bullet:hover, .testimonials-slider .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
      border-color: #000; }

.payment-logo .jxml-html-title {
  display: none; }

.payment-logo .jxml-html-description ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .payment-logo .jxml-html-description ul > li:not(:last-child) {
    margin-right: 1.25rem; }
  .payment-logo .jxml-html-description ul > li > a i {
    font-size: 2.1875rem;
    line-height: 1;
    color: rgba(0, 0, 0, 0.5);
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out; }
  .payment-logo .jxml-html-description ul > li > a:hover i {
    color: black; }

.title-jxblog {
  margin-top: 1.875rem;
  margin-bottom: 1.875rem; }
  @media (min-width: 768px) {
    .title-jxblog {
      margin-bottom: 3.75rem; } }
  @media (min-width: 1200px) {
    .title-jxblog {
      margin-bottom: 5.625rem; } }
  .title-jxblog .jxml-html-title {
    text-align: center;
    font: 400 1.875rem/2.5rem "Montserrat", sans-serif;
    color: #000; }

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9tb2R1bGVzL2p4bWVnYWxheW91dC92aWV3cy9jc3MvRDovd2FtcC93d3cvcHJlc3Rhc2hvcC9UaGVtZTE0OTVfV2ludGVyU3BvcnQvdGhlbWVzL3RoZW1lMTQ5NS9fZGV2LzxubyBzb3VyY2U+Iiwid2VicGFjazovLy8uL21vZHVsZXMvanhtZWdhbGF5b3V0L3ZpZXdzL2Nzcy9EOi93YW1wL3d3dy9wcmVzdGFzaG9wL1RoZW1lMTQ5NV9XaW50ZXJTcG9ydC90aGVtZXMvdGhlbWUxNDk1L19kZXYvanhtZWdhbGF5b3V0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbW9kdWxlcy9qeG1lZ2FsYXlvdXQvdmlld3MvY3NzL0Q6L3dhbXAvd3d3L3ByZXN0YXNob3AvVGhlbWUxNDk1X1dpbnRlclNwb3J0L3RoZW1lcy90aGVtZTE0OTUvX2Rldi9tb2R1bGVzL2p4bWVnYWxheW91dC92aWV3cy9jc3MvanhtZWdhbGF5b3V0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbW9kdWxlcy9qeG1lZ2FsYXlvdXQvdmlld3MvY3NzL0Q6L3dhbXAvd3d3L3ByZXN0YXNob3AvVGhlbWUxNDk1X1dpbnRlclNwb3J0L3RoZW1lcy90aGVtZTE0OTUvX2Rldi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovLy8uL21vZHVsZXMvanhtZWdhbGF5b3V0L3ZpZXdzL2Nzcy9EOi93YW1wL3d3dy9wcmVzdGFzaG9wL1RoZW1lMTQ5NV9XaW50ZXJTcG9ydC90aGVtZXMvdGhlbWUxNDk1L19kZXYvY3NzL3BhcnRpYWxzL192YXJpYWJsZXNfY29sb3Iuc2NzcyIsIndlYnBhY2s6Ly8vLi9tb2R1bGVzL2p4bWVnYWxheW91dC92aWV3cy9jc3MvRDovd2FtcC93d3cvcHJlc3Rhc2hvcC9UaGVtZTE0OTVfV2ludGVyU3BvcnQvdGhlbWVzL3RoZW1lMTQ5NS9fZGV2L2Nzcy9wYXJ0aWFscy9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbW9kdWxlcy9qeG1lZ2FsYXlvdXQvdmlld3MvY3NzL0Q6L3dhbXAvd3d3L3ByZXN0YXNob3AvVGhlbWUxNDk1X1dpbnRlclNwb3J0L3RoZW1lcy90aGVtZTE0OTUvX2Rldi9jc3MvcGFydGlhbHMvX21peGlucy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7QUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0FBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtBQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7QUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0FBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtBQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7QUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0FBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtBQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7QUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0FBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtBQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7QUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0FBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtBQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7QUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0FBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtBQ0FBLGlCQUFpQjtBQ0NqQjtFQUNFLGtCQUFpQjtFQUNqQixtQkFBa0IsRUFDbkI7O0FDb0RHO0VEbERKO0lBRUksdUJBQWtCO0lBQ2xCLHdCQUFtQixFQWV0QjtJQWxCRDtNQUtNLHdCQUFtQjtNQUNuQix1QkFBa0IsRUFDbkI7SUFQTDtNQVNNLHVCQUFrQjtNQUNsQix3QkFBbUIsRUFDcEI7O0FDb0REO0VEL0RKO0lBZU0sb0JBQWdCLEVBQ2pCOztBQUlMO0VBQ0Usb0JBQWdCLEVBQ2pCOztBQ3lDRztFRHZDSjtJQUVJLG9CQUFnQixFQUVuQjs7QUFFRDtFQUNFLG9CRW5CZTtFRm9CZixtQkFBa0I7RUFDbEIs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dmxCQztJRndsQkQseUNBQWdDO0lBQWhDLGlDQUFnQyxFQUNqQztFQWxCWDtJQW9CWSxhRTNsQkMsRUY0bEJGOztBQU9YO0VBQ0UscUJBQWdCO0VBQ2hCLHdCQUFtQixFQVlwQjtFQ3RrQkc7SUR3akJKO01BSUksdUJBQW1CLEVBVXRCO0VDdGtCRztJRHdqQko7TUFPSSx3QkFBbUIsRUFPdEI7RUFkRDtJQVVJLG1CQUFrQjtJQUNsQixtREcvbEJ1QztJSGdtQnZDLFlFL21CUyxFRmduQlYiLCJmaWxlIjoiLi5cXG1vZHVsZXNcXGp4bWVnYWxheW91dFxcdmlld3NcXGNzc1xcanhtZWdhbGF5b3V0LmNzcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbCwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLnJvdy5mdWxsLXdpZHRoIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnJvdy5yb3ctY3VzdG9tIHtcbiAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTBweDsgfVxuICAgIC5yb3cucm93LWN1c3RvbSBbY2xhc3MqPSdjb2wtJ10ge1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDsgfVxuICAgIC5yb3cucm93LWN1c3RvbSAucm93IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnJvdy5yb3ctY3VzdG9tID4gZGl2ICsgZGl2IHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4OyB9IH1cblxuLm10LWN1c3RvbSB7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5tdC1jdXN0b20tc20ge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuXG4uYmFja2dyb3VuZC1ncmF5IHtcbiAgYmFja2dyb3VuZDogI2U5ZTllOTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwOyB9XG4gIC5iYWNrZ3JvdW5kLWdyYXk6YmVmb3JlLCAuYmFja2dyb3VuZC1ncmF5OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDEwMDAwcHg7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kOiAjZTllOWU5O1xuICAgIHotaW5kZXg6IC0xOyB9XG4gIC5iYWNrZ3JvdW5kLWdyYXk6YmVmb3JlIHtcbiAgICByaWdodDogOTklOyB9XG4gIC5iYWNrZ3JvdW5kLWdyYXk6YWZ0ZXIge1xuICAgIGxlZnQ6IDk5JTsgfVxuXG4vKiBFeHRyYSBjb250ZW50ICovXG4vKiBCYW5uZXJzICovXG4uangtY3VzdG9tLWJhbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuangtY3VzdG9tLWJhbm5lciAuanhtbC1iYW5uZXItdGl0bGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmp4LWN1c3RvbS1iYW5uZXIgLmp4bWwtYmFubmVyLWxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5qeC1jdXN0b20tYmFubmVyIC5qeG1sLWJhbm5lci1pbWcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5qeC1jdXN0b20tYmFubmVyIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiB7XG4gICAgZm9udC1zaXplOiAxNnB4OyB9XG4gICAgLmp4LWN1c3RvbS1iYW5uZXIgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIGgyLCAuangtY3VzdG9tLWJhbm5lciAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24gaDMsIC5qeC1jdXN0b20tYmFubmVyIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiBoNCB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gICAgICBjb2xvcjogIzAwMDsgfVxuICAgIC5qeC1jdXN0b20tYmFubmVyIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAuY29sb3Itd2hpdGUge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgIC5qeC1jdXN0b20tYmFubmVyIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAuY29sb3Itd2hpdGUgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAgIC5qeC1jdXN0b20tYmFubmVyIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAuY29sb3Itd2hpdGUgYTpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICNiZDQxYjg7IH1cbiAgICAuangtY3VzdG9tLWJhbm5lciAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24gaDIge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgZm9udC1zaXplOiA4Ljc1MGVtOyB9XG4gICAgLmp4LWN1c3RvbS1iYW5uZXIgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIGgzIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsaW5lLWhlaWdodDogMS4xNDM7XG4gICAgICBmb250LXNpemU6IDQuMzc1ZW07IH1cbiAgICAgIC5qeC1jdXN0b20tYmFubmVyIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiBoMyBzcGFuIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDIwMDsgfVxuICAgIC5qeC1jdXN0b20tYmFubmVyIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiBoNCB7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgICBmb250LXNpemU6IDIuNTAwZW07IH1cbiAgICAgIC5qeC1jdXN0b20tYmFubmVyIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiBoNCBzcGFuIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgIC5qeC1jdXN0b20tYmFubmVyIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAubGluay1ibG9jayB7XG4gICAgICBtYXJnaW46IDQwcHggMCAwIDA7IH1cbiAgICAuangtY3VzdG9tLWJhbm5lciAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24gLmJ0bi13cmFwcGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi10b3A6IDUycHg7IH1cbiAgICAgIC5qeC1jdXN0b20tYmFubmVyIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAuYnRuLXdyYXBwZXIgPiBwIHtcbiAgICAgICAgbWFyZ2luOiAzcHggOXB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgLmp4LWN1c3RvbS1iYW5uZXIgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIC5idG4td3JhcHBlci0tYnJhbmRzID4gcCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy10b3A6IDU1cHg7IH1cbiAgICAgICAgLmp4LWN1c3RvbS1iYW5uZXIgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIC5idG4td3JhcHBlci0tYnJhbmRzID4gcDpiZWZvcmUge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDMxcHg7IH1cbiAgICAgIC5qeC1jdXN0b20tYmFubmVyIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAuYnRuLXdyYXBwZXItLWJyYW5kcyAuYnRuLW1kIHtcbiAgICAgICAgbWluLXdpZHRoOiAyMzBweDsgfVxuICAgICAgLmp4LWN1c3RvbS1iYW5uZXIgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIC5idG4tbWQge1xuICAgICAgICBtaW4td2lkdGg6IDIwMnB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTg2OXB4KSB7XG4gICAgICAuangtY3VzdG9tLWJhbm5lciAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24ge1xuICAgICAgICBmb250LXNpemU6IDEwcHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC5qeC1jdXN0b20tYmFubmVyIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogOHB4OyB9XG4gICAgICAgIC5qeC1jdXN0b20tYmFubmVyIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAuYnRuLXdyYXBwZXIge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgICAgICAgLmp4LWN1c3RvbS1iYW5uZXIgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIC5idG4tbWQge1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweDsgfVxuICAgICAgICAuangtY3VzdG9tLWJhbm5lciAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24gLmJ0biB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgLmp4LWN1c3RvbS1iYW5uZXI6aG92ZXIgLmp4bWwtYmFubmVyLWltZyB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLCAxKTsgfVxuXG4uYmFubmVyLWRlZmF1bHQgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBwYWRkaW5nLWxlZnQ6IDU0cHg7IH1cblxuLmJhbm5lci1kZWZhdWx0LnJpZ2h0LWFsaWduIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHdpZHRoOiA1MCU7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDE4NjlweCkge1xuICAuYmFubmVyLWRlZmF1bHQgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7IH0gfVxuXG4uYmFubmVyLXByaW1hcnkgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDExMHB4OyB9XG5cbi5iYW5uZXItcHJpbWFyeS5ib3R0b20tYWxpZ24gLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDEwOHB4OyB9XG5cbi5iYW5uZXItcHJpbWFyeS5sZWZ0LWFsaWduIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiB7XG4gIHJpZ2h0OiBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IDkwcHg7XG4gIHRvcDogMTYwcHg7IH1cblxuLmJhbm5lci1wcmltYXJ5LmNlbnRlci1hbGlnbiAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24ge1xuICB0b3A6IDQ3JTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxODY5cHgpIHtcbiAgLmJhbm5lci1wcmltYXJ5IC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiB7XG4gICAgdG9wOiA1MHB4OyB9XG4gIC5iYW5uZXItcHJpbWFyeS5sZWZ0LWFsaWduIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIHRvcDogNTBweDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLmJhbm5lci1wcmltYXJ5IC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiB7XG4gICAgdG9wOiAzMHB4OyB9XG4gIC5iYW5uZXItcHJpbWFyeS5ib3R0b20tYWxpZ24gLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIHtcbiAgICBib3R0b206IDMwcHg7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmJhbm5lci1wcmltYXJ5IC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiB7XG4gICAgdG9wOiAyNXB4OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gIC5iYW5uZXItcHJpbWFyeS5sZWZ0LWFsaWduIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgdG9wOiAyMHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgZm9udC1zaXplOiA2cHg7IH1cbiAgICAuYmFubmVyLXByaW1hcnkubGVmdC1hbGlnbiAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24gLmJ0bi13cmFwcGVyIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5iYW5uZXItcHJpbWFyeS0tbWQgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIHtcbiAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuXG4uYmFubmVyLXNlY29uZGFyeSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgbWFyZ2luLWJvdHRvbTogNjBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYmFubmVyLXNlY29uZGFyeSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA5MHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC5iYW5uZXItc2Vjb25kYXJ5IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEyNXB4OyB9IH1cbiAgLmJhbm5lci1zZWNvbmRhcnkgLmp4bWwtYmFubmVyLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5iYW5uZXItc2Vjb25kYXJ5IC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAuY3VzdG9tLWJhY2tncm91bmQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAtMXB4O1xuICAgIHJpZ2h0OiAtMXB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgxNWRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xuICAgIHdpZHRoOiA0NCU7XG4gICAgei1pbmRleDogMTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmJhbm5lci1zZWNvbmRhcnkgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIC5jdXN0b20tYmFja2dyb3VuZCB7XG4gICAgICAgIHdpZHRoOiA1MCU7IH0gfVxuICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAuY3VzdG9tLWJhY2tncm91bmQ6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgYmFja2dyb3VuZDogI2U5ZTllOTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogNThweDtcbiAgICAgIHotaW5kZXg6IDE7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTU5OXB4KSB7XG4gICAgICAuYmFubmVyLXNlY29uZGFyeSAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24gLmN1c3RvbS1iYWNrZ3JvdW5kOmJlZm9yZSB7XG4gICAgICAgIGJvdHRvbTogMzBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuYmFubmVyLXNlY29uZGFyeSAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24gLmN1c3RvbS1iYWNrZ3JvdW5kOmJlZm9yZSB7XG4gICAgICAgIGJvdHRvbTogMTBweDsgfSB9XG4gIC5iYW5uZXItc2Vjb25kYXJ5IC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAudGV4dC1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA0OCU7XG4gICAgcmlnaHQ6IDE1cHg7XG4gICAgd2lkdGg6IDM3JTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHotaW5kZXg6IDI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmJhbm5lci1zZWNvbmRhcnkgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIC50ZXh0LW92ZXJsYXkgaDUge1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMS44NzVlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjMzMztcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgIG1hcmdpbjogNDVweCAwIDAgMDsgfVxuICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAudGV4dC1vdmVybGF5IC5idG4ge1xuICAgICAgbWFyZ2luLXRvcDogNTBweDsgfVxuICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAudGV4dC1vdmVybGF5IC5sb2dvLWJyYW5kIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiA0OTJweDtcbiAgICAgIGhlaWdodDogMTUycHg7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bzsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNTk5cHgpIHtcbiAgICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAudGV4dC1vdmVybGF5IHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4OyB9XG4gICAgICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAudGV4dC1vdmVybGF5IC5sb2dvLWJyYW5kIHtcbiAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA3MHB4OyB9XG4gICAgICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAudGV4dC1vdmVybGF5IGg1IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9XG4gICAgICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAudGV4dC1vdmVybGF5IC5idG4ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAudGV4dC1vdmVybGF5IHtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4OyB9XG4gICAgICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAudGV4dC1vdmVybGF5IC5idG4tbGcge1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7IH1cbiAgICAgICAgLmJhbm5lci1zZWNvbmRhcnkgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIC50ZXh0LW92ZXJsYXkgLmJ0bi5pY29uLXJpZ2h0ID4gc3BhbiB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAuYmFubmVyLXNlY29uZGFyeSAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24gLnRleHQtb3ZlcmxheSB7XG4gICAgICAgIGZvbnQtc2l6ZTogOHB4OyB9XG4gICAgICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAudGV4dC1vdmVybGF5IC5sb2dvLWJyYW5kIHtcbiAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA1MHB4OyB9XG4gICAgICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAudGV4dC1vdmVybGF5IGg1IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAudGV4dC1vdmVybGF5IC5sb2dvLWJyYW5kIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLmJhbm5lci1zZWNvbmRhcnkgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIC50ZXh0LW92ZXJsYXkgaDUge1xuICAgICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgICAuYmFubmVyLXNlY29uZGFyeSAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24gLnRleHQtb3ZlcmxheSAuYnRuIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAuYmFubmVyLXNlY29uZGFyeSAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24gLnRleHQtb3ZlcmxheSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNnB4OyB9XG4gICAgICAgIC5iYW5uZXItc2Vjb25kYXJ5IC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiAudGV4dC1vdmVybGF5IC5idG4tbGcge1xuICAgICAgICAgIHBhZGRpbmc6IDZweCA4cHg7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmJhbm5lci1sb25nLW1kIHtcbiAgICBtaW4taGVpZ2h0OiA4MDBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgLmJhbm5lci1sb25nLW1kIC5qeG1sLWJhbm5lci1pbWcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA3MCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBtYXgtd2lkdGg6IGluaGVyaXQ7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSkgdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAgIC5iYW5uZXItbG9uZy1tZDpob3ZlciAuanhtbC1iYW5uZXItaW1nIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSwgMSkgdHJhbnNsYXRlWSgtNTAlKTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuYmFubmVyLWxvbmctbWQge1xuICAgIG1pbi1oZWlnaHQ6IDY1MHB4OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gIC5iYW5uZXItbG9uZy1tZCB7XG4gICAgbWluLWhlaWdodDogNDEwcHg7IH0gfVxuXG4vKiBIdG1sICovXG4uZm9vdGVyLWh0bWwge1xuICBtYXJnaW4tdG9wOiA1MHB4OyB9XG4gIC5mb290ZXItaHRtbCAuanhtbC1odG1sLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5mb290ZXItaHRtbCAuanhtbC1odG1sLWRlc2NyaXB0aW9uIHAge1xuICAgIGZvbnQ6IDQwMCAxOHB4LzMwcHggXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gICAgY29sb3I6ICM5ZTllOWU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDE4NzBweCkge1xuICAgIC5mb290ZXItaHRtbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA3MHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC5mb290ZXItaHRtbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5mb290ZXItaHRtbCB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gICAgICAuZm9vdGVyLWh0bWwgLmp4bWwtaHRtbC1kZXNjcmlwdGlvbiBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDsgfSB9XG5cbi50ZXN0aW1vbmlhbHMtc2xpZGVyIHtcbiAgYmFja2dyb3VuZDogI2U5ZTllOTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICBtYXJnaW4tdG9wOiA4MHB4O1xuICAvKiBuYXZpZ2F0aW9uICovXG4gIC8qIHBhZ2luYXRpb24gKi8gfVxuICAudGVzdGltb25pYWxzLXNsaWRlcjpiZWZvcmUsIC50ZXN0aW1vbmlhbHMtc2xpZGVyOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZDogI2U5ZTllOTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAwMHB4O1xuICAgIHotaW5kZXg6IC0xOyB9XG4gIC50ZXN0aW1vbmlhbHMtc2xpZGVyOmJlZm9yZSB7XG4gICAgcmlnaHQ6IDk5JTsgfVxuICAudGVzdGltb25pYWxzLXNsaWRlcjphZnRlciB7XG4gICAgbGVmdDogOTklOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC50ZXN0aW1vbmlhbHMtc2xpZGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDExMHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC50ZXN0aW1vbmlhbHMtc2xpZGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDE2MHB4OyB9IH1cbiAgLnRlc3RpbW9uaWFscy1zbGlkZXIgLmp4bWwtc2xpZGVyLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC50ZXN0aW1vbmlhbHMtc2xpZGVyIC50ZXN0aW1vbmlhbHMtc2xpZGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDgwcHggMzVweCA0MHB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAudGVzdGltb25pYWxzLXNsaWRlciAudGVzdGltb25pYWxzLXNsaWRlIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAudGVzdGltb25pYWxzLXNsaWRlciAudGVzdGltb25pYWxzLXNsaWRlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEzMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNzVweDsgfSB9XG4gICAgLnRlc3RpbW9uaWFscy1zbGlkZXIgLnRlc3RpbW9uaWFscy1zbGlkZSAuanhtbC1iYW5uZXItdGl0bGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC50ZXN0aW1vbmlhbHMtc2xpZGVyIC50ZXN0aW1vbmlhbHMtc2xpZGUgLmp4bWwtYmFubmVyLWltZyB7XG4gICAgICBib3JkZXI6IDE2cHggc29saWQgI2ZmZjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAgIC50ZXN0aW1vbmlhbHMtc2xpZGVyIC50ZXN0aW1vbmlhbHMtc2xpZGUgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgLnRlc3RpbW9uaWFscy1zbGlkZXIgLnRlc3RpbW9uaWFscy1zbGlkZSAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24gcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAudGVzdGltb25pYWxzLXNsaWRlciAudGVzdGltb25pYWxzLXNsaWRlIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICAudGVzdGltb25pYWxzLXNsaWRlciAudGVzdGltb25pYWxzLXNsaWRlIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gICAgICAudGVzdGltb25pYWxzLXNsaWRlciAudGVzdGltb25pYWxzLXNsaWRlIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiBxLCAudGVzdGltb25pYWxzLXNsaWRlciAudGVzdGltb25pYWxzLXNsaWRlIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiBlbSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjsgfVxuICAgICAgLnRlc3RpbW9uaWFscy1zbGlkZXIgLnRlc3RpbW9uaWFscy1zbGlkZSAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24gcSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44NzVlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzMzMztcbiAgICAgICAgY29sb3I6ICM5ZTllOWU7IH1cbiAgICAgICAgLnRlc3RpbW9uaWFscy1zbGlkZXIgLnRlc3RpbW9uaWFscy1zbGlkZSAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24gcTpiZWZvcmUsIC50ZXN0aW1vbmlhbHMtc2xpZGVyIC50ZXN0aW1vbmlhbHMtc2xpZGUgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIHE6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnOyB9XG4gICAgICAudGVzdGltb25pYWxzLXNsaWRlciAudGVzdGltb25pYWxzLXNsaWRlIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiBlbSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjY2NztcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAudGVzdGltb25pYWxzLXNsaWRlciAudGVzdGltb25pYWxzLXNsaWRlIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICAgICAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTg3MHB4KSB7XG4gICAgICAgIC50ZXN0aW1vbmlhbHMtc2xpZGVyIC50ZXN0aW1vbmlhbHMtc2xpZGUgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgICAgICAgIG1heC13aWR0aDogNjYuNjY2NjclOyB9IH1cbiAgLnRlc3RpbW9uaWFscy1zbGlkZXIgLnN3aXBlci1idXR0b24tcHJldiB7XG4gICAgbGVmdDogMDsgfVxuICAgIC50ZXN0aW1vbmlhbHMtc2xpZGVyIC5zd2lwZXItYnV0dG9uLXByZXY6YmVmb3JlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAnTGluZWFyaWNvbnMnO1xuICAgICAgY29udGVudDogXCLusYNcIjtcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLnRlc3RpbW9uaWFscy1zbGlkZXIgLnN3aXBlci1idXR0b24tcHJldiB7XG4gICAgICAgIGxlZnQ6IC01cHg7IH0gfVxuICAudGVzdGltb25pYWxzLXNsaWRlciAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgICByaWdodDogMDsgfVxuICAgIC50ZXN0aW1vbmlhbHMtc2xpZGVyIC5zd2lwZXItYnV0dG9uLW5leHQ6YmVmb3JlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAnTGluZWFyaWNvbnMnO1xuICAgICAgY29udGVudDogXCLusYRcIjtcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLnRlc3RpbW9uaWFscy1zbGlkZXIgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgICAgIHJpZ2h0OiAtNXB4OyB9IH1cbiAgLnRlc3RpbW9uaWFscy1zbGlkZXIgLnN3aXBlci1idXR0b24tcHJldiwgLnRlc3RpbW9uaWFscy1zbGlkZXIgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgdG9wOiA0NiU7IH1cbiAgICAudGVzdGltb25pYWxzLXNsaWRlciAuc3dpcGVyLWJ1dHRvbi1wcmV2OmJlZm9yZSwgLnRlc3RpbW9uaWFscy1zbGlkZXIgLnN3aXBlci1idXR0b24tbmV4dDpiZWZvcmUge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgICAudGVzdGltb25pYWxzLXNsaWRlciAuc3dpcGVyLWJ1dHRvbi1wcmV2OmhvdmVyOmJlZm9yZSwgLnRlc3RpbW9uaWFscy1zbGlkZXIgLnN3aXBlci1idXR0b24tcHJldjphY3RpdmU6YmVmb3JlLCAudGVzdGltb25pYWxzLXNsaWRlciAuc3dpcGVyLWJ1dHRvbi1wcmV2OmZvY3VzOmJlZm9yZSwgLnRlc3RpbW9uaWFscy1zbGlkZXIgLnN3aXBlci1idXR0b24tbmV4dDpob3ZlcjpiZWZvcmUsIC50ZXN0aW1vbmlhbHMtc2xpZGVyIC5zd2lwZXItYnV0dG9uLW5leHQ6YWN0aXZlOmJlZm9yZSwgLnRlc3RpbW9uaWFscy1zbGlkZXIgLnN3aXBlci1idXR0b24tbmV4dDpmb2N1czpiZWZvcmUge1xuICAgICAgY29sb3I6ICMwMDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC50ZXN0aW1vbmlhbHMtc2xpZGVyIC5zd2lwZXItYnV0dG9uLXByZXY6YmVmb3JlLCAudGVzdGltb25pYWxzLXNsaWRlciAuc3dpcGVyLWJ1dHRvbi1uZXh0OmJlZm9yZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDsgfSB9XG4gIC50ZXN0aW1vbmlhbHMtc2xpZGVyIC5zd2lwZXItcGFnaW5hdGlvbiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICBib3JkZXI6IHNvbGlkIDJweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAgIC50ZXN0aW1vbmlhbHMtc2xpZGVyIC5zd2lwZXItcGFnaW5hdGlvbiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0OmhvdmVyLCAudGVzdGltb25pYWxzLXNsaWRlciAuc3dpcGVyLXBhZ2luYXRpb24gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzAwMDsgfVxuXG4ucGF5bWVudC1sb2dvIC5qeG1sLWh0bWwtdGl0bGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5wYXltZW50LWxvZ28gLmp4bWwtaHRtbC1kZXNjcmlwdGlvbiB1bCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5wYXltZW50LWxvZ28gLmp4bWwtaHRtbC1kZXNjcmlwdGlvbiB1bCA+IGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxuICAucGF5bWVudC1sb2dvIC5qeG1sLWh0bWwtZGVzY3JpcHRpb24gdWwgPiBsaSA+IGEgaSB7XG4gICAgZm9udC1zaXplOiAzNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7IH1cbiAgLnBheW1lbnQtbG9nbyAuanhtbC1odG1sLWRlc2NyaXB0aW9uIHVsID4gbGkgPiBhOmhvdmVyIGkge1xuICAgIGNvbG9yOiBibGFjazsgfVxuXG4udGl0bGUtanhibG9nIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAudGl0bGUtanhibG9nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgLnRpdGxlLWp4YmxvZyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA5MHB4OyB9IH1cbiAgLnRpdGxlLWp4YmxvZyAuanhtbC1odG1sLXRpdGxlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udDogNDAwIDMwcHgvNDBweCBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgICBjb2xvcjogIzAwMDsgfVxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vbW9kdWxlcy9qeG1lZ2FsYXlvdXQvdmlld3MvY3NzL0Q6L3dhbXAvd3d3L3ByZXN0YXNob3AvVGhlbWUxNDk1X1dpbnRlclNwb3J0L3RoZW1lcy90aGVtZTE0OTUvX2Rldi9qeG1lZ2FsYXlvdXQuc2NzcyIsIkBpbXBvcnQgXCJjc3MvcGFydGlhbHMvX3ZhcmlhYmxlc1wiO1xyXG4ucm93LmZ1bGwtd2lkdGgge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4ucm93LnJvdy1jdXN0b20ge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gICAgW2NsYXNzKj0nY29sLSddIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgfVxuICAgIC5yb3cge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgPiBkaXYgKyBkaXYge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG4gIH1cbn1cblxuLm10LWN1c3RvbSB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbi5tdC1jdXN0b20tc20ge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICB9XG59XG5cbi5iYWNrZ3JvdW5kLWdyYXkge1xuICBiYWNrZ3JvdW5kOiAkZ3JheS05MTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAxMDAwMHB4O1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDogJGdyYXktOTE7XG4gICAgei1pbmRleDogLTE7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIHJpZ2h0OiA5OSU7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgbGVmdDogOTklO1xuICB9XG59XG5cbi8qIEV4dHJhIGNvbnRlbnQgKi9cblxuLyogQmFubmVycyAqL1xuLmp4LWN1c3RvbS1iYW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC5qeG1sLWJhbm5lci10aXRsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuanhtbC1iYW5uZXItbGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmp4bWwtYmFubmVyLWltZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgaDIsIGgzLCBoNCB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgICAuY29sb3Itd2hpdGUge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgaDIge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgZm9udC1zaXplOiA4Ljc1MGVtO1xuICAgIH1cbiAgICBoMyB7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTQzO1xuICAgICAgZm9udC1zaXplOiA0LjM3NWVtO1xuICAgICAgc3BhbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gICAgICB9XG4gICAgfVxuICAgIGg0IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgICAgIGZvbnQtc2l6ZTogMi41MDBlbTtcbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgfVxuICAgIH1cbiAgICAubGluay1ibG9jayB7XG4gICAgICBtYXJnaW46IDQwcHggMCAwIDA7XG4gICAgfVxuICAgIC5idG4td3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW4tdG9wOiA1MnB4O1xuICAgICAgPiBwIHtcbiAgICAgICAgbWFyZ2luOiAzcHggOXB4O1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAuYnRuLXdyYXBwZXItLWJyYW5kcyB7XG4gICAgICAgID4gcCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiA1NXB4O1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDMxcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5idG4tbWQge1xuICAgICAgICAgIG1pbi13aWR0aDogMjMwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5idG4tbWQge1xuICAgICAgICBtaW4td2lkdGg6IDIwMnB4O1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgICBmb250LXNpemU6IDhweDtcbiAgICAgIC5idG4td3JhcHBlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICB9XG4gICAgICAuYnRuLW1kIHtcbiAgICAgICAgcGFkZGluZzogMTBweCAxMHB4O1xuICAgICAgfVxuICAgICAgLmJ0biB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgLmp4bWwtYmFubmVyLWltZyB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEsIDEpO1xuICAgIH1cbiAgfVxufVxuXG4uYmFubmVyLWRlZmF1bHQge1xuICAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBwYWRkaW5nLWxlZnQ6IDU0cHg7XG4gIH1cbiAgJi5yaWdodC1hbGlnbiB7XG4gICAgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICByaWdodDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcbiAgICAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIH1cbiAgfVxufVxuXG4uYmFubmVyLXByaW1hcnkge1xuICAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDExMHB4O1xuICB9XG4gICYuYm90dG9tLWFsaWduIHtcbiAgICAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24ge1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgYm90dG9tOiAxMDhweDtcbiAgICB9XG4gIH1cbiAgJi5sZWZ0LWFsaWduIHtcbiAgICAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24ge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBwYWRkaW5nLWxlZnQ6IDkwcHg7XG4gICAgICB0b3A6IDE2MHB4O1xuICAgIH1cbiAgfVxuICAmLmNlbnRlci1hbGlnbiB7XG4gICAgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIHtcbiAgICAgIHRvcDogNDclO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeGwpIHtcbiAgICAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24ge1xuICAgICAgdG9wOiA1MHB4O1xuICAgIH1cbiAgICAmLmxlZnQtYWxpZ24gLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgIHRvcDogNTBweDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIHtcbiAgICAgIHRvcDogMzBweDtcbiAgICB9XG4gICAgJi5ib3R0b20tYWxpZ24ge1xuICAgICAgLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgYm90dG9tOiAzMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24ge1xuICAgICAgdG9wOiAyNXB4O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICAmLmxlZnQtYWxpZ24gLmp4bWwtYmFubmVyLWRlc2NyaXB0aW9uIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgdG9wOiAyMHB4O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGZvbnQtc2l6ZTogNnB4O1xuICAgICAgLmJ0bi13cmFwcGVyIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYmFubmVyLXByaW1hcnktLW1kIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKHNtLCBtZCkge1xuICAgIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuICB9XG59XG5cbi5iYW5uZXItc2Vjb25kYXJ5IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogOTBweDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTI1cHg7XG4gIH1cbiAgLmp4bWwtYmFubmVyLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5qeG1sLWJhbm5lci1kZXNjcmlwdGlvbiB7XG4gICAgLmN1c3RvbS1iYWNrZ3JvdW5kIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgIHJpZ2h0OiAtMXB4O1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgdHJhbnNmb3JtOiBza2V3WCgxNWRlZyk7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gICAgICB3aWR0aDogNDQlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgfVxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZTllOWU5O1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDU4cHg7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTU5OXB4KSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBib3R0b206IDMwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC50ZXh0LW92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA0OCU7XG4gICAgICByaWdodDogMTVweDtcbiAgICAgIHdpZHRoOiAzNyU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgaDUge1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44NzVlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzMzO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogNDVweCAwIDAgMDtcbiAgICAgIH1cbiAgICAgIC5idG4ge1xuICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgfVxuICAgICAgLmxvZ28tYnJhbmQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiA0OTJweDtcbiAgICAgICAgaGVpZ2h0OiAxNTJweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XG4gICAgICB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTU5OXB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgLmxvZ28tYnJhbmQge1xuICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICAgIH1cbiAgICAgICAgaDUge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgLmJ0bi1sZyB7XG4gICAgICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgICAgfVxuICAgICAgICAuYnRuLmljb24tcmlnaHQgPiBzcGFuIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgZm9udC1zaXplOiA4cHg7XG4gICAgICAgIC5sb2dvLWJyYW5kIHtcbiAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICB9XG4gICAgICAgIGg1IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgLmxvZ28tYnJhbmQge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgaDUge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNnB4O1xuICAgICAgICAuYnRuLWxnIHtcbiAgICAgICAgICBwYWRkaW5nOiA2cHggOHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5iYW5uZXItbG9uZy1tZCB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgIG1pbi1oZWlnaHQ6IDgwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLmp4bWwtYmFubmVyLWltZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDcwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIG1heC13aWR0aDogaW5oZXJpdDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgICAmOmhvdmVyIC5qeG1sLWJhbm5lci1pbWcge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLCAxKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICBtaW4taGVpZ2h0OiA2NTBweDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oeHMpIHtcbiAgICBtaW4taGVpZ2h0OiA0MTBweDtcbiAgfVxufVxuXG4vKiBIdG1sICovXG4uZm9vdGVyLWh0bWwge1xuICBtYXJnaW4tdG9wOiA1MHB4O1xuICAuanhtbC1odG1sLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5qeG1sLWh0bWwtZGVzY3JpcHRpb24ge1xuICAgIHAge1xuICAgICAgZm9udDogJGZvbnQtbWQ7XG4gICAgICBjb2xvcjogJGdyYXktNjI7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeHhsKSB7XG4gICAgcGFkZGluZy1yaWdodDogNzBweDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIC5qeG1sLWh0bWwtZGVzY3JpcHRpb24gcCB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICB9XG4gIH1cbn1cblxuLnRlc3RpbW9uaWFscy1zbGlkZXIge1xuICBiYWNrZ3JvdW5kOiAkZ3JheS05MTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQ6ICRncmF5LTkxO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMDAwcHg7XG4gICAgei1pbmRleDogLTE7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIHJpZ2h0OiA5OSU7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgbGVmdDogOTklO1xuICB9XG4gIG1hcmdpbi10b3A6IDgwcHg7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICBtYXJnaW4tdG9wOiAxMTBweDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgbWFyZ2luLXRvcDogMTYwcHg7XG4gIH1cbiAgLmp4bWwtc2xpZGVyLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC50ZXN0aW1vbmlhbHMtc2xpZGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDgwcHggMzVweCA0MHB4O1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMzBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA3NXB4O1xuICAgIH1cbiAgICAuanhtbC1iYW5uZXItdGl0bGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmp4bWwtYmFubmVyLWltZyB7XG4gICAgICBib3JkZXI6IDE2cHggc29saWQgJHdoaXRlO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIH1cbiAgICAuanhtbC1iYW5uZXItZGVzY3JpcHRpb24ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBxLCBlbSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgICAgIH1cbiAgICAgIHEge1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBmb250LXNpemU6IDEuODc1ZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjMzMzM7XG4gICAgICAgIGNvbG9yOiAkZ3JheS02MjtcbiAgICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBlbSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjY2NztcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBmbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgICAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeHhsKSB7XG4gICAgICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgICAgIG1heC13aWR0aDogNjYuNjY2NjclO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qIG5hdmlnYXRpb24gKi9cbiAgLnN3aXBlci1idXR0b24tcHJldiB7XG4gICAgbGVmdDogMDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBhZGRMaW5lYXJJY29ucygnXFxlYzQzJywgNDBweCwgMSwgcmdiYSgwLCAwLCAwLCAwLjUpLCBtYXJnaW4tbGVmdCwgbWFyZ2luLXJpZ2h0LCB2ZXJ0aWNhbC1hbGlnbik7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgbGVmdDogLTVweDtcbiAgICB9XG4gIH1cbiAgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgJjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgYWRkTGluZWFySWNvbnMoJ1xcZWM0NCcsIDQwcHgsIDEsIHJnYmEoMCwgMCwgMCwgMC41KSwgbWFyZ2luLWxlZnQsIG1hcmdpbi1yaWdodCwgdmVydGljYWwtYWxpZ24pO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgIHJpZ2h0OiAtNXB4O1xuICAgIH1cbiAgfVxuICAuc3dpcGVyLWJ1dHRvbi1wcmV2LCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgICB0b3A6IDQ2JTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICB9XG4gICAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qIHBhZ2luYXRpb24gKi9cbiAgLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICAgIGJvcmRlcjogc29saWQgMnB4IHJnYmEoJGJsYWNrLCAuNSk7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgJjpob3ZlciwgJi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wYXltZW50LWxvZ28ge1xuICAuanhtbC1odG1sLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5qeG1sLWh0bWwtZGVzY3JpcHRpb24ge1xuICAgIHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgID4gbGkge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgfVxuICAgICAgICA+IGEge1xuICAgICAgICAgIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzNXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICBjb2xvcjogcmdiYSgkYmxhY2ssIC41KTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyIGkge1xuICAgICAgICAgICAgY29sb3I6IHJnYmEoJGJsYWNrLCAxKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnRpdGxlLWp4YmxvZyB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICBtYXJnaW4tYm90dG9tOiA5MHB4O1xuICB9XG4gIC5qeG1sLWh0bWwtdGl0bGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250OiA0MDAgMzBweC80MHB4ICRmb250LWZhbWlseS1iYXNlO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gIH1cbn1cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9tb2R1bGVzL2p4bWVnYWxheW91dC92aWV3cy9jc3MvRDovd2FtcC93d3cvcHJlc3Rhc2hvcC9UaGVtZTE0OTVfV2ludGVyU3BvcnQvdGhlbWVzL3RoZW1lMTQ5NS9fZGV2L21vZHVsZXMvanhtZWdhbGF5b3V0L3ZpZXdzL2Nzcy9qeG1lZ2FsYXlvdXQuc2NzcyIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgbGFyZ2VzdCAobGFzdCkgYnJlYWtwb2ludC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIG1pbmltdW0gb2YgdGhlIG5leHQgb25lIGxlc3MgMC4xLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIDFweCwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW5mcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUpXG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUpXG4gIH1cbn1cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL21vZHVsZXMvanhtZWdhbGF5b3V0L3ZpZXdzL2Nzcy9EOi93YW1wL3d3dy9wcmVzdGFzaG9wL1RoZW1lMTQ5NV9XaW50ZXJTcG9ydC90aGVtZXMvdGhlbWUxNDk1L19kZXYvbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIi8vXHJcbi8vIENvbG9yIHN5c3RlbVxyXG4vL1xyXG4kd2hpdGU6ICAjZmZmICFkZWZhdWx0O1xyXG4kZ3JheS0xMDA6ICNmYWZhZmEgICFkZWZhdWx0O1xyXG4kZ3JheS0yMDA6ICNmMWYxZjEgIWRlZmF1bHQ7XHJcbiRncmF5LTMwMDogI2U3ZTdlNyAhZGVmYXVsdDtcclxuJGdyYXktNDAwOiAjZGRkZGRkICFkZWZhdWx0O1xyXG4kZ3JheS01MDA6ICNhMmEyYTIgIWRlZmF1bHQ7XHJcbiRncmF5LTYwMDogIzg4ODg4OCAhZGVmYXVsdDtcclxuJGdyYXktNzAwOiAjNTU1NTU1ICFkZWZhdWx0O1xyXG4kZ3JheS04MDA6ICMzYTNhM2EgIWRlZmF1bHQ7XHJcbiRncmF5LTkwMDogIzE0MTQxNCAhZGVmYXVsdDtcclxuJGJsYWNrOiAgIzAwMCAhZGVmYXVsdDtcclxuJGdyYXktODA6ICNjY2NjY2M7XHJcbiRncmF5LTY4OiAjYWRhZGFkO1xyXG4kZ3JheS02MjogIzllOWU5ZTtcclxuJGdyYXktOTA6ICNlNWU1ZTU7XHJcbiRncmF5LTkxOiAjZTllOWU5O1xyXG4kZ3JheS05MjogI2VkZWRlZDtcclxuJGJvcmRlci1jb2xvcjogJGdyYXktOTE7XHJcblxyXG4kZ3JheXM6IChcclxuICAxMDA6ICRncmF5LTEwMCxcclxuICAyMDA6ICRncmF5LTIwMCxcclxuICAzMDA6ICRncmF5LTMwMCxcclxuICA0MDA6ICRncmF5LTQwMCxcclxuICA1MDA6ICRncmF5LTUwMCxcclxuICA2MDA6ICRncmF5LTYwMCxcclxuICA3MDA6ICRncmF5LTcwMCxcclxuICA4MDA6ICRncmF5LTgwMCxcclxuICA5MDA6ICRncmF5LTkwMFxyXG4pICFkZWZhdWx0O1xyXG5cclxuJGJsdWU6ICAgICM1ZDljZWMgIWRlZmF1bHQ7XHJcbiRpbmRpZ286ICAjNjYxMGYyICFkZWZhdWx0O1xyXG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcclxuJHBpbms6ICAgICNkZTZkNmQgIWRlZmF1bHQ7XHJcbiRyZWQ6ICAgICAjZDA1NjU2ICFkZWZhdWx0O1xyXG4kb3JhbmdlOiAgI2ZlYjM4MCAhZGVmYXVsdDtcclxuJHllbGxvdzogICNmZmYxYmMgIWRlZmF1bHQ7XHJcbiRncmVlbjogICAjN2NkMjJmICFkZWZhdWx0O1xyXG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcclxuJGN5YW46ICAgICNjNWYyZmQgIWRlZmF1bHQ7XHJcbiRtYWdlbnRhOiAjYmQ0MWI4ICFkZWZhdWx0O1xyXG5cclxuJGNvbG9yczogKFxyXG4gIGJsdWU6ICRibHVlLFxyXG4gIGluZGlnbzogJGluZGlnbyxcclxuICBwdXJwbGU6ICRwdXJwbGUsXHJcbiAgcGluazogJHBpbmssXHJcbiAgcmVkOiAkcmVkLFxyXG4gIG9yYW5nZTogJG9yYW5nZSxcclxuICB5ZWxsb3c6ICR5ZWxsb3csXHJcbiAgZ3JlZW46ICRncmVlbixcclxuICB0ZWFsOiAkdGVhbCxcclxuICBjeWFuOiAkY3lhbixcclxuICBtYWdlbnRhOiAkbWFnZW50YSxcclxuICB3aGl0ZTogJHdoaXRlLFxyXG4gIGdyYXk6ICRncmF5LTYwMCxcclxuICBncmF5LWRhcms6ICRncmF5LTgwMCxcclxuICBncmF5LWRhcmtlcjogJGdyYXktOTAwLFxyXG4gIGdyYXktbGlnaHQ6ICRncmF5LTIwMCxcclxuICBncmF5LWxpZ2h0ZXI6ICRncmF5LTEwMFxyXG4pICFkZWZhdWx0O1xyXG5cclxuJHRoZW1lLWNvbG9yczogKFxyXG4gIHByaW1hcnk6ICRwaW5rLFxyXG4gIHNlY29uZGFyeTogJGdyYXktODAwLFxyXG4gIHN1Y2Nlc3M6ICRncmVlbixcclxuICBpbmZvOiAkY3lhbixcclxuICB3YXJuaW5nOiAkb3JhbmdlLFxyXG4gIGRhbmdlcjogJHBpbmssXHJcbiAgbGlnaHQ6ICRncmF5LTIwMCxcclxuICB3aGl0ZTogJHdoaXRlXHJcbikgIWRlZmF1bHQ7XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vbW9kdWxlcy9qeG1lZ2FsYXlvdXQvdmlld3MvY3NzL0Q6L3dhbXAvd3d3L3ByZXN0YXNob3AvVGhlbWUxNDk1X1dpbnRlclNwb3J0L3RoZW1lcy90aGVtZTE0OTUvX2Rldi9jc3MvcGFydGlhbHMvX3ZhcmlhYmxlc19jb2xvci5zY3NzIiwiQGltcG9ydCBcInZhcmlhYmxlc19jb2xvclwiO1xuQGltcG9ydCBcIn5ib290c3RyYXAvc2Nzcy9taXhpbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuLy9tYWluIGNvbG9yc1xuJGJyYW5kLXByaW1hcnk6ICRtYWdlbnRhO1xuJGJyYW5kLXNlY29uZGFyeTogJGdyYXktNjAwO1xuJGJyYW5kLXN1Y2Nlc3M6ICRncmVlbjtcbiRicmFuZC1pbmZvOiAkY3lhbjtcbiRicmFuZC13YXJuaW5nOiAkb3JhbmdlO1xuJGJyYW5kLWRhbmdlcjogJHJlZDtcbiRib2R5LWNvbG9yOiAkZ3JheS02MjtcbiRmb290ZXItYmFja2dyb3VuZDogJHdoaXRlO1xuJGhlYWRlci1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kbWFpbi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYm9keS1iZzogJGZvb3Rlci1iYWNrZ3JvdW5kO1xuJHByb2R1Y3QtYmFja2dyb3VuZDogJHdoaXRlO1xuJHByb2R1Y3QtY29sb3I6ICRibGFjaztcbiRwcmljZS1jb2xvcjogJGJsYWNrO1xuJHJlZ3VsYXItcHJpY2UtY29sb3I6ICRncmF5LTYyO1xuJHByaWNlLW5ldy1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4kYnJhbmQtc3VjY2VzczogIzcwZGZiZjtcbiRicmFuZC13YXJuaW5nOiAjZmZhMjZmO1xuJGJyYW5kLWRhbmdlcjogI2Y3NjA2MztcbiRicmFuZC1pbmZvOiAjODlkZGU3O1xuJGluLXN0b2NrOiAjMWM1NmU4O1xuXG4vL2ZvbnRzXG4kZm9udC1mYW1pbHktYmFzZTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xuJGZvbnQtbGluZWFyaWNvbnM6ICdMaW5lYXJpY29ucyc7XG4kYm9keS1mb250OiA0MDAgMTRweC8yMHB4ICRmb250LWZhbWlseS1iYXNlO1xuJGZvbnQteHM6IDQwMCAxMnB4LzE4cHggJGZvbnQtZmFtaWx5LWJhc2U7XG4kZm9udC1tZDogNDAwIDE4cHgvMzBweCAkZm9udC1mYW1pbHktYmFzZTtcbiRmb250LWxnOiA0MDAgMzBweC80MHB4ICRmb250LWZhbWlseS1iYXNlO1xuJHByb2R1Y3QtZm9udDogNDAwIDE4cHgvMzBweCAkZm9udC1mYW1pbHktYmFzZTtcbiRwYWNrLXByb2R1Y3QtZm9udDogNDAwIDE2cHgvMjBweCAkZm9udC1mYW1pbHktYmFzZTtcbiRwcm9kdWN0LWZvbnQtc206IDQwMCAxNHB4LzIwcHggJGZvbnQtZmFtaWx5LWJhc2U7XG4kcHJvZHVjdC1mb250LWxnOiA2MDAgNDBweC81MHB4ICRmb250LWZhbWlseS1iYXNlO1xuJHByaWNlLWZvbnQ6IDYwMCAxOHB4LzI0cHggJGZvbnQtZmFtaWx5LWJhc2U7XG4kZGlzY291bnQtcHJpY2UtZm9udDogNjAwIDMwcHgvMzRweCAkZm9udC1mYW1pbHktYmFzZTtcbiRmb250LXN1YmhlYWRpbmc6ICRmb250LW1kO1xuXG5cbi8vTGlua3NcbiRsaW5rLWNvbG9yOiAkZ3JheS04MDA7XG4kbGluay1ob3Zlci1jb2xvcjogJGdyYXktNjAwO1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogbm9uZTtcblxuLy9mb250IHNpemVcbiRmb250LXNpemUtYmFzZTogMC44NzVyZW07XG4kZm9udC1zaXplLWxnOiAxcmVtO1xuJGZvbnQtc2l6ZS1zbTogMC43NXJlbTtcbiRmb250LXdlaWdodC1iYXNlOiA0MDA7XG4kbGluZS1oZWlnaHQtYmFzZTogMS4yODY7XG4kaDEtZm9udC1zaXplOiAyLjVyZW07XG4kaDItZm9udC1zaXplOiAxLjc1MHJlbTtcbiRoMy1mb250LXNpemU6IDEuNXJlbTtcbiRoNC1mb250LXNpemU6IDEuNXJlbTtcbiRoNS1mb250LXNpemU6IDEuMTI1cmVtO1xuJGg2LWZvbnQtc2l6ZTogMS4xMjVyZW07XG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogMjdweDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogYm9sZDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogMS41O1xuJGhlYWRpbmdzLWNvbG9yOiAkZ3JheS04MDA7XG5cbi8vYnV0dG9uc1xuJGJ0bi1mb250LXdlaWdodDogYm9sZDtcbiRidG4tYm9yZGVyLXJhZGl1czogMDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogMDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogMDtcbiRidG4tYm94LXNoYWRvdzogbm9uZTtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogbm9uZTtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6IG5vbmU7XG5cbi8vU3BhY2luZ1xuJGJvcmRlci1yYWRpdXM6IDA7XG4kYm9yZGVyLXJhZGl1cy1zbTogMDtcbiRib3JkZXItcmFkaXVzLWxnOiAwO1xuJHNwYWNlcjogMnJlbTtcbiRleHRyYS1zbWFsbC1zcGFjZTogJHNwYWNlciAqIC4yNTtcbiRzbWFsbC1zcGFjZTogJHNwYWNlciAqIC41O1xuJG1lZGl1bS1zcGFjZTogJHNwYWNlcjtcbiRsYXJnZS1zcGFjZTogJHNwYWNlciAqIDEuNTtcbiRleHRyYS1sYXJnZS1zcGFjZTogJHNwYWNlciAqIDM7XG5cbi8vZm9ybXNcbiRpbnB1dC1iZzogJHdoaXRlO1xuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6IDFweDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICRncmF5LTIwMDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICRncmF5LTMwMDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkZ3JheS02MDA7XG4kaW5wdXQtYm94LXNoYWRvdzogbm9uZTtcbiRpbnB1dC1ncm91cC1idG4tYm9yZGVyLWNvbG9yOiBpbml0aWFsO1xuXG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAxLjU7XG4kaW5wdXQtYnRuLXBhZGRpbmcteTogMC42MjVyZW07XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogMS4xMjVyZW07XG5cbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtc206IDEuNTtcbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAwLjVyZW07XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogMXJlbTtcblxuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogMS41O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6IDEuMTVyZW07XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogMi40cmVtO1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lcjogKCRmb250LXNpemUtc20gKiAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0KSArICgkaW5wdXQtYnRuLXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodDogY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXJ9ICsgI3skaW5wdXQtaGVpZ2h0LWJvcmRlcn0pICFkZWZhdWx0O1xuXG4vL2N1c3RvbSBmb3Jtc1xuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogMjdweDtcbiRjdXN0b20tY29udHJvbC1zcGFjZXIteTogMTBweDtcbiRjdXN0b20tY29udHJvbC1zcGFjZXIteDogMDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTogMS4xODhyZW07XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiB0cmFuc3BhcmVudDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZTogNzAlIDcwJSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4ICRncmF5LTIwMDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICRncmF5LTEwMDtcbiRjdXN0b20tY29udHJvbC1kZXNjcmlwdGlvbi1kaXNhYmxlZC1jb2xvcjogJGdyYXktMTAwO1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnOiAkZ3JheS04MDA7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6IG5vbmU7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZzogJGdyYXktODAwO1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmODtiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlCbGJtTnZaR2x1WnowaWRYUm1MVGdpUHo0S1BITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGh0Ykc1ek9uaHNhVzVyUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMM2hzYVc1cklpQjJaWEp6YVc5dVBTSXhMakVpSUhacFpYZENiM2c5SWpBZ01DQXhNamtnTVRJNUlpQmxibUZpYkdVdFltRmphMmR5YjNWdVpEMGlibVYzSURBZ01DQXhNamtnTVRJNUlpQjNhV1IwYUQwaU1UWndlQ0lnYUdWcFoyaDBQU0l4Tm5CNElqNEtJQ0E4Wno0S0lDQWdJRHh3WVhSb0lHUTlJbTB4TWpFdU15d3pOQzQyWXkweExqWXRNUzQyTFRRdU1pMHhMall0TlM0NExEQnNMVFV4TERVeExqRXROVEV1TVMwMU1TNHhZeTB4TGpZdE1TNDJMVFF1TWkweExqWXROUzQ0TERBdE1TNDJMREV1TmkweExqWXNOQzR5SURBc05TNDRiRFV6TGprc05UTXVPV013TGpnc01DNDRJREV1T0N3eExqSWdNaTQ1TERFdU1pQXhMREFnTWk0eExUQXVOQ0F5TGprdE1TNHliRFV6TGprdE5UTXVPV014TGpjdE1TNDJJREV1TnkwMExqSWdNQzR4TFRVdU9Ib2lJR1pwYkd3OUlpTXdNREF3TURBaUx6NEtJQ0E4TDJjK0Nqd3ZjM1puUGdvPVwiKTtcbiRjdXN0b20tc2VsZWN0LWJnOiAkZ3JheS0yMDA7XG4kY3VzdG9tLXNlbGVjdC1jb2xvcjogJGdyYXktNjAwO1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAkZ3JheS0zMDA7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiBub25lO1xuXG4vL21vZGFsc1xuJG1vZGFsLWxnOiAxNDUwcHg7XG4kbW9kYWwtbWQ6IDEwMDBweDtcbiRtb2RhbC1zbTogNTAwcHg7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6IDMwcHg7XG4kbW9kYWwtaW5uZXItcGFkZGluZzogMzBweDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6IG5vbmU7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiBub25lO1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAwO1xuXG4vL2Ryb3Bkb3duc1xuJGRyb3Bkb3duLW1pbi13aWR0aDogMjAwcHg7XG4kZHJvcGRvd24tcGFkZGluZy15OiA1cHg7XG4kZHJvcGRvd24tc3BhY2VyOiAwO1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogMDtcbiRkcm9wZG93bi1iZzogd2hpdGU7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogMCA1cHggNDNweCByZ2JhKDAsIDAsIDAsIDAuMTEpO1xuJGVuYWJsZS1zaGFkb3dzOiB0cnVlO1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAxMHB4O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAxNXB4O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICRncmF5LTYwMDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiB0cmFuc3BhcmVudDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6IHRyYW5zcGFyZW50O1xuXG4vL2dyaWQgZXhhbXBsZVxuJGdyaWQtY29sdW1uczogMTI7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6IDMwcHg7XG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIC8vIEV4dHJhIHNtYWxsIHNjcmVlbiAvIHBob25lXG4gIHhzOiAwLFxuICAvLyBTbWFsbCBzY3JlZW4gLyBwaG9uZVxuICBzbTogNTc2cHgsXG4gIC8vIE1lZGl1bSBzY3JlZW4gLyB0YWJsZXRcbiAgbWQ6IDc2OHB4LFxuICAvLyBMYXJnZSBzY3JlZW4gLyBkZXNrdG9wXG4gIGxnOiA5OTJweCxcbiAgLy8gRXh0cmEgbGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4gIHhsOiAxMjAwcHgsXG4gIC8vIEV4dHJhIGxhcmdlIHNjcmVlbiAyIC8gd2lkZSBkZXNrdG9wXG4gIHh4bDogMTg3MHB4XG4pO1xuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDYxMHB4LFxuICBtZDogNzYwcHgsXG4gIGxnOiA5OTBweCxcbiAgeGw6IDExNzBweCxcbiAgeHhsOiAxODQwcHhcbik7XG5cbi8vQ3VzdG9tIG1lZGlhIHBvaW50XG4kc2NyZWVuLWN1c3RvbS1taW46IDE4MDBweDtcbiRzY3JlZW4tY3VzdG9tLW1heDogMTc5OXB4O1xuXG4vL2lucHV0c1xuJGlucHV0LWhlaWdodDogNDdweDtcblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9tb2R1bGVzL2p4bWVnYWxheW91dC92aWV3cy9jc3MvRDovd2FtcC93d3cvcHJlc3Rhc2hvcC9UaGVtZTE0OTVfV2ludGVyU3BvcnQvdGhlbWVzL3RoZW1lMTQ5NS9fZGV2L2Nzcy9wYXJ0aWFscy9fdmFyaWFibGVzLnNjc3MiLCIvL21peGluIGZvciBpY29ucyAtIEBpbmNsdWRlIGFkZEljb24oJ1xcZjAyMScsIGZvbnQtc2l6ZSwgbGluZS1oZWlnaHQsIGNvbG9yLCBtYXJnaW4tbGVmdCwgbWFyZ2luLXJpZ2h0LCB2ZXJ0aWNhbC1hbGlnbilcclxuQG1peGluIGFkZEljb24oJGNvbnRlbnQsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGNvbG9yLCAkbWFyZ2luLWxlZnQsICRtYXJnaW4tcmlnaHQsICR2ZXJ0aWNhbC1hbGlnbikge1xyXG4gIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xyXG4gIGNvbnRlbnQ6ICRjb250ZW50O1xyXG4gIEBpZiAkZm9udC1zaXplICE9IGZvbnQtc2l6ZSB7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XHJcbiAgfVxyXG4gIEBpZiAkbGluZS1oZWlnaHQgIT0gbGluZS1oZWlnaHQge1xyXG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcclxuICB9XHJcbiAgQGlmICRjb2xvciAhPSBjb2xvciB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG4gIH1cclxuICBAaWYgJG1hcmdpbi1sZWZ0ICE9IG1hcmdpbi1sZWZ0IHtcclxuICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luLWxlZnQ7XHJcbiAgfVxyXG4gIEBpZiAkbWFyZ2luLXJpZ2h0ICE9IG1hcmdpbi1yaWdodCB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRtYXJnaW4tcmlnaHQ7XHJcbiAgfVxyXG4gIEBpZiAkdmVydGljYWwtYWxpZ24gIT0gdmVydGljYWwtYWxpZ24ge1xyXG4gICAgdmVydGljYWwtYWxpZ246ICR2ZXJ0aWNhbC1hbGlnbjtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBhZGRMaW5lYXJJY29ucygkY29udGVudCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkY29sb3IsICRtYXJnaW4tbGVmdCwgJG1hcmdpbi1yaWdodCwgJHZlcnRpY2FsLWFsaWduKSB7XHJcbiAgZm9udC1mYW1pbHk6ICdMaW5lYXJpY29ucyc7XHJcbiAgY29udGVudDogJGNvbnRlbnQ7XHJcbiAgQGlmICRmb250LXNpemUgIT0gZm9udC1zaXplIHtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcclxuICB9XHJcbiAgQGlmICRsaW5lLWhlaWdodCAhPSBsaW5lLWhlaWdodCB7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xyXG4gIH1cclxuICBAaWYgJGNvbG9yICE9IGNvbG9yIHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgfVxyXG4gIEBpZiAkbWFyZ2luLWxlZnQgIT0gbWFyZ2luLWxlZnQge1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW4tbGVmdDtcclxuICB9XHJcbiAgQGlmICRtYXJnaW4tcmlnaHQgIT0gbWFyZ2luLXJpZ2h0IHtcclxuICAgIG1hcmdpbi1yaWdodDogJG1hcmdpbi1yaWdodDtcclxuICB9XHJcbiAgQGlmICR2ZXJ0aWNhbC1hbGlnbiAhPSB2ZXJ0aWNhbC1hbGlnbiB7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogJHZlcnRpY2FsLWFsaWduO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGJveC1zaGFkb3cge1xyXG4gIGJveC1zaGFkb3c6ICAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxufVxyXG5cclxuQG1peGluIGJveC1zaGFkb3ctbGlnaHQge1xyXG4gIGJveC1zaGFkb3c6IDJweCAycHggNHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMik7XHJcbn1cclxuXHJcbkBtaXhpbiBib3gtc2hhZG93LWN1c3RvbSB7XHJcbiAgYm94LXNoYWRvdzogMHB4IDNweCAyN3B4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjQpO1xyXG59XHJcblxyXG5AbWl4aW4gYm94LXNoYWRvdy1wcmltYXJ5IHtcclxuICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxufVxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL21vZHVsZXMvanhtZWdhbGF5b3V0L3ZpZXdzL2Nzcy9EOi93YW1wL3d3dy9wcmVzdGFzaG9wL1RoZW1lMTQ5NV9XaW50ZXJTcG9ydC90aGVtZXMvdGhlbWUxNDk1L19kZXYvY3NzL3BhcnRpYWxzL19taXhpbnMuc2NzcyJdLCJzb3VyY2VSb290IjoiIn0=*/