/*
font-family:'Helvetica Neue LT Std 75 Bold','Helvetica Neue', Helvetica, Arial, sans-serif;
font-family:'Helvetica Neue LT Std 76 Bold Italic','Helvetica Neue', Helvetica, Arial, sans-serif;
font-family:'Helvetica Neue LT Std 55 Roman','Helvetica Neue', Helvetica, Arial, sans-serif;
font-family:'Helvetica Neue LT Std 65 Medium','Helvetica Neue', Helvetica, Arial, sans-serif;
font-family:'Helvetica Neue LT Std 25 Ultra Light','Helvetica Neue', Helvetica, Arial, sans-serif;
font-family:'Carrig Pro Black Italic','Helvetica Neue', Helvetica, Arial, sans-serif;
*/
@font-face {
  font-family: "Helvetica Neue LT Std 75 Bold";
  src: url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/c07fef9e-a934-42d7-92ad-69205f2b8a00.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/c07fef9e-a934-42d7-92ad-69205f2b8a00.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/3b303641-706e-4221-94c4-4fb491f4f8ef.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/14ff6081-326d-4dae-b778-d7afa66166fc.woff") format("woff"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/8fda1e47-19be-46c7-8d83-8d4fb35572f0.ttf") format("truetype"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/f751c8ae-1057-46d9-8d74-62592e002568.svg#f751c8ae-1057-46d9-8d74-62592e002568") format("svg"); }

@font-face {
  font-family: "Helvetica Neue LT Std 76 Bold Italic";
  src: url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/ea3b58a3-09e7-4b36-ae91-e70b446d0315.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/ea3b58a3-09e7-4b36-ae91-e70b446d0315.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/63226831-f02a-467d-89b4-c2cbee1fb1ed.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/0fb03304-d0e1-4f11-8205-22a71666df92.woff") format("woff"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/d2a6661b-93e3-429b-b39d-67b915dcdd95.ttf") format("truetype"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/496e00df-185b-415f-a9d2-44c7feb05fd4.svg#496e00df-185b-415f-a9d2-44c7feb05fd4") format("svg"); }

@font-face {
  font-family: "Helvetica Neue LT Std 55 Roman";
  src: url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/b7693a83-b861-4aa6-85e0-9ecf676bc4d6.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/b7693a83-b861-4aa6-85e0-9ecf676bc4d6.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/b0868b4c-234e-47d3-bc59-41ab9de3c0db.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/bcf54343-d033-41ee-bbd7-2b77df3fe7ba.woff") format("woff"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/b0ffdcf0-26da-47fd-8485-20e4a40d4b7d.ttf") format("truetype"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/da09f1f1-062a-45af-86e1-2bbdb3dd94f9.svg#da09f1f1-062a-45af-86e1-2bbdb3dd94f9") format("svg"); }

@font-face {
  font-family: "Helvetica Neue LT Std 65 Medium";
  src: url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/07fe0fec-b63f-4963-8ee1-535528b67fdb.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/07fe0fec-b63f-4963-8ee1-535528b67fdb.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/3600b37f-2bf1-45f3-be3a-03365f16d9cb.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/60be5c39-863e-40cb-9434-6ebafb62ab2b.woff") format("woff"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/4c6503c9-859b-4d3b-a1d5-2d42e1222415.ttf") format("truetype"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/36c182c6-ef98-4021-9b0d-d63122c2bbf5.svg#36c182c6-ef98-4021-9b0d-d63122c2bbf5") format("svg"); }

@font-face {
  font-family: "Helvetica Neue LT Std 25 Ultra Light";
  src: url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/41774233-b9da-44be-b252-6a7b612fb1c7.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/41774233-b9da-44be-b252-6a7b612fb1c7.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/9baef9a5-e2af-4838-a3bc-da9d36c0bde8.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/4bff1fbb-b4bf-4d95-9c47-efcb14384e36.woff") format("woff"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/7f1f2a7d-3837-4c93-b373-f03c5da3f9a1.ttf") format("truetype"), url("//storage.googleapis.com/digital-media-fonts/package/helvetica-neue-complete/Fonts/d9f2752a-8d82-4cf1-b82f-109c1105be7f.svg#d9f2752a-8d82-4cf1-b82f-109c1105be7f") format("svg"); }

@font-face {
  font-family: "Carrig Pro Black Italic";
  src: url("https://storage.googleapis.com/digital-media-fonts/carrigproall/4410af41-7202-4e51-be5b-dffe8caa423f.eot?#iefix");
  src: url("https://storage.googleapis.com/digital-media-fonts/carrigproall/4410af41-7202-4e51-be5b-dffe8caa423f.eot?#iefix") format("eot"), url("https://storage.googleapis.com/digital-media-fonts/carrigproall/c700e737-5a2e-4bb6-9e26-213e61521c24.woff2") format("woff2"), url("https://storage.googleapis.com/digital-media-fonts/carrigproall/8430b563-6c01-4590-afe2-5886bf74e330.woff") format("woff"), url("https://storage.googleapis.com/digital-media-fonts/carrigproall/0293a9f5-f3b4-4cb6-b1b7-d187bf2a9052.ttf") format("truetype"); }

@font-face {
  font-family: "Carrig Pro Medium Italic";
  src: url("https://storage.googleapis.com/digital-media-fonts/carrigpro/CarrigPro-MediumItalic.otf") format("opentype"); }

@font-face {
  font-family: "Carrig W01 Bold Italic";
  src: url("https://storage.googleapis.com/digital-media-fonts/carrigproall/a758b77b-720c-4c94-90f1-3383fcbdf8fa.eot?#iefix");
  src: url("https://storage.googleapis.com/digital-media-fonts/carrigproall/a758b77b-720c-4c94-90f1-3383fcbdf8fa.eot?#iefix") format("eot"), url("https://storage.googleapis.com/digital-media-fonts/carrigproall/4c089cac-8961-4c4a-977c-5559166e0690.woff2") format("woff2"), url("https://storage.googleapis.com/digital-media-fonts/carrigproall/2a0ef056-65a0-4632-a25f-23f1fb615586.woff") format("woff"), url("https://storage.googleapis.com/digital-media-fonts/carrigproall/3c645b46-b52d-40e5-b658-747d995ef26b.ttf") format("truetype"); }

@font-face {
  font-family: "Macys Sans Regular";
  src: url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSans.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSans.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSans.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSans.woff") format("woff"); }

@font-face {
  font-family: "Macys Sans Medium";
  src: url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansMd.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansMd.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansMd.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansMd.woff") format("woff"); }

@font-face {
  font-family: "Macys Sans Bold";
  src: url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansBd.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansBd.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansBd.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansBd.woff") format("woff"); }

@font-face {
  font-family: "Macys Sans XBold";
  src: url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansXBd.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansXBd.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansXBd.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansXBd.woff") format("woff"); }

@font-face {
  font-family: "Ramillas Regular";
  src: url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasRegular.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasRegular.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasRegular.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasRegular.woff") format("woff"); }

@font-face {
  font-family: "TT Ramillas ExtraLight";
  src: url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasExtraLight.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasExtraLight.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasExtraLight.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasExtraLight.woff") format("woff"); }

@font-face {
  font-family: "TT Ramillas ExtraLight Italic";
  src: url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasExtraLightItalic.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasExtraLightItalic.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasExtraLightItalic.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasExtraLightItalic.woff") format("woff"); }

@font-face {
  font-family: "TT Ramillas Bold";
  src: url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasBold.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasBold.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasBold.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasBold.woff") format("woff"); }

#campaign #makeup-services {
  width: 1440px;
  margin: 0 auto; }
  #campaign #makeup-services #breadcrumbs {
    font-family: "Macys Sans Regular", "Helvetica Neue", Helvetica, Arial, sans-serif; }
    @media (max-width: 750px) {
      #campaign #makeup-services #breadcrumbs {
        padding-top: 2.66667vw;
        padding-bottom: 5.33333vw;
        padding-left: 2.66667vw; } }
    @media (min-width: 751px) {
      #campaign #makeup-services #breadcrumbs {
        padding-top: 1.59722vw;
        padding-bottom: 3.19444vw;
        font-size: 0.97222vw;
        line-height: 1.66667vw; } }
    @media (min-width: 1440px) {
      #campaign #makeup-services #breadcrumbs {
        padding-top: 23px;
        padding-bottom: 46px;
        font-size: 14px;
        line-height: 24px; } }
    #campaign #makeup-services #breadcrumbs a {
      text-decoration: none; }
      #campaign #makeup-services #breadcrumbs a:nth-of-type(2) {
        color: #767676; }
  #campaign #makeup-services #navigation {
    display: flex;
    align-items: center;
    justify-content: center; }
    #campaign #makeup-services #navigation nav {
      display: flex;
      width: 490px;
      height: 80px;
      justify-content: space-between;
      align-items: center; }
      #campaign #makeup-services #navigation nav a {
        padding-bottom: 4px;
        font-family: "Macys Sans Medium", "Helvetica Neue", Helvetica, Arial, sans-serif;
        font-size: 18px;
        line-height: 22px;
        text-decoration: none; }
        #campaign #makeup-services #navigation nav a:first-of-type {
          border-bottom: 4px solid black; }
  #campaign #makeup-services .banner#hero-2023 {
    position: relative; }
    #campaign #makeup-services .banner#hero-2023 img {
      width: 100%; }
    #campaign #makeup-services .banner#hero-2023 .inner-banner {
      position: absolute;
      top: 186px;
      left: 160px;
      transform: translateY(-50%); }
      #campaign #makeup-services .banner#hero-2023 .inner-banner h1 {
        color: white;
        font-family: "Macys Sans Regular", "Helvetica Neue", Helvetica, Arial, sans-serif;
        font-size: 56px;
        letter-spacing: -2.24px; }
  #campaign #makeup-services .banner#text-banner .content-inner {
    width: 1152px; }
    #campaign #makeup-services .banner#text-banner .content-inner h2 {
      font-family: "TT Ramillas Regular", Georgia, Times, serif;
      font-size: 36px;
      line-height: 50px;
      letter-spacing: -1.44px; }
  #campaign #makeup-services .banner#text-banner .content-wrap {
    display: flex;
    margin-top: 48px;
    margin-bottom: 65px;
    justify-content: center;
    align-items: center; }
  #campaign #makeup-services .mobile-only {
    display: none; }
  #campaign #makeup-services .tiles-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    #campaign #makeup-services .tiles-container a {
      text-decoration: none;
      text-transform: none; }
    #campaign #makeup-services .tiles-container .tile-container {
      margin-bottom: 75px;
      width: 342px; }
      #campaign #makeup-services .tiles-container .tile-container .tile {
        display: flex;
        height: 254px;
        align-items: center;
        justify-content: center;
        background-size: cover;
        background-position: center; }
        #campaign #makeup-services .tiles-container .tile-container .tile-copy {
          margin-top: 16px;
          font-size: 18px;
          font-family: "Macys Sans Regular", "Helvetica Neue", Helvetica, Arial, sans-serif;
          line-height: 22px; }
        #campaign #makeup-services .tiles-container .tile-container .tile-title {
          margin-top: 10px;
          text-align: center;
          font-family: "TT Ramillas Regular", Georgia, Times, serif;
          font-size: 35px;
          letter-spacing: -1.35px;
          line-height: 35px; }
  @media screen and (min-width: 768px) and (max-width: 1439px) {
    #campaign #makeup-services {
      width: 100vw;
      padding: 0 1.35135vw; }
      #campaign #makeup-services #navigation nav {
        width: 33.10811vw;
        height: 5.40541vw; }
        #campaign #makeup-services #navigation nav a {
          padding-bottom: 0.27027vw;
          font-size: 1.21622vw;
          line-height: 1.48649vw; }
          #campaign #makeup-services #navigation nav a:first-of-type {
            border-bottom: 0.27027vw solid black; }
      #campaign #makeup-services .banner#hero-2023 .inner-banner {
        top: 12.91667vw;
        left: 10.81081vw;
        transform: translateY(-50%); }
        #campaign #makeup-services .banner#hero-2023 .inner-banner h1 {
          font-size: 3.78378vw;
          letter-spacing: -2.24px; }
      #campaign #makeup-services .banner#text-banner .content-inner {
        width: 77.83784vw; }
        #campaign #makeup-services .banner#text-banner .content-inner h2 {
          font-size: 2.43243vw;
          line-height: 3.37838vw; }
      #campaign #makeup-services .banner#text-banner .content-wrap {
        margin-top: 3.24324vw;
        margin-bottom: 4.39189vw; }
      #campaign #makeup-services .tiles-container .tile-container {
        margin-bottom: 5.06757vw;
        width: 23.10811vw; }
        #campaign #makeup-services .tiles-container .tile-container .tile {
          height: 17.16216vw; }
          #campaign #makeup-services .tiles-container .tile-container .tile-copy {
            margin-top: 1.21622vw;
            font-size: 0.94595vw;
            line-height: 1.48649vw; }
          #campaign #makeup-services .tiles-container .tile-container .tile-title {
            margin-top: 0.67568vw;
            font-size: 2.36486vw;
            letter-spacing: -1.35px;
            line-height: 2.36486vw; } }
  @media screen and (max-width: 767px) {
    #campaign #makeup-services {
      width: 100%;
      padding: 0;
      overflow: hidden; }
      #campaign #makeup-services #navigation {
        display: block;
        align-items: center;
        justify-content: center;
        overflow-x: scroll; }
        #campaign #makeup-services #navigation::-webkit-scrollbar {
          display: none; }
        #campaign #makeup-services #navigation nav {
          display: flex;
          padding-left: 2.66667vw;
          padding-right: 2.66667vw;
          width: 100vw;
          height: 20.26667vw;
          justify-content: space-between;
          align-items: center;
          white-space: nowrap; }
          #campaign #makeup-services #navigation nav a {
            padding-bottom: 4px;
            font-size: 3.73333vw;
            line-height: 5.33333vw; }
            #campaign #makeup-services #navigation nav a:first-of-type {
              border-bottom: 4px solid black; }
      #campaign #makeup-services .banner#hero-2023 .inner-banner {
        position: absolute;
        width: 46.66667vw;
        top: 44.8vw;
        left: 56vw;
        transform: translateY(-50%); }
        #campaign #makeup-services .banner#hero-2023 .inner-banner h1 {
          color: white;
          font-family: "Macys Sans Regular", "Helvetica Neue", Helvetica, Arial, sans-serif;
          font-size: 12vw;
          letter-spacing: -1.35px;
          line-height: 12vw;
          text-align: left; }
      #campaign #makeup-services .banner#text-banner {
        padding: 0 5.33333vw; }
        #campaign #makeup-services .banner#text-banner .content-inner h2 {
          font-size: 6.66667vw;
          line-height: 9.33333vw;
          letter-spacing: -1px; }
        #campaign #makeup-services .banner#text-banner .content-wrap {
          margin-top: 12vw;
          margin-bottom: 14.93333vw; }
      #campaign #makeup-services .desktop-only {
        display: none; }
      #campaign #makeup-services .mobile-only {
        display: unset; }
      #campaign #makeup-services .tiles-container {
        padding: 0 5.33333vw; }
        #campaign #makeup-services .tiles-container .tile-container {
          width: 89.33333vw;
          margin-bottom: 7.46667vw; }
          #campaign #makeup-services .tiles-container .tile-container .tile {
            height: 89.33333vw; }
            #campaign #makeup-services .tiles-container .tile-container .tile-copy {
              margin-top: 3.73333vw;
              width: 84vw;
              font-size: 4.26667vw;
              line-height: 5.6vw;
              letter-spacing: 0px; }
            #campaign #makeup-services .tiles-container .tile-container .tile-title {
              font-size: 9.33333vw;
              line-height: 10.66667vw;
              letter-spacing: -0.35px; } }

#campaign #makeup-services.beauty-services #navigation nav a:first-of-type {
  border-bottom: none; }

#campaign #makeup-services.beauty-services #navigation nav a:nth-of-type(2) {
  border-bottom: 4px solid black; }

#campaign #makeup-services.beauty-services .banner#hero-2023 {
  position: relative; }
  #campaign #makeup-services.beauty-services .banner#hero-2023 .inner-banner {
    left: 80px;
    right: unset; }

#campaign #makeup-services.beauty-services .block-container {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between; }
  #campaign #makeup-services.beauty-services .block-container.closed .block-container__toggle {
    transform: rotate(180deg); }
  #campaign #makeup-services.beauty-services .block-container.closed .block-content {
    padding: 0 30px;
    max-height: 2px;
    overflow: hidden; }
  #campaign #makeup-services.beauty-services .block-container__0 .block-container__logo {
    margin-left: 113px; }
  #campaign #makeup-services.beauty-services .block-container__1 .block-container__logo {
    margin-left: 54px; }
  #campaign #makeup-services.beauty-services .block-container__2 .block-container__logo {
    margin-left: 85px; }
  #campaign #makeup-services.beauty-services .block-container__3 .block-container__logo {
    margin-left: 90px; }
  #campaign #makeup-services.beauty-services .block-container__4 .block-container__logo {
    margin-left: 90px; }
  #campaign #makeup-services.beauty-services .block-container__5 .block-container__logo {
    margin-left: 90px; }
  #campaign #makeup-services.beauty-services .block-container__6 .block-container__logo {
    margin-left: 98px; }
  #campaign #makeup-services.beauty-services .block-container__7 .block-container__logo {
    margin-left: 86px; }
  #campaign #makeup-services.beauty-services .block-container__8 .block-container__logo {
    margin-left: 84px; }
  #campaign #makeup-services.beauty-services .block-container__9 .block-container__logo {
    margin-left: 79px; }
  #campaign #makeup-services.beauty-services .block-container__10 .block-container__logo {
    margin-left: 98px; }
  #campaign #makeup-services.beauty-services .block-container__11 .block-container__logo {
    margin-left: 89px; }
  #campaign #makeup-services.beauty-services .block-container__12 .block-container__logo {
    margin-left: 78px; }
  #campaign #makeup-services.beauty-services .block-container__13 .block-container__logo {
    margin-left: 90px; }
  #campaign #makeup-services.beauty-services .block-container__14 .block-container__logo {
    margin-left: 74px; }
  #campaign #makeup-services.beauty-services .block-container__15 .block-container__logo {
    margin-left: 66px; }
  #campaign #makeup-services.beauty-services .block-container__16 .block-container__logo {
    margin-left: 81px; }
  #campaign #makeup-services.beauty-services .block-container__logo {
    margin-top: 8px;
    margin-bottom: 8px;
    width: 422px; }
  #campaign #makeup-services.beauty-services .block-container__toggle {
    margin-right: 150px;
    width: 25px;
    cursor: pointer;
    transition: 0.1s; }

#campaign #makeup-services.beauty-services .block-content {
  width: 100%;
  max-height: 2000px;
  position: relative;
  display: flex;
  padding: 45px 30px 44px 30px; }
  #campaign #makeup-services.beauty-services .block-content h3 {
    font-family: "Macys Sans Bold", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 18px;
    line-height: 20px; }
  #campaign #makeup-services.beauty-services .block-content p {
    font-family: "Macys Sans Regular", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 0.1px; }
  #campaign #makeup-services.beauty-services .block-content .col-1 {
    flex: 0 0 50%; }
  #campaign #makeup-services.beauty-services .block-content .col-2 {
    padding-left: 90px;
    flex: 0 1 50%; }
  #campaign #makeup-services.beauty-services .block-content .v-seperator {
    position: absolute;
    top: 45px;
    left: 750.5px;
    width: 1px;
    height: calc(100% - 105px);
    background-color: #D6D6D6; }

@media screen and (min-width: 768px) and (max-width: 1439px) {
  #campaign #makeup-services.beauty-services #navigation nav a:nth-of-type(2) {
    border-bottom: 0.27027vw solid black; }
  #campaign #makeup-services.beauty-services .banner#hero-2023 .inner-banner {
    left: 5.40541vw; }
  #campaign #makeup-services.beauty-services .block-container.closed .block-content {
    padding: 0 2.02703vw;
    max-height: 0.13514vw; }
  #campaign #makeup-services.beauty-services .block-container__0 .block-container__logo {
    margin-left: 7.63514vw; }
  #campaign #makeup-services.beauty-services .block-container__1 .block-container__logo {
    margin-left: 3.64865vw; }
  #campaign #makeup-services.beauty-services .block-container__2 .block-container__logo {
    margin-left: 5.74324vw; }
  #campaign #makeup-services.beauty-services .block-container__3 .block-container__logo {
    margin-left: 6.08108vw; }
  #campaign #makeup-services.beauty-services .block-container__4 .block-container__logo {
    margin-left: 6.08108vw; }
  #campaign #makeup-services.beauty-services .block-container__5 .block-container__logo {
    margin-left: 6.08108vw; }
  #campaign #makeup-services.beauty-services .block-container__6 .block-container__logo {
    margin-left: 6.62162vw; }
  #campaign #makeup-services.beauty-services .block-container__7 .block-container__logo {
    margin-left: 5.81081vw; }
  #campaign #makeup-services.beauty-services .block-container__8 .block-container__logo {
    margin-left: 5.67568vw; }
  #campaign #makeup-services.beauty-services .block-container__9 .block-container__logo {
    margin-left: 5.33784vw; }
  #campaign #makeup-services.beauty-services .block-container__10 .block-container__logo {
    margin-left: 6.62162vw; }
  #campaign #makeup-services.beauty-services .block-container__11 .block-container__logo {
    margin-left: 6.01351vw; }
  #campaign #makeup-services.beauty-services .block-container__12 .block-container__logo {
    margin-left: 5.27027vw; }
  #campaign #makeup-services.beauty-services .block-container__13 .block-container__logo {
    margin-left: 6.08108vw; }
  #campaign #makeup-services.beauty-services .block-container__14 .block-container__logo {
    margin-left: 5vw; }
  #campaign #makeup-services.beauty-services .block-container__15 .block-container__logo {
    margin-left: 4.45946vw; }
  #campaign #makeup-services.beauty-services .block-container__16 .block-container__logo {
    margin-left: 5.47297vw; }
  #campaign #makeup-services.beauty-services .block-container__logo {
    margin-top: 0.54054vw;
    margin-bottom: 0.54054vw;
    width: 28.51351vw; }
  #campaign #makeup-services.beauty-services .block-container__toggle {
    margin-right: 10.13514vw;
    width: 1.68919vw; }
  #campaign #makeup-services.beauty-services .block-content {
    width: 100%;
    max-height: 2000px;
    position: relative;
    display: flex;
    padding: 3.04054vw 2.02703vw 2.97297vw 2.02703vw; }
    #campaign #makeup-services.beauty-services .block-content h3 {
      font-size: 1.21622vw;
      line-height: 1.35135vw; }
    #campaign #makeup-services.beauty-services .block-content p {
      font-size: 0.94595vw;
      line-height: 1.35135vw;
      letter-spacing: -0.00676vw; }
    #campaign #makeup-services.beauty-services .block-content .col-2 {
      padding-left: 6.08108vw; }
    #campaign #makeup-services.beauty-services .block-content .v-seperator {
      top: 3.04054vw;
      left: 50.70946vw;
      width: 0.06757vw;
      height: calc(100% - vw(105, 1480)); } }

@media screen and (max-width: 767px) {
  #campaign #makeup-services.beauty-services .banner#hero-2023 .inner-banner {
    width: 64vw;
    right: unset;
    left: 56vw; }
  #campaign #makeup-services.beauty-services .block-container__0 .block-container__logo {
    margin-left: 6.4vw; }
  #campaign #makeup-services.beauty-services .block-container__1 .block-container__logo {
    margin-left: 6.4vw; }
  #campaign #makeup-services.beauty-services .block-container__2 .block-container__logo {
    margin-left: 6.4vw; }
  #campaign #makeup-services.beauty-services .block-container__3 .block-container__logo {
    margin-left: 6.4vw; }
  #campaign #makeup-services.beauty-services .block-container__4 .block-container__logo {
    margin-left: 6.4vw; }
  #campaign #makeup-services.beauty-services .block-container__5 .block-container__logo {
    margin-left: 6.4vw; }
  #campaign #makeup-services.beauty-services .block-container__6 .block-container__logo {
    margin-left: 6.4vw; }
  #campaign #makeup-services.beauty-services .block-container__7 .block-container__logo {
    margin-left: 6.4vw; }
  #campaign #makeup-services.beauty-services .block-container__8 .block-container__logo {
    margin-left: 6.4vw; }
  #campaign #makeup-services.beauty-services .block-container__9 .block-container__logo {
    margin-left: 6.4vw; }
  #campaign #makeup-services.beauty-services .block-container__10 .block-container__logo {
    margin-left: 6.4vw; }
  #campaign #makeup-services.beauty-services .block-container__11 .block-container__logo {
    margin-left: 6.4vw; }
  #campaign #makeup-services.beauty-services .block-container__12 .block-container__logo {
    margin-left: 6.4vw; }
  #campaign #makeup-services.beauty-services .block-container__13 .block-container__logo {
    margin-left: 6.4vw; }
  #campaign #makeup-services.beauty-services .block-container__14 .block-container__logo {
    margin-left: 6.4vw; }
  #campaign #makeup-services.beauty-services .block-container__15 .block-container__logo {
    margin-left: 6.4vw; }
  #campaign #makeup-services.beauty-services .block-container__16 .block-container__logo {
    margin-left: 6.4vw; }
  #campaign #makeup-services.beauty-services .block-container__logo {
    margin-top: 8px;
    margin-bottom: 8px;
    width: 63.2vw; }
  #campaign #makeup-services.beauty-services .block-container__toggle {
    margin-right: 6.4vw; }
  #campaign #makeup-services.beauty-services .block-content {
    padding: 5.86667vw 6.4vw;
    flex-wrap: wrap; }
    #campaign #makeup-services.beauty-services .block-content h3 {
      margin-bottom: 4vw; }
      #campaign #makeup-services.beauty-services .block-content h3:not(:first-of-type) {
        margin-top: 4.26667vw; }
    #campaign #makeup-services.beauty-services .block-content p {
      margin-bottom: 5.33333vw;
      font-size: 4.26667vw;
      line-height: 5.33333vw; }
      #campaign #makeup-services.beauty-services .block-content p.p-with-strong {
        margin-bottom: 0; }
    #campaign #makeup-services.beauty-services .block-content .col-1 {
      flex: 0 0 100%; }
    #campaign #makeup-services.beauty-services .block-content .col-2 {
      padding-left: 0;
      flex: 0 0 100%; }
      #campaign #makeup-services.beauty-services .block-content .col-2 h3 {
        margin-top: 4.26667vw; }
    #campaign #makeup-services.beauty-services .block-content .v-seperator {
      display: none; } }

/*
    This is where you add your SCSS.  It should all be scoped inside the #campaign node to prevent your SCSS
    from leaking out and affecting the common header or footer.  Do not delete the #campaign selector.
*/
.test {
  display: block; }

@font-face {
  font-family: "TT Ramillas Regular";
  src: url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasRegular.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasRegular.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasRegular.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasRegular.woff") format("woff"); }

@font-face {
  font-family: "TT Ramillas ExtraLight";
  src: url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasExtraLight.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasExtraLight.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasExtraLight.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasExtraLight.woff") format("woff"); }

@font-face {
  font-family: "TT Ramillas ExtraLight Italic";
  src: url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasExtraLightItalic.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasExtraLightItalic.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasExtraLightItalic.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasExtraLightItalic.woff") format("woff"); }

@font-face {
  font-family: "TT Ramillas Bold";
  src: url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasBold.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasBold.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasBold.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/tt-ramillas/TTRamillasBold.woff") format("woff"); }

@font-face {
  font-family: "Macys Sans Regular";
  src: url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSans.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSans.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSans.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSans.woff") format("woff"); }

@font-face {
  font-family: "Macys Sans Medium";
  src: url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansMd.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansMd.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansMd.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansMd.woff") format("woff"); }

@font-face {
  font-family: "Macys Sans Bold";
  src: url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansBd.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansBd.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansBd.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansBd.woff") format("woff"); }

@font-face {
  font-family: "Macys Sans XBold";
  src: url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansXBd.eot?#iefix");
  src: url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansXBd.eot?#iefix") format("eot"), url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansXBd.woff2") format("woff2"), url("//storage.googleapis.com/digital-media-fonts/macys-sans/MacysSansXBd.woff") format("woff"); }

#campaign {
  max-width: 1440px;
  margin: 0 auto; }

#campaign .max-only {
  display: none; }
  @media screen and (min-width: 1440px) {
    #campaign .max-only {
      display: block; } }

#campaign b {
  font-family: "Macys Sans Bold", arial, sans-serif; }

#campaign #browBarHero {
  text-align: center;
  margin-top: 26px; }

#campaign #browBarHero .column {
  position: relative;
  margin: 0;
  padding: 0; }

#campaign #browBarHero picture {
  position: relative;
  z-index: 1; }

#campaign #browBarHero a#shop_now {
  right: 9.75%; }

#campaign #browBarProducts {
  width: 100%;
  margin: 92px auto 2.5%;
  padding: 0;
  display: flex;
  margin-bottom: 130px; }
  @media screen and (min-width: 768px) and (max-width: 1023px) {
    #campaign #browBarProducts {
      margin-top: 45px; } }

#campaign #browBarProducts,
#campaign #browBarStates {
  padding: 0 24px; }
  @media screen and (min-width: 1600px) {
    #campaign #browBarProducts,
    #campaign #browBarStates {
      padding: 0; } }

#campaign #browBarBrows,
#campaign #browBarFacialWax,
#campaign #browBarLashes {
  cursor: pointer; }

#campaign #browBarProducts div.browBarProduct {
  width: 20%;
  padding: 0;
  text-align: center;
  box-sizing: border-box; }
  #campaign #browBarProducts div.browBarProduct:not(:last-child) {
    margin-right: 24px; }
  @media screen and (min-width: 768px) and (max-width: 1023px) {
    #campaign #browBarProducts div.browBarProduct:not(:last-child) {
      margin-right: 12px; } }

#campaign div.browBarProduct:last-child() {
  float: right; }

#campaign div.browBarProduct picture {
  display: block;
  margin-bottom: 2.5%; }

#campaign div.browBarProduct img {
  width: 100%; }

#campaign div.browBarProduct p {
  font-size: 16px;
  line-height: calc(22/18);
  font-family: "Macys Sans Regular", arial, sans-serif;
  color: #000;
  width: 100%;
  text-align: left;
  margin-top: 24px; }
  @media screen and (min-width: 1440px) {
    #campaign div.browBarProduct p {
      width: 80%; } }

#campaign div.browBarProduct p.browBarProductName {
  font-family: "Macys Sans Bold", arial, sans-serif !important;
  margin-top: -4%; }

#campaign nav#browBarStateLinks {
  text-align: center;
  margin: 0 auto;
  padding: 24px;
  font-weight: normal;
  line-height: 1.3em;
  font-size: 24px; }

#campaign section#browBarStates {
  margin-bottom: 5%;
  margin-top: 42px;
  column-gap: 2em;
  padding-bottom: 10px;
  column-count: 1; }
  @media screen and (min-width: 768px) {
    #campaign section#browBarStates {
      column-count: 2; } }
  @media screen and (min-width: 1024px) {
    #campaign section#browBarStates {
      column-count: 3; } }

#campaign div.browBarState {
  margin: 0 auto 6%;
  padding: 2% 0% 0%; }

#campaign div.browBarState h2 {
  font-size: 25px;
  font-weight: bold;
  letter-spacing: -0.01em;
  line-height: 1em;
  margin: 0 0 1%;
  padding: 0;
  color: #000; }

#campaign div.browBarState .column {
  width: 100%; }

#campaign div.browBarState hr {
  margin: 1.25rem 0;
  border: 0;
  border-bottom: 1px solid #DEDEDE;
  max-width: 400px; }
  @media screen and (max-width: 767px) {
    #campaign div.browBarState hr {
      margin: 0.5rem 0; } }

#campaign .store-info {
  font-size: 18px;
  line-height: 1.5em;
  margin-bottom: 1em;
  letter-spacing: -0.01em; }

#campaign .back-to-top {
  text-align: right;
  margin: 0;
  padding: 0; }

#campaign .back-to-top a {
  display: inline-block;
  color: #000;
  font-size: 13px;
  line-height: 1em;
  font-weight: normal;
  letter-spacing: -0.01em; }

#campaign #beautyHubBanner {
  color: #000;
  background-color: #f3e5e5;
  width: 96%; }

#campaign p.beautyHubBannerTitle {
  font-weight: bold;
  font-size: 24px;
  line-height: 28px;
  letter-spacing: 0.025em;
  text-transform: uppercase;
  text-align: left;
  margin: 9.5%;
  padding: 0; }

#campaign p.beautyHubBannerText {
  font-size: 18px;
  line-height: 22px;
  letter-spacing: 0.025em;
  text-align: left;
  margin: 9% 0;
  padding: 0; }

#campaign #beautyHubBanner picture {
  display: block;
  margin: 0 0 0 27.5%;
  width: 150px; }

#campaign a.beautyHubBannerLink {
  font-weight: bold;
  display: inline-block;
  font-size: 16px;
  line-height: 1em;
  letter-spacing: 0;
  text-transform: uppercase;
  margin: 25.75% 5%;
  padding: 0; }

#campaign .browBar-overlay,
#campaign .browBar-overlay-store,
#campaign #overlay {
  display: none; }

#campaign #overlay {
  opacity: 0.85;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-color: white;
  width: 100%;
  min-width: 1440px;
  /* hero width */
  height: 9999px;
  z-index: 5000; }

#campaign .browBar-overlay {
  width: 565px;
  height: 320px;
  padding: 84px 0 0 0;
  background: #ffffff;
  position: fixed;
  left: 50%;
  top: 40px;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  text-align: center;
  z-index: 5001;
  -webkit-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.75);
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.75); }

#campaign .browBar-overlay-logo {
  padding-bottom: 20px; }

#campaign .browBar-overlay-store {
  width: 565px;
  height: 320px;
  padding: 84px 0 0 0;
  background: #ffffff;
  position: fixed;
  left: 50%;
  top: 40px;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  text-align: center;
  z-index: 5001;
  -webkit-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.75);
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.75); }

#campaign .browBar-overlay-logo-store {
  padding-bottom: 20px; }

#campaign #browBarContainer .browBar-overlay p {
  margin-top: 0px;
  margin-bottom: 20px; }

#campaign #browBarContainer .browBar-overlay p {
  font-family: "Montserrat-Light", helvetica, arial, sans-serif;
  margin: 0;
  padding: 0 0 36px 0;
  font-size: 16px;
  line-height: 24px;
  color: #000; }

#campaign .browBar-overlay a {
  color: #000000; }

#campaign .browBar-overlay a.browBar-button {
  font-family: "Montserrat-Bold", helvetica, arial, sans-serif;
  font-size: 16px;
  font-weight: normal;
  line-height: 38px;
  height: 38px;
  width: 125px;
  border: 1px solid grey;
  margin: 0 auto;
  display: inline-block;
  text-decoration: none; }

#campaign .browBar-overlay a.browBar-button-left {
  margin-right: 70px; }

#campaign .browBar-overlay a {
  text-transform: lowercase; }

#campaign .browBar-overlay-store a {
  color: #000000; }

#campaign .browBar-overlay-store a.browBar-button {
  font-family: "Montserrat-Bold", helvetica, arial, sans-serif;
  font-size: 16px;
  font-weight: normal;
  line-height: 38px;
  height: 38px;
  width: 125px;
  border: 1px solid grey;
  margin: 0 auto;
  display: inline-block;
  text-decoration: none; }

#campaign .browBar-overlay-store a.browBar-button-left {
  margin-right: 70px; }

#campaign .browBar-overlay-store a {
  text-transform: lowercase; }

@media only screen and (max-width: 768px) {
  #campaign {
    /******** display 3 images below hero as carousel for mobile portrait only **********/ }
    #campaign #browBarProducts div.browBarProduct {
      width: 100%; }
    #campaign div.browBarProduct picture {
      width: 40vw;
      margin: 16px auto 2.5%;
      padding: 0; }
    #campaign #browBarSlider div.browBarProduct p {
      margin: 16px auto 2.5%; }
    #campaign #browBarHero .column {
      margin: 0;
      padding: 0; }
    #campaign #browBarHero a {
      top: 46.1vw;
      width: 16.6vw;
      height: 5.2vw; }
    #campaign #browBarHero a#show_overlay {
      left: 9.1vw; }
    #campaign #browBarHero a#shop_now {
      left: 29.4vw; }
    #campaign #browBarSlider {
      width: 100%;
      /*height: 50vh;*/
      margin: 4% auto 2.5%;
      padding: 0; }
    #campaign #browBarSlider div.browBarProduct {
      width: auto;
      margin: 0;
      float: none;
      text-align: center; }
      #campaign #browBarSlider div.browBarProduct:not(:last-child) {
        margin-right: 12px; }
    #campaign #browBarSlider div.browBarProduct picture {
      width: 40vw;
      margin: 0 auto 2.5%;
      padding: 0; }
    #campaign #browBarSlider div.browBarProduct p {
      font-size: 16px;
      margin: 16px auto 1.25%;
      padding: 0;
      width: 88%; } }
    @media only screen and (max-width: 768px) and (min-width: 768px) and (max-width: 1023px) {
      #campaign #browBarSlider div.browBarProduct p {
        font-size: 14px; } }

@media only screen and (max-width: 768px) {
    #campaign #browBarSlider div.browBarProduct p.browBarProductName {
      letter-spacing: 0.05em; }
    #campaign #browBarSlider div#browBarBrows p {
      /*width: 80% !important;*/ }
    #campaign #browBarSlider div#browBarFacialWax p {
      /*width: 88%;*/ }
    #campaign #browBarSlider div#browBarLashes p {
      /*width: 88%;*/ }
    #campaign #browBarSlider div.glide__bullets {
      text-align: center;
      display: none; }
    #campaign #browBarSlider button.glide__bullet {
      border-radius: 100%;
      width: 0 !important;
      padding: 1%;
      border-color: #e01a2b;
      background-color: #e01a2b; }
    #campaign #browBarSlider button.glide__bullet--active {
      border-radius: 100%;
      width: 0 !important;
      padding: 1%;
      border-color: #ab0000;
      background-color: #ab0000; }
    #campaign nav#browBarStateLinks {
      /*margin: 0 auto;*/
      padding: 4% 11%;
      line-height: 1.5em;
      font-size: 5vw; }
    #campaign div.browBarState h2 {
      font-size: 4.5vw;
      /*letter-spacing: 0.05em;*/
      /*line-height: 1em;*/
      margin: 2% 0 4%;
      /*padding: 0;*/ }
    #campaign div.browBarState {
      margin: 0 auto 13%;
      padding: 2% 0% 0%; }
    #campaign .store-info {
      font-size: 16px;
      line-height: 1.33em; } }
    @media only screen and (max-width: 768px) and (min-width: 768px) {
      #campaign .store-info {
        font-size: 16px; } }
    @media only screen and (max-width: 768px) and (min-width: 1024px) {
      #campaign .store-info {
        font-size: 18px; } }

@media only screen and (max-width: 768px) {
    #campaign .back-to-top a {
      font-size: 3.25vw; }
    #campaign #beautyHubBanner {
      width: 100%; }
    #campaign #beautyHubBanner picture {
      width: auto;
      margin: 0 10% 0 5%;
      /*padding: 0; */ }
    #campaign p.beautyHubBannerTitle {
      font-size: 5.5vw;
      line-height: 1.1em;
      margin: 0;
      padding: 8% 0 0 5%; }
    #campaign a.beautyHubBannerLink {
      font-size: 3.75vw;
      /*line-height: 1em;*/
      margin: 0;
      padding: 3.5% 0 0 5%; }
    #campaign #overlay {
      /*height: 100vh;*/
      min-width: 100%; }
    #campaign .browBar-overlay,
    #campaign .browBar-overlay-store {
      width: 90vw;
      height: 75vh;
      padding: 20% 5% 0;
      top: 10vh;
      box-shadow: 0 0 2.5vh 0 rgba(0, 0, 0, 0.75); }
    #campaign .browBar-overlay p,
    #campaign .browBar-overlay-store p {
      font-size: 5vw;
      line-height: 1.2em;
      margin: 0 0 10%;
      padding: 0; }
    #campaign .browBar-overlay p a,
    #campaign .browBar-overlay-store p a {
      display: block;
      margin: 5% auto 0;
      padding: 0; }
    #campaign .browBar-overlay a.browBar-button,
    #campaign .browBar-overlay-store a.browBar-button {
      font-size: 6vw;
      line-height: 1em;
      height: auto;
      width: 65%;
      margin: 0 auto 5%;
      padding: 3.5% 0; }
    #campaign .browBar-overlay a.browBar-button.browBar-button-left,
    #campaign .browBar-overlay-store a.browBar-button.browBar-button-left {
      margin-right: auto; } }

@media only screen and (min-width: 600px) and (max-width: 767px) and (orientation: landscape) {
  #campaign #beautyHubBanner .medium-4 {
    width: 50%; }
  #campaign #beautyHubBanner [class*=column] + [class*=column]:last-child {
    float: left; } }

@media only screen and (min-width: 768px) and (max-width: 1023px) and (orientation: portrait) {
  #campaign {
    /* iPad only */ }
    #campaign .show-for-small,
    #campaign .hide-for-medium-up {
      display: block !important; }
    #campaign .hide-for-small,
    #campaign .show-for-medium-up {
      display: none !important; }
    #campaign .column.medium-4 {
      width: 100%; }
    #campaign #beautyHubBanner picture {
      width: auto; }
    #campaign #beautyHubBanner picture > img {
      width: 400px; }
    #campaign #browBarSlider div.browBarProduct {
      padding-right: 5%; }
    #campaign #browBarSlider div.browBarProduct p {
      font-size: 4.5vw; }
    #campaign #browBarSlider button.glide__bullet {
      margin: 1%; }
    #campaign #browBarSlider .glide__slide:not(:last-child) {
      margin-right: 16px !important; }
    #campaign .back-to-top a {
      line-height: 1.66em; }
    #campaign .browBar-overlay,
    #campaign .browBar-overlay-store {
      width: 90vw;
      height: 85vh;
      padding: 10% 5% 0;
      top: 5vh;
      box-shadow: 0 0 2.5vh 0 rgba(0, 0, 0, 0.75); } }

@media (min-width: 751px) {
  .mobile-only {
    display: none !important; } }

/* MOBILE */
@media (max-width: 750px) {
  .desktop-only {
    display: none !important; } }

.hideme {
  display: none; }

@media only screen and (max-width: 767px) and (orientation: landscape) {
  .browBarState .medium-4 {
    width: 50%; }
  .browBarState [class*=column] + [class*=column]:last-child {
    float: left; }
  .beautyHubBannerText {
    display: none; }
  #campaign div.browBarState {
    padding: 2vw 1vw 1vw 2vw; }
  #campaign div.browBarState h2 {
    font-size: 3vw; }
  #campaign .store-info {
    font-size: 2.15vw; }
  #campaign .back-to-top {
    margin: 2vw 0 1vw 0; }
  #campaign .displayLandscapeMobile {
    display: block !important; }
  #campaign .hideLandscapeMobile {
    display: none !important; }
  #campaign a.beautyHubBannerLink {
    margin: 0 0 2vw 2vw; }
  #campaign p.beautyHubBannerTitle {
    margin: 2vw; } }

@media only screen and (min-width: 1024px) and (max-width: 1200px) and (orientation: portrait) {
  #campaign a.beautyHubBannerLink {
    margin: 50px 0 0 0px; } }

.hero-img {
  position: relative; }

#browBarProducts {
  margin-top: 90px; }

.link1,
.link2,
.link3 {
  position: absolute;
  cursor: pointer;
  width: 13.25%;
  height: 21%;
  z-index: 10; }

.link1 {
  left: 43%;
  top: 72.5%;
  background-color: rgba(255, 0, 0, 0); }

.link2 {
  left: 37.9%;
  top: 53.5%; }

.link3 {
  left: 29.5%;
  top: 79%;
  height: 15%; }

@media screen and (max-width: 750px) {
  .link1 {
    left: 25.0%;
    top: 65.5%;
    width: 21vw;
    height: 10vw; }
  .link2 {
    left: 31%;
    top: 67.5%; }
  .link3 {
    left: 17.5%;
    top: 84%;
    height: 10%; } }

.glide {
  position: relative;
  width: 100%;
  box-sizing: border-box; }

.glide * {
  box-sizing: inherit; }

.glide__track {
  overflow: hidden; }

.glide__slides {
  position: relative;
  width: 100%;
  list-style: none;
  backface-visibility: hidden;
  transform-style: preserve-3d;
  touch-action: pan-Y;
  overflow: hidden;
  padding: 0;
  white-space: nowrap;
  display: flex;
  flex-wrap: nowrap;
  will-change: transform; }

.glide__slides--dragging {
  user-select: none; }

.glide__slide {
  width: 100%;
  height: 100%;
  flex-shrink: 0;
  white-space: normal;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent; }

.glide__slide a {
  user-select: none;
  -webkit-user-drag: none;
  -moz-user-select: none;
  -ms-user-select: none; }

.glide__arrows {
  -webkit-touch-callout: none;
  user-select: none; }

.glide__bullets {
  -webkit-touch-callout: none;
  user-select: none; }

.glide--rtl {
  direction: rtl; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInZhcnMuc2NzcyIsIm1ha2V1cC1zZXJ2aWNlcy5zY3NzIiwiYnJlYWtwb2ludHMuc2NzcyIsImZ1bmN0aW9ucy5zY3NzIiwiYmVhdXR5LXNlcnZpY2VzLnNjc3MiLCJiZW5lZml0LWJyb3ctYmFyLWxvY2F0b3Iuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztFQU9FO0FBRUYsVUFBVTtFQUNOLFdBQVcsRUFBQywrQkFBK0I7RUFDdkMsR0FBRyxFQUFDLHlJQUF5STtFQUM3SSxHQUFHLEVBQUMseUlBQXlJLENBQUMsYUFBYSxFQUMzSixvSUFBb0ksQ0FBQyxlQUFlLEVBQ3BKLG1JQUFtSSxDQUFDLGNBQWMsRUFDbEosa0lBQWtJLENBQUMsa0JBQWtCLEVBQ3JKLHVLQUF1SyxDQUFDLGFBQWE7O0FBRzdMLFVBQVU7RUFDTixXQUFXLEVBQUMsc0NBQXNDO0VBQzlDLEdBQUcsRUFBQyx5SUFBeUk7RUFDN0ksR0FBRyxFQUFDLHlJQUF5SSxDQUFDLGFBQWEsRUFDM0osb0lBQW9JLENBQUMsZUFBZSxFQUNwSixtSUFBbUksQ0FBQyxjQUFjLEVBQ2xKLGtJQUFrSSxDQUFDLGtCQUFrQixFQUNySix1S0FBdUssQ0FBQyxhQUFhOztBQUc3TCxVQUFVO0VBQ1IsV0FBVyxFQUFDLGdDQUFnQztFQUN0QyxHQUFHLEVBQUMseUlBQXlJO0VBQzdJLEdBQUcsRUFBQyx5SUFBeUksQ0FBQyxhQUFhLEVBQzNKLG9JQUFvSSxDQUFDLGVBQWUsRUFDcEosbUlBQW1JLENBQUMsY0FBYyxFQUNsSixrSUFBa0ksQ0FBQyxrQkFBa0IsRUFDckosdUtBQXVLLENBQUMsYUFBYTs7QUFFN0wsVUFBVTtFQUNSLFdBQVcsRUFBQyxpQ0FBaUM7RUFDdkMsR0FBRyxFQUFDLHlJQUF5STtFQUM3SSxHQUFHLEVBQUMseUlBQXlJLENBQUMsYUFBYSxFQUMzSixvSUFBb0ksQ0FBQyxlQUFlLEVBQ3BKLG1JQUFtSSxDQUFDLGNBQWMsRUFDbEosa0lBQWtJLENBQUMsa0JBQWtC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QUUsTUFBTTtFQUNoQixPQUFPLEVBQUUsQ0FBQztFQUNWLFdBQVcsRUFBRSxNQUFNO0VBQ25CLE9BQU8sRUFBRSxJQUFJO0VBQ2IsU0FBUyxFQUFFLE1BQU07RUFDakIsV0FBVyxFQUFFLFNBQ2YsR0FBQzs7QUFFRCx3QkFBd0IsQ0FBQztFQUN2QixXQUFXLEVBQUUsSUFDZixHQUFDOztBQUVELGFBQWEsQ0FBQztFQUNaLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixXQUFXLEVBQUUsQ0FBQztFQUNkLFdBQVcsRUFBRSxNQUFNO0VBQ25CLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLHFCQUFxQixFQUFFLElBQUk7RUFDM0IsMkJBQTJCLEVBQUUsV0FDL0IsR0FBQzs7QUFFRCxhQUFhLENBQUMsQ0FBQyxDQUFDO0VBQ2QsV0FBVyxFQUFFLElBQUk7RUFDakIsaUJBQWlCLEVBQUUsSUFBSTtFQUN2QixnQkFBZ0IsRUFBRSxJQUFJO0VBQ3RCLGVBQWUsRUFBRSxJQUNuQixHQUFDOztBQUVELGNBQWMsQ0FBQztFQUNiLHFCQUFxQixFQUFFLElBQUk7RUFDM0IsV0FBVyxFQUFFLElBQ2YsR0FBQzs7QUFFRCxlQUFlLENBQUM7RUFDZCxxQkFBcUIsRUFBRSxJQUFJO0VBQzNCLFdBQVcsRUFBRSxJQUNmLEdBQUM7O0FBRUQsV0FBVyxDQUFDO0VBQ1YsU0FBUyxFQUFFLEdBQ2IsR0FBQyIsImZpbGUiOiJwYWdlX2luZGV4Lm1pbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuZm9udC1mYW1pbHk6J0hlbHZldGljYSBOZXVlIExUIFN0ZCA3NSBCb2xkJywnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuZm9udC1mYW1pbHk6J0hlbHZldGljYSBOZXVlIExUIFN0ZCA3NiBCb2xkIEl0YWxpYycsJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbmZvbnQtZmFtaWx5OidIZWx2ZXRpY2EgTmV1ZSBMVCBTdGQgNTUgUm9tYW4nLCdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG5mb250LWZhbWlseTonSGVsdmV0aWNhIE5ldWUgTFQgU3RkIDY1IE1lZGl1bScsJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbmZvbnQtZmFtaWx5OidIZWx2ZXRpY2EgTmV1ZSBMVCBTdGQgMjUgVWx0cmEgTGlnaHQnLCdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG5mb250LWZhbWlseTonQ2FycmlnIFBybyBCbGFjayBJdGFsaWMnLCdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4qL1xuXG5AZm9udC1mYWNle1xuICAgIGZvbnQtZmFtaWx5OlwiSGVsdmV0aWNhIE5ldWUgTFQgU3RkIDc1IEJvbGRcIjtcbiAgICAgICAgc3JjOnVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3BhY2thZ2UvaGVsdmV0aWNhLW5ldWUtY29tcGxldGUvRm9udHMvYzA3ZmVmOWUtYTkzNC00MmQ3LTkyYWQtNjkyMDVmMmI4YTAwLmVvdD8jaWVmaXhcIik7XG4gICAgICAgIHNyYzp1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9wYWNrYWdlL2hlbHZldGljYS1uZXVlLWNvbXBsZXRlL0ZvbnRzL2MwN2ZlZjllLWE5MzQtNDJkNy05MmFkLTY5MjA1ZjJiOGEwMC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVvdFwiKSxcbiAgICAgICAgdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvcGFja2FnZS9oZWx2ZXRpY2EtbmV1ZS1jb21wbGV0ZS9Gb250cy8zYjMwMzY0MS03MDZlLTQyMjEtOTRjNC00ZmI0OTFmNGY4ZWYud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgIHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3BhY2thZ2UvaGVsdmV0aWNhLW5ldWUtY29tcGxldGUvRm9udHMvMTRmZjYwODEtMzI2ZC00ZGFlLWI3NzgtZDdhZmE2NjE2NmZjLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICAgICAgdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvcGFja2FnZS9oZWx2ZXRpY2EtbmV1ZS1jb21wbGV0ZS9Gb250cy84ZmRhMWU0Ny0xOWJlLTQ2YzctOGQ4My04ZDRmYjM1NTcyZjAudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLFxuICAgICAgICB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9wYWNrYWdlL2hlbHZldGljYS1uZXVlLWNvbXBsZXRlL0ZvbnRzL2Y3NTFjOGFlLTEwNTctNDZkOS04ZDc0LTYyNTkyZTAwMjU2OC5zdmcjZjc1MWM4YWUtMTA1Ny00NmQ5LThkNzQtNjI1OTJlMDAyNTY4XCIpIGZvcm1hdChcInN2Z1wiKTtcbn1cblxuQGZvbnQtZmFjZXtcbiAgICBmb250LWZhbWlseTpcIkhlbHZldGljYSBOZXVlIExUIFN0ZCA3NiBCb2xkIEl0YWxpY1wiO1xuICAgICAgICBzcmM6dXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvcGFja2FnZS9oZWx2ZXRpY2EtbmV1ZS1jb21wbGV0ZS9Gb250cy9lYTNiNThhMy0wOWU3LTRiMzYtYWU5MS1lNzBiNDQ2ZDAzMTUuZW90PyNpZWZpeFwiKTtcbiAgICAgICAgc3JjOnVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3BhY2thZ2UvaGVsdmV0aWNhLW5ldWUtY29tcGxldGUvRm9udHMvZWEzYjU4YTMtMDllNy00YjM2LWFlOTEtZTcwYjQ0NmQwMzE1LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLFxuICAgICAgICB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9wYWNrYWdlL2hlbHZldGljYS1uZXVlLWNvbXBsZXRlL0ZvbnRzLzYzMjI2ODMxLWYwMmEtNDY3ZC04OWI0LWMyY2JlZTFmYjFlZC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvcGFja2FnZS9oZWx2ZXRpY2EtbmV1ZS1jb21wbGV0ZS9Gb250cy8wZmIwMzMwNC1kMGUxLTRmMTEtODIwNS0yMmE3MTY2NmRmOTIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxuICAgICAgICB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9wYWNrYWdlL2hlbHZldGljYS1uZXVlLWNvbXBsZXRlL0ZvbnRzL2QyYTY2NjFiLTkzZTMtNDI5Yi1iMzlkLTY3YjkxNWRjZGQ5NS50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksXG4gICAgICAgIHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3BhY2thZ2UvaGVsdmV0aWNhLW5ldWUtY29tcGxldGUvRm9udHMvNDk2ZTAwZGYtMTg1Yi00MTVmLWE5ZDItNDRjN2ZlYjA1ZmQ0LnN2ZyM0OTZlMDBkZi0xODViLTQxNWYtYTlkMi00NGM3ZmViMDVmZDRcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuXG5AZm9udC1mYWNle1xuICBmb250LWZhbWlseTpcIkhlbHZldGljYSBOZXVlIExUIFN0ZCA1NSBSb21hblwiO1xuICAgICAgICBzcmM6dXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvcGFja2FnZS9oZWx2ZXRpY2EtbmV1ZS1jb21wbGV0ZS9Gb250cy9iNzY5M2E4My1iODYxLTRhYTYtODVlMC05ZWNmNjc2YmM0ZDYuZW90PyNpZWZpeFwiKTtcbiAgICAgICAgc3JjOnVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3BhY2thZ2UvaGVsdmV0aWNhLW5ldWUtY29tcGxldGUvRm9udHMvYjc2OTNhODMtYjg2MS00YWE2LTg1ZTAtOWVjZjY3NmJjNGQ2LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLFxuICAgICAgICB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9wYWNrYWdlL2hlbHZldGljYS1uZXVlLWNvbXBsZXRlL0ZvbnRzL2IwODY4YjRjLTIzNGUtNDdkMy1iYzU5LTQxYWI5ZGUzYzBkYi53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvcGFja2FnZS9oZWx2ZXRpY2EtbmV1ZS1jb21wbGV0ZS9Gb250cy9iY2Y1NDM0My1kMDMzLTQxZWUtYmJkNy0yYjc3ZGYzZmU3YmEud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxuICAgICAgICB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9wYWNrYWdlL2hlbHZldGljYS1uZXVlLWNvbXBsZXRlL0ZvbnRzL2IwZmZkY2YwLTI2ZGEtNDdmZC04NDg1LTIwZTRhNDBkNGI3ZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksXG4gICAgICAgIHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3BhY2thZ2UvaGVsdmV0aWNhLW5ldWUtY29tcGxldGUvRm9udHMvZGEwOWYxZjEtMDYyYS00NWFmLTg2ZTEtMmJiZGIzZGQ5NGY5LnN2ZyNkYTA5ZjFmMS0wNjJhLTQ1YWYtODZlMS0yYmJkYjNkZDk0ZjlcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuQGZvbnQtZmFjZXtcbiBcdGZvbnQtZmFtaWx5OlwiSGVsdmV0aWNhIE5ldWUgTFQgU3RkIDY1IE1lZGl1bVwiO1xuICAgICAgICBzcmM6dXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvcGFja2FnZS9oZWx2ZXRpY2EtbmV1ZS1jb21wbGV0ZS9Gb250cy8wN2ZlMGZlYy1iNjNmLTQ5NjMtOGVlMS01MzU1MjhiNjdmZGIuZW90PyNpZWZpeFwiKTtcbiAgICAgICAgc3JjOnVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3BhY2thZ2UvaGVsdmV0aWNhLW5ldWUtY29tcGxldGUvRm9udHMvMDdmZTBmZWMtYjYzZi00OTYzLThlZTEtNTM1NTI4YjY3ZmRiLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLFxuICAgICAgICB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9wYWNrYWdlL2hlbHZldGljYS1uZXVlLWNvbXBsZXRlL0ZvbnRzLzM2MDBiMzdmLTJiZjEtNDVmMy1iZTNhLTAzMzY1ZjE2ZDljYi53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvcGFja2FnZS9oZWx2ZXRpY2EtbmV1ZS1jb21wbGV0ZS9Gb250cy82MGJlNWMzOS04NjNlLTQwY2ItOTQzNC02ZWJhZmI2MmFiMmIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxuICAgICAgICB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9wYWNrYWdlL2hlbHZldGljYS1uZXVlLWNvbXBsZXRlL0ZvbnRzLzRjNjUwM2M5LTg1OWItNGQzYi1hMWQ1LTJkNDJlMTIyMjQxNS50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksXG4gICAgICAgIHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3BhY2thZ2UvaGVsdmV0aWNhLW5ldWUtY29tcGxldGUvRm9udHMvMzZjMTgyYzYtZWY5OC00MDIxLTliMGQtZDYzMTIyYzJiYmY1LnN2ZyMzNmMxODJjNi1lZjk4LTQwMjEtOWIwZC1kNjMxMjJjMmJiZjVcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuQGZvbnQtZmFjZXtcbiAgICBmb250LWZhbWlseTpcIkhlbHZldGljYSBOZXVlIExUIFN0ZCAyNSBVbHRyYSBMaWdodFwiO1xuICAgICAgICBzcmM6dXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvcGFja2FnZS9oZWx2ZXRpY2EtbmV1ZS1jb21wbGV0ZS9Gb250cy80MTc3NDIzMy1iOWRhLTQ0YmUtYjI1Mi02YTdiNjEyZmIxYzcuZW90PyNpZWZpeFwiKTtcbiAgICAgICAgc3JjOnVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3BhY2thZ2UvaGVsdmV0aWNhLW5ldWUtY29tcGxldGUvRm9udHMvNDE3NzQyMzMtYjlkYS00NGJlLWIyNTItNmE3YjYxMmZiMWM3LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLFxuICAgICAgICB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9wYWNrYWdlL2hlbHZldGljYS1uZXVlLWNvbXBsZXRlL0ZvbnRzLzliYWVmOWE1LWUyYWYtNDgzOC1hM2JjLWRhOWQzNmMwYmRlOC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvcGFja2FnZS9oZWx2ZXRpY2EtbmV1ZS1jb21wbGV0ZS9Gb250cy80YmZmMWZiYi1iNGJmLTRkOTUtOWM0Ny1lZmNiMTQzODRlMzYud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxuICAgICAgICB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9wYWNrYWdlL2hlbHZldGljYS1uZXVlLWNvbXBsZXRlL0ZvbnRzLzdmMWYyYTdkLTM4MzctNGM5My1iMzczLWYwM2M1ZGEzZjlhMS50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksXG4gICAgICAgIHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3BhY2thZ2UvaGVsdmV0aWNhLW5ldWUtY29tcGxldGUvRm9udHMvZDlmMjc1MmEtOGQ4Mi00Y2YxLWI4MmYtMTA5YzExMDViZTdmLnN2ZyNkOWYyNzUyYS04ZDgyLTRjZjEtYjgyZi0xMDljMTEwNWJlN2ZcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuXG4gQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6XCJDYXJyaWcgUHJvIEJsYWNrIEl0YWxpY1wiO1xuICAgICAgICBzcmM6dXJsKFwiaHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvY2FycmlncHJvYWxsLzQ0MTBhZjQxLTcyMDItNGU1MS1iZTViLWRmZmU4Y2FhNDIzZi5lb3Q/I2llZml4XCIpO1xuICAgICAgICBzcmM6dXJsKFwiaHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvY2FycmlncHJvYWxsLzQ0MTBhZjQxLTcyMDItNGU1MS1iZTViLWRmZmU4Y2FhNDIzZi5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVvdFwiKSx1cmwoXCJodHRwczovL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9jYXJyaWdwcm9hbGwvYzcwMGU3MzctNWEyZS00YmI2LTllMjYtMjEzZTYxNTIxYzI0LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLHVybChcImh0dHBzOi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL2NhcnJpZ3Byb2FsbC84NDMwYjU2My02YzAxLTQ1OTAtYWZlMi01ODg2YmY3NGUzMzAud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLHVybChcImh0dHBzOi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL2NhcnJpZ3Byb2FsbC8wMjkzYTlmNS1mM2I0LTRjYjYtYjFiNy1kMTg3YmYyYTkwNTIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xufVxuXG4gQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6XCJDYXJyaWcgUHJvIE1lZGl1bSBJdGFsaWNcIjtcbiAgICAgICAgc3JjOiB1cmwoXCJodHRwczovL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9jYXJyaWdwcm8vQ2FycmlnUHJvLU1lZGl1bUl0YWxpYy5vdGZcIikgZm9ybWF0KFwib3BlbnR5cGVcIik7XG59XG5cbkBmb250LWZhY2V7XG4gICAgZm9udC1mYW1pbHk6XCJDYXJyaWcgVzAxIEJvbGQgSXRhbGljXCI7XG4gICAgc3JjOnVybChcImh0dHBzOi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL2NhcnJpZ3Byb2FsbC9hNzU4Yjc3Yi03MjBjLTRjOTQtOTBmMS0zMzgzZmNiZGY4ZmEuZW90PyNpZWZpeFwiKTtcbiAgICBzcmM6dXJsKFwiaHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvY2FycmlncHJvYWxsL2E3NThiNzdiLTcyMGMtNGM5NC05MGYxLTMzODNmY2JkZjhmYS5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVvdFwiKSx1cmwoXCJodHRwczovL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9jYXJyaWdwcm9hbGwvNGMwODljYWMtODk2MS00YzRhLTk3N2MtNTU1OTE2NmUwNjkwLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLHVybChcImh0dHBzOi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL2NhcnJpZ3Byb2FsbC8yYTBlZjA1Ni02NWEwLTQ2MzItYTI1Zi0yM2YxZmI2MTU1ODYud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLHVybChcImh0dHBzOi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL2NhcnJpZ3Byb2FsbC8zYzY0NWI0Ni1iNTJkLTQwZTUtYjY1OC03NDdkOTk1ZWYyNmIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xufVxuXG5AZm9udC1mYWNle1xuXHRmb250LWZhbWlseTpcIk1hY3lzIFNhbnMgUmVndWxhclwiO1xuXHRzcmM6dXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvbWFjeXMtc2Fucy9NYWN5c1NhbnMuZW90PyNpZWZpeFwiKTtcblx0c3JjOnVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL21hY3lzLXNhbnMvTWFjeXNTYW5zLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLFxuXHR1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9tYWN5cy1zYW5zL01hY3lzU2Fucy53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcblx0dXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvbWFjeXMtc2Fucy9NYWN5c1NhbnMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuXG5AZm9udC1mYWNle1xuICAgIGZvbnQtZmFtaWx5OlwiTWFjeXMgU2FucyBNZWRpdW1cIjtcbiAgICAgICAgc3JjOnVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL21hY3lzLXNhbnMvTWFjeXNTYW5zTWQuZW90PyNpZWZpeFwiKTtcbiAgICAgICAgc3JjOnVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL21hY3lzLXNhbnMvTWFjeXNTYW5zTWQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlb3RcIiksXG4gICAgICAgIHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL21hY3lzLXNhbnMvTWFjeXNTYW5zTWQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgIHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL21hY3lzLXNhbnMvTWFjeXNTYW5zTWQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuXG5AZm9udC1mYWNle1xuXHRmb250LWZhbWlseTpcIk1hY3lzIFNhbnMgQm9sZFwiO1xuXHRzcmM6dXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvbWFjeXMtc2Fucy9NYWN5c1NhbnNCZC5lb3Q/I2llZml4XCIpO1xuXHRzcmM6dXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvbWFjeXMtc2Fucy9NYWN5c1NhbnNCZC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVvdFwiKSxcblx0dXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvbWFjeXMtc2Fucy9NYWN5c1NhbnNCZC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcblx0dXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvbWFjeXMtc2Fucy9NYWN5c1NhbnNCZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5AZm9udC1mYWNle1xuXHRmb250LWZhbWlseTpcIk1hY3lzIFNhbnMgWEJvbGRcIjtcblx0c3JjOnVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL21hY3lzLXNhbnMvTWFjeXNTYW5zWEJkLmVvdD8jaWVmaXhcIik7XG5cdHNyYzp1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9tYWN5cy1zYW5zL01hY3lzU2Fuc1hCZC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVvdFwiKSxcblx0dXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvbWFjeXMtc2Fucy9NYWN5c1NhbnNYQmQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG5cdHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL21hY3lzLXNhbnMvTWFjeXNTYW5zWEJkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cbkBmb250LWZhY2V7XG4gIGZvbnQtZmFtaWx5OlwiUmFtaWxsYXMgUmVndWxhclwiO1xuICAgICAgc3JjOiB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy90dC1yYW1pbGxhcy9UVFJhbWlsbGFzUmVndWxhci5lb3Q/I2llZml4XCIpO1xuICAgICAgc3JjOiB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy90dC1yYW1pbGxhcy9UVFJhbWlsbGFzUmVndWxhci5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVvdFwiKSxcbiAgICAgIHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3R0LXJhbWlsbGFzL1RUUmFtaWxsYXNSZWd1bGFyLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgICAgdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvdHQtcmFtaWxsYXMvVFRSYW1pbGxhc1JlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuQGZvbnQtZmFjZXtcbiAgICBmb250LWZhbWlseTpcIlRUIFJhbWlsbGFzIEV4dHJhTGlnaHRcIjtcbiAgICAgICAgc3JjOiB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy90dC1yYW1pbGxhcy9UVFJhbWlsbGFzRXh0cmFMaWdodC5lb3Q/I2llZml4XCIpO1xuICAgICAgICBzcmM6IHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3R0LXJhbWlsbGFzL1RUUmFtaWxsYXNFeHRyYUxpZ2h0LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLFxuICAgICAgICB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy90dC1yYW1pbGxhcy9UVFJhbWlsbGFzRXh0cmFMaWdodC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvdHQtcmFtaWxsYXMvVFRSYW1pbGxhc0V4dHJhTGlnaHQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuQGZvbnQtZmFjZXtcbiAgICBmb250LWZhbWlseTpcIlRUIFJhbWlsbGFzIEV4dHJhTGlnaHQgSXRhbGljXCI7XG4gICAgICAgIHNyYzogdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvdHQtcmFtaWxsYXMvVFRSYW1pbGxhc0V4dHJhTGlnaHRJdGFsaWMuZW90PyNpZWZpeFwiKTtcbiAgICAgICAgc3JjOiB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy90dC1yYW1pbGxhcy9UVFJhbWlsbGFzRXh0cmFMaWdodEl0YWxpYy5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVvdFwiKSxcbiAgICAgICAgdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvdHQtcmFtaWxsYXMvVFRSYW1pbGxhc0V4dHJhTGlnaHRJdGFsaWMud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgIHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3R0LXJhbWlsbGFzL1RUUmFtaWxsYXNFeHRyYUxpZ2h0SXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cbkBmb250LWZhY2V7XG4gICAgZm9udC1mYW1pbHk6XCJUVCBSYW1pbGxhcyBCb2xkXCI7XG4gICAgICAgIHNyYzogdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvdHQtcmFtaWxsYXMvVFRSYW1pbGxhc0JvbGQuZW90PyNpZWZpeFwiKTtcbiAgICAgICAgc3JjOiB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy90dC1yYW1pbGxhcy9UVFJhbWlsbGFzQm9sZC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVvdFwiKSxcbiAgICAgICAgdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvdHQtcmFtaWxsYXMvVFRSYW1pbGxhc0JvbGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgIHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3R0LXJhbWlsbGFzL1RUUmFtaWxsYXNCb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cblxuLy9GT05UIFZBUklBQkxFU1xuJG1hY3lzOiAnTWFjeXMgU2FucyBSZWd1bGFyJywgJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRtYWN5c21lZGl1bTogJ01hY3lzIFNhbnMgTWVkaXVtJywgJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRtYWN5c2JvbGQ6ICdNYWN5cyBTYW5zIEJvbGQnLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuJG1hY3lzeGJvbGQ6IFwiTWFjeXMgU2FucyBYQm9sZFwiLCAnQXJpYWwgQmxhY2snLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRyYW06ICdUVCBSYW1pbGxhcyBSZWd1bGFyJywgR2VvcmdpYSwgVGltZXMsIHNlcmlmO1xuJHJhbXhsOiAnVFQgUmFtaWxsYXMgRXh0cmFsaWdodCcsIEdlb3JnaWEsIFRpbWVzLCBzZXJpZjtcbiRyYW14bGk6ICdUVCBSYW1pbGxhcyBFeHRyYWxpZ2h0IEl0YWxpYycsIEdlb3JnaWEsIFRpbWVzLCBzZXJpZjtcbiRyYW1ib2xkOiAnVFQgUmFtaWxsYXMgQm9sZCcsIEdlb3JnaWEsIFRpbWVzLCBzZXJpZjsiLCIjY2FtcGFpZ24gI21ha2V1cC1zZXJ2aWNlcyB7XG4gICAgd2lkdGg6IDE0NDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICNicmVhZGNydW1icyB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkbWFjeXM7XG4gICAgICAgIEBpbmNsdWRlIG1xKG1vYmlsZSkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IHZ3KDEwKTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2dygyMCk7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZ3KDEwKTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtcShkZXNrLXNtKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogdncoMjMsIDE0NDApO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZ3KDQ2LCAxNDQwKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMTQsIDE0NDApO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZ3KDI0LCAxNDQwKTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtcShtYXgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyM3B4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQ2cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNzY3Njc2O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgI25hdmlnYXRpb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICBuYXYge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHdpZHRoOiA0OTBweDtcbiAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0cHg7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRtYWN5c21lZGl1bTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIGJsYWNrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5iYW5uZXIge1xuICAgICAgICAmI2hlcm8tMjAyMyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbm5lci1iYW5uZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDE4NnB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE2MHB4O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblxuICAgICAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJG1hY3lzO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDU2cHg7XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiB4ZC1sZXR0ZXItc3BhY2luZygtNDAsIDU2KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmI3RleHQtYmFubmVyIHtcbiAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAmLWlubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDExNTJweDtcblxuICAgICAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJHJhbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHhkLWxldHRlci1zcGFjaW5nKC00MCwgMzYpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi13cmFwIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNDhweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjVweDtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1vYmlsZS1vbmx5IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAudGlsZXMtY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAudGlsZS1jb250YWluZXIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNzVweDtcbiAgICAgICAgICAgIHdpZHRoOiAzNDJweDtcblxuICAgICAgICAgICAgLnRpbGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyNTRweDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgJi1jb3B5IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJG1hY3lzO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJHJhbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogeGQtbGV0dGVyLXNwYWNpbmcoLTMwLCA0NSk7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxNDM5cHgpIHtcbiAgICAgICAgd2lkdGg6IHZ3KDE0ODAsIDE0ODApO1xuICAgICAgICBwYWRkaW5nOiAwIHZ3KDIwLCAxNDgwKTtcblxuICAgICAgICAjbmF2aWdhdGlvbiB7XG5cbiAgICAgICAgICAgIG5hdiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHZ3KDQ5MCwgMTQ4MCk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiB2dyg4MCwgMTQ4MCk7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZ3KDQsIDE0ODApO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZ3KDE4LCAxNDgwKTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZ3KDIyLCAxNDgwKTtcblxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogdncoNCwgMTQ4MCkgc29saWQgYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmFubmVyIHtcbiAgICAgICAgICAgICYjaGVyby0yMDIzIHtcblxuICAgICAgICAgICAgICAgIC5pbm5lci1iYW5uZXIge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IHZ3KDE4NiwxNDQwKTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdncoMTYwLCAxNDgwKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG4gICAgICAgICAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoNTYsIDE0ODApO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHhkLWxldHRlci1zcGFjaW5nKC00MCwgNTYpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmI3RleHQtYmFubmVyIHtcbiAgICAgICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICYtaW5uZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHZ3KDExNTIsIDE0ODApO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2dygzNiwgMTQ4MCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZ3KDUwLCAxNDgwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYtd3JhcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2dyg0OCwgMTQ4MCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2dyg2NSwgMTQ4MCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudGlsZXMtY29udGFpbmVyIHtcblxuICAgICAgICAgICAgLnRpbGUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2dyg3NSwgMTQ4MCk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHZ3KDM0MiwgMTQ4MCk7XG5cbiAgICAgICAgICAgICAgICAudGlsZSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogdncoMjU0LCAxNDgwKTtcblxuICAgICAgICAgICAgICAgICAgICAmLWNvcHkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdncoMTgsIDE0ODApO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2dygxNCwgMTQ4MCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdncoMjIsIDE0ODApO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2dygxMCwxNDgwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMzUsIDE0ODApO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHhkLWxldHRlci1zcGFjaW5nKC0zMCwgNDUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZ3KDM1LCAxNDgwKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NzY3cHgpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgI25hdmlnYXRpb24ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG5cbiAgICAgICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBuYXYge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2dygxMCk7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdncoMTApO1xuICAgICAgICAgICAgICAgIHdpZHRoOiB2dygzNzUpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogdncoNzYpO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2dygxNCk7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2dygyMCk7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCBibGFjaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5iYW5uZXIge1xuICAgICAgICAgICAgJiNoZXJvLTIwMjMge1xuICAgICAgICAgICAgICAgIC5pbm5lci1iYW5uZXIge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiB2dygxNzUpO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IHZ3KDE2OCk7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHZ3KDIxMCk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblxuICAgICAgICAgICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJG1hY3lzO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2dyg0NSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogeGQtbGV0dGVyLXNwYWNpbmcoLTMwLCA0NSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdncoNDUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiN0ZXh0LWJhbm5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCB2dygyMCk7XG5cbiAgICAgICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICYtaW5uZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMjUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2dygzNSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHhkLWxldHRlci1zcGFjaW5nKC00MCwgMjUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi13cmFwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDQ1KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZ3KDU2KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXNrdG9wLW9ubHkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tb2JpbGUtb25seSB7XG4gICAgICAgICAgICBkaXNwbGF5OiB1bnNldDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aWxlcy1jb250YWluZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMCB2dygyMCk7XG5cbiAgICAgICAgICAgIC50aWxlLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHZ3KDMzNSk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdncoMjgpO1xuXG4gICAgICAgICAgICAgICAgLnRpbGUge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHZ3KDMzNSk7XG5cbiAgICAgICAgICAgICAgICAgICAgJi1jb3B5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDE0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiB2dygzMTUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2dygxNik7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdncoMjEpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHhkLWxldHRlci1zcGFjaW5nKDAsIDM1KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2dygzNSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdncoNDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHhkLWxldHRlci1zcGFjaW5nKC0xMCwgMzUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIkBtaXhpbiBtcSgkcG9pbnQpIHtcbiAgQGlmICRwb2ludCA9PSBtb2JpbGUge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NTBweCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRwb2ludCA9PSBkZXNrLXNtIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzUxcHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkcG9pbnQgPT0gZGVzay1sZyB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRwb2ludCA9PSBtYXgge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDQwcHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gdGhpcyBmdW5jdGlvbiBjb252ZXJ0cyBhZG9iZSBYRCBsZXR0ZXIgc3BhY2luZyBzbyB0aGF0IHRoZSBicm93c2VyIGNhbiB1c2UgaXQgYXMgaW50ZW5kZWQgaW4gdGhlIGFkb2JlIFhEIGZpbGUuXG4vLyBGb3IgZXhhbXBsZSAtIGEgZm9udCBpbiBBZG9iZSBYRCBpcyAyNXB4LCBsZXR0ZXItc3BhY2luZyBpcyAtNDAsIGxpbmUtaGVpZ2h0IGlzIDM1LiB5b3Ugd291bGQgdXNlOlxuLy8gbGV0dGVyLXNwYWNpbmc6IHhkLWxldHRlci1zcGFjaW5nKC00MCwgMjUpO1xuXG5AZnVuY3Rpb24geGQtbGV0dGVyLXNwYWNpbmcoJGxldHRlclNwYWNlSW5YRCwgJGZvbnRTaXplaW5YRCkge1xuICAgIEByZXR1cm4gKCgkbGV0dGVyU3BhY2VJblhEICogJGZvbnRTaXplaW5YRCkvMTAwMCtweCk7XG59XG5cbi8vIHRoaXMgZnVuY3Rpb24gd2lsbCBjb252ZXJ0IHBpeGVscyhweCkgdG8gdmVydGljYWwgd2lkdGggKHZ3KSB0byBhbGxvdyBldmVyeXRoaW5nIHRvIHNjYWxlIHByb3Blcmx5LlxuLy8gdGhlIGZpcnN0IHBhcmFtZXRlciBpcyB0aGUgYW1vdW50IG9mIHBpeGVscywgdGhlIHNlY29uZCBpcyB0aGUgc2l6ZSBvZiB0aGUgdmlld3BvcnQgYXQgdGhlIHdpZHRoIHlvdSB1c2Vcbi8vIHRoYXQgcGl4ZWwgbWVhc3VyZW1lbnQuIFRoZSBzZWNvbmQgd2lsbCBkZWZhdWx0IHRvIDM3NSBpZiBubyBhbW91bnQgaXMgZW50ZXJlZC4gXG4vLyBGb3IgZXhhbXBsZSAtIHlvdSB3YW50IHRvIGdpdmUgYW4gZWxlbWVudCBhIDQwcHggbWFyZ2luLXRvcCBhdCA3NTBweCB3aWRlIHZpZXdwb3J0LiBZb3Ugd291bGQgdXNlOlxuLy8gbWFyZ2luLXRvcDogdncoNDAsNzUwKTsgXG5cbkBmdW5jdGlvbiB2dygkcHgsICR2aWV3cG9ydDogMzc1KSB7XG4gICAgQHJldHVybiAoKCRweC8kdmlld3BvcnQpKjEwMHZ3KTtcbn0iLCIjY2FtcGFpZ24gI21ha2V1cC1zZXJ2aWNlcy5iZWF1dHktc2VydmljZXMge1xuICAgICNuYXZpZ2F0aW9uIG5hdiBhIHtcbiAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1vZi10eXBlKDIpIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCBibGFjaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5iYW5uZXIge1xuICAgICAgICAmI2hlcm8tMjAyMyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIC5pbm5lci1iYW5uZXIge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDgwcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJsb2NrIHtcbiAgICAgICAgJi1jb250YWluZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgICAgICAgICYuY2xvc2VkIHtcbiAgICAgICAgICAgICAgICAuYmxvY2sge1xuICAgICAgICAgICAgICAgICAgICAmLWNvbnRhaW5lcl9fdG9nZ2xlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fMCB7XG4gICAgICAgICAgICAgICAgLmJsb2NrLWNvbnRhaW5lcl9fbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMTNweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfXzEge1xuICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNTRweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfXzIge1xuICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogODVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfXzMge1xuICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfXzQge1xuICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfXzUge1xuICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfXzYge1xuICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOThweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfXzcge1xuICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogODZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfXzgge1xuICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogODRweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfXzkge1xuICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNzlweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfXzEwIHtcbiAgICAgICAgICAgICAgICAuYmxvY2stY29udGFpbmVyX19sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDk4cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX18xMSB7XG4gICAgICAgICAgICAgICAgLmJsb2NrLWNvbnRhaW5lcl9fbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4OXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fMTIge1xuICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNzhweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfXzEzIHtcbiAgICAgICAgICAgICAgICAuYmxvY2stY29udGFpbmVyX19sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDkwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX18xNCB7XG4gICAgICAgICAgICAgICAgLmJsb2NrLWNvbnRhaW5lcl9fbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA3NHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fMTUge1xuICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNjZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfXzE2IHtcbiAgICAgICAgICAgICAgICAuYmxvY2stY29udGFpbmVyX19sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDgxcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19sb2dvIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MjJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fdG9nZ2xlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1MHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjFzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1jb250ZW50IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMjAwMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDQ1cHggMzBweCA0NHB4IDMwcHg7XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJG1hY3lzYm9sZDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkbWFjeXM7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjFweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbCB7XG4gICAgICAgICAgICAgICAgJi0xIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLTIge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDkwcHg7XG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDAgMSA1MCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudi1zZXBlcmF0b3Ige1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDQ1cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogNzUwLjVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMTA1cHgpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNENkQ2RDY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDE0MzlweCkge1xuICAgICAgICAjbmF2aWdhdGlvbiBuYXYgYSB7XG4gICAgICAgICAgICAmOm50aC1vZi10eXBlKDIpIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiB2dyg0LCAxNDgwKSBzb2xpZCBibGFjaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5iYW5uZXIge1xuICAgICAgICAgICAgJiNoZXJvLTIwMjMge1xuXG4gICAgICAgICAgICAgICAgLmlubmVyLWJhbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IHZ3KDgwLCAxNDgwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmxvY2sge1xuICAgICAgICAgICAgJi1jb250YWluZXIge1xuXG4gICAgICAgICAgICAgICAgJi5jbG9zZWQge1xuICAgICAgICAgICAgICAgICAgICAuYmxvY2sge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgdncoMzAsIDE0ODApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IHZ3KDIsIDE0ODApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fMCB7XG4gICAgICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KDExMywgMTQ4MCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX18xIHtcbiAgICAgICAgICAgICAgICAgICAgLmJsb2NrLWNvbnRhaW5lcl9fbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdncoNTQsIDE0ODApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fMiB7XG4gICAgICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KDg1LCAxNDgwKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfXzMge1xuICAgICAgICAgICAgICAgICAgICAuYmxvY2stY29udGFpbmVyX19sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2dyg5MCwgMTQ4MCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX180IHtcbiAgICAgICAgICAgICAgICAgICAgLmJsb2NrLWNvbnRhaW5lcl9fbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdncoOTAsIDE0ODApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fNSB7XG4gICAgICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KDkwLCAxNDgwKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfXzYge1xuICAgICAgICAgICAgICAgICAgICAuYmxvY2stY29udGFpbmVyX19sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2dyg5OCwgMTQ4MCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX183IHtcbiAgICAgICAgICAgICAgICAgICAgLmJsb2NrLWNvbnRhaW5lcl9fbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdncoODYsIDE0ODApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fOCB7XG4gICAgICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KDg0LCAxNDgwKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfXzkge1xuICAgICAgICAgICAgICAgICAgICAuYmxvY2stY29udGFpbmVyX19sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2dyg3OSwgMTQ4MCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX18xMCB7XG4gICAgICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KDk4LCAxNDgwKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfXzExIHtcbiAgICAgICAgICAgICAgICAgICAgLmJsb2NrLWNvbnRhaW5lcl9fbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdncoODksIDE0ODApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fMTIge1xuICAgICAgICAgICAgICAgICAgICAuYmxvY2stY29udGFpbmVyX19sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2dyg3OCwgMTQ4MCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX18xMyB7XG4gICAgICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KDkwLCAxNDgwKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfXzE0IHtcbiAgICAgICAgICAgICAgICAgICAgLmJsb2NrLWNvbnRhaW5lcl9fbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdncoNzQsIDE0ODApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fMTUge1xuICAgICAgICAgICAgICAgICAgICAuYmxvY2stY29udGFpbmVyX19sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2dyg2NiwgMTQ4MCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX18xNiB7XG4gICAgICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KDgxLCAxNDgwKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2dyg4LCAxNDgwKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdncoOCwgMTQ4MCk7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiB2dyg0MjIsIDE0ODApO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX3RvZ2dsZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdncoMTUwLCAxNDgwKTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHZ3KDI1LCAxNDgwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtY29udGVudCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMjAwMHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZ3KDQ1LCAxNDgwKSB2dygzMCwgMTQ4MCkgdncoNDQsIDE0ODApIHZ3KDMwLCAxNDgwKTtcblxuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2dygxOCwgMTQ4MCk7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2dygyMCwgMTQ4MCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMTQsIDE0ODApO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdncoMjAsIDE0ODApO1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogdncoLTAuMSwgMTQ4MCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmNvbCB7XG4gICAgICAgICAgICAgICAgICAgICYtMiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZ3KDkwLCAxNDgwKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC52LXNlcGVyYXRvciB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogdncoNDUsIDE0ODApO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiB2dyg3NTAuNSwgMTQ4MCk7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiB2dygxLCAxNDgwKTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSB2dygxMDUsIDE0ODApKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuYmFubmVyI2hlcm8tMjAyMyAuaW5uZXItYmFubmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiB2dygyNDApO1xuICAgICAgICAgICAgcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgbGVmdDogdncoMjEwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ibG9jayB7XG4gICAgICAgICAgICAmLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgJl9fMCB7XG4gICAgICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KDI0KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfXzEge1xuICAgICAgICAgICAgICAgICAgICAuYmxvY2stY29udGFpbmVyX19sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2dygyNCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX18yIHtcbiAgICAgICAgICAgICAgICAgICAgLmJsb2NrIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICYtY29udGFpbmVyX19sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdncoMjQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fMyB7XG4gICAgICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KDI0KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfXzQge1xuICAgICAgICAgICAgICAgICAgICAuYmxvY2stY29udGFpbmVyX19sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2dygyNCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX181IHtcbiAgICAgICAgICAgICAgICAgICAgLmJsb2NrLWNvbnRhaW5lcl9fbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdncoMjQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fNiB7XG4gICAgICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KDI0KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfXzcge1xuICAgICAgICAgICAgICAgICAgICAuYmxvY2stY29udGFpbmVyX19sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2dygyNCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX184IHtcbiAgICAgICAgICAgICAgICAgICAgLmJsb2NrLWNvbnRhaW5lcl9fbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdncoMjQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fOSB7XG4gICAgICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KDI0KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfXzEwIHtcbiAgICAgICAgICAgICAgICAgICAgLmJsb2NrLWNvbnRhaW5lcl9fbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdncoMjQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fMTEge1xuICAgICAgICAgICAgICAgICAgICAuYmxvY2stY29udGFpbmVyX19sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2dygyNCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX18xMiB7XG4gICAgICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KDI0KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfXzEzIHtcbiAgICAgICAgICAgICAgICAgICAgLmJsb2NrLWNvbnRhaW5lcl9fbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdncoMjQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fMTQge1xuICAgICAgICAgICAgICAgICAgICAuYmxvY2stY29udGFpbmVyX19sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2dygyNCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX18xNSB7XG4gICAgICAgICAgICAgICAgICAgIC5ibG9jay1jb250YWluZXJfX2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KDI0KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfXzE2IHtcbiAgICAgICAgICAgICAgICAgICAgLmJsb2NrLWNvbnRhaW5lcl9fbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdncoMjQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogdncoMjM3KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX190b2dnbGUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZ3KDI0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtY29udGVudCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogdncoMjIpIHZ3KDI0KTtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZ3KDE1KTtcblxuICAgICAgICAgICAgICAgICAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdncoMTYpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZ3KDIwKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2dygxNik7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2dygyMCk7XG5cbiAgICAgICAgICAgICAgICAgICAgJi5wLXdpdGgtc3Ryb25nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuY29sIHtcbiAgICAgICAgICAgICAgICAgICAgJi0xIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi0yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdncoMTYpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAudi1zZXBlcmF0b3Ige1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIgLypcbiAgICBUaGlzIGlzIHdoZXJlIHlvdSBhZGQgeW91ciBTQ1NTLiAgSXQgc2hvdWxkIGFsbCBiZSBzY29wZWQgaW5zaWRlIHRoZSAjY2FtcGFpZ24gbm9kZSB0byBwcmV2ZW50IHlvdXIgU0NTU1xuICAgIGZyb20gbGVha2luZyBvdXQgYW5kIGFmZmVjdGluZyB0aGUgY29tbW9uIGhlYWRlciBvciBmb290ZXIuICBEbyBub3QgZGVsZXRlIHRoZSAjY2FtcGFpZ24gc2VsZWN0b3IuXG4qL1xuXG4gLnRlc3Qge1xuICAgZGlzcGxheTogYmxvY2s7XG4gfVxuXG4gQGZvbnQtZmFjZSB7XG4gICBmb250LWZhbWlseTogXCJUVCBSYW1pbGxhcyBSZWd1bGFyXCI7XG4gICBzcmM6IHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3R0LXJhbWlsbGFzL1RUUmFtaWxsYXNSZWd1bGFyLmVvdD8jaWVmaXhcIik7XG4gICBzcmM6IHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3R0LXJhbWlsbGFzL1RUUmFtaWxsYXNSZWd1bGFyLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLFxuICAgICB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy90dC1yYW1pbGxhcy9UVFJhbWlsbGFzUmVndWxhci53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvdHQtcmFtaWxsYXMvVFRSYW1pbGxhc1JlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuIH1cblxuIEBmb250LWZhY2Uge1xuICAgZm9udC1mYW1pbHk6IFwiVFQgUmFtaWxsYXMgRXh0cmFMaWdodFwiO1xuICAgc3JjOiB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy90dC1yYW1pbGxhcy9UVFJhbWlsbGFzRXh0cmFMaWdodC5lb3Q/I2llZml4XCIpO1xuICAgc3JjOiB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy90dC1yYW1pbGxhcy9UVFJhbWlsbGFzRXh0cmFMaWdodC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVvdFwiKSxcbiAgICAgdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvdHQtcmFtaWxsYXMvVFRSYW1pbGxhc0V4dHJhTGlnaHQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgIHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3R0LXJhbWlsbGFzL1RUUmFtaWxsYXNFeHRyYUxpZ2h0LndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiB9XG5cbiBAZm9udC1mYWNlIHtcbiAgIGZvbnQtZmFtaWx5OiBcIlRUIFJhbWlsbGFzIEV4dHJhTGlnaHQgSXRhbGljXCI7XG4gICBzcmM6IHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3R0LXJhbWlsbGFzL1RUUmFtaWxsYXNFeHRyYUxpZ2h0SXRhbGljLmVvdD8jaWVmaXhcIik7XG4gICBzcmM6IHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3R0LXJhbWlsbGFzL1RUUmFtaWxsYXNFeHRyYUxpZ2h0SXRhbGljLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLFxuICAgICB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy90dC1yYW1pbGxhcy9UVFJhbWlsbGFzRXh0cmFMaWdodEl0YWxpYy53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvdHQtcmFtaWxsYXMvVFRSYW1pbGxhc0V4dHJhTGlnaHRJdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuIH1cblxuIEBmb250LWZhY2Uge1xuICAgZm9udC1mYW1pbHk6IFwiVFQgUmFtaWxsYXMgQm9sZFwiO1xuICAgc3JjOiB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy90dC1yYW1pbGxhcy9UVFJhbWlsbGFzQm9sZC5lb3Q/I2llZml4XCIpO1xuICAgc3JjOiB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy90dC1yYW1pbGxhcy9UVFJhbWlsbGFzQm9sZC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVvdFwiKSxcbiAgICAgdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvdHQtcmFtaWxsYXMvVFRSYW1pbGxhc0JvbGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgIHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL3R0LXJhbWlsbGFzL1RUUmFtaWxsYXNCb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiB9XG5cbiBAZm9udC1mYWNlIHtcbiAgIGZvbnQtZmFtaWx5OiBcIk1hY3lzIFNhbnMgUmVndWxhclwiO1xuICAgc3JjOiB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9tYWN5cy1zYW5zL01hY3lzU2Fucy5lb3Q/I2llZml4XCIpO1xuICAgc3JjOiB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9tYWN5cy1zYW5zL01hY3lzU2Fucy5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVvdFwiKSxcbiAgICAgdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvbWFjeXMtc2Fucy9NYWN5c1NhbnMud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgIHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL21hY3lzLXNhbnMvTWFjeXNTYW5zLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiB9XG5cbiBAZm9udC1mYWNlIHtcbiAgIGZvbnQtZmFtaWx5OiBcIk1hY3lzIFNhbnMgTWVkaXVtXCI7XG4gICBzcmM6IHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL21hY3lzLXNhbnMvTWFjeXNTYW5zTWQuZW90PyNpZWZpeFwiKTtcbiAgIHNyYzogdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvbWFjeXMtc2Fucy9NYWN5c1NhbnNNZC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVvdFwiKSxcbiAgICAgdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvbWFjeXMtc2Fucy9NYWN5c1NhbnNNZC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvbWFjeXMtc2Fucy9NYWN5c1NhbnNNZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gfVxuXG4gQGZvbnQtZmFjZSB7XG4gICBmb250LWZhbWlseTogXCJNYWN5cyBTYW5zIEJvbGRcIjtcbiAgIHNyYzogdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvbWFjeXMtc2Fucy9NYWN5c1NhbnNCZC5lb3Q/I2llZml4XCIpO1xuICAgc3JjOiB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9tYWN5cy1zYW5zL01hY3lzU2Fuc0JkLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLFxuICAgICB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9tYWN5cy1zYW5zL01hY3lzU2Fuc0JkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgICB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9tYWN5cy1zYW5zL01hY3lzU2Fuc0JkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiB9XG5cbiBAZm9udC1mYWNlIHtcbiAgIGZvbnQtZmFtaWx5OiBcIk1hY3lzIFNhbnMgWEJvbGRcIjtcbiAgIHNyYzogdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvbWFjeXMtc2Fucy9NYWN5c1NhbnNYQmQuZW90PyNpZWZpeFwiKTtcbiAgIHNyYzogdXJsKFwiLy9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL2RpZ2l0YWwtbWVkaWEtZm9udHMvbWFjeXMtc2Fucy9NYWN5c1NhbnNYQmQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlb3RcIiksXG4gICAgIHVybChcIi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9kaWdpdGFsLW1lZGlhLWZvbnRzL21hY3lzLXNhbnMvTWFjeXNTYW5zWEJkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgICB1cmwoXCIvL3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZGlnaXRhbC1tZWRpYS1mb250cy9tYWN5cy1zYW5zL01hY3lzU2Fuc1hCZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gfVxuXG4gI2NhbXBhaWduIHtcbiAgIG1heC13aWR0aDogMTQ0MHB4O1xuICAgbWFyZ2luOiAwIGF1dG87XG4gfVxuXG4gI2NhbXBhaWduIHtcbiAgIC5tYXgtb25seSB7XG4gICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgIH1cbiAgIH1cblxuICAgYiB7XG4gICAgIGZvbnQtZmFtaWx5OiBcIk1hY3lzIFNhbnMgQm9sZFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgIH1cblxuICAgI2Jyb3dCYXJIZXJvIHtcbiAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICBtYXJnaW4tdG9wOiAyNnB4O1xuXG4gICB9XG5cbiAgICNicm93QmFySGVybyAuY29sdW1uIHtcbiAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICBtYXJnaW46IDA7XG4gICAgIHBhZGRpbmc6IDA7XG4gICB9XG5cbiAgICNicm93QmFySGVybyBwaWN0dXJlIHtcbiAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICB6LWluZGV4OiAxO1xuICAgfVxuXG4gICAvLyNicm93QmFySGVybyBhIHtcbiAgIC8vICBkaXNwbGF5OiBibG9jaztcbiAgIC8vICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAvLyAgei1pbmRleDogMjtcbiAgIC8vICB0b3A6IDY0JTtcbiAgIC8vICByaWdodDogMjUlO1xuICAgLy8gIHdpZHRoOiAxMS43NSU7XG4gICAvLyAgaGVpZ2h0OiAyMCU7XG4gICAvLyAgLypiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7Ki9cbiAgIC8vICAvKm9wYWNpdHk6IDAuNTsqL1xuICAgLy99XG5cbiAgICNicm93QmFySGVybyBhI3Nob3Bfbm93IHtcbiAgICAgcmlnaHQ6IDkuNzUlO1xuICAgfVxuXG4gICAjYnJvd0JhclByb2R1Y3RzIHtcbiAgICAgLy8gbWF4LXdpZHRoOiAxMzAwcHg7XG4gICAgIHdpZHRoOiAxMDAlO1xuICAgICBtYXJnaW46IDkycHggYXV0byAyLjUlO1xuICAgICBwYWRkaW5nOiAwO1xuICAgICAvL2N1cnNvcjogcG9pbnRlcjtcbiAgICAgZGlzcGxheTogZmxleDtcbiAgICAgbWFyZ2luLWJvdHRvbTogMTMwcHg7XG5cbiAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAgICBtYXJnaW4tdG9wOiA0NXB4O1xuICAgICB9XG4gICB9XG5cbiAgICNicm93QmFyUHJvZHVjdHMsXG4gICAjYnJvd0JhclN0YXRlcyB7XG4gICAgIHBhZGRpbmc6IDAgMjRweDtcblxuICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgICAgICBwYWRkaW5nOiAwO1xuICAgICB9XG4gICB9XG5cbiAgICNicm93QmFyQnJvd3MsXG4gICAjYnJvd0JhckZhY2lhbFdheCxcbiAgICNicm93QmFyTGFzaGVzIHtcbiAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgfVxuXG4gICAjYnJvd0JhclByb2R1Y3RzIGRpdi5icm93QmFyUHJvZHVjdCB7XG4gICAgIHdpZHRoOiAyMCU7XG4gICAgIC8vIG1hcmdpbjogYXV0bztcbiAgICAgcGFkZGluZzogMDtcbiAgICAgLy9mbG9hdDogbGVmdDtcbiAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgbWFyZ2luLXJpZ2h0OiAyNHB4O1xuICAgICB9XG5cbiAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICAgICAgIH1cbiAgICAgfVxuICAgfVxuXG4gICAjYnJvd0JhclByb2R1Y3RzIGRpdiNicm93QmFyRmFjaWFsV2F4IHt9XG5cbiAgIGRpdi5icm93QmFyUHJvZHVjdDpsYXN0LWNoaWxkKCkge1xuICAgICBmbG9hdDogcmlnaHQ7XG4gICB9XG5cbiAgIGRpdi5icm93QmFyUHJvZHVjdCBwaWN0dXJlIHtcbiAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgIG1hcmdpbi1ib3R0b206IDIuNSU7XG4gICB9XG5cbiAgIGRpdi5icm93QmFyUHJvZHVjdCBpbWcge1xuICAgICB3aWR0aDogMTAwJVxuICAgfVxuXG4gICBkaXYuYnJvd0JhclByb2R1Y3QgcCB7XG4gICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgbGluZS1oZWlnaHQ6IGNhbGMoMjIvMTgpO1xuICAgICBmb250LWZhbWlseTogXCJNYWN5cyBTYW5zIFJlZ3VsYXJcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgIGNvbG9yOiAjMDAwO1xuICAgICAvLyBtYXJnaW46IDAgYXV0byAxLjI1JTtcbiAgICAgd2lkdGg6IDEwMCU7XG4gICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgIG1hcmdpbi10b3A6IDI0cHg7XG5cbiAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gICAgICAgd2lkdGg6IDgwJTtcbiAgICAgfVxuICAgfVxuXG4gICBkaXYuYnJvd0JhclByb2R1Y3QgcC5icm93QmFyUHJvZHVjdE5hbWUge1xuICAgICBmb250LWZhbWlseTogXCJNYWN5cyBTYW5zIEJvbGRcIiwgYXJpYWwsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcbiAgICAgbWFyZ2luLXRvcDogLTQlO1xuICAgfVxuXG4gICBuYXYjYnJvd0JhclN0YXRlTGlua3Mge1xuICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICBwYWRkaW5nOiAyNHB4O1xuICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICBsaW5lLWhlaWdodDogMS4zZW07XG4gICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgIH1cblxuICAgc2VjdGlvbiNicm93QmFyU3RhdGVzIHtcbiAgICAgbWFyZ2luLWJvdHRvbTogNSU7XG4gICAgIG1hcmdpbi10b3A6IDQycHg7XG4gICAgIC8vIGNvbHVtbi13aWR0aDogNDAwcHg7XG4gICAgIGNvbHVtbi1nYXA6IDJlbTtcbiAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgIGNvbHVtbi1jb3VudDogMTtcblxuICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAgfVxuXG4gICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgIGNvbHVtbi1jb3VudDogMztcbiAgICAgfVxuICAgfVxuXG4gICBkaXYuYnJvd0JhclN0YXRlIHtcbiAgICAgbWFyZ2luOiAwIGF1dG8gNiU7XG4gICAgIHBhZGRpbmc6IDIlIDAlIDAlO1xuICAgfVxuXG4gICAvLyBkaXYuYnJvd0JhclN0YXRlOm50aC1jaGlsZChldmVuKSB7XG4gICAvLyAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gICAvLyB9XG5cbiAgIGRpdi5icm93QmFyU3RhdGUgaDIge1xuICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgbWFyZ2luOiAwIDAgMSU7XG4gICAgIHBhZGRpbmc6IDA7XG4gICAgIGNvbG9yOiAjMDAwO1xuICAgfVxuXG4gICBkaXYuYnJvd0JhclN0YXRlIC5jb2x1bW4ge1xuICAgICB3aWR0aDogMTAwJTtcbiAgIH1cblxuICAgZGl2LmJyb3dCYXJTdGF0ZSBociB7XG4gICAgIG1hcmdpbjogMS4yNXJlbSAwO1xuICAgICBib3JkZXI6IDA7XG4gICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjREVERURFO1xuICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuXG4gICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgbWFyZ2luOiAwLjVyZW0gMDtcbiAgICAgfVxuICAgfVxuXG4gICAuc3RvcmUtaW5mbyB7XG4gICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgfVxuXG4gICAuc3RvcmUtbmFtZSB7XG4gICAgIC8vIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAvLyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgfVxuXG5cbiAgIC5iYWNrLXRvLXRvcCB7XG4gICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICBtYXJnaW46IDA7XG4gICAgIHBhZGRpbmc6IDA7XG4gICB9XG5cbiAgIC5iYWNrLXRvLXRvcCBhIHtcbiAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICBjb2xvcjogIzAwMDtcbiAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICAgLy8gdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgIH1cblxuXG4gICAjYmVhdXR5SHViQmFubmVyIHtcbiAgICAgY29sb3I6ICMwMDA7XG4gICAgIGJhY2tncm91bmQtY29sb3I6ICNmM2U1ZTU7XG4gICAgIHdpZHRoOiA5NiU7XG4gICB9XG5cbiAgIHAuYmVhdXR5SHViQmFubmVyVGl0bGUge1xuICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDI1ZW07XG4gICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgIG1hcmdpbjogOS41JTtcbiAgICAgcGFkZGluZzogMDtcbiAgIH1cblxuICAgcC5iZWF1dHlIdWJCYW5uZXJUZXh0IHtcbiAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDI1ZW07XG4gICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgIG1hcmdpbjogOSUgMDtcbiAgICAgcGFkZGluZzogMDtcbiAgIH1cblxuICAgI2JlYXV0eUh1YkJhbm5lciBwaWN0dXJlIHtcbiAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgIG1hcmdpbjogMCAwIDAgMjcuNSU7XG4gICAgIHdpZHRoOiAxNTBweDtcbiAgIH1cblxuICAgYS5iZWF1dHlIdWJCYW5uZXJMaW5rIHtcbiAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgbWFyZ2luOiAyNS43NSUgNSU7XG4gICAgIHBhZGRpbmc6IDA7XG4gICB9XG5cblxuXG4gICAuYnJvd0Jhci1vdmVybGF5LFxuICAgLmJyb3dCYXItb3ZlcmxheS1zdG9yZSxcbiAgICNvdmVybGF5IHtcbiAgICAgZGlzcGxheTogbm9uZTtcbiAgIH1cblxuICAgI292ZXJsYXkge1xuICAgICBvcGFjaXR5OiAwLjg1O1xuICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgIHRvcDogMDtcbiAgICAgbGVmdDogMDtcbiAgICAgYm90dG9tOiAwO1xuICAgICByaWdodDogMDtcbiAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgIHdpZHRoOiAxMDAlO1xuICAgICBtaW4td2lkdGg6IDE0NDBweDtcbiAgICAgLyogaGVybyB3aWR0aCAqL1xuICAgICBoZWlnaHQ6IDk5OTlweDtcbiAgICAgei1pbmRleDogNTAwMDtcbiAgIH1cblxuICAgLmJyb3dCYXItb3ZlcmxheSB7XG4gICAgIHdpZHRoOiA1NjVweDtcbiAgICAgaGVpZ2h0OiAzMjBweDtcbiAgICAgcGFkZGluZzogODRweCAwIDAgMDtcbiAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICBsZWZ0OiA1MCU7XG4gICAgIHRvcDogNDBweDtcbiAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICB6LWluZGV4OiA1MDAxO1xuICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMjBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgICAgLW1vei1ib3gtc2hhZG93OiAwcHggMHB4IDIwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gICAgIGJveC1zaGFkb3c6IDBweCAwcHggMjBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgIH1cblxuICAgLmJyb3dCYXItb3ZlcmxheS1sb2dvIHtcbiAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICB9XG5cbiAgIC5icm93QmFyLW92ZXJsYXktc3RvcmUge1xuICAgICB3aWR0aDogNTY1cHg7XG4gICAgIGhlaWdodDogMzIwcHg7XG4gICAgIHBhZGRpbmc6IDg0cHggMCAwIDA7XG4gICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgbGVmdDogNTAlO1xuICAgICB0b3A6IDQwcHg7XG4gICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgei1pbmRleDogNTAwMTtcbiAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDIwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gICAgIC1tb3otYm94LXNoYWRvdzogMHB4IDBweCAyMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICAgICBib3gtc2hhZG93OiAwcHggMHB4IDIwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gICB9XG5cbiAgIC5icm93QmFyLW92ZXJsYXktbG9nby1zdG9yZSB7XG4gICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgfVxuXG5cblxuICAgI2Jyb3dCYXJDb250YWluZXIgLmJyb3dCYXItb3ZlcmxheSBwIHtcbiAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgfVxuXG5cbiAgICNicm93QmFyQ29udGFpbmVyIC5icm93QmFyLW92ZXJsYXkgcCB7XG4gICAgIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXQtTGlnaHRcIiwgaGVsdmV0aWNhLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgbWFyZ2luOiAwO1xuICAgICBwYWRkaW5nOiAwIDAgMzZweCAwO1xuICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICBjb2xvcjogIzAwMDtcbiAgIH1cblxuICAgLmJyb3dCYXItb3ZlcmxheSBhIHtcbiAgICAgY29sb3I6ICMwMDAwMDA7XG4gICB9XG5cbiAgIC5icm93QmFyLW92ZXJsYXkgYS5icm93QmFyLWJ1dHRvbiB7XG4gICAgIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXQtQm9sZFwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgIGxpbmUtaGVpZ2h0OiAzOHB4O1xuICAgICBoZWlnaHQ6IDM4cHg7XG4gICAgIHdpZHRoOiAxMjVweDtcbiAgICAgYm9yZGVyOiAxcHggc29saWQgZ3JleTtcbiAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgfVxuXG4gICAuYnJvd0Jhci1vdmVybGF5IGEuYnJvd0Jhci1idXR0b24tbGVmdCB7XG4gICAgIG1hcmdpbi1yaWdodDogNzBweDtcbiAgIH1cblxuICAgLmJyb3dCYXItb3ZlcmxheSBhIHtcbiAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgIH1cblxuICAgLmJyb3dCYXItb3ZlcmxheS1zdG9yZSBhIHtcbiAgICAgY29sb3I6ICMwMDAwMDA7XG4gICB9XG5cbiAgIC5icm93QmFyLW92ZXJsYXktc3RvcmUgYS5icm93QmFyLWJ1dHRvbiB7XG4gICAgIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXQtQm9sZFwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgIGxpbmUtaGVpZ2h0OiAzOHB4O1xuICAgICBoZWlnaHQ6IDM4cHg7XG4gICAgIHdpZHRoOiAxMjVweDtcbiAgICAgYm9yZGVyOiAxcHggc29saWQgZ3JleTtcbiAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgfVxuXG4gICAuYnJvd0Jhci1vdmVybGF5LXN0b3JlIGEuYnJvd0Jhci1idXR0b24tbGVmdCB7XG4gICAgIG1hcmdpbi1yaWdodDogNzBweDtcbiAgIH1cblxuICAgLmJyb3dCYXItb3ZlcmxheS1zdG9yZSBhIHtcbiAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgIH1cblxuXG5cbiAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcblxuICAgICAjYnJvd0JhclByb2R1Y3RzIGRpdi5icm93QmFyUHJvZHVjdCB7XG4gICAgICAgd2lkdGg6IDEwMCU7XG4gICAgIH1cblxuICAgICBkaXYuYnJvd0JhclByb2R1Y3QgcGljdHVyZSB7XG4gICAgICAgd2lkdGg6IDQwdnc7XG4gICAgICAgbWFyZ2luOiAxNnB4IGF1dG8gMi41JTtcbiAgICAgICBwYWRkaW5nOiAwO1xuICAgICB9XG5cbiAgICAgI2Jyb3dCYXJTbGlkZXIgZGl2LmJyb3dCYXJQcm9kdWN0IHAge1xuICAgICAgIG1hcmdpbjogMTZweCBhdXRvIDIuNSU7XG4gICAgIH1cblxuICAgICAjYnJvd0Jhckhlcm8ge31cblxuICAgICAjYnJvd0Jhckhlcm8gLmNvbHVtbiB7XG4gICAgICAgbWFyZ2luOiAwO1xuICAgICAgIHBhZGRpbmc6IDA7XG4gICAgIH1cblxuICAgICAjYnJvd0Jhckhlcm8gYSB7XG4gICAgICAgdG9wOiA0Ni4xdnc7XG4gICAgICAgd2lkdGg6IDE2LjZ2dztcbiAgICAgICBoZWlnaHQ6IDUuMnZ3O1xuICAgICB9XG5cbiAgICAgI2Jyb3dCYXJIZXJvIGEjc2hvd19vdmVybGF5IHtcbiAgICAgICBsZWZ0OiA5LjF2dztcbiAgICAgfVxuXG4gICAgICNicm93QmFySGVybyBhI3Nob3Bfbm93IHtcbiAgICAgICBsZWZ0OiAyOS40dnc7XG4gICAgIH1cblxuICAgICAvKioqKioqKiogZGlzcGxheSAzIGltYWdlcyBiZWxvdyBoZXJvIGFzIGNhcm91c2VsIGZvciBtb2JpbGUgcG9ydHJhaXQgb25seSAqKioqKioqKioqL1xuXG4gICAgICNicm93QmFyU2xpZGVyIHtcbiAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAvKmhlaWdodDogNTB2aDsqL1xuICAgICAgIG1hcmdpbjogNCUgYXV0byAyLjUlO1xuICAgICAgIHBhZGRpbmc6IDA7XG4gICAgIH1cblxuICAgICAjYnJvd0JhclNsaWRlciBkaXYuYnJvd0JhclByb2R1Y3Qge1xuICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAvLyBwYWRkaW5nOiAyLjUlIDI0cHggMDtcbiAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICAgICAgIH1cbiAgICAgfVxuXG4gICAgICNicm93QmFyU2xpZGVyIGRpdi5icm93QmFyUHJvZHVjdCBwaWN0dXJlIHtcbiAgICAgICB3aWR0aDogNDB2dztcbiAgICAgICBtYXJnaW46IDAgYXV0byAyLjUlO1xuICAgICAgIHBhZGRpbmc6IDA7XG4gICAgIH1cblxuICAgICAjYnJvd0JhclNsaWRlciBkaXYuYnJvd0JhclByb2R1Y3QgcCB7XG4gICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgIG1hcmdpbjogMTZweCBhdXRvIDEuMjUlO1xuICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgd2lkdGg6IDg4JTtcblxuICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgfVxuICAgICB9XG5cbiAgICAgI2Jyb3dCYXJTbGlkZXIgZGl2LmJyb3dCYXJQcm9kdWN0IHAuYnJvd0JhclByb2R1Y3ROYW1lIHtcbiAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICAgICB9XG5cbiAgICAgI2Jyb3dCYXJTbGlkZXIgZGl2I2Jyb3dCYXJCcm93cyBwIHtcbiAgICAgICAvKndpZHRoOiA4MCUgIWltcG9ydGFudDsqL1xuICAgICB9XG5cbiAgICAgI2Jyb3dCYXJTbGlkZXIgZGl2I2Jyb3dCYXJGYWNpYWxXYXggcCB7XG4gICAgICAgLyp3aWR0aDogODglOyovXG4gICAgIH1cblxuICAgICAjYnJvd0JhclNsaWRlciBkaXYjYnJvd0Jhckxhc2hlcyBwIHtcbiAgICAgICAvKndpZHRoOiA4OCU7Ki9cbiAgICAgfVxuXG4gICAgICNicm93QmFyU2xpZGVyIGRpdi5nbGlkZV9fYnVsbGV0cyB7XG4gICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgIH1cblxuICAgICAjYnJvd0JhclNsaWRlciBidXR0b24uZ2xpZGVfX2J1bGxldCB7XG4gICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICB3aWR0aDogMCAhaW1wb3J0YW50O1xuICAgICAgIHBhZGRpbmc6IDElO1xuICAgICAgIGJvcmRlci1jb2xvcjogI2UwMWEyYjtcbiAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTAxYTJiO1xuICAgICB9XG5cbiAgICAgI2Jyb3dCYXJTbGlkZXIgYnV0dG9uLmdsaWRlX19idWxsZXQtLWFjdGl2ZSB7XG4gICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICB3aWR0aDogMCAhaW1wb3J0YW50O1xuICAgICAgIHBhZGRpbmc6IDElO1xuICAgICAgIGJvcmRlci1jb2xvcjogI2FiMDAwMDtcbiAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWIwMDAwO1xuICAgICB9XG5cblxuICAgICBuYXYjYnJvd0JhclN0YXRlTGlua3Mge1xuICAgICAgIC8qbWFyZ2luOiAwIGF1dG87Ki9cbiAgICAgICBwYWRkaW5nOiA0JSAxMSU7XG4gICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgIGZvbnQtc2l6ZTogNXZ3O1xuICAgICB9XG5cbiAgICAgZGl2LmJyb3dCYXJTdGF0ZSBoMiB7XG4gICAgICAgZm9udC1zaXplOiA0LjV2dztcbiAgICAgICAvKmxldHRlci1zcGFjaW5nOiAwLjA1ZW07Ki9cbiAgICAgICAvKmxpbmUtaGVpZ2h0OiAxZW07Ki9cbiAgICAgICBtYXJnaW46IDIlIDAgNCU7XG4gICAgICAgLypwYWRkaW5nOiAwOyovXG4gICAgIH1cblxuICAgICBkaXYuYnJvd0JhclN0YXRlIHtcbiAgICAgICBtYXJnaW46IDAgYXV0byAxMyU7XG4gICAgICAgcGFkZGluZzogMiUgMCUgMCU7XG4gICAgIH1cblxuICAgICAuc3RvcmUtaW5mbyB7XG4gICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgIGxpbmUtaGVpZ2h0OiAxLjMzZW07XG5cbiAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgIH1cblxuICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgIH1cbiAgICAgfVxuXG4gICAgIC5iYWNrLXRvLXRvcCBhIHtcbiAgICAgICBmb250LXNpemU6IDMuMjV2dztcbiAgICAgfVxuXG4gICAgICNiZWF1dHlIdWJCYW5uZXIge1xuICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICB9XG5cbiAgICAgI2JlYXV0eUh1YkJhbm5lciBwaWN0dXJlIHtcbiAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICBtYXJnaW46IDAgMTAlIDAgNSU7XG4gICAgICAgLypwYWRkaW5nOiAwOyAqL1xuICAgICB9XG5cbiAgICAgcC5iZWF1dHlIdWJCYW5uZXJUaXRsZSB7XG4gICAgICAgZm9udC1zaXplOiA1LjV2dztcbiAgICAgICBsaW5lLWhlaWdodDogMS4xZW07XG4gICAgICAgbWFyZ2luOiAwO1xuICAgICAgIHBhZGRpbmc6IDglIDAgMCA1JTtcbiAgICAgfVxuXG4gICAgIGEuYmVhdXR5SHViQmFubmVyTGluayB7XG4gICAgICAgZm9udC1zaXplOiAzLjc1dnc7XG4gICAgICAgLypsaW5lLWhlaWdodDogMWVtOyovXG4gICAgICAgbWFyZ2luOiAwO1xuICAgICAgIHBhZGRpbmc6IDMuNSUgMCAwIDUlO1xuICAgICB9XG5cbiAgICAgI292ZXJsYXkge1xuICAgICAgIC8qaGVpZ2h0OiAxMDB2aDsqL1xuICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgfVxuXG4gICAgIC5icm93QmFyLW92ZXJsYXksXG4gICAgIC5icm93QmFyLW92ZXJsYXktc3RvcmUge1xuICAgICAgIHdpZHRoOiA5MHZ3O1xuICAgICAgIGhlaWdodDogNzV2aDtcbiAgICAgICBwYWRkaW5nOiAyMCUgNSUgMDtcbiAgICAgICB0b3A6IDEwdmg7XG4gICAgICAgYm94LXNoYWRvdzogMCAwIDIuNXZoIDAgcmdiYSgwLCAwLCAwLCAuNzUpO1xuICAgICB9XG5cbiAgICAgLmJyb3dCYXItb3ZlcmxheSBwLFxuICAgICAuYnJvd0Jhci1vdmVybGF5LXN0b3JlIHAge1xuICAgICAgIGZvbnQtc2l6ZTogNXZ3O1xuICAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICAgICBtYXJnaW46IDAgMCAxMCU7XG4gICAgICAgcGFkZGluZzogMDtcbiAgICAgfVxuXG4gICAgIC5icm93QmFyLW92ZXJsYXkgcCBhLFxuICAgICAuYnJvd0Jhci1vdmVybGF5LXN0b3JlIHAgYSB7XG4gICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgbWFyZ2luOiA1JSBhdXRvIDA7XG4gICAgICAgcGFkZGluZzogMDtcbiAgICAgfVxuXG4gICAgIC5icm93QmFyLW92ZXJsYXkgYS5icm93QmFyLWJ1dHRvbixcbiAgICAgLmJyb3dCYXItb3ZlcmxheS1zdG9yZSBhLmJyb3dCYXItYnV0dG9uIHtcbiAgICAgICBmb250LXNpemU6IDZ2dztcbiAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICB3aWR0aDogNjUlO1xuICAgICAgIG1hcmdpbjogMCBhdXRvIDUlO1xuICAgICAgIHBhZGRpbmc6IDMuNSUgMDtcbiAgICAgfVxuXG4gICAgIC5icm93QmFyLW92ZXJsYXkgYS5icm93QmFyLWJ1dHRvbi5icm93QmFyLWJ1dHRvbi1sZWZ0LFxuICAgICAuYnJvd0Jhci1vdmVybGF5LXN0b3JlIGEuYnJvd0Jhci1idXR0b24uYnJvd0Jhci1idXR0b24tbGVmdCB7XG4gICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICB9XG5cblxuXG4gICB9XG5cblxuICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjYwMHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuXG4gICAgICNiZWF1dHlIdWJCYW5uZXIgLm1lZGl1bS00IHtcbiAgICAgICB3aWR0aDogNTAlO1xuICAgICB9XG5cbiAgICAgI2JlYXV0eUh1YkJhbm5lciBbY2xhc3MqPWNvbHVtbl0rW2NsYXNzKj1jb2x1bW5dOmxhc3QtY2hpbGQge1xuICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICB9XG4gICB9XG5cblxuXG4gICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuXG4gICAgIC8qIGlQYWQgb25seSAqL1xuICAgICAuc2hvdy1mb3Itc21hbGwsXG4gICAgIC5oaWRlLWZvci1tZWRpdW0tdXAge1xuICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgIH1cblxuICAgICAuaGlkZS1mb3Itc21hbGwsXG4gICAgIC5zaG93LWZvci1tZWRpdW0tdXAge1xuICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgfVxuXG4gICAgIC5jb2x1bW4ubWVkaXVtLTQge1xuICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICB9XG5cbiAgICAgI2JlYXV0eUh1YkJhbm5lciBwaWN0dXJlIHtcbiAgICAgICB3aWR0aDogYXV0bztcbiAgICAgfVxuXG4gICAgICNiZWF1dHlIdWJCYW5uZXIgcGljdHVyZT5pbWcge1xuICAgICAgIHdpZHRoOiA0MDBweDtcbiAgICAgfVxuXG4gICAgICNicm93QmFyU2xpZGVyIHt9XG5cbiAgICAgI2Jyb3dCYXJTbGlkZXIgZGl2LmJyb3dCYXJQcm9kdWN0IHtcbiAgICAgICBwYWRkaW5nLXJpZ2h0OiA1JTtcbiAgICAgfVxuXG4gICAgICNicm93QmFyU2xpZGVyIGRpdi5icm93QmFyUHJvZHVjdCBwIHtcbiAgICAgICBmb250LXNpemU6IDQuNXZ3O1xuICAgICB9XG5cbiAgICAgI2Jyb3dCYXJTbGlkZXIgYnV0dG9uLmdsaWRlX19idWxsZXQge1xuICAgICAgIG1hcmdpbjogMSU7XG4gICAgIH1cblxuICAgICAjYnJvd0JhclNsaWRlciAuZ2xpZGVfX3NsaWRlIHtcbiAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgfVxuICAgICB9XG5cbiAgICAgLmJhY2stdG8tdG9wIGEge1xuICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY2ZW07XG4gICAgIH1cblxuICAgICAuYnJvd0Jhci1vdmVybGF5LFxuICAgICAuYnJvd0Jhci1vdmVybGF5LXN0b3JlIHtcbiAgICAgICB3aWR0aDogOTB2dztcbiAgICAgICBoZWlnaHQ6IDg1dmg7XG4gICAgICAgcGFkZGluZzogMTAlIDUlIDA7XG4gICAgICAgdG9wOiA1dmg7XG4gICAgICAgYm94LXNoYWRvdzogMCAwIDIuNXZoIDAgcmdiYSgwLCAwLCAwLCAuNzUpO1xuICAgICB9XG5cbiAgIH1cblxuIH1cbiAvL2xpbmtzLmNzcyBmcm9tIG9sZCByZXBvXG4gQG1lZGlhIChtaW4td2lkdGg6IDc1MXB4KSB7XG4gICAubW9iaWxlLW9ubHkge1xuICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICB9XG4gfVxuXG4gLyogTU9CSUxFICovXG4gQG1lZGlhIChtYXgtd2lkdGg6IDc1MHB4KSB7XG4gICAuZGVza3RvcC1vbmx5IHtcbiAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgfVxuIH1cblxuXG4gLmhpZGVtZSB7XG4gICBkaXNwbGF5OiBub25lO1xuIH1cblxuXG5cbiBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSkge1xuXG4gICAuYnJvd0JhclN0YXRlIC5tZWRpdW0tNCB7XG4gICAgIHdpZHRoOiA1MCU7XG4gICB9XG5cbiAgIC5icm93QmFyU3RhdGUgW2NsYXNzKj1jb2x1bW5dK1tjbGFzcyo9Y29sdW1uXTpsYXN0LWNoaWxkIHtcbiAgICAgZmxvYXQ6IGxlZnQ7XG4gICB9XG5cbiAgIC5iZWF1dHlIdWJCYW5uZXJUZXh0IHtcbiAgICAgZGlzcGxheTogbm9uZTtcbiAgIH1cblxuICAgI2NhbXBhaWduIGRpdi5icm93QmFyU3RhdGUge1xuICAgICBwYWRkaW5nOiAydncgMXZ3IDF2dyAydnc7XG4gICB9XG5cbiAgICNjYW1wYWlnbiBkaXYuYnJvd0JhclN0YXRlIGgyIHtcbiAgICAgZm9udC1zaXplOiAzdnc7XG4gICB9XG5cbiAgICNjYW1wYWlnbiAuc3RvcmUtaW5mbyB7XG4gICAgIGZvbnQtc2l6ZTogMi4xNXZ3O1xuICAgfVxuXG4gICAjY2FtcGFpZ24gLmJhY2stdG8tdG9wIHtcbiAgICAgbWFyZ2luOiAydncgMCAxdncgMDtcbiAgIH1cblxuICAgI2NhbXBhaWduIC5kaXNwbGF5TGFuZHNjYXBlTW9iaWxlIHtcbiAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgIH1cblxuICAgI2NhbXBhaWduIC5oaWRlTGFuZHNjYXBlTW9iaWxlIHtcbiAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgfVxuXG4gICAjY2FtcGFpZ24gYS5iZWF1dHlIdWJCYW5uZXJMaW5rIHtcbiAgICAgbWFyZ2luOiAwIDAgMnZ3IDJ2dztcbiAgIH1cblxuICAgI2NhbXBhaWduIHAuYmVhdXR5SHViQmFubmVyVGl0bGUge1xuICAgICBtYXJnaW46IDJ2dztcbiAgIH1cbiB9XG5cblxuIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDEyMDBweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCkge1xuICAgI2NhbXBhaWduIGEuYmVhdXR5SHViQmFubmVyTGluayB7XG4gICAgIG1hcmdpbjogNTBweCAwIDAgMHB4O1xuICAgfVxuIH1cblxuIC5oZXJvLWltZyB7XG4gICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gfVxuXG4gI2Jyb3dCYXJQcm9kdWN0cyB7XG4gICBtYXJnaW4tdG9wOiA5MHB4O1xuIH1cblxuIC5saW5rMSxcbiAubGluazIsXG4gLmxpbmszIHtcbiAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgIGN1cnNvcjogcG9pbnRlcjtcbiAgIHdpZHRoOiAxMy4yNSU7XG4gICBoZWlnaHQ6IDIxJTtcbiAgIHotaW5kZXg6IDEwO1xuIH1cblxuIC5saW5rMSB7XG4gICBsZWZ0OiA0MyU7XG4gICB0b3A6IDcyLjUlO1xuICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDAsIDAsIDAuMCk7XG4gfVxuXG4gLmxpbmsyIHtcbiAgIGxlZnQ6IDM3LjklO1xuICAgdG9wOiA1My41JTtcbiB9XG5cbiAubGluazMge1xuICAgbGVmdDogMjkuNSU7XG4gICB0b3A6IDc5JTtcbiAgIGhlaWdodDogMTUlO1xuIH1cblxuIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NzUwcHgpIHtcbiAgIC5saW5rMSB7XG4gICAgIGxlZnQ6IDI1LjAlO1xuICAgICB0b3A6IDY1LjUlO1xuICAgICB3aWR0aDogMjF2dztcbiAgICAgaGVpZ2h0OiAxMHZ3O1xuICAgfVxuXG4gICAubGluazIge1xuICAgICBsZWZ0OiAzMSU7XG4gICAgIHRvcDogNjcuNSU7XG4gICB9XG5cbiAgIC5saW5rMyB7XG4gICAgIGxlZnQ6IDE3LjUlO1xuICAgICB0b3A6IDg0JTtcbiAgICAgaGVpZ2h0OiAxMCU7XG4gICB9XG4gfVxuXG4gLy9nbGlkZSBjc3MgZnJvbSBvbGQgcmVwb1xuIC5nbGlkZSB7XG4gICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICB3aWR0aDogMTAwJTtcbiAgIGJveC1zaXppbmc6IGJvcmRlci1ib3hcbiB9XG5cbiAuZ2xpZGUgKiB7XG4gICBib3gtc2l6aW5nOiBpbmhlcml0XG4gfVxuXG4gLmdsaWRlX190cmFjayB7XG4gICBvdmVyZmxvdzogaGlkZGVuXG4gfVxuXG4gLmdsaWRlX19zbGlkZXMge1xuICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgd2lkdGg6IDEwMCU7XG4gICBsaXN0LXN0eWxlOiBub25lO1xuICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgIHRvdWNoLWFjdGlvbjogcGFuLVk7XG4gICBvdmVyZmxvdzogaGlkZGVuO1xuICAgcGFkZGluZzogMDtcbiAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICBkaXNwbGF5OiBmbGV4O1xuICAgZmxleC13cmFwOiBub3dyYXA7XG4gICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtXG4gfVxuXG4gLmdsaWRlX19zbGlkZXMtLWRyYWdnaW5nIHtcbiAgIHVzZXItc2VsZWN0OiBub25lXG4gfVxuXG4gLmdsaWRlX19zbGlkZSB7XG4gICB3aWR0aDogMTAwJTtcbiAgIGhlaWdodDogMTAwJTtcbiAgIGZsZXgtc2hyaW5rOiAwO1xuICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudFxuIH1cblxuIC5nbGlkZV9fc2xpZGUgYSB7XG4gICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgIC13ZWJraXQtdXNlci1kcmFnOiBub25lO1xuICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgIC1tcy11c2VyLXNlbGVjdDogbm9uZVxuIH1cblxuIC5nbGlkZV9fYXJyb3dzIHtcbiAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgIHVzZXItc2VsZWN0OiBub25lXG4gfVxuXG4gLmdsaWRlX19idWxsZXRzIHtcbiAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgIHVzZXItc2VsZWN0OiBub25lXG4gfVxuXG4gLmdsaWRlLS1ydGwge1xuICAgZGlyZWN0aW9uOiBydGxcbiB9Il19 */
