*, *: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; }

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; }

@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: center, top center;
  padding: 170px 20px 50px;
  min-height: 100vh;
  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 {
    -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.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.jpg");
        background-position: center; } }
  @media (min-width: 1200px) {
    .hero {
      padding: 120px 80px 90px;
      min-height: 90vh; }
      .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"); }
      .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-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; } }
  @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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInV0aWxzL19iYXNlLnNjc3MiLCJ1dGlscy9fdmFyaWFibGVzLnNjc3MiLCJ1dGlscy9fbWl4aW5zLnNjc3MiLCJ1dGlscy9fc2Nyb2xsYm94LnNjc3MiLCJsYXlvdXRzL19oZWFkZXIuc2NzcyIsImxheW91dHMvX2Zvb3Rlci5zY3NzIiwibW9kdWxlcy9faGVyby5zY3NzIiwibW9kdWxlcy9fY29udGVuaWRvLnNjc3MiLCJtb2R1bGVzL19iaW9lcC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQXVCLHVCQUFzQixFQUFJOztBQUVqRDs7O0VBR0U7QUFFRjs7OztFQUlDLFVBQVM7RUFDVCxXQUFVO0VBQ1YsVUFBUztFQUNULGdCQUFlO0VBQ2YsY0FBYTtFQUNiLHlCQUF3QixFQUN4Qjs7QUFDRDtFQUNDLGVBQWM7RUFDZCxZQUFXLEVBQ1g7O0FBQ0Q7RUFDQyxzQ0N0QmtDO0VEdUJsQyxlQUFjLEVBQ2Q7O0FBQ0Q7RUFDQyxpQkFBZ0IsRUFDaEI7O0FBQ0Q7RUFDQyxtQkFBa0IsRUFDbEI7O0FBQ0QsaURBQWlEO0FBQ2pEO0VBQ0MsZUFBYyxFQUNkOztBQUNEO0VBQ0Msb0NDbkMrQjtFRG9DL0IsaUJBQWdCO0VBQ2hCLGVDakNjO0VEa0NkLGlCQ25DVztFRG9DWCxtQkFBa0IsRUFDbEI7O0FBQ0Q7RUFDQyxzQkFBcUI7RUFDckIseUJBQXdCLEVBQ3hCOztBQUNEO0VBQ0MsaUJBQWdCO0VBQ2hCLG9CQUFtQixFQUtuQjtFQVBEO0lBS0UsbUJBQWtCLEVBQ2xCOztBQUVGO0VBQ0MsaUJBQWdCLEVBQ2hCOztBQUNEO0VBQ0MsWUFBVztFQUNYLGlCQUFnQjtFQUNoQixjQUFhO0VBQ2IsYUFBWTtFQUNaLGVDekRjO0VEMERkLGtDQzlEK0I7RUQrRC9CLGdCQUFlO0VBQ2YsZ0NBQStCLEVBa0IvQjtFQTFCRDtJQVdFLGVDN0RZLEVEOERaO0VBWkY7SUFXRSxlQzdEWSxFRDhEWjtFQVpGO0lBY0csV0FBVSxFQUNYO0VBZkY7SUF3QkUsa0JBQWlC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O01Bb0NZLGVOcmVHLEVNc2VOO0lBckNUO01Bd0NZLDBCTnplRztNTTBlSCxZTjNlQSxFTTRlSDtFQTFDVDtJQThDUSx1QkFBc0I7SUFDdEIsaUNBQWdDLEVBU25DO0lBeERMO01Ba0RZLG9CQUFtQixFQUN0QjtJQW5EVDtNQXNEWSxhQUFZLEVBQ2Y7RUxuZlA7SUs0YkY7TUE2RFksZ0JBQWU7TUFDZixpQkFBZ0IsRUFDbkIsRUFBQTtFTDlmUDtJSytiRjtNQWtFUSxrQkFBaUI7TUFDakIsb0JBQW1CO01BQ25CLGVBQWMsRUFpQnJCO01BckZEO1FBdUVZLGdCQUFlLEVBQ2xCO01BeEVUO1FBMkVZLGdCQUFlLEVBQ2xCO01BNUVUO1FBaUZnQixvQkFBbUIsRUFDdEIsRUFBQTs7QUN6aEJiO0VBQ0ksd0JBQXVCO0VBQ3ZCLGlCQUFnQjtFQUNoQix1QkFBcUI7RUFDckIsd0JBQXNCO0VBQ3RCLG1CQUFrQjtFQUNsQixvQkFBbUI7RUFDbkIsZVBEVyxFT3VDZDtFQXBDRztJQUNJLHlCQUF3QixFQUMzQjtFQVhMO0lBY0UsWUFBVztJQUNMLGVBQWM7SUFDZCxhQUFZLEVBQ2xCO0VBakJGO0lBcUJRLGdCQUFlO0lBQ2Ysa0JBQWlCO0lBQ2pCLGlCQUFnQjtJQUNoQixvQkFBbUIsRUFDdEI7RUF6Qkw7SUE0QlEsZ0JBQWU7SUFDZixlUHZCTyxFT3dCVjtFQTlCTDtJQWlDUSxpQkFBZ0IsRUFDbkI7RUFsQ0w7SUFxQ1EsaUJBQWdCO0lBQ2hCLHNCUGhDTztJT2lDUCxlUGpDTyxFT2tDVjtFQXhDTDtJQTJDUSxpQkFBZ0IsRUFDbkI7O0FBRUw7RUFDSSxxRUFBbUU7RUFDbkUsWUFBVztFQUNYLGFBQVk7RUFDWix3QkFBdUI7RUFDdkIsK0JBQThCO0VBQzlCLHlCQUF3QixFQUszQjtFQVhEO0lBU1EsMkJBQXlCLEVBQzVCIiwiZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiKiwgKjpiZWZvcmUsICo6YWZ0ZXIgeyBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi8qIGh0dHA6Ly9tZXllcndlYi5jb20vZXJpYy90b29scy9jc3MvcmVzZXQvIFxuICAgdjIuMCB8IDIwMTEwMTI2XG4gICBMaWNlbnNlOiBub25lIChwdWJsaWMgZG9tYWluKVxuKi9cblxuaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBhcHBsZXQsIG9iamVjdCwgaWZyYW1lLCBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBibG9ja3F1b3RlLCBwcmUsIGEsIGFiYnIsIGFjcm9ueW0sIGFkZHJlc3MsIGJpZywgY2l0ZSwgY29kZSxcbmRlbCwgZGZuLCBlbSwgaW1nLCBpbnMsIGtiZCwgcSwgcywgc2FtcCwgc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhciwgYiwgdSwgaSwgY2VudGVyLCBkbCwgZHQsIGRkLCBvbCwgdWwsIGxpLCBmaWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcbnRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLCBhcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBlbWJlZCwgZmlndXJlLCBmaWdjYXB0aW9uLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBcbm1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LCB0aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8ge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGJvcmRlcjogMDtcblx0Zm9udC1zaXplOiAxMDAlO1xuXHRmb250OiBpbmhlcml0O1xuXHR2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5pbWcge1xuXHRkaXNwbGF5OiBibG9jaztcblx0d2lkdGg6IDEwMCU7XG59XG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcblx0Zm9udDogNTAwIDMycHggJGZvbnQtdGl0bGU7XG5cdGxpbmUtaGVpZ2h0OiAxO1xufVxudWwsIGxpIHtcblx0bGlzdC1zdHlsZTogbm9uZTtcbn0gXG5lbSB7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi8qIEhUTUw1IGRpc3BsYXktcm9sZSByZXNldCBmb3Igb2xkZXIgYnJvd3NlcnMgKi9cbmFydGljbGUsIGFzaWRlLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiwgc3ZnLCBwaWN0dXJlIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5ib2R5IHtcblx0Zm9udDogNTAwIDE2cHggJGZvbnQtYmFzZTtcblx0bGluZS1oZWlnaHQ6IDEuMjtcblx0Y29sb3I6ICRibGFjaztcblx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5hIHtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7XG59IFxucCB7XG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XG5cdG1hcmdpbi1ib3R0b206IDIycHg7XG5cdFxuXHRlbSB7XG5cdFx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHR9XG59XG5zdHJvbmcge1xuXHRmb250LXdlaWdodDogODAwO1xufVxuaW5wdXQsIHNlbGVjdCB7XG5cdHdpZHRoOiAxMDAlO1x0XG5cdGJhY2tncm91bmQ6IG5vbmU7XG5cdHBhZGRpbmc6IDEycHg7XG5cdGJvcmRlcjogbm9uZTtcblx0Y29sb3I6ICRibGFjaztcblx0Zm9udC1mYW1pbHk6ICRmb250LWJhc2U7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0dHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcblx0XG5cdCY6OnBsYWNlaG9sZGVyIHtcblx0XHRjb2xvcjogJGdvbGQ7XG5cdH1cdFxuXHQmOjotbW96LXBsYWNlaG9sZGVyIHtcblx0ICBvcGFjaXR5OiAxO1xuXHR9XG5cdC8vICY6Zm9jdXMge1xuXHQvLyBcdGJvcmRlci1jb2xvcjogJGJsYWNrO1xuXHRcdFxuXHQvLyBcdCY6OnBsYWNlaG9sZGVyIHtcblx0Ly8gXHRcdGNvbG9yOiAkYmxhY2s7XG5cdC8vIFx0fVxuXHQvLyB9XG5cdCYuZXJyb3Ige1xuXHRcdGJvcmRlci1jb2xvcjogcmVkO1xuXHR9XG59XHRcbnNlbGVjdCB7XG5cdGNvbG9yOiAkZ29sZDtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuXHQtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG5cdGFwcGVhcmFuY2U6IG5vbmU7XG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcIi4uL2ltZy9hcnJvdy1zZWxlY3Quc3ZnXCIpIG5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1zaXplOiAxNHB4O1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxMHB4IGNlbnRlcjtcblx0XG5cdG9wdGlvbiB7XG5cdFx0Y29sb3I6ICRnb2xkO1xuXHR9XG5cdC8vICY6Zm9jdXMge1xuXHQvLyBcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcIi4uL2ltZy9hcnJvdy1zZWxlY3Quc3ZnXCIpIG5vLXJlcGVhdDtcblx0Ly8gXHRiYWNrZ3JvdW5kLXNpemU6IDE0cHg7XG5cdC8vIFx0YmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMTBweCBjZW50ZXI7XG5cdC8vIH1cbn1cbi5idXR0b24ge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAwO1xuXHRib3JkZXI6IDJweCBzb2xpZDtcblx0Ym9yZGVyLWNvbG9yOiAkYmxhY2s7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdGJhY2tncm91bmQ6ICRibGFjaztcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAxO1xuXHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRkaXNwbGF5OiBibG9jaztcblx0Ly8gbWluLXdpZHRoOiAyMzBweDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdCYud2hpdGUge1xuXHRcdGJvcmRlci1jb2xvcjogJHdoaXRlOyBcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LC40KTtcblx0XHRcdFxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0fVxuXHR9XG5cblx0JjpiZWZvcmUsICYgPiBzcGFuIHtcblx0XHRwYWRkaW5nOiAuNGVtIC44ZW07XG5cdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XG5cdFx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG5cdFx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1LCAwLCAwLjEyNSwgMSk7XG5cdH0gICAgXG5cdFxuXHQmID4gc3BhbiB7XG5cdCAgICBkaXNwbGF5OiBibG9jaztcblx0ICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdCAgICBjb2xvcjogJHdoaXRlO1xuXHR9XG5cblx0JjpiZWZvcmUge1xuXHRcdGJhY2tncm91bmQ6ICR3aGl0ZTtcblx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdGNvbnRlbnQ6IGF0dHIoZGF0YS10ZXh0KTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1x0ICAgIFxuXHR9XG5cblx0Jjpob3ZlciB7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0ICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0fVxuXHRcdCYgPiBzcGFuIHtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG5cdFx0fVxuXHR9XG59XG5pbnB1dC5idXR0b24ge1xuXHRwYWRkaW5nOiAxMHB4IDEycHg7XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0Y29sb3I6ICRibGFjaztcblx0fVxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogbm9uZTtcblx0fVxufVxuLmdyZWNhcHRjaGEtYmFkZ2Uge1xuXHRvcGFjaXR5OiAwO1xufVxuLmdyYWNpYXMgLnBvcHVwX193cmFwcGVyIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cbi5tZW51LXFyICNiaW9fZXAge1xuXHRkaXNwbGF5OiBub25lOyBcbn0iLCIvLyBGb250c1xyXG4kZm9udC10aXRsZTogJ1ZvbGxrb3JuJywgc2Fucy1zZXJpZjtcclxuJGZvbnQtYmFzZTpcdCdSb2JvdG8nLCBzYW5zLXNlcmlmO1xyXG5cclxuLy8gQ29sb3JzXHJcbiR3aGl0ZTogI2ZmZjtcclxuJGJsYWNrOiAjMTkyMDBGO1xyXG4kYmctZ3JleTogI0U3RTRERjtcclxuJGdvbGQ6ICM4RDg0NjQ7IiwiQG1peGluIGJyZWFrcG9pbnQoJHBvaW50KSB7XHJcblx0QGlmICRwb2ludCA9PSBiaWdkZXNrdG9wIHtcclxuXHRcdEBtZWRpYSAobWluLXdpZHRoOiAxODYwcHgpIHsgQGNvbnRlbnQgOyB9XHJcblx0fVxyXG5cdEBpZiAkcG9pbnQgPT0gZGVza3RvcCB7XHJcblx0XHRAbWVkaWEgKG1pbi13aWR0aDogMTQ0MHB4KSB7IEBjb250ZW50IDsgfVxyXG5cdH1cclxuXHRAZWxzZSBpZiAkcG9pbnQgPT0gbGFwdG9wIHtcclxuXHRcdEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHsgQGNvbnRlbnQgOyB9XHJcblx0fVxyXG5cdEBlbHNlIGlmICRwb2ludCA9PSB0YWJsZXQge1xyXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkgeyBAY29udGVudCA7IH1cclxuXHR9XHJcblx0QGVsc2UgaWYgJHBvaW50ID09IHBoYWJsZXQge1xyXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSAgeyBAY29udGVudCA7IH1cclxuXHR9XHJcblx0QGVsc2UgaWYgJHBvaW50ID09IG1vYmlsZWxhbmRzY2FwZSB7XHJcblx0XHRAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkgeyBAY29udGVudCA7IH1cclxuXHR9XHJcblx0QGVsc2UgaWYgJHBvaW50ID09IG1vYmlsZW9ubHkge1xyXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSAgeyBAY29udGVudCA7IH1cclxuXHR9XHJcbn0iLCJAaW5jbHVkZSBicmVha3BvaW50KGxhcHRvcCkge1xuICAgICAgICBcbiAgICAuY29tZS1pbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7XG4gICAgICAgIGFuaW1hdGlvbjogY29tZS1pbiAwLjhzIGVhc2UgZm9yd2FyZHM7XG4gICAgfVxuICAgIC5jb21lLWluOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjZzO1xuICAgIH1cbiAgICAuYWxyZWFkeS12aXNpYmxlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGNvbWUtaW4ge1xuICAgIHRvIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG59IiwiLmhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0ei1pbmRleDogMTA7XHJcblx0cGFkZGluZzogMjBweDtcclxuXHJcblx0LmxhdWJlcmdlLWxvZ28ge1xyXG5cdFx0d2lkdGg6IDkwcHg7XHJcblx0XHRoZWlnaHQ6IDY0cHg7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHR9XHJcblxyXG5cdC5idXR0b24ge1xyXG5cdFx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdFx0bWluLXdpZHRoOiBhdXRvO1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0Y29sb3I6ICRibGFjaztcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCZfX3RvZ2dsZSB7XHJcblx0ICAgIHdpZHRoOiAyN3B4O1xyXG5cclxuXHRcdC5ncmFjaWFzICYgeyBkaXNwbGF5OiBub25lO31cdCAgICBcclxuXHR9XHJcblxyXG5cdCZfX3RvZ2dsZS1saW5lIHtcclxuXHQgICAgZGlzcGxheTogYmxvY2s7XHJcblx0ICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuXHQgICAgd2lkdGg6IDEwMCU7XHJcblx0ICAgIGhlaWdodDogNHB4O1xyXG5cdCAgICBtYXJnaW4tYm90dG9tOiA0cHg7XHJcblx0ICAgIG9wYWNpdHk6IDE7IFxyXG5cdCAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDYwMG1zIGVhc2UgMjAwbXMsIHRvcCAzMDBtcyBlYXNlLCBsZWZ0IDMwMG1zIGVhc2UsIGJhY2tncm91bmQgMzAwbXMgZWFzZSwgdHJhbnNmb3JtIDMwMG1zIGVhc2UgNDUwbXM7ICAgIFxyXG5cdFx0XHJcblx0XHQmOm50aC1jaGlsZCgxKSB7XHJcblx0XHQgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG5cdFx0fVxyXG5cdFx0JjpudGgtY2hpbGQoMykge1xyXG5cdFx0ICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuXHRcdH1cclxuXHR9ICAgIFxyXG5cclxuXHQmLmlzLWFjdGl2ZSB7XHJcblx0ICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuXHQgICAgei1pbmRleDogMTE7XHJcblxyXG5cdFx0LmhlYWRlcl9fdG9nZ2xlLWxpbmUge1xyXG5cclxuXHRcdFx0JjpudGgtY2hpbGQoMSkge1xyXG5cdFx0XHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCkgcm90YXRlKDQ1ZGVnKTtcclxuXHRcdFx0fVxyXG5cdFx0XHQmOm50aC1jaGlsZCgyKSB7XHJcblx0XHRcdCAgICBvcGFjaXR5OiAwO1xyXG5cdFx0XHR9XHJcblx0XHRcdCY6bnRoLWNoaWxkKDMpIHtcclxuXHRcdFx0ICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KSByb3RhdGUoLTQ1ZGVnKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH0gXHJcblxyXG5cdCYuZml4ZWQge1xyXG5cdCAgICBwb3NpdGlvbjogZml4ZWQ7XHJcblx0ICAgIGFuaW1hdGlvbjogaGVhZGVyRml4IC41cyBlYXNlLW91dDtcclxuXHRcdGJhY2tncm91bmQ6ICRibGFjaztcclxuXHR9XHRcclxuXHJcblx0Lm1lbnUtcXIgJiB7XHJcblx0XHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0XHRiYWNrZ3JvdW5kOiAkYmxhY2s7XHJcblx0XHRhbmltYXRpb246IG5vbmUgIWltcG9ydGFudDtcclxuXHRcdHBhZGRpbmc6IDZweCAyMHB4O1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXB0b3ApIHtcclxuXHRcdHBhZGRpbmc6IDMwcHggNjBweCAwO1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cclxuXHRcdC5sYXViZXJnZS1sb2dvIHtcclxuXHRcdFx0d2lkdGg6IDEzMHB4O1xyXG5cdFx0XHRoZWlnaHQ6IGF1dG87XHJcblx0XHR9XHJcblxyXG5cdFx0LmJ1dHRvbiB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHR9XHJcblxyXG5cdFx0Jl9fdG9nZ2xlIHtcclxuXHRcdCAgICBkaXNwbGF5OiBub25lO1xyXG5cdFx0fVx0XHJcblxyXG5cdFx0Ji5maXhlZCB7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdH1cclxuXHJcblx0XHQmLmlzLWFjdGl2ZSB7XHJcblx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0ICAgIHotaW5kZXg6IDEwO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5tZW51LXFyICYge1xyXG5cdFx0XHRwYWRkaW5nOiA2cHggNjBweDtcclxuXHRcdFx0XHJcblx0XHRcdC5sYXViZXJnZS1sb2dvIHtcclxuXHRcdFx0XHR3aWR0aDogYXV0bztcclxuXHRcdFx0XHRoZWlnaHQ6IDUwcHg7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCYuZml4ZWQge1xyXG5cdFx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuc2VjdGlvbi5tZW51IHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDEwMCU7XHJcbiAgICB6LWluZGV4OiAxMTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHBhZGRpbmctdG9wOiA4MHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZDogJGJnLWdyZXk7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2UsIGxlZnQgMTAwbXMgZWFzZSA2MDBtcztcclxuXHRcclxuXHQmLmlzLXZpc2libGUge1xyXG5cdCAgICBsZWZ0OiAwO1xyXG5cdCAgICBvcGFjaXR5OiAxO1xyXG5cdCAgICB0cmFuc2l0aW9uOiBsZWZ0IDEwMG1zIGVhc2UsIG9wYWNpdHkgNDAwbXMgZWFzZSAyMDBtcztcclxuXHR9XHJcblx0XHJcblx0Lm1lbnUtaW5uZXIge1xyXG5cdCAgICBtYXJnaW46IDA7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcclxuXHRcdC5tZW51LWxpc3Qge1xyXG5cdFx0ICAgIGxpc3Qtc3R5bGU6IG5vbmU7IFxyXG5cdFx0ICAgIG1hcmdpbjogMDtcclxuXHRcdCAgICBwYWRkaW5nOiAwO1xyXG5cdFx0ICAgIFxyXG5cdFx0XHRsaSB7XHJcblx0XHRcdCAgICBmb250LXNpemU6IDE4cHg7ICAgXHJcblx0XHRcdCAgICBtYXJnaW4tYm90dG9tOiAyMnB4O1xyXG5cdFx0XHQgICAgXHJcblx0XHRcdFx0YSB7XHJcblx0XHRcdFx0ICAgIGNvbG9yOiAkYmxhY2s7XHJcblx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdCYuYnV0dG9uIHtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuZ3JhY2lhcyAmIHsgZGlzcGxheTogbm9uZTt9XHJcblxyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFwdG9wKSB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0dG9wOiA0NHB4O1xyXG5cdFx0ei1pbmRleDogMTE7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRcdHBhZGRpbmc6IDBweCA0MHB4O1xyXG5cdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG5cdFx0XHJcblx0XHQubWVudS1pbm5lciB7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblxyXG5cdFx0XHQubWVudS1saXN0IHtcclxuXHRcdFx0ICAgIGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdCAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0XHQgICAgXHJcblx0XHRcdFx0bGkge1xyXG5cdFx0XHRcdCAgICBmb250LXNpemU6IDE1cHg7ICAgXHJcblx0XHRcdFx0ICAgIGxpbmUtaGVpZ2h0OiAxLjY7XHJcblx0XHRcdFx0ICAgIG1hcmdpbjogMCAyMnB4O1xyXG5cdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRhOm5vdCguYnV0dG9uKSB7XHJcblx0XHRcdFx0XHQgICAgbGluZS1oZWlnaHQ6IDEuNjtcclxuXHRcdFx0XHRcdCAgICBjb2xvcjogJHdoaXRlO1xyXG5cdFx0XHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggdHJhbnNwYXJlbnQgc29saWQ7XHJcblx0XHRcdFx0XHQgICAgcGFkZGluZzogMCAwIDhweDtcclxuXHRcdFx0XHRcdCAgICB0cmFuc2l0aW9uOiBhbGwgNDAwbXMgZWFzZTtcclxuXHRcdFx0XHRcdCAgICBcclxuXHRcdFx0XHRcdCAgICAmOmhvdmVyIHtcclxuXHRcdFx0XHRcdCAgICBcdGJvcmRlci1ib3R0b20tY29sb3I6ICR3aGl0ZTtcclxuXHRcdFx0XHRcdCAgICB9XHJcblxyXG5cdFx0XHRcdFx0ICAgIC5maXhlZCAmIHtcclxuXHRcdFx0XHRcdFx0XHQvLyBjb2xvcjogeWVsbG93O1xyXG5cdFx0XHRcdFx0ICAgIH1cclxuXHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRhLmJ1dHRvbiB7XHJcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVx0XHRcclxuXHRcdH1cclxuXHJcblx0XHQmLmZpeGVkIHtcclxuXHRcdCAgICB0b3A6IDA7XHJcblx0XHRcdHBhZGRpbmc6IDEzcHggMjBweDtcclxuXHRcdFx0YmFja2dyb3VuZDogJGJsYWNrIHVybCgnLi4vaW1nL2xvZ28tbGF1YmVyZ2UtaGVhZGVyLnN2ZycpIG5vLXJlcGVhdCAyMHB4IGNlbnRlcjtcclxuXHRcdFx0YmFja2dyb3VuZC1zaXplOiA3MHB4O1xyXG5cdFx0XHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0XHRcdGFuaW1hdGlvbjogYXV0byAuNXMgZWFzZS1vdXQ7XHJcblx0XHR9XHJcblxyXG5cdFx0Lm1lbnUtcXIgJiB7XHJcblx0XHQgICAgdG9wOiAwO1xyXG5cdFx0XHRwYWRkaW5nOiAxM3B4IDIwcHg7XHJcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDsgXHJcblx0XHRcdGhlaWdodDogNjJweDtcclxuXHRcdFx0XHJcblx0XHRcdCYuZml4ZWQge1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0XHRcdFx0YW5pbWF0aW9uOiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGhlYWRlckZpeCB7XHJcbiAgMCUgICB7IHRvcDogLTEwMHB4OyB9XHJcbiAgMTAwJSB7IHRvcDogMDsgfVxyXG59IiwiLmZvb3RlciB7XHJcbiAgICBwYWRkaW5nOiA2MHB4IDMwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XHJcblxyXG5cdC5sYXViZXJnZS1sb2dvIHtcclxuXHRcdHdpZHRoOiAxMjBweDtcclxuXHRcdGhlaWdodDogYXV0bztcclxuXHRcdG1hcmdpbjogMCBhdXRvIDQycHg7XHJcblxyXG5cdH1cclxuXHJcbiAgICAubWVudSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzNjBweDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuXHJcbiAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICB3aWR0aDogMjhweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyOHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX2J1cmFra28ge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0OHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMnB4O1xyXG4gICAgICAgIFxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblx0QGluY2x1ZGUgYnJlYWtwb2ludChwaGFibGV0KSB7XHJcbiAgICAgICAgcGFkZGluZzogMjBweCA2MHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuICAgICAgICAubGF1YmVyZ2UtbG9nbyB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLm1lbnUge1xyXG4gICAgICAgICAgICB3aWR0aDogMjgwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyMnB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXB0b3ApIHtcclxuXHRcdC8vIHBhZGRpbmc6IDMwcHggNjBweCAwO1xyXG5cdFx0Ly8ganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cclxuXHRcdC8vIC5sYXViZXJnZS1sb2dvIHtcclxuXHRcdC8vIFx0d2lkdGg6IDEzMHB4O1xyXG5cdFx0Ly8gXHRoZWlnaHQ6IGF1dG87XHJcblx0XHQvLyB9XHJcblxyXG5cdFx0XHJcblx0fVxyXG59XHJcblxyXG4iLCIuaGVybyB7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogXHJcblx0XHRsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDAsIDAsIDAsIDAuMiksIHJnYmEoMCwgMCwgMCwgMC43KSAyMCUsIHJnYmEoMCwgMCwgMCwgMC4yKSA2MCUsIHJnYmEoMCwgMCwgMCwgMC43KSksIFxyXG5cdFx0dXJsKFwiLi4vaW1nL2hlcm8tbS5qcGdcIik7XHJcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciwgdG9wIGNlbnRlcjtcclxuXHRwYWRkaW5nOiAxNzBweCAyMHB4IDUwcHg7XHJcblx0bWluLWhlaWdodDogMTAwdmg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblx0Y29sb3I6ICR3aGl0ZTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHJcblx0Ji5ibGFja2RheXMge1xyXG5cdFx0YmFja2dyb3VuZC1pbWFnZTogXHJcblx0XHRcdGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgMCksIHJnYmEoMCwgMCwgMCwgMCkgODAlLCByZ2JhKDAsIDAsIDAsIDAuNykgOTAlKSwgXHJcblx0XHRcdHVybChcIi4uL2ltZy9oZXJvLWJkYXlzLW0uanBnXCIpO1xyXG5cdH1cclxuXHJcblx0aDEge1xyXG5cdFx0Zm9udC1mYW1pbHk6ICRmb250LXRpdGxlO1xyXG5cdFx0Zm9udC1zaXplOiA0MHB4O1xyXG5cdFx0bGluZS1oZWlnaHQ6IDEuMjtcclxuXHRcdG1hcmdpbi1ib3R0b206IDEycHg7XHJcblx0XHR0ZXh0LXNoYWRvdzogMHB4IDBweCAxMHB4IHJnYmEoMCwwLDAsLjYpO1xyXG5cdH1cclxuXHRwIHtcclxuXHRcdHRleHQtc2hhZG93OiAwcHggMHB4IDEwcHggcmdiYSgwLDAsMCwuNik7XHJcblx0fVxyXG5cdC5ncmFjaWFzICYge1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0cGFkZGluZzogMCAyMHB4O1xyXG5cclxuXHRcdGgyIHtcclxuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcclxuXHRcdH0gXHJcblx0XHQuYnV0dG9uIHtcclxuXHRcdFx0d2lkdGg6IDIwMHB4OyBcclxuXHRcdFx0bWFyZ2luOiAwIGF1dG87IFxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGVsYW5kc2NhcGUpIHtcclxuXHRcdHBhZGRpbmctdG9wOiAxMDBweDtcclxuXHRcdC8vIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XHJcblx0fVxyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQocGhhYmxldCkge1xyXG5cdFx0cGFkZGluZzogMTcwcHggNjBweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuXHRcdHBhZGRpbmc6IDE3MHB4IDYwcHggOTBweDtcclxuXHRcdGJhY2tncm91bmQtaW1hZ2U6XHJcblx0XHRcdGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgMC4yKSwgcmdiYSgwLCAwLCAwLCAwLjUpIDIwJSwgcmdiYSgwLCAwLCAwLCAwLjIpIDQwJSwgcmdiYSgwLCAwLCAwLCAwLjIpIDgwJSwgcmdiYSgwLCAwLCAwLCAwLjYpKSwgXHJcblx0XHRcdHVybChcIi4uL2ltZy9oZXJvLmpwZ1wiKTtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG5cdFx0Ji5ibGFja2RheXMge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiBcclxuXHRcdFx0XHRsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDAsIDAsIDAsIDApLCByZ2JhKDAsIDAsIDAsIDApIDgwJSwgcmdiYSgwLCAwLCAwLCAwLjcpIDkwJSksIFxyXG5cdFx0XHRcdHVybChcIi4uL2ltZy9oZXJvLWJkYXlzLmpwZ1wiKTtcclxuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG5cdFx0fVxyXG5cdFx0XHRcclxuXHR9XHJcblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXB0b3ApIHtcclxuXHRcdHBhZGRpbmc6IDEyMHB4IDgwcHggOTBweDtcclxuXHRcdG1pbi1oZWlnaHQ6IDkwdmg7XHJcblx0XHRcclxuXHRcdGgxIHtcclxuXHRcdFx0Zm9udC1zaXplOiA2MHB4O1xyXG5cclxuXHRcdFx0c3BhbiB7XHJcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdHAge1xyXG5cdFx0XHRmb250LXNpemU6IDIwcHg7XHJcblx0XHR9XHJcblx0XHQuZ3JhY2lhcyAmIHtcclxuXHRcdFx0bWluLWhlaWdodDogMTAwdmg7XHJcblx0XHR9XHJcblx0fVxyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xyXG5cdFx0cGFkZGluZzogMTIwcHggOHZ3IDEyMHB4O1xyXG5cdFx0YmFja2dyb3VuZC1pbWFnZTogXHJcblx0XHRcdGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgMC4yKSwgcmdiYSgwLCAwLCAwLCAwLjUpIDIwJSwgcmdiYSgwLCAwLCAwLCAwLjIpIDQwJSwgcmdiYSgwLCAwLCAwLCAwLjIpIDgwJSwgcmdiYSgwLCAwLCAwLCAwLjYpKSwgXHJcblx0XHRcdHVybChcIi4uL2ltZy9oZXJvLWguanBnXCIpO1xyXG5cclxuXHRcdCYuYmxhY2tkYXlzIHtcclxuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogXHJcblx0XHRcdFx0bGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgwLCAwLCAwLCAwKSwgcmdiYSgwLCAwLCAwLCAwKSA4MCUsIHJnYmEoMCwgMCwgMCwgMC43KSA5MCUpLCBcclxuXHRcdFx0XHR1cmwoXCIuLi9pbWcvaGVyby1iZGF5cy1oLmpwZ1wiKTtcclxuXHRcdH1cclxuXHRcdFxyXG5cdH1cclxufSIsIi5mb3JtLXJlc2VydmEge1xyXG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgcGFkZGluZzogMzBweDtcclxuICAgIG1hcmdpbjogLTMwcHggMzBweCAwIDMwcHg7XHJcbiAgICBib3gtc2hhZG93OiAxcHggMXB4IDEwcHggcmdiYSgwLDAsMCwuNCk7XHJcblxyXG4gICAgLmJvb2tpbmctbWFzayB7XHJcblxyXG4gICAgICAgID4gZGl2Om5vdCguc2VuZC1idXR0b24pIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4ICRnb2xkIHNvbGlkO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2VuZC1idXR0b24ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblxyXG4gICAgICAgICAgICAjbG9hZGVyIHtcclxuICAgICAgICAgICAgICAgIC8vIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTJweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNib29raW5nLWZvcm0ge1xyXG5cclxuICAgICAgICAuaWNvbiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnVzZXIgLmljb24ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9pY29uLWZvcm0tdXNlci5zdmcnKSBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5waG9uZSAuaWNvbiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2ljb24tZm9ybS1waG9uZS5zdmcnKSBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5tYWlsIC5pY29uIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvaWNvbi1mb3JtLW1haWwuc3ZnJykgbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGF0ZS1pbiAuaWNvbiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2ljb24tZm9ybS1kYXRlLnN2ZycpIG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRhdGUtb3V0IC5pY29uIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvaWNvbi1mb3JtLWRhdGUuc3ZnJykgbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgLmd1ZXN0IC5pY29uIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvaWNvbi1mb3JtLWd1ZXN0LnN2ZycpIG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAxMHB4O1xyXG4gICAgICAgIG1heC13aWR0aDogMTE2MHB4O1xyXG4gICAgICAgIG1hcmdpbjogLTMwcHggYXV0byAwO1xyXG5cclxuICAgICAgICBpbnB1dCwgc2VsZWN0IHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzZWxlY3Qge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAuYm9va2luZy1tYXNrIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgID4gZGl2Om5vdCguc2VuZC1idXR0b24pIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7ICBcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4ICRnb2xkIHNvbGlkO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4IDAgMjBweDtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDE7XHJcblxyXG4gICAgICAgICAgICAgICAgJi5ndWVzdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDEuNTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYudXNlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMS41O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuc2VuZC1idXR0b24ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uaG90ZWwge1xyXG4gICAgcGFkZGluZzogMTIwcHggMzBweCAzMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuXHJcbiAgICBhcnRpY2xlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgfVxyXG4gICAgaDQge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1iYXNlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyOHB4O1xyXG4gICAgfVxyXG4gICAgaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNDJweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMnB4O1xyXG4gICAgfVxyXG4gICAgLmJ1dHRvbiB7XHJcbiAgICAgICAgd2lkdGg6IDE4MHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgICBcclxuICAgICAgICAmID4gc3BhbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDFlbSAuOGVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zbGlkZS1ob3RlbCB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDYwcHg7XHJcblxyXG4gICAgICAgIC5zd2lwZXItYnV0dG9uIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgdG9wOiBhdXRvO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0MnB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDQycHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICYtcHJldiB7XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLjV0dXJuKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgJi1uZXh0IHtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNjJweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC4yKTtcclxuXHJcbiAgICAgICAgICAgICAgICBzdmcgKiB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gc3Ryb2tlOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5tZW51LXFyICYge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGgyLnNlY29uZCB7IFxyXG4gICAgICAgIG1hcmdpbi10b3A6IDYycHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHsgICBcclxuICAgICAgICBtYXgtd2lkdGg6IDExNjBweDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBwYWRkaW5nOiAxMjBweCA2MHB4IDYwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDUycHg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMzQwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNjBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuXHJcbiAgICAgICAgICAgICYuc2Vjb25kIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDc4cHg7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmUgO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNjBweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQ1MHB4O1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMzBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMnB4O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgYXJ0aWNsZSwgLnNsaWRlIHtcclxuICAgICAgICAgICAgZmxleDogNTAlO1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAzMHB4KTsgIFxyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfSAgICAgIFxyXG4gICAgICAgIC5zbGlkZSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2MHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1LDMyLDE1LC42KSAgIDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1cHg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDI2cHg7XHJcbiAgICAgICAgICAgICAgICByaWdodDogMDsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcHRvcCkgeyAgIFxyXG4gICAgICAgIG1heC13aWR0aDogMTI4MHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDEyMHB4IDYwcHg7XHJcbiAgICAgICAgXHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDcycHg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNDgwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZGVzY3Vicmkge1xyXG5cclxuICAgIGg0IHtcclxuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtYmFzZTtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNDJweDtcclxuICAgICAgICBtYXJnaW46IDMwcHggMDtcclxuICAgIH1cclxuXHJcbiAgICAudGl0bGVzIHtcclxuICAgICAgICBwYWRkaW5nOiA0MHB4IDMwcHggMzBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpZGUtZGVzY3Vicmkge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xyXG5cclxuICAgICAgICAuc3dpcGVyLWJ1dHRvbiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICAgIHRvcDogYXV0bztcclxuICAgICAgICAgICAgYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogNDJweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0MnB4O1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgJi1wcmV2IHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDMwcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSguNXR1cm4pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLW5leHQge1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiA5MnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAudGl0bGVzIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEyMHB4IDAgMCAxMjBweDtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgIHRleHQtc2hhZG93OiAwcHggMHB4IDEwcHggcmdiYSgwLDAsMCwuNik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAyMHZoIDAgMDtcclxuICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDBweCAwcHggMTBweCByZ2JhKDAsMCwwLC42KTsgICAgICAgICAgICBcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zbGlkZS1kZXNjdWJyaSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XHJcbiAgICBcclxuICAgICAgICAgICAgLnN3aXBlci1idXR0b24ge1xyXG4gICAgICAgICAgICAgICAgdG9wOiA2MCU7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IGF1dG87XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsLjQpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgKiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgJi1wcmV2IHtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxMjBweDtcclxuICAgIFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAmLW5leHQge1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDE5MnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9ICAgXHJcbiAgICAgICAgfSAgICAgXHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXB0b3ApIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA5NnZoO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgXHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDYycHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMjZ2aCAwIDA7ICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2xpZGUtZGVzY3Vicmkge1xyXG4gICAgXHJcbiAgICAgICAgICAgIC5zd2lwZXItYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgIHRvcDogNTUlO1xyXG4gICAgICAgICAgICB9ICAgXHJcbiAgICAgICAgfSAgICAgICAgIFxyXG4gICAgfSAgICBcclxufVxyXG5cclxuLnBsYWNlIHtcclxuICAgIHBhZGRpbmc6IDYwcHggMzBweCAwcHg7XHJcblxyXG4gICAgaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNDJweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5idXR0b24ge1xyXG4gICAgICAgIHdpZHRoOiAxODBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICAgICAgXHJcbiAgICAgICAgJiA+IHNwYW4ge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxZW0gLjhlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYXJ0aWNsZSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjJweDtcclxuICAgIH1cclxuXHJcbiAgICAubWFwIHtcclxuICAgICAgICBtYXJnaW46IDAgLTMwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA1MDBweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgICAgIG1heC13aWR0aDogMTE2MHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmc6IDkwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICBhcnRpY2xlIHtcclxuICAgICAgICAgICAgd2lkdGg6IDQyMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5tYXAge1xyXG4gICAgICAgICAgICB3aWR0aDogMzgwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzgwcHg7XHJcbiAgICAgICAgICAgIG9yZGVyOiAtMTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI0U3RTRERjtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAzODBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMzgwcHg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IC0zMHB4O1xyXG4gICAgICAgICAgICAgICAgbGVmdDogLTMwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmcmFtZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXB0b3ApIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEyODBweDtcclxuICAgICAgICBwYWRkaW5nOiAxNDBweCA5MHB4IDE2MHB4OyAgXHJcbiAgICB9ICBcclxufVxyXG5cclxuLmV2ZW50b3Mge1xyXG4gICAgcGFkZGluZzogMCAzMHB4IDEyMHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgIC5idXR0b24ge1xyXG4gICAgICAgIHdpZHRoOiAyMDBweDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDYwcHggMCAxODBweDtcclxuICAgIH1cclxufVxyXG5cclxuLmNvbnRlbnQtcXIge1xyXG4gICAgcGFkZGluZzogMCAzMHB4IDMwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgaDEge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzhweDsgXHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQ2cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTJweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICB3aWR0aDogNjBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSAgICBcclxuXHJcbiAgICBoMiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5idXR0b24ge1xyXG4gICAgICAgIHdpZHRoOiAxNDBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdWwge1xyXG4gICAgICAgIHBhZGRpbmc6IDk0cHggMCAzNnB4IDA7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4ICNjY2NjY2Mgc29saWQ7IFxyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDU4cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICBcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XHJcbiAgICAgXHJcbiAgICAgICAgaDEge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDUycHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXB0b3ApIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEyODBweDtcclxuICAgICAgICBwYWRkaW5nOiAxMjBweCA2MHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgaDEge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDcycHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA1OHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICBcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNzJweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gICAgICAgIFxyXG4gICAgfVxyXG59XHJcblxyXG4iLCIjYmlvX2VwIHtcclxuICAgIHBhZGRpbmc6IDYwcHggNDBweCA0MHB4O1xyXG4gICAgbWF4LXdpZHRoOiA0MDBweDtcclxuICAgIHdpZHRoOiBhdXRvIWltcG9ydGFudDtcclxuICAgIGhlaWdodDogYXV0byFpbXBvcnRhbnQ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xyXG4gICAgY29sb3I6ICRibGFjaztcclxuXHJcbiAgICAudGhhbmtzICZ7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC53aGF0c2FwcHtcclxuXHRcdHdpZHRoOiA1MHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbjogYXV0bztcclxuXHR9XHJcbiAgICBcclxuXHJcbiAgICBoMyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgIH1cclxuXHJcbiAgICAjZm9ybVBvcFVwIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0Om5vdCguYnV0dG9uX19yYXllbikge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgIH1cclxuXHJcbiAgICAuYnV0dG9uX19yYXllbiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxufVxyXG4jYmlvX2VwX2Nsb3NlIHtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgnLi4vaW1nL2Nsb3NlLnN2ZycpIG5vLXJlcGVhdCFpbXBvcnRhbnQ7XHJcbiAgICB3aWR0aDogNTRweDtcclxuICAgIGhlaWdodDogNTRweDtcclxuICAgIG1hcmdpbjogLTg4cHggMCAwIC0yNnB4O1xyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMHR1cm4pO1xyXG4gICAgXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSguMnR1cm4pO1xyXG4gICAgfSAgIFxyXG59Il19 */
