*, *:before, *:after {
  box-sizing: border-box; }

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

img {
  display: block;
  width: 100%; }

h1, h2, h3, h4, h5, h6 {
  font: 500 32px "Vollkorn", sans-serif;
  line-height: 1; }

ul, li {
  list-style: none; }

em {
  font-style: italic; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, svg, picture {
  display: block; }

body {
  font: 500 16px "Roboto", sans-serif;
  line-height: 1.2;
  color: #19200F;
  background: #fff;
  position: relative; }

a {
  text-decoration: none;
  transition: all .3s ease; }

.link-text {
  color: #19200F;
  border-bottom: 1px solid #19200F; }
  .link-text:hover {
    border-color: transparent; }

p {
  line-height: 1.4;
  margin-bottom: 22px; }
  p em {
    font-style: italic; }

strong {
  font-weight: 800; }

input, select {
  width: 100%;
  background: none;
  padding: 12px;
  border: none;
  color: #19200F;
  font-family: "Roboto", sans-serif;
  font-size: 14px;
  transition: all .2s ease-in-out; }
  input:-ms-input-placeholder, select:-ms-input-placeholder {
    color: #8D8464; }
  input::placeholder, select::placeholder {
    color: #8D8464; }
  input::-moz-placeholder, select::-moz-placeholder {
    opacity: 1; }
  input.error, select.error {
    border-color: red; }

select {
  color: #8D8464;
  appearance: none;
  background: transparent url("../img/arrow-select.svg") no-repeat;
  background-size: 14px;
  background-position: right 10px center; }
  select option {
    color: #8D8464; }

.button {
  overflow: hidden;
  padding: 0;
  border: 2px solid;
  border-color: #19200F;
  font-weight: 500;
  background: #19200F;
  vertical-align: middle;
  position: relative;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  cursor: pointer;
  display: block;
  text-align: center; }
  .button.white {
    border-color: #fff;
    background: rgba(255, 255, 255, 0.4); }
    .button.white:before {
      color: #fff; }
  .button:before, .button > span {
    padding: .4em .8em;
    transition: transform 0.3s;
    transition-timing-function: ease;
    transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1); }
  .button > span {
    display: block;
    vertical-align: middle;
    color: #fff; }
  .button:before {
    background: #fff;
    color: #19200F;
    content: attr(data-text);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform: translate3d(-100%, 0, 0); }
  .button:hover:before {
    transform: translate3d(0, 0, 0); }
  .button:hover > span {
    transform: translate3d(0, 100%, 0); }

input.button {
  padding: 10px 12px;
  color: #fff; }
  input.button:hover {
    background: #fff;
    color: #19200F; }
  input.button:before {
    content: none; }

.grecaptcha-badge {
  opacity: 0; }

.gracias .popup__wrapper {
  display: none; }

.menu-qr #bio_ep {
  display: none; }

.whatsapp-button {
  width: 48px;
  height: 48px;
  position: fixed;
  bottom: 120px;
  right: 30px;
  z-index: 12;
  transition: all .3s ease-in-out; }
  .whatsapp-button .icon {
    transition: all 400ms ease;
    transform: scale(1); }
  .whatsapp-button:hover .icon {
    transform: scale(1.1); }
  .whatsapp-button.show {
    opacity: 1;
    visibility: visible; }
  @media (min-width: 1024px) {
    .whatsapp-button {
      width: 52px;
      height: 52px;
      right: 42px; }
      .whatsapp-button .icon {
        filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.4)); } }
  @media (min-width: 1440px) {
    .whatsapp-button {
      right: 70px; } }

@media (min-width: 1200px) {
  .come-in {
    transform: translateY(250px);
    animation: come-in 0.8s ease forwards; }
  .come-in:nth-child(odd) {
    animation-duration: 0.6s; }
  .already-visible {
    transform: translateY(0);
    animation: none; } }

@keyframes come-in {
  to {
    transform: translateY(0); } }

.header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  width: 100%;
  position: absolute;
  z-index: 10;
  padding: 20px; }
  .header .lauberge-logo {
    width: 90px;
    height: 64px;
    display: block; }
  .header .button {
    font-size: 14px;
    min-width: auto; }
    .header .button:before {
      color: #19200F; }
  .header__toggle {
    width: 27px; }
    .gracias .header__toggle {
      display: none; }
  .header__toggle-line {
    display: block;
    background: #fff;
    width: 100%;
    height: 4px;
    margin-bottom: 4px;
    opacity: 1;
    transition: opacity 600ms ease 200ms, top 300ms ease, left 300ms ease, background 300ms ease, transform 300ms ease 450ms; }
    .header__toggle-line:nth-child(1) {
      transform-origin: center; }
    .header__toggle-line:nth-child(3) {
      transform-origin: center; }
  .header.is-active {
    position: fixed;
    z-index: 11; }
    .header.is-active .header__toggle-line:nth-child(1) {
      transform: translateY(8px) rotate(45deg); }
    .header.is-active .header__toggle-line:nth-child(2) {
      opacity: 0; }
    .header.is-active .header__toggle-line:nth-child(3) {
      transform: translateY(-8px) rotate(-45deg); }
  .header.fixed {
    position: fixed;
    animation: headerFix .5s ease-out;
    background: #19200F; }
  .menu-qr .header {
    position: fixed;
    background: #19200F;
    animation: none !important;
    padding: 6px 20px; }
  @media (min-width: 1200px) {
    .header {
      padding: 30px 60px 0;
      -ms-flex-pack: start;
          justify-content: flex-start; }
      .header .lauberge-logo {
        width: 130px;
        height: auto; }
      .header .button {
        display: none; }
      .header__toggle {
        display: none; }
      .header.fixed {
        position: absolute; }
      .header.is-active {
        position: absolute;
        z-index: 10; }
      .menu-qr .header {
        padding: 6px 60px; }
        .menu-qr .header .lauberge-logo {
          width: auto;
          height: 50px; }
        .menu-qr .header.fixed {
          position: fixed; } }

section.menu {
  position: fixed;
  top: 0;
  left: 100%;
  z-index: 11;
  width: 100%;
  height: 100%;
  opacity: 0;
  padding-top: 80px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  background: #E7E4DF;
  transition: opacity 400ms ease, left 100ms ease 600ms; }
  section.menu.is-visible {
    left: 0;
    opacity: 1;
    transition: left 100ms ease, opacity 400ms ease 200ms; }
  section.menu .menu-inner {
    margin: 0;
    text-align: center; }
    section.menu .menu-inner .menu-list {
      list-style: none;
      margin: 0;
      padding: 0; }
      section.menu .menu-inner .menu-list li {
        font-size: 18px;
        margin-bottom: 22px; }
        section.menu .menu-inner .menu-list li a {
          color: #19200F; }
          section.menu .menu-inner .menu-list li a.button {
            display: none; }
  .gracias section.menu {
    display: none; }
  @media (min-width: 1200px) {
    section.menu {
      position: absolute;
      left: 0;
      top: 44px;
      z-index: 11;
      opacity: 1;
      background: none;
      padding: 0px 40px;
      height: auto;
      -ms-flex-align: end;
          align-items: flex-end; }
      section.menu .menu-inner {
        display: -ms-flexbox;
        display: flex; }
        section.menu .menu-inner .menu-list {
          display: -ms-flexbox;
          display: flex;
          -ms-flex-align: center;
              align-items: center; }
          section.menu .menu-inner .menu-list li {
            font-size: 15px;
            line-height: 1.6;
            margin: 0 22px; }
            section.menu .menu-inner .menu-list li a:not(.button) {
              line-height: 1.6;
              color: #fff;
              border-bottom: 1px transparent solid;
              padding: 0 0 8px;
              transition: all 400ms ease; }
              section.menu .menu-inner .menu-list li a:not(.button):hover {
                border-bottom-color: #fff; }
            section.menu .menu-inner .menu-list li a.button {
              display: block; }
      section.menu.fixed {
        top: 0;
        padding: 13px 20px;
        background: #19200F url("../img/logo-lauberge-header.svg") no-repeat 20px center;
        background-size: 70px;
        position: fixed;
        animation: auto .5s ease-out; }
      .menu-qr section.menu {
        top: 0;
        padding: 13px 20px;
        position: fixed;
        height: 62px; }
        .menu-qr section.menu.fixed {
          background: none;
          animation: none; } }

@keyframes headerFix {
  0% {
    top: -100px; }
  100% {
    top: 0; } }

.footer {
  padding: 60px 30px;
  background: #19200F; }
  .footer .lauberge-logo {
    width: 120px;
    height: auto;
    margin: 0 auto 42px; }
  .footer .menu {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    max-width: 360px;
    margin: 0 auto; }
    .footer .menu .icon {
      width: 28px;
      height: 28px; }
  .footer_burakko {
    line-height: 48px;
    text-align: center;
    margin-top: 22px; }
    .footer_burakko a {
      color: #19200F; }
  @media (min-width: 768px) {
    .footer {
      padding: 20px 60px;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between; }
      .footer .lauberge-logo {
        margin: 0; }
      .footer .menu {
        width: 280px;
        margin: 0; }
        .footer .menu .icon {
          width: 22px;
          height: 22px; } }

.hero {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.7) 20%, rgba(0, 0, 0, 0.2) 60%, rgba(0, 0, 0, 0.7)), url("../img/hero-m.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top center;
  padding: 170px 20px 50px;
  min-height: 90vh;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: end;
      justify-content: flex-end;
  -ms-flex-align: start;
      align-items: flex-start;
  color: #fff;
  text-align: center; }
  .hero.blackdays {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0) 80%, rgba(0, 0, 0, 0.7) 90%), url("../img/hero-bdays-m.jpg"); }
  .hero h1 {
    font-family: "Vollkorn", sans-serif;
    font-size: 40px;
    line-height: 1.2;
    margin-bottom: 12px;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.6); }
  .hero p {
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.6); }
  .gracias .hero {
    background-image: url("../img/hero-gracias-m.jpg");
    -ms-flex-pack: center;
        justify-content: center;
    padding: 0 20px; }
    .gracias .hero h2 {
      color: #fff; }
    .gracias .hero .button {
      width: 200px;
      margin: 0 auto; }
  @media (max-width: 767px) and (orientation: landscape) {
    .hero {
      padding-top: 100px; } }
  @media (min-width: 768px) {
    .hero {
      padding: 170px 60px; } }
  @media (min-width: 1024px) {
    .hero {
      padding: 170px 60px 90px;
      background-image: linear-gradient(to top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.5) 20%, rgba(0, 0, 0, 0.2) 40%, rgba(0, 0, 0, 0.2) 80%, rgba(0, 0, 0, 0.6)), url("../img/hero.jpg");
      -ms-flex-align: center;
          align-items: center; }
      .hero.gracias {
        background-image: url("../img/hero-gracias.jpg");
        background-position: center; } }
  @media (min-width: 1200px) {
    .hero {
      padding: 120px 80px 90px; }
      .hero h1 {
        font-size: 60px; }
        .hero h1 span {
          display: block; }
      .hero p {
        font-size: 20px; }
      .gracias .hero {
        min-height: 100vh; } }
  @media (min-width: 1440px) {
    .hero {
      padding: 120px 8vw 120px;
      background-image: linear-gradient(to top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.5) 20%, rgba(0, 0, 0, 0.2) 40%, rgba(0, 0, 0, 0.2) 80%, rgba(0, 0, 0, 0.6)), url("../img/hero-h.jpg");
      background-position: center; }
      .hero.gracias {
        background-image: url("../img/hero-gracias-h.jpg"); } }

.form-reserva {
  background: #fff;
  padding: 30px;
  margin: -30px 30px 0 30px;
  box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.4); }
  .form-reserva .booking-mask > div:not(.send-button) {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    border-bottom: 1px #8D8464 solid;
    padding: 10px 0; }
  .form-reserva .booking-mask .send-button {
    margin-top: 16px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: start;
        justify-content: flex-start; }
    .form-reserva .booking-mask .send-button #loader {
      margin-left: 12px;
      width: 18px;
      height: 18px; }
  .form-reserva #booking-form .icon {
    width: 20px;
    height: 20px;
    display: block; }
  .form-reserva #booking-form .user .icon {
    background: url("../img/icon-form-user.svg") no-repeat;
    background-size: contain; }
  .form-reserva #booking-form .phone .icon {
    background: url("../img/icon-form-phone.svg") no-repeat;
    background-size: contain; }
  .form-reserva #booking-form .mail .icon {
    background: url("../img/icon-form-mail.svg") no-repeat;
    background-size: contain; }
  .form-reserva #booking-form .date-in .icon {
    background: url("../img/icon-form-date.svg") no-repeat;
    background-size: contain; }
  .form-reserva #booking-form .date-out .icon {
    background: url("../img/icon-form-date.svg") no-repeat;
    background-size: contain; }
  .form-reserva #booking-form .guest .icon {
    background: url("../img/icon-form-guest.svg") no-repeat;
    background-size: contain; }
  @media (min-width: 1024px) {
    .form-reserva {
      padding: 10px 20px 10px 10px;
      max-width: 1160px;
      margin: -30px auto 0; }
      .form-reserva input, .form-reserva select {
        margin: 0;
        font-size: 12px; }
      .form-reserva select {
        min-width: 100px;
        padding-right: 30px; }
      .form-reserva .booking-mask {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
            align-items: center; }
        .form-reserva .booking-mask > div:not(.send-button) {
          border-bottom: none;
          border-right: 1px #8D8464 solid;
          padding: 0 10px 0 20px;
          -ms-flex: 1;
              flex: 1; }
          .form-reserva .booking-mask > div:not(.send-button).guest {
            border: none;
            -ms-flex: 1.5;
                flex: 1.5; }
          .form-reserva .booking-mask > div:not(.send-button).user {
            -ms-flex: 1.5;
                flex: 1.5; }
        .form-reserva .booking-mask .send-button {
          margin: 0; } }

.hotel {
  padding: 120px 30px 30px;
  margin-bottom: 60px; }
  .hotel article {
    margin-bottom: 60px; }
  .hotel h4 {
    font-family: "Roboto", sans-serif;
    font-size: 18px;
    margin-bottom: 28px; }
  .hotel h2 {
    font-size: 42px;
    margin-bottom: 22px; }
  .hotel .button {
    width: 180px;
    background: #fff; }
    .hotel .button > span {
      color: #19200F;
      font-size: 14px;
      line-height: 1;
      padding: 1em .8em; }
    .hotel .button:before {
      background: #19200F;
      color: #fff;
      line-height: 30px; }
  .hotel .slide-hotel {
    padding-bottom: 60px; }
    .hotel .slide-hotel .swiper-button {
      background: none;
      top: auto;
      bottom: 0;
      width: 42px;
      height: 42px;
      left: 0;
      border-radius: 100%;
      transition: all .3s ease; }
      .hotel .slide-hotel .swiper-button-prev svg {
        transform: rotate(0.5turn); }
      .hotel .slide-hotel .swiper-button-next {
        right: auto;
        left: 62px; }
      .hotel .slide-hotel .swiper-button:hover {
        background: rgba(0, 0, 0, 0.2); }
    .menu-qr .hotel .slide-hotel {
      padding: 0; }
  .hotel h2.second {
    margin-top: 62px; }
  @media (min-width: 1024px) {
    .hotel {
      max-width: 1160px;
      margin: 0 auto;
      padding: 120px 60px 60px;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center; }
      .hotel h4 {
        padding-left: 60px; }
      .hotel h2 {
        font-size: 52px;
        max-width: 340px;
        padding-left: 60px;
        margin-bottom: 60px; }
        .hotel h2.second {
          margin-top: 78px;
          max-width: none; }
      .hotel .content {
        padding-left: 160px;
        position: relative;
        max-width: 450px; }
        .hotel .content:before {
          content: "";
          background: #19200F;
          width: 130px;
          height: 2px;
          position: absolute;
          top: 0;
          left: 0%; }
      .hotel article, .hotel .slide {
        -ms-flex: 50%;
            flex: 50%;
        width: calc(50% - 30px);
        margin: 0; }
      .hotel .slide {
        margin-left: 60px;
        position: relative; }
        .hotel .slide:after {
          content: "";
          background: rgba(25, 32, 15, 0.6);
          width: 40px;
          height: 5px;
          position: absolute;
          bottom: 26px;
          right: 0; }
        .hotel .slide.no-line:after {
          content: none; }
      .hotel.right {
        gap: 60px; }
        .hotel.right article {
          -ms-flex-order: 2;
              order: 2; }
        .hotel.right .content slide {
          margin: 0; } }
  @media (min-width: 1200px) {
    .hotel {
      max-width: 1280px;
      padding: 120px 60px; }
      .hotel h2 {
        font-size: 72px;
        max-width: 480px; } }

.descubri h4 {
  font-family: "Roboto", sans-serif;
  font-size: 18px; }

.descubri h2 {
  font-size: 42px;
  margin: 30px 0; }

.descubri .titles {
  padding: 40px 30px 30px; }

.descubri .slide-descubri {
  padding-bottom: 80px; }
  .descubri .slide-descubri .swiper-button {
    background: none;
    top: auto;
    bottom: 20px;
    width: 42px;
    height: 42px; }
    .descubri .slide-descubri .swiper-button-prev {
      left: 30px; }
      .descubri .slide-descubri .swiper-button-prev svg {
        transform: rotate(0.5turn); }
    .descubri .slide-descubri .swiper-button-next {
      right: auto;
      left: 92px; }

@media (min-width: 1024px) {
  .descubri {
    position: relative; }
    .descubri .titles {
      position: absolute;
      top: 0;
      left: 0;
      z-index: 2;
      padding: 120px 0 0 120px;
      color: #fff;
      pointer-events: none; }
    .descubri h4 {
      text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.6); }
    .descubri h2 {
      margin: 20vh 0 0;
      text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.6); }
    .descubri .slide-descubri {
      padding-bottom: 0px; }
      .descubri .slide-descubri .swiper-button {
        top: 60%;
        bottom: auto;
        z-index: 2; }
        .descubri .slide-descubri .swiper-button svg {
          background: rgba(0, 0, 0, 0.4);
          border-radius: 100%; }
          .descubri .slide-descubri .swiper-button svg * {
            stroke: #fff; }
        .descubri .slide-descubri .swiper-button-prev {
          left: 120px; }
        .descubri .slide-descubri .swiper-button-next {
          right: auto;
          left: 192px; } }

@media (min-width: 1200px) {
  .descubri {
    max-height: 96vh;
    overflow: hidden; }
    .descubri h2 {
      font-size: 62px;
      margin: 26vh 0 0; }
    .descubri .slide-descubri .swiper-button {
      top: 55%; } }

.place {
  padding: 60px 30px 0px; }
  .place h2 {
    font-size: 42px;
    margin-bottom: 42px; }
  .place .button {
    width: 180px;
    background: #fff; }
    .place .button > span {
      color: #19200F;
      font-size: 14px;
      line-height: 1;
      padding: 1em .8em; }
    .place .button:before {
      background: #19200F;
      color: #fff;
      line-height: 30px; }
  .place article {
    margin-bottom: 62px; }
  .place .map {
    margin: 0 -30px;
    height: 500px; }
  @media (min-width: 1024px) {
    .place {
      max-width: 1160px;
      margin: 0 auto;
      padding: 90px;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: distribute;
          justify-content: space-around;
      -ms-flex-align: center;
          align-items: center; }
      .place article {
        width: 420px;
        margin: 0; }
      .place .map {
        width: 380px;
        height: 380px;
        -ms-flex-order: -1;
            order: -1;
        margin: 0;
        position: relative; }
        .place .map:before {
          content: "";
          background: #E7E4DF;
          width: 380px;
          height: 380px;
          position: absolute;
          bottom: -30px;
          left: -30px; }
        .place .map iframe {
          position: relative; } }
  @media (min-width: 1200px) {
    .place {
      max-width: 1280px;
      padding: 140px 90px 160px; } }

.eventos {
  padding: 0 30px 120px;
  text-align: center; }
  .eventos .button {
    width: 200px;
    margin: 0 auto; }
  @media (min-width: 1024px) {
    .eventos {
      padding: 60px 0 180px; } }

.content-qr {
  padding: 0 30px 30px;
  text-align: center; }
  .content-qr h1 {
    font-size: 38px;
    padding-bottom: 46px;
    margin-bottom: 52px;
    position: relative; }
    .content-qr h1:after {
      content: "";
      width: 60px;
      height: 2px;
      background: #19200F;
      position: absolute;
      bottom: 0;
      left: 50%;
      transform: translate(-50%); }
  .content-qr h2 {
    margin-bottom: 20px; }
  .content-qr p {
    margin-bottom: 28px; }
  .content-qr .button {
    width: 140px;
    background: #fff;
    margin: 0 auto; }
    .content-qr .button > span {
      color: #19200F; }
    .content-qr .button:before {
      background-color: #19200F;
      color: #fff; }
  .content-qr ul {
    padding: 94px 0 36px 0;
    border-bottom: 2px #cccccc solid; }
    .content-qr ul li {
      margin-bottom: 58px; }
    .content-qr ul:last-child {
      border: none; }
  @media (min-width: 1024px) {
    .content-qr h1 {
      font-size: 52px;
      margin-bottom: 0; } }
  @media (min-width: 1200px) {
    .content-qr {
      max-width: 1280px;
      padding: 120px 60px;
      margin: 0 auto; }
      .content-qr h1 {
        font-size: 72px; }
      .content-qr h2 {
        font-size: 58px; }
      .content-qr ul li {
        margin-bottom: 72px; } }

#bio_ep {
  padding: 60px 40px 40px;
  max-width: 400px;
  width: auto !important;
  height: auto !important;
  text-align: center;
  border-radius: 15px;
  color: #19200F; }
  .thanks #bio_ep {
    display: none !important; }
  #bio_ep .whatsapp {
    width: 50px;
    display: block;
    margin: auto; }
  #bio_ep h3 {
    font-size: 28px;
    font-weight: bold;
    line-height: 1.1;
    margin-bottom: 12px; }
  #bio_ep p {
    font-size: 18px;
    color: #19200F; }
  #bio_ep #formPopUp {
    margin-top: 22px; }
  #bio_ep input:not(.button__rayen) {
    background: none;
    border-color: #19200F;
    color: #19200F; }
  #bio_ep .button__rayen {
    margin-bottom: 0; }

#bio_ep_close {
  background: transparent url("../img/close.svg") no-repeat !important;
  width: 54px;
  height: 54px;
  margin: -88px 0 0 -26px;
  transition: transform .2s ease;
  transform: rotate(0turn); }
  #bio_ep_close:hover {
    transform: rotate(0.2turn); }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInV0aWxzL19iYXNlLnNjc3MiLCJ1dGlscy9fdmFyaWFibGVzLnNjc3MiLCJ1dGlscy9fbWl4aW5zLnNjc3MiLCJ1dGlscy9fc2Nyb2xsYm94LnNjc3MiLCJsYXlvdXRzL19oZWFkZXIuc2NzcyIsImxheW91dHMvX2Zvb3Rlci5zY3NzIiwibW9kdWxlcy9faGVyby5zY3NzIiwibW9kdWxlcy9fY29udGVuaWRvLnNjc3MiLCJtb2R1bGVzL19iaW9lcC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQXVCLHVCQUFzQixFQUFJOztBQUVqRDs7O0VBR0U7QUFFRjs7OztFQUlDLFVBQVM7RUFDVCxXQUFVO0VBQ1YsVUFBUztFQUNULGdCQUFlO0VBQ2YsY0FBYTtFQUNiLHlCQUF3QixFQUN4Qjs7QUFDRDtFQUNDLGVBQWM7RUFDZCxZQUFXLEVBQ1g7O0FBQ0Q7RUFDQyxzQ0N0QmtDO0VEdUJsQyxlQUFjLEVBQ2Q7O0FBQ0Q7RUFDQyxpQkFBZ0IsRUFDaEI7O0FBQ0Q7RUFDQyxtQkFBa0IsRUFDbEI7O0FBQ0QsaURBQWlEO0FBQ2pEO0VBQ0MsZUFBYyxFQUNkOztBQUNEO0VBQ0Msb0NDbkMrQjtFRG9DL0IsaUJBQWdCO0VBQ2hCLGVDakNjO0VEa0NkLGlCQ25DVztFRG9DWCxtQkFBa0IsRUFDbEI7O0FBQ0Q7RUFDQyxzQkFBcUI7RUFDckIseUJBQXdCLEVBQ3hCOztBQUNEO0VBQ0MsZUMxQ2M7RUQyQ2QsaUNDM0NjLEVEZ0RkO0VBUEQ7SUFLRSwwQkFBeUIsRUFDekI7O0FBRUY7RUFDQyxpQkFBZ0I7RUFDaEIsb0JBQW1CLEVBS25CO0VBUEQ7SUFLRSxtQkFBa0IsRUFDbEI7O0FBRUY7RUFDQyxpQkFBZ0IsRUFDaEI7O0FBQ0Q7RUFDQyxZQUFXO0VBQ1gsaUJBQWdCO0VBQ2hCLGNBQWE7RUFDYixhQUFZO0VBQ1osZUNqRWM7RURrRWQsa0NDdEUrQjtFRHVFL0IsZ0JBQWU7RUFDZixnQ0FBK0IsRUFrQi9CO0VBMUJEO0lBV0UsZUNyRVksRURzRVo7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Q0c7SUFDSSx5QkFBd0IsRUFDM0I7RUFYTDtJQWNFLFlBQVc7SUFDTCxlQUFjO0lBQ2QsYUFBWSxFQUNsQjtFQWpCRjtJQXFCUSxnQkFBZTtJQUNmLGtCQUFpQjtJQUNqQixpQkFBZ0I7SUFDaEIsb0JBQW1CLEVBQ3RCO0VBekJMO0lBNEJRLGdCQUFlO0lBQ2YsZVB2Qk8sRU93QlY7RUE5Qkw7SUFpQ1EsaUJBQWdCLEVBQ25CO0VBbENMO0lBcUNRLGlCQUFnQjtJQUNoQixzQlBoQ087SU9pQ1AsZVBqQ08sRU9rQ1Y7RUF4Q0w7SUEyQ1EsaUJBQWdCLEVBQ25COztBQUVMO0VBQ0kscUVBQW1FO0VBQ25FLFlBQVc7RUFDWCxhQUFZO0VBQ1osd0JBQXVCO0VBQ3ZCLCtCQUE4QjtFQUM5Qix5QkFBd0IsRUFLM0I7RUFYRDtJQVNRLDJCQUF5QixFQUM1QiIsImZpbGUiOiJtYWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIiosICo6YmVmb3JlLCAqOmFmdGVyIHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4vKiBodHRwOi8vbWV5ZXJ3ZWIuY29tL2VyaWMvdG9vbHMvY3NzL3Jlc2V0LyBcbiAgIHYyLjAgfCAyMDExMDEyNlxuICAgTGljZW5zZTogbm9uZSAocHVibGljIGRvbWFpbilcbiovXG5cbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLCBhLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsXG5kZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHMsIHNhbXAsIHNtYWxsLCBzdHJpa2UsIHN0cm9uZywgc3ViLCBzdXAsIHR0LCB2YXIsIGIsIHUsIGksIGNlbnRlciwgZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSwgZmllbGRzZXQsIGZvcm0sIGxhYmVsLCBsZWdlbmQsXG50YWJsZSwgY2FwdGlvbiwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCwgYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZW1iZWQsIGZpZ3VyZSwgZmlnY2FwdGlvbiwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgXG5tZW51LCBuYXYsIG91dHB1dCwgcnVieSwgc2VjdGlvbiwgc3VtbWFyeSwgdGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRib3JkZXI6IDA7XG5cdGZvbnQtc2l6ZTogMTAwJTtcblx0Zm9udDogaW5oZXJpdDtcblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuaW1nIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOiAxMDAlO1xufVxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG5cdGZvbnQ6IDUwMCAzMnB4ICRmb250LXRpdGxlO1xuXHRsaW5lLWhlaWdodDogMTtcbn1cbnVsLCBsaSB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59IFxuZW0ge1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG59XG4vKiBIVE1MNSBkaXNwbGF5LXJvbGUgcmVzZXQgZm9yIG9sZGVyIGJyb3dzZXJzICovXG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24sIHN2ZywgcGljdHVyZSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuYm9keSB7XG5cdGZvbnQ6IDUwMCAxNnB4ICRmb250LWJhc2U7XG5cdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdGNvbG9yOiAkYmxhY2s7XG5cdGJhY2tncm91bmQ6ICR3aGl0ZTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuYSB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlO1xufSBcbi5saW5rLXRleHQge1xuXHRjb2xvcjogJGJsYWNrO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJsYWNrO1xuXG5cdCY6aG92ZXIge1xuXHRcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdH1cbn1cbnAge1xuXHRsaW5lLWhlaWdodDogMS40O1xuXHRtYXJnaW4tYm90dG9tOiAyMnB4O1xuXHRcblx0ZW0ge1xuXHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0fVxufVxuc3Ryb25nIHtcblx0Zm9udC13ZWlnaHQ6IDgwMDtcbn1cbmlucHV0LCBzZWxlY3Qge1xuXHR3aWR0aDogMTAwJTtcdFxuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHRwYWRkaW5nOiAxMnB4O1xuXHRib3JkZXI6IG5vbmU7XG5cdGNvbG9yOiAkYmxhY2s7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1iYXNlO1xuXHRmb250LXNpemU6IDE0cHg7XG5cdHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7XG5cdFxuXHQmOjpwbGFjZWhvbGRlciB7XG5cdFx0Y29sb3I6ICRnb2xkO1xuXHR9XHRcblx0Jjo6LW1vei1wbGFjZWhvbGRlciB7XG5cdCAgb3BhY2l0eTogMTtcblx0fVxuXHQvLyAmOmZvY3VzIHtcblx0Ly8gXHRib3JkZXItY29sb3I6ICRibGFjaztcblx0XHRcblx0Ly8gXHQmOjpwbGFjZWhvbGRlciB7XG5cdC8vIFx0XHRjb2xvcjogJGJsYWNrO1xuXHQvLyBcdH1cblx0Ly8gfVxuXHQmLmVycm9yIHtcblx0XHRib3JkZXItY29sb3I6IHJlZDtcblx0fVxufVx0XG5zZWxlY3Qge1xuXHRjb2xvcjogJGdvbGQ7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblx0LW1vei1hcHBlYXJhbmNlOiBub25lO1xuXHRhcHBlYXJhbmNlOiBub25lO1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi9pbWcvYXJyb3ctc2VsZWN0LnN2Z1wiKSBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtc2l6ZTogMTRweDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMTBweCBjZW50ZXI7XG5cdFxuXHRvcHRpb24ge1xuXHRcdGNvbG9yOiAkZ29sZDtcblx0fVxuXHQvLyAmOmZvY3VzIHtcblx0Ly8gXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi9pbWcvYXJyb3ctc2VsZWN0LnN2Z1wiKSBuby1yZXBlYXQ7XG5cdC8vIFx0YmFja2dyb3VuZC1zaXplOiAxNHB4O1xuXHQvLyBcdGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDEwcHggY2VudGVyO1xuXHQvLyB9XG59XG4uYnV0dG9uIHtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cGFkZGluZzogMDtcblx0Ym9yZGVyOiAycHggc29saWQ7XG5cdGJvcmRlci1jb2xvcjogJGJsYWNrO1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRiYWNrZ3JvdW5kOiAkYmxhY2s7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMTtcblx0LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0ZGlzcGxheTogYmxvY2s7XG5cdC8vIG1pbi13aWR0aDogMjMwcHg7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHQmLndoaXRlIHtcblx0XHRib3JkZXItY29sb3I6ICR3aGl0ZTsgXG5cdFx0YmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwuNCk7XG5cdFx0XHRcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdH1cblx0fVxuXG5cdCY6YmVmb3JlLCAmID4gc3BhbiB7XG5cdFx0cGFkZGluZzogLjRlbSAuOGVtO1xuXHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuXHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuXHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NSwgMCwgMC4xMjUsIDEpO1xuXHR9ICAgIFxuXHRcblx0JiA+IHNwYW4ge1xuXHQgICAgZGlzcGxheTogYmxvY2s7XG5cdCAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHQgICAgY29sb3I6ICR3aGl0ZTtcblx0fVxuXG5cdCY6YmVmb3JlIHtcblx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0Y29sb3I6ICRibGFjaztcblx0XHRjb250ZW50OiBhdHRyKGRhdGEtdGV4dCk7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcdCAgICBcblx0fVxuXG5cdCY6aG92ZXIge1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdCAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdH1cblx0XHQmID4gc3BhbiB7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuXHRcdH1cblx0fVxufVxuaW5wdXQuYnV0dG9uIHtcblx0cGFkZGluZzogMTBweCAxMnB4O1xuICAgIGNvbG9yOiAkd2hpdGU7XG5cblx0Jjpob3ZlciB7XG5cdFx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRcdGNvbG9yOiAkYmxhY2s7XG5cdH1cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IG5vbmU7XG5cdH1cbn1cbi5ncmVjYXB0Y2hhLWJhZGdlIHtcblx0b3BhY2l0eTogMDtcbn1cbi5ncmFjaWFzIC5wb3B1cF9fd3JhcHBlciB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4ubWVudS1xciAjYmlvX2VwIHtcblx0ZGlzcGxheTogbm9uZTsgXG59XG4ud2hhdHNhcHAtYnV0dG9uIHtcblx0d2lkdGg6IDQ4cHg7XG5cdGhlaWdodDogNDhweDtcblx0cG9zaXRpb246IGZpeGVkO1xuXHRib3R0b206IDEyMHB4O1xuXHRyaWdodDogMzBweDtcblx0ei1pbmRleDogMTI7XG5cdHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG5cblx0Lmljb24ge1xuXHRcdHRyYW5zaXRpb246IGFsbCA0MDBtcyBlYXNlO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdH1cblxuICAgICY6aG92ZXIgLmljb24ge1xuICAgIFx0dHJhbnNmb3JtOiBzY2FsZSgxLjEpOyBcbiAgICB9XHRcdFxuXG5cdCYuc2hvdyB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHR9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuXHRcdHdpZHRoOiA1MnB4O1xuXHRcdGhlaWdodDogNTJweDtcblx0XHRyaWdodDogNDJweDtcblxuXHRcdC5pY29uIHtcblx0XHRcdGZpbHRlcjogZHJvcC1zaGFkb3coMnB4IDJweCA0cHggcmdiYSgwLDAsMCwuNCkpO1xuXHRcdH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcblx0XHRyaWdodDogNzBweDsgXG4gICAgfVxufSIsIi8vIEZvbnRzXHJcbiRmb250LXRpdGxlOiAnVm9sbGtvcm4nLCBzYW5zLXNlcmlmO1xyXG4kZm9udC1iYXNlOlx0J1JvYm90bycsIHNhbnMtc2VyaWY7XHJcblxyXG4vLyBDb2xvcnNcclxuJHdoaXRlOiAjZmZmO1xyXG4kYmxhY2s6ICMxOTIwMEY7XHJcbiRiZy1ncmV5OiAjRTdFNERGO1xyXG4kZ29sZDogIzhEODQ2NDsiLCJAbWl4aW4gYnJlYWtwb2ludCgkcG9pbnQpIHtcclxuXHRAaWYgJHBvaW50ID09IGJpZ2Rlc2t0b3Age1xyXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6IDE4NjBweCkgeyBAY29udGVudCA7IH1cclxuXHR9XHJcblx0QGlmICRwb2ludCA9PSBkZXNrdG9wIHtcclxuXHRcdEBtZWRpYSAobWluLXdpZHRoOiAxNDQwcHgpIHsgQGNvbnRlbnQgOyB9XHJcblx0fVxyXG5cdEBlbHNlIGlmICRwb2ludCA9PSBsYXB0b3Age1xyXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkgeyBAY29udGVudCA7IH1cclxuXHR9XHJcblx0QGVsc2UgaWYgJHBvaW50ID09IHRhYmxldCB7XHJcblx0XHRAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7IEBjb250ZW50IDsgfVxyXG5cdH1cclxuXHRAZWxzZSBpZiAkcG9pbnQgPT0gcGhhYmxldCB7XHJcblx0XHRAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpICB7IEBjb250ZW50IDsgfVxyXG5cdH1cclxuXHRAZWxzZSBpZiAkcG9pbnQgPT0gbW9iaWxlbGFuZHNjYXBlIHtcclxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7IEBjb250ZW50IDsgfVxyXG5cdH1cclxuXHRAZWxzZSBpZiAkcG9pbnQgPT0gbW9iaWxlb25seSB7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpICB7IEBjb250ZW50IDsgfVxyXG5cdH1cclxufSIsIkBpbmNsdWRlIGJyZWFrcG9pbnQobGFwdG9wKSB7XG4gICAgICAgIFxuICAgIC5jb21lLWluIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTtcbiAgICAgICAgYW5pbWF0aW9uOiBjb21lLWluIDAuOHMgZWFzZSBmb3J3YXJkcztcbiAgICB9XG4gICAgLmNvbWUtaW46bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDAuNnM7XG4gICAgfVxuICAgIC5hbHJlYWR5LXZpc2libGUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgY29tZS1pbiB7XG4gICAgdG8geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cbn0iLCIuaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR6LWluZGV4OiAxMDtcclxuXHRwYWRkaW5nOiAyMHB4O1xyXG5cclxuXHQubGF1YmVyZ2UtbG9nbyB7XHJcblx0XHR3aWR0aDogOTBweDtcclxuXHRcdGhlaWdodDogNjRweDtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdH1cclxuXHJcblx0LmJ1dHRvbiB7XHJcblx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHRtaW4td2lkdGg6IGF1dG87XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRjb2xvcjogJGJsYWNrO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Jl9fdG9nZ2xlIHtcclxuXHQgICAgd2lkdGg6IDI3cHg7XHJcblxyXG5cdFx0LmdyYWNpYXMgJiB7IGRpc3BsYXk6IG5vbmU7fVx0ICAgIFxyXG5cdH1cclxuXHJcblx0Jl9fdG9nZ2xlLWxpbmUge1xyXG5cdCAgICBkaXNwbGF5OiBibG9jaztcclxuXHQgICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG5cdCAgICB3aWR0aDogMTAwJTtcclxuXHQgICAgaGVpZ2h0OiA0cHg7XHJcblx0ICAgIG1hcmdpbi1ib3R0b206IDRweDtcclxuXHQgICAgb3BhY2l0eTogMTsgXHJcblx0ICAgIHRyYW5zaXRpb246IG9wYWNpdHkgNjAwbXMgZWFzZSAyMDBtcywgdG9wIDMwMG1zIGVhc2UsIGxlZnQgMzAwbXMgZWFzZSwgYmFja2dyb3VuZCAzMDBtcyBlYXNlLCB0cmFuc2Zvcm0gMzAwbXMgZWFzZSA0NTBtczsgICAgXHJcblx0XHRcclxuXHRcdCY6bnRoLWNoaWxkKDEpIHtcclxuXHRcdCAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcblx0XHR9XHJcblx0XHQmOm50aC1jaGlsZCgzKSB7XHJcblx0XHQgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG5cdFx0fVxyXG5cdH0gICAgXHJcblxyXG5cdCYuaXMtYWN0aXZlIHtcclxuXHQgICAgcG9zaXRpb246IGZpeGVkO1xyXG5cdCAgICB6LWluZGV4OiAxMTtcclxuXHJcblx0XHQuaGVhZGVyX190b2dnbGUtbGluZSB7XHJcblxyXG5cdFx0XHQmOm50aC1jaGlsZCgxKSB7XHJcblx0XHRcdCAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KSByb3RhdGUoNDVkZWcpO1xyXG5cdFx0XHR9XHJcblx0XHRcdCY6bnRoLWNoaWxkKDIpIHtcclxuXHRcdFx0ICAgIG9wYWNpdHk6IDA7XHJcblx0XHRcdH1cclxuXHRcdFx0JjpudGgtY2hpbGQoMykge1xyXG5cdFx0XHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpIHJvdGF0ZSgtNDVkZWcpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fSBcclxuXHJcblx0Ji5maXhlZCB7XHJcblx0ICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuXHQgICAgYW5pbWF0aW9uOiBoZWFkZXJGaXggLjVzIGVhc2Utb3V0O1xyXG5cdFx0YmFja2dyb3VuZDogJGJsYWNrO1xyXG5cdH1cdFxyXG5cclxuXHQubWVudS1xciAmIHtcclxuXHRcdHBvc2l0aW9uOiBmaXhlZDtcclxuXHRcdGJhY2tncm91bmQ6ICRibGFjaztcclxuXHRcdGFuaW1hdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG5cdFx0cGFkZGluZzogNnB4IDIwcHg7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcHRvcCkge1xyXG5cdFx0cGFkZGluZzogMzBweCA2MHB4IDA7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblxyXG5cdFx0LmxhdWJlcmdlLWxvZ28ge1xyXG5cdFx0XHR3aWR0aDogMTMwcHg7XHJcblx0XHRcdGhlaWdodDogYXV0bztcclxuXHRcdH1cclxuXHJcblx0XHQuYnV0dG9uIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHJcblx0XHQmX190b2dnbGUge1xyXG5cdFx0ICAgIGRpc3BsYXk6IG5vbmU7XHJcblx0XHR9XHRcclxuXHJcblx0XHQmLmZpeGVkIHtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0fVxyXG5cclxuXHRcdCYuaXMtYWN0aXZlIHtcclxuXHRcdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHQgICAgei1pbmRleDogMTA7XHJcblx0XHR9XHJcblxyXG5cdFx0Lm1lbnUtcXIgJiB7XHJcblx0XHRcdHBhZGRpbmc6IDZweCA2MHB4O1xyXG5cdFx0XHRcclxuXHRcdFx0LmxhdWJlcmdlLWxvZ28ge1xyXG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xyXG5cdFx0XHRcdGhlaWdodDogNTBweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ji5maXhlZCB7XHJcblx0XHRcdFx0cG9zaXRpb246IGZpeGVkO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5zZWN0aW9uLm1lbnUge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMTAwJTtcclxuICAgIHotaW5kZXg6IDExO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgcGFkZGluZy10b3A6IDgwcHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kOiAkYmctZ3JleTtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZSwgbGVmdCAxMDBtcyBlYXNlIDYwMG1zO1xyXG5cdFxyXG5cdCYuaXMtdmlzaWJsZSB7XHJcblx0ICAgIGxlZnQ6IDA7XHJcblx0ICAgIG9wYWNpdHk6IDE7XHJcblx0ICAgIHRyYW5zaXRpb246IGxlZnQgMTAwbXMgZWFzZSwgb3BhY2l0eSA0MDBtcyBlYXNlIDIwMG1zO1xyXG5cdH1cclxuXHRcclxuXHQubWVudS1pbm5lciB7XHJcblx0ICAgIG1hcmdpbjogMDtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFxyXG5cdFx0Lm1lbnUtbGlzdCB7XHJcblx0XHQgICAgbGlzdC1zdHlsZTogbm9uZTsgXHJcblx0XHQgICAgbWFyZ2luOiAwO1xyXG5cdFx0ICAgIHBhZGRpbmc6IDA7XHJcblx0XHQgICAgXHJcblx0XHRcdGxpIHtcclxuXHRcdFx0ICAgIGZvbnQtc2l6ZTogMThweDsgICBcclxuXHRcdFx0ICAgIG1hcmdpbi1ib3R0b206IDIycHg7XHJcblx0XHRcdCAgICBcclxuXHRcdFx0XHRhIHtcclxuXHRcdFx0XHQgICAgY29sb3I6ICRibGFjaztcclxuXHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0Ji5idXR0b24ge1xyXG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5ncmFjaWFzICYgeyBkaXNwbGF5OiBub25lO31cclxuXHJcblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXB0b3ApIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHR0b3A6IDQ0cHg7XHJcblx0XHR6LWluZGV4OiAxMTtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0XHRiYWNrZ3JvdW5kOiBub25lO1xyXG5cdFx0cGFkZGluZzogMHB4IDQwcHg7XHJcblx0XHRoZWlnaHQ6IGF1dG87XHJcblx0XHRhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcblx0XHRcclxuXHRcdC5tZW51LWlubmVyIHtcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHJcblx0XHRcdC5tZW51LWxpc3Qge1xyXG5cdFx0XHQgICAgZGlzcGxheTogZmxleDtcclxuXHRcdFx0ICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRcdCAgICBcclxuXHRcdFx0XHRsaSB7XHJcblx0XHRcdFx0ICAgIGZvbnQtc2l6ZTogMTVweDsgICBcclxuXHRcdFx0XHQgICAgbGluZS1oZWlnaHQ6IDEuNjtcclxuXHRcdFx0XHQgICAgbWFyZ2luOiAwIDIycHg7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdGE6bm90KC5idXR0b24pIHtcclxuXHRcdFx0XHRcdCAgICBsaW5lLWhlaWdodDogMS42O1xyXG5cdFx0XHRcdFx0ICAgIGNvbG9yOiAkd2hpdGU7XHJcblx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCB0cmFuc3BhcmVudCBzb2xpZDtcclxuXHRcdFx0XHRcdCAgICBwYWRkaW5nOiAwIDAgOHB4O1xyXG5cdFx0XHRcdFx0ICAgIHRyYW5zaXRpb246IGFsbCA0MDBtcyBlYXNlO1xyXG5cdFx0XHRcdFx0ICAgIFxyXG5cdFx0XHRcdFx0ICAgICY6aG92ZXIge1xyXG5cdFx0XHRcdFx0ICAgIFx0Ym9yZGVyLWJvdHRvbS1jb2xvcjogJHdoaXRlO1xyXG5cdFx0XHRcdFx0ICAgIH1cclxuXHJcblx0XHRcdFx0XHQgICAgLmZpeGVkICYge1xyXG5cdFx0XHRcdFx0XHRcdC8vIGNvbG9yOiB5ZWxsb3c7XHJcblx0XHRcdFx0XHQgICAgfVxyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdGEuYnV0dG9uIHtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHRcdFxyXG5cdFx0fVxyXG5cclxuXHRcdCYuZml4ZWQge1xyXG5cdFx0ICAgIHRvcDogMDtcclxuXHRcdFx0cGFkZGluZzogMTNweCAyMHB4O1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAkYmxhY2sgdXJsKCcuLi9pbWcvbG9nby1sYXViZXJnZS1oZWFkZXIuc3ZnJykgbm8tcmVwZWF0IDIwcHggY2VudGVyO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDcwcHg7XHJcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcclxuXHRcdFx0YW5pbWF0aW9uOiBhdXRvIC41cyBlYXNlLW91dDtcclxuXHRcdH1cclxuXHJcblx0XHQubWVudS1xciAmIHtcclxuXHRcdCAgICB0b3A6IDA7XHJcblx0XHRcdHBhZGRpbmc6IDEzcHggMjBweDtcclxuXHRcdFx0cG9zaXRpb246IGZpeGVkOyBcclxuXHRcdFx0aGVpZ2h0OiA2MnB4O1xyXG5cdFx0XHRcclxuXHRcdFx0Ji5maXhlZCB7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRcdFx0XHRhbmltYXRpb246IG5vbmU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgaGVhZGVyRml4IHtcclxuICAwJSAgIHsgdG9wOiAtMTAwcHg7IH1cclxuICAxMDAlIHsgdG9wOiAwOyB9XHJcbn0iLCIuZm9vdGVyIHtcclxuICAgIHBhZGRpbmc6IDYwcHggMzBweDtcclxuICAgIGJhY2tncm91bmQ6ICRibGFjaztcclxuXHJcblx0LmxhdWJlcmdlLWxvZ28ge1xyXG5cdFx0d2lkdGg6IDEyMHB4O1xyXG5cdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0bWFyZ2luOiAwIGF1dG8gNDJweDtcclxuXHJcblx0fVxyXG5cclxuICAgIC5tZW51IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBtYXgtd2lkdGg6IDM2MHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG5cclxuICAgICAgICAuaWNvbiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyOHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfYnVyYWtrbyB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQ4cHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDIycHg7XHJcbiAgICAgICAgXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHRAaW5jbHVkZSBicmVha3BvaW50KHBoYWJsZXQpIHtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4IDYwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG4gICAgICAgIC5sYXViZXJnZS1sb2dvIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubWVudSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyODBweDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDIycHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcHRvcCkge1xyXG5cdFx0Ly8gcGFkZGluZzogMzBweCA2MHB4IDA7XHJcblx0XHQvLyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblxyXG5cdFx0Ly8gLmxhdWJlcmdlLWxvZ28ge1xyXG5cdFx0Ly8gXHR3aWR0aDogMTMwcHg7XHJcblx0XHQvLyBcdGhlaWdodDogYXV0bztcclxuXHRcdC8vIH1cclxuXHJcblx0XHRcclxuXHR9XHJcbn1cclxuXHJcbiIsIi5oZXJvIHtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiBcclxuXHRcdGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgMC4yKSwgcmdiYSgwLCAwLCAwLCAwLjcpIDIwJSwgcmdiYSgwLCAwLCAwLCAwLjIpIDYwJSwgcmdiYSgwLCAwLCAwLCAwLjcpKSwgdXJsKFwiLi4vaW1nL2hlcm8tbS5qcGdcIik7XHJcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cdGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XHJcblx0cGFkZGluZzogMTcwcHggMjBweCA1MHB4O1xyXG5cdG1pbi1oZWlnaHQ6IDkwdmg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblx0Y29sb3I6ICR3aGl0ZTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHJcblx0Ji5ibGFja2RheXMge1xyXG5cdFx0YmFja2dyb3VuZC1pbWFnZTogXHJcblx0XHRcdGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgMCksIHJnYmEoMCwgMCwgMCwgMCkgODAlLCByZ2JhKDAsIDAsIDAsIDAuNykgOTAlKSwgXHJcblx0XHRcdHVybChcIi4uL2ltZy9oZXJvLWJkYXlzLW0uanBnXCIpO1xyXG5cdH1cclxuXHJcblx0aDEge1xyXG5cdFx0Zm9udC1mYW1pbHk6ICRmb250LXRpdGxlO1xyXG5cdFx0Zm9udC1zaXplOiA0MHB4O1xyXG5cdFx0bGluZS1oZWlnaHQ6IDEuMjtcclxuXHRcdG1hcmdpbi1ib3R0b206IDEycHg7XHJcblx0XHR0ZXh0LXNoYWRvdzogMHB4IDBweCAxMHB4IHJnYmEoMCwwLDAsLjYpO1xyXG5cdH1cclxuXHRwIHtcclxuXHRcdHRleHQtc2hhZG93OiAwcHggMHB4IDEwcHggcmdiYSgwLDAsMCwuNik7XHJcblx0fVxyXG5cdC5ncmFjaWFzICYge1xyXG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2hlcm8tZ3JhY2lhcy1tLmpwZ1wiKTtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdHBhZGRpbmc6IDAgMjBweDtcclxuXHJcblx0XHRoMiB7XHJcblx0XHRcdGNvbG9yOiAkd2hpdGU7XHJcblx0XHR9IFxyXG5cdFx0LmJ1dHRvbiB7XHJcblx0XHRcdHdpZHRoOiAyMDBweDsgXHJcblx0XHRcdG1hcmdpbjogMCBhdXRvOyBcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlbGFuZHNjYXBlKSB7XHJcblx0XHRwYWRkaW5nLXRvcDogMTAwcHg7XHJcblx0XHQvLyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xyXG5cdH1cclxuXHRAaW5jbHVkZSBicmVha3BvaW50KHBoYWJsZXQpIHsgXHJcblx0XHRwYWRkaW5nOiAxNzBweCA2MHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG5cdFx0cGFkZGluZzogMTcwcHggNjBweCA5MHB4O1xyXG5cdFx0YmFja2dyb3VuZC1pbWFnZTogXHJcblx0XHRcdGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgMC4yKSwgcmdiYSgwLCAwLCAwLCAwLjUpIDIwJSwgcmdiYSgwLCAwLCAwLCAwLjIpIDQwJSwgcmdiYSgwLCAwLCAwLCAwLjIpIDgwJSwgcmdiYSgwLCAwLCAwLCAwLjYpKSwgdXJsKFwiLi4vaW1nL2hlcm8uanBnXCIpO1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcblx0XHQmLmdyYWNpYXMge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaGVyby1ncmFjaWFzLmpwZ1wiKTtcclxuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG5cdFx0fVxyXG5cdFx0XHRcclxuXHR9XHJcblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXB0b3ApIHtcclxuXHRcdHBhZGRpbmc6IDEyMHB4IDgwcHggOTBweDtcclxuXHRcdFxyXG5cdFx0aDEge1xyXG5cdFx0XHRmb250LXNpemU6IDYwcHg7XHJcblxyXG5cdFx0XHRzcGFuIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0cCB7XHJcblx0XHRcdGZvbnQtc2l6ZTogMjBweDtcclxuXHRcdH1cclxuXHRcdC5ncmFjaWFzICYge1xyXG5cdFx0XHRtaW4taGVpZ2h0OiAxMDB2aDtcclxuXHRcdH1cclxuXHR9XHJcblx0QGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XHJcblx0XHRwYWRkaW5nOiAxMjBweCA4dncgMTIwcHg7XHJcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiBcclxuXHRcdFx0bGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgwLCAwLCAwLCAwLjIpLCByZ2JhKDAsIDAsIDAsIDAuNSkgMjAlLCByZ2JhKDAsIDAsIDAsIDAuMikgNDAlLCByZ2JhKDAsIDAsIDAsIDAuMikgODAlLCByZ2JhKDAsIDAsIDAsIDAuNikpLCB1cmwoXCIuLi9pbWcvaGVyby1oLmpwZ1wiKTtcclxuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgXHJcblxyXG5cdFx0Ji5ncmFjaWFzIHtcclxuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2hlcm8tZ3JhY2lhcy1oLmpwZ1wiKTtcclxuXHRcdH1cclxuXHRcdFxyXG5cdH1cclxufSIsIi5mb3JtLXJlc2VydmEge1xyXG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgcGFkZGluZzogMzBweDtcclxuICAgIG1hcmdpbjogLTMwcHggMzBweCAwIDMwcHg7XHJcbiAgICBib3gtc2hhZG93OiAxcHggMXB4IDEwcHggcmdiYSgwLDAsMCwuNCk7XHJcblxyXG4gICAgLmJvb2tpbmctbWFzayB7XHJcblxyXG4gICAgICAgID4gZGl2Om5vdCguc2VuZC1idXR0b24pIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4ICRnb2xkIHNvbGlkO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2VuZC1idXR0b24ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblxyXG4gICAgICAgICAgICAjbG9hZGVyIHtcclxuICAgICAgICAgICAgICAgIC8vIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTJweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNib29raW5nLWZvcm0ge1xyXG5cclxuICAgICAgICAuaWNvbiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnVzZXIgLmljb24ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9pY29uLWZvcm0tdXNlci5zdmcnKSBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5waG9uZSAuaWNvbiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2ljb24tZm9ybS1waG9uZS5zdmcnKSBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5tYWlsIC5pY29uIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvaWNvbi1mb3JtLW1haWwuc3ZnJykgbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGF0ZS1pbiAuaWNvbiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2ljb24tZm9ybS1kYXRlLnN2ZycpIG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRhdGUtb3V0IC5pY29uIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvaWNvbi1mb3JtLWRhdGUuc3ZnJykgbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgLmd1ZXN0IC5pY29uIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvaWNvbi1mb3JtLWd1ZXN0LnN2ZycpIG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAxMHB4O1xyXG4gICAgICAgIG1heC13aWR0aDogMTE2MHB4O1xyXG4gICAgICAgIG1hcmdpbjogLTMwcHggYXV0byAwO1xyXG5cclxuICAgICAgICBpbnB1dCwgc2VsZWN0IHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzZWxlY3Qge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAuYm9va2luZy1tYXNrIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgID4gZGl2Om5vdCguc2VuZC1idXR0b24pIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7ICBcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4ICRnb2xkIHNvbGlkO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4IDAgMjBweDtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDE7XHJcblxyXG4gICAgICAgICAgICAgICAgJi5ndWVzdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDEuNTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYudXNlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMS41O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuc2VuZC1idXR0b24ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uaG90ZWwge1xyXG4gICAgcGFkZGluZzogMTIwcHggMzBweCAzMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuXHJcbiAgICBhcnRpY2xlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgfVxyXG4gICAgaDQge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1iYXNlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyOHB4O1xyXG4gICAgfVxyXG4gICAgaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNDJweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMnB4O1xyXG4gICAgfVxyXG4gICAgLmJ1dHRvbiB7XHJcbiAgICAgICAgd2lkdGg6IDE4MHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgICBcclxuICAgICAgICAmID4gc3BhbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDFlbSAuOGVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zbGlkZS1ob3RlbCB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDYwcHg7XHJcblxyXG4gICAgICAgIC5zd2lwZXItYnV0dG9uIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgdG9wOiBhdXRvO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0MnB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDQycHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICYtcHJldiB7XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLjV0dXJuKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgJi1uZXh0IHtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNjJweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC4yKTtcclxuXHJcbiAgICAgICAgICAgICAgICBzdmcgKiB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gc3Ryb2tlOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5tZW51LXFyICYge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGgyLnNlY29uZCB7IFxyXG4gICAgICAgIG1hcmdpbi10b3A6IDYycHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHsgICBcclxuICAgICAgICBtYXgtd2lkdGg6IDExNjBweDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBwYWRkaW5nOiAxMjBweCA2MHB4IDYwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDUycHg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMzQwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNjBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuXHJcbiAgICAgICAgICAgICYuc2Vjb25kIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDc4cHg7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmUgO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNjBweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQ1MHB4O1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMzBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMnB4O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgYXJ0aWNsZSwgLnNsaWRlIHtcclxuICAgICAgICAgICAgZmxleDogNTAlO1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAzMHB4KTsgIFxyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfSAgICAgIFxyXG4gICAgICAgIC5zbGlkZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2MHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1LDMyLDE1LC42KSAgIDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1cHg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDI2cHg7XHJcbiAgICAgICAgICAgICAgICByaWdodDogMDsgXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYubm8tbGluZSB7XHJcblxyXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAmLnJpZ2h0IHtcclxuICAgICAgICAgICAgZ2FwOiA2MHB4O1xyXG5cclxuICAgICAgICAgICAgYXJ0aWNsZSB7XHJcbiAgICAgICAgICAgICAgICBvcmRlcjogMjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmNvbnRlbnQgc2xpZGUge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFwdG9wKSB7ICAgXHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMjgwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMTIwcHggNjBweDtcclxuICAgICAgICBcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNzJweDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA0ODBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5kZXNjdWJyaSB7XHJcblxyXG4gICAgaDQge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1iYXNlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIH1cclxuXHJcbiAgICBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOiA0MnB4O1xyXG4gICAgICAgIG1hcmdpbjogMzBweCAwO1xyXG4gICAgfVxyXG5cclxuICAgIC50aXRsZXMge1xyXG4gICAgICAgIHBhZGRpbmc6IDQwcHggMzBweCAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGlkZS1kZXNjdWJyaSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDgwcHg7XHJcblxyXG4gICAgICAgIC5zd2lwZXItYnV0dG9uIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgdG9wOiBhdXRvO1xyXG4gICAgICAgICAgICBib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0MnB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDQycHg7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAmLXByZXYge1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMzBweDtcclxuXHJcbiAgICAgICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC41dHVybik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYtbmV4dCB7XHJcbiAgICAgICAgICAgICAgICByaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDkycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgIC50aXRsZXMge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgICAgcGFkZGluZzogMTIwcHggMCAwIDEyMHB4O1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGg0IHtcclxuICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDBweCAwcHggMTBweCByZ2JhKDAsMCwwLC42KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBtYXJnaW46IDIwdmggMCAwO1xyXG4gICAgICAgICAgICB0ZXh0LXNoYWRvdzogMHB4IDBweCAxMHB4IHJnYmEoMCwwLDAsLjYpOyAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNsaWRlLWRlc2N1YnJpIHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDBweDtcclxuICAgIFxyXG4gICAgICAgICAgICAuc3dpcGVyLWJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDYwJTtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogYXV0bztcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuNCk7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAqIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAmLXByZXYge1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDEyMHB4O1xyXG4gICAgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAgICAgICAgICYtbmV4dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMTkycHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gICBcclxuICAgICAgICB9ICAgICBcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcHRvcCkge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDk2dmg7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNjJweDtcclxuICAgICAgICAgICAgbWFyZ2luOiAyNnZoIDAgMDsgICAgICAgICAgICBcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zbGlkZS1kZXNjdWJyaSB7XHJcbiAgICBcclxuICAgICAgICAgICAgLnN3aXBlci1idXR0b24ge1xyXG4gICAgICAgICAgICAgICAgdG9wOiA1NSU7XHJcbiAgICAgICAgICAgIH0gICBcclxuICAgICAgICB9ICAgICAgICAgXHJcbiAgICB9ICAgIFxyXG59XHJcblxyXG4ucGxhY2Uge1xyXG4gICAgcGFkZGluZzogNjBweCAzMHB4IDBweDtcclxuXHJcbiAgICBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOiA0MnB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQycHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1dHRvbiB7XHJcbiAgICAgICAgd2lkdGg6IDE4MHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgICBcclxuICAgICAgICAmID4gc3BhbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDFlbSAuOGVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhcnRpY2xlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5tYXAge1xyXG4gICAgICAgIG1hcmdpbjogMCAtMzBweDtcclxuICAgICAgICBoZWlnaHQ6IDUwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMTYwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgcGFkZGluZzogOTBweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIGFydGljbGUge1xyXG4gICAgICAgICAgICB3aWR0aDogNDIwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLm1hcCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzODBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzODBweDtcclxuICAgICAgICAgICAgb3JkZXI6IC0xO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRTdFNERGO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDM4MHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzODBweDtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogLTMwcHg7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMzBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaWZyYW1lIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcHRvcCkge1xyXG4gICAgICAgIG1heC13aWR0aDogMTI4MHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDE0MHB4IDkwcHggMTYwcHg7ICBcclxuICAgIH0gIFxyXG59XHJcblxyXG4uZXZlbnRvcyB7XHJcbiAgICBwYWRkaW5nOiAwIDMwcHggMTIwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgLmJ1dHRvbiB7XHJcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICAgICAgcGFkZGluZzogNjBweCAwIDE4MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uY29udGVudC1xciB7XHJcbiAgICBwYWRkaW5nOiAwIDMwcHggMzBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICBoMSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzOHB4OyBcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDZweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MnB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlKTtcclxuICAgICAgICB9XHJcbiAgICB9ICAgIFxyXG5cclxuICAgIGgyIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1dHRvbiB7XHJcbiAgICAgICAgd2lkdGg6IDE0MHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuXHJcbiAgICAgICAgPiBzcGFuIHtcclxuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB1bCB7XHJcbiAgICAgICAgcGFkZGluZzogOTRweCAwIDM2cHggMDtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAycHggI2NjY2NjYyBzb2xpZDsgXHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNThweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgIFxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgICBcclxuICAgICAgICBoMSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNTJweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcHRvcCkge1xyXG4gICAgICAgIG1heC13aWR0aDogMTI4MHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDEyMHB4IDYwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICBcclxuICAgICAgICBoMSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNzJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDU4cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgIFxyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA3MnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSAgICAgICAgXHJcbiAgICB9XHJcbn1cclxuXHJcbiIsIiNiaW9fZXAge1xyXG4gICAgcGFkZGluZzogNjBweCA0MHB4IDQwcHg7XHJcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xyXG4gICAgd2lkdGg6IGF1dG8haW1wb3J0YW50O1xyXG4gICAgaGVpZ2h0OiBhdXRvIWltcG9ydGFudDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XHJcbiAgICBjb2xvcjogJGJsYWNrO1xyXG5cclxuICAgIC50aGFua3MgJntcclxuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLndoYXRzYXBwe1xyXG5cdFx0d2lkdGg6IDUwcHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xyXG5cdH1cclxuICAgIFxyXG5cclxuICAgIGgzIHtcclxuICAgICAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgfVxyXG5cclxuICAgICNmb3JtUG9wVXAge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDIycHg7XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXQ6bm90KC5idXR0b25fX3JheWVuKSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRibGFjaztcclxuICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgfVxyXG5cclxuICAgIC5idXR0b25fX3JheWVuIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG59XHJcbiNiaW9fZXBfY2xvc2Uge1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCcuLi9pbWcvY2xvc2Uuc3ZnJykgbm8tcmVwZWF0IWltcG9ydGFudDtcclxuICAgIHdpZHRoOiA1NHB4O1xyXG4gICAgaGVpZ2h0OiA1NHB4O1xyXG4gICAgbWFyZ2luOiAtODhweCAwIDAgLTI2cHg7XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2U7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwdHVybik7XHJcbiAgICBcclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC4ydHVybik7XHJcbiAgICB9ICAgXHJcbn0iXX0= */
