/*!**********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/esm/index.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/base.scss ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
:root {
  --footer-rose: #C0667E;
  --footer-rose-fonce: #CC826C;
  --footer-rose-profond: #634650;
  --footer-creme: #F3DDC5;
  --footer-blanc: #ffffff;
  --footer-bleu-facebook: #6CB6CC;
  --footer-bleu-facebook-fonce: #C0667E;
  --footer-texte: rgba(255, 255, 255, 0.82);
  --footer-transition:
  	420ms cubic-bezier(0.2, 0.75, 0.25, 1);
}

/* =========================================================
   STRUCTURE GÉNÉRALE
   ========================================================= */
.footer-formatcoeur {
  position: relative;
  z-index: 1;
  overflow: hidden;
  margin-top: 0;
  padding-top: clamp(5rem, 8vw, 8rem);
  color: var(--footer-blanc);
  background: radial-gradient(circle at 12% 28%, rgba(255, 201, 220, 0.17), transparent 26%), radial-gradient(circle at 88% 72%, rgba(255, 219, 174, 0.14), transparent 30%), repeating-linear-gradient(112deg, rgba(255, 255, 255, 0.018) 0, rgba(255, 255, 255, 0.018) 1px, transparent 1px, transparent 9px), linear-gradient(145deg, #674751 0%, #49363d 50%, #32292d 100%);
  isolation: isolate;
}

.footer-formatcoeur::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: repeating-radial-gradient(circle at 20% 30%, rgba(255, 255, 255, 0.025) 0, rgba(255, 255, 255, 0.025) 1px, transparent 1px, transparent 8px);
  mix-blend-mode: soft-light;
  pointer-events: none;
}

.footer-formatcoeur__contenu {
  position: relative;
  z-index: 4;
}

/* =========================================================
   VAGUE SUPÉRIEURE
   ========================================================= */
.footer-formatcoeur__vague {
  position: absolute;
  z-index: 3;
  top: -1px;
  right: 0;
  left: 0;
  height: clamp(5rem, 8vw, 8rem);
  line-height: 0;
  transform: translateY(-48%);
  pointer-events: none;
}

.footer-formatcoeur__vague svg {
  display: block;
  width: 100%;
  height: 100%;
}

.footer-formatcoeur__vague-fond {
  fill: rgba(229, 129, 165, 0.38);
  animation: vagueFooterFond 12s ease-in-out -4s infinite;
  will-change: d;
}

.footer-formatcoeur__vague-avant {
  fill: #674751;
  animation: vagueFooterAvant 10s ease-in-out -1s infinite;
  will-change: d;
}

@keyframes vagueFooterFond {
  0%, 100% {
    d: path("M0,50 C180,125 355,15 590,72 C835,132 1040,22 1440,70 L1440,150 L0,150 Z");
  }
  33% {
    d: path("M0,72 C160,110 360,30 610,50 C850,95 1090,28 1440,48 L1440,150 L0,150 Z");
  }
  66% {
    d: path("M0,28 C200,80 390,118 620,70 C860,30 1100,108 1440,92 L1440,150 L0,150 Z");
  }
}
@keyframes vagueFooterAvant {
  0%, 100% {
    d: path("M0,92 C255,135 455,52 720,96 C990,138 1190,52 1440,92 L1440,150 L0,150 Z");
  }
  33% {
    d: path("M0,112 C230,122 450,58 710,72 C980,105 1190,48 1440,64 L1440,150 L0,150 Z");
  }
  66% {
    d: path("M0,64 C240,92 470,125 730,86 C1000,55 1210,118 1440,112 L1440,150 L0,150 Z");
  }
}
/* =========================================================
   DÉCORATIONS
   ========================================================= */
.footer-formatcoeur__halo {
  position: absolute;
  z-index: -1;
  width: 32rem;
  height: 32rem;
  border-radius: 50%;
  filter: blur(80px);
  opacity: 0.2;
  pointer-events: none;
  animation: footerHalo 9s ease-in-out infinite;
}

.footer-formatcoeur__halo--gauche {
  top: 8rem;
  left: -16rem;
  background: #e4b9c6;
}

.footer-formatcoeur__halo--droite {
  right: -15rem;
  bottom: -8rem;
  background: #CC826C;
  animation-delay: -4s;
}

.footer-formatcoeur__branche {
  position: absolute;
  z-index: -1;
  width: 19rem;
  height: 30rem;
  opacity: 0.13;
  pointer-events: none;
}

.footer-formatcoeur__branche::before,
.footer-formatcoeur__branche::after {
  content: "";
  position: absolute;
  border: 1px solid rgba(255, 255, 255, 0.9);
  border-radius: 50%;
}

.footer-formatcoeur__branche::before {
  inset: 2rem 8rem 1rem;
  border-width: 0 1px 0 0;
  transform: rotate(24deg);
}

.footer-formatcoeur__branche::after {
  top: 5rem;
  left: 6rem;
  width: 6rem;
  height: 15rem;
  border-width: 1px 0 0 1px;
  border-radius: 80% 0;
  transform: rotate(-18deg);
}

.footer-formatcoeur__branche--gauche {
  bottom: -6rem;
  left: -5rem;
  transform: rotate(-12deg);
}

.footer-formatcoeur__branche--droite {
  top: 4rem;
  right: -6rem;
  transform: rotate(175deg);
}

/* =========================================================
   SUR-TITRES
   ========================================================= */
.footer-formatcoeur__sur-titre {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0 0 0.65rem;
  color: #e5c0cb;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.footer-formatcoeur__sur-titre::before {
  content: "";
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background: #e5c0cb;
  box-shadow: 0 0 0 5px rgba(247, 180, 204, 0.12);
}

/* =========================================================
   INVITATION FACEBOOK
   ========================================================= */
.footer-whatsapp {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) minmax(17rem, 0.55fr);
  align-items: center;
  gap: clamp(1.5rem, 4vw, 3.5rem);
  overflow: hidden;
  margin-bottom: clamp(4rem, 7vw, 7rem);
  padding: clamp(1.8rem, 4vw, 3.2rem);
  border: 1px solid rgba(255, 255, 255, 0.21);
  border-radius: 2.2rem;
  background: radial-gradient(circle at 92% 12%, rgba(24, 119, 242, 0.2), transparent 30%), radial-gradient(circle at 5% 100%, rgba(255, 255, 255, 0.1), transparent 28%), repeating-linear-gradient(120deg, rgba(255, 255, 255, 0.016) 0, rgba(255, 255, 255, 0.016) 1px, transparent 1px, transparent 8px), linear-gradient(135deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.07));
  box-shadow: 0 35px 90px rgba(30, 7, 17, 0.32);
  backdrop-filter: blur(18px);
  transition: border-color var(--footer-transition), box-shadow var(--footer-transition), transform var(--footer-transition);
}

.footer-whatsapp:hover {
  border-color: rgba(255, 255, 255, 0.32);
  box-shadow: 0 42px 100px rgba(30, 7, 17, 0.42);
  transform: translateY(-4px);
}

.footer-whatsapp::before {
  content: "";
  position: absolute;
  top: -8rem;
  right: -4rem;
  width: 20rem;
  height: 20rem;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 41% 59% 65% 35%/45% 35% 65% 55%;
  animation: footerRotation 24s linear infinite;
  pointer-events: none;
}

.footer-whatsapp::after {
  content: "";
  position: absolute;
  right: 9%;
  bottom: -8rem;
  width: 14rem;
  height: 14rem;
  border-radius: 50%;
  background: rgba(24, 119, 242, 0.12);
  filter: blur(4px);
  pointer-events: none;
}

.footer-whatsapp__icone {
  position: relative;
  z-index: 2;
  display: grid;
  width: 5.4rem;
  height: 5.4rem;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 1.8rem;
  color: #fff;
  background: linear-gradient(145deg, #4b94f4, #1877f2);
  box-shadow: 0 20px 45px rgba(13, 93, 199, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.35);
  transition: transform var(--footer-transition), border-radius var(--footer-transition), box-shadow var(--footer-transition);
}

.footer-whatsapp:hover .footer-whatsapp__icone {
  border-radius: 50%;
  box-shadow: 0 25px 55px rgba(13, 93, 199, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.35);
  transform: translateY(-5px) rotate(-6deg) scale(1.06);
}

.footer-whatsapp__icone svg {
  width: 2.6rem;
  height: 2.6rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.45;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.footer-whatsapp__contenu {
  position: relative;
  z-index: 2;
}

.footer-whatsapp__contenu h2 {
  margin: 0 0 0.7rem;
  color: #fff;
  font-family: "Forum", serif;
  font-size: clamp(2rem, 3vw, 3.2rem);
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.02em;
}

.footer-whatsapp__contenu > p:last-child {
  max-width: 45rem;
  margin: 0;
  color: var(--footer-texte);
  line-height: 1.7;
}

.footer-whatsapp__action {
  position: relative;
  z-index: 2;
  text-align: center;
}

.footer-whatsapp__bouton {
  position: relative;
  display: inline-flex;
  width: 100%;
  min-height: 4rem;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  overflow: hidden;
  padding: 0.85rem 1.35rem;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 999px;
  color: #174b8f;
  background: linear-gradient(135deg, #ffffff, #eaf3ff);
  box-shadow: 0 18px 40px rgba(23, 5, 12, 0.23);
  font-weight: 750;
  text-decoration: none;
  transition: color var(--footer-transition), transform var(--footer-transition), box-shadow var(--footer-transition), background-color var(--footer-transition);
}

.footer-whatsapp__bouton::before {
  content: "";
  position: absolute;
  top: -120%;
  left: -45%;
  width: 40%;
  height: 340%;
  background: linear-gradient(90deg, transparent, rgba(24, 119, 242, 0.2), transparent);
  transform: rotate(18deg);
  transition: left 650ms ease;
}

.footer-whatsapp__bouton:hover {
  color: #174b8f;
  box-shadow: 0 25px 50px rgba(23, 5, 12, 0.32);
  transform: translateY(-5px);
}

.footer-whatsapp__bouton:hover::before {
  left: 130%;
}

.footer-whatsapp__bouton-icone {
  position: relative;
  z-index: 2;
  display: grid;
  width: 2.5rem;
  height: 2.5rem;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: var(--footer-bleu-facebook);
  box-shadow: 0 8px 20px rgba(13, 93, 199, 0.28);
  transition: transform var(--footer-transition), background-color var(--footer-transition);
}

.footer-whatsapp__bouton:hover .footer-whatsapp__bouton-icone {
  background: var(--footer-bleu-facebook-fonce);
  transform: rotate(-8deg) scale(1.08);
}

.footer-whatsapp__bouton-icone svg {
  width: 1.35rem;
  height: 1.35rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.55;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.footer-whatsapp__bouton > span:nth-child(2) {
  position: relative;
  z-index: 2;
}

.footer-whatsapp__fleche {
  position: relative;
  z-index: 2;
  font-size: 1.25rem;
  transition: transform var(--footer-transition);
}

.footer-whatsapp__bouton:hover .footer-whatsapp__fleche {
  transform: translateX(5px);
}

.footer-whatsapp__precision {
  margin: 0.75rem 0 0;
  color: rgba(255, 255, 255, 0.5);
  font-size: 0.76rem;
}

/* =========================================================
   GRILLE PRINCIPALE
   ========================================================= */
.footer-formatcoeur__grille {
  display: grid;
  grid-template-columns: minmax(17rem, 1.25fr) minmax(10rem, 0.7fr) minmax(10rem, 0.7fr) minmax(17rem, 1fr);
  gap: clamp(2rem, 4vw, 4rem);
  padding-bottom: clamp(3.5rem, 6vw, 5rem);
}

/* =========================================================
   IDENTITÉ ET LOGO
   ========================================================= */
.footer-formatcoeur__marque {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  color: #fff;
  text-decoration: none;
}

.footer-formatcoeur__logo {
  display: grid;
  width: 4.3rem;
  height: 4.3rem;
  place-items: center;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 15px 35px rgba(23, 5, 12, 0.26);
  transition: transform var(--footer-transition), box-shadow var(--footer-transition);
}

.footer-formatcoeur__marque:hover .footer-formatcoeur__logo {
  box-shadow: 0 22px 44px rgba(23, 5, 12, 0.35);
  transform: translateY(-4px) rotate(-5deg);
}

.footer-formatcoeur__logo img {
  display: block;
  width: 100%;
  height: 100%;
  padding: 0.2rem;
  object-fit: contain;
}

.footer-formatcoeur__nom {
  font-family: "Forum", serif;
  font-size: clamp(2rem, 2.5vw, 2.7rem);
  line-height: 1;
}

.footer-formatcoeur__description {
  max-width: 26rem;
  margin: 1.6rem 0;
  color: var(--footer-texte);
  line-height: 1.75;
}

.footer-formatcoeur__citation {
  position: relative;
  margin: 0 0 1.8rem;
  padding: 1rem 1rem 1rem 1.4rem;
  border-left: 2px solid #d7a5b4;
  color: rgba(255, 255, 255, 0.82);
  font-family: "Forum", serif;
  font-size: 1.35rem;
  font-style: italic;
}

.footer-formatcoeur__citation span {
  color: #ddadbb;
  font-size: 2rem;
  line-height: 0;
}

/* =========================================================
   RÉSEAUX SOCIAUX
   ========================================================= */
.footer-reseaux {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
}

.footer-reseaux a {
  display: grid;
  width: 2.9rem;
  height: 2.9rem;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 50%;
  color: #fff;
  background: rgba(255, 255, 255, 0.08);
  text-decoration: none;
  transition: color var(--footer-transition), transform var(--footer-transition), background-color var(--footer-transition), border-color var(--footer-transition), box-shadow var(--footer-transition);
}

.footer-reseaux a:hover {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.48);
  background: var(--footer-rose);
  box-shadow: 0 14px 28px rgba(23, 5, 12, 0.22);
  transform: translateY(-5px) rotate(-5deg);
}

.footer-reseaux svg {
  width: 1.2rem;
  height: 1.2rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* =========================================================
   TITRES DES COLONNES
   ========================================================= */
.footer-formatcoeur__titre {
  position: relative;
  display: inline-block;
  margin: 0 0 1.4rem;
  padding-bottom: 0.7rem;
  color: #fff;
  font-family: "Forum", serif;
  font-size: 1.65rem;
  font-weight: 400;
}

.footer-formatcoeur__titre::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 2.7rem;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, #dfb4c0, transparent);
}

/* =========================================================
   LIENS DE NAVIGATION
   ========================================================= */
.footer-formatcoeur__liens,
.footer-coordonnees {
  display: grid;
  gap: 0.45rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.footer-formatcoeur__liens a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.6rem;
  padding: 0.55rem 0;
  color: var(--footer-texte);
  text-decoration: none;
  transition: color var(--footer-transition), transform var(--footer-transition);
}

.footer-formatcoeur__liens a span:last-child {
  color: #d7a5b4;
  opacity: 0;
  transform: translateX(-8px);
  transition: opacity var(--footer-transition), transform var(--footer-transition);
}

.footer-formatcoeur__liens a:hover {
  color: #fff;
  transform: translateX(5px);
}

.footer-formatcoeur__liens a:hover span:last-child {
  opacity: 1;
  transform: translateX(0);
}

/* =========================================================
   CONTACT
   ========================================================= */
.footer-formatcoeur__contact-intro {
  margin: 0 0 1.3rem;
  color: var(--footer-texte);
  line-height: 1.65;
}

.footer-coordonnees {
  gap: 0.85rem;
  margin-bottom: 1.7rem;
}

.footer-coordonnees li {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  color: var(--footer-texte);
}

.footer-coordonnees a {
  color: inherit;
  text-decoration: none;
  transition: color var(--footer-transition);
}

.footer-coordonnees a:hover {
  color: #fff;
}

.footer-coordonnees__icone {
  display: grid;
  width: 2.6rem;
  height: 2.6rem;
  flex: 0 0 auto;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 0.9rem;
  background: rgba(255, 255, 255, 0.08);
  transition: transform var(--footer-transition), border-radius var(--footer-transition), background-color var(--footer-transition);
}

.footer-coordonnees li:hover .footer-coordonnees__icone {
  border-radius: 50%;
  background: rgba(192, 102, 126, 0.8);
  transform: rotate(-5deg) scale(1.06);
}

.footer-coordonnees svg {
  width: 1.15rem;
  height: 1.15rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* =========================================================
   BOUTON CONTACT
   ========================================================= */
.footer-formatcoeur__bouton-contact {
  position: relative;
  display: inline-flex;
  min-height: 3.2rem;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  overflow: hidden;
  padding: 0.75rem 1.25rem;
  border-radius: 999px;
  color: var(--footer-rose-profond);
  background: #fff;
  box-shadow: 0 14px 30px rgba(23, 5, 12, 0.22);
  font-weight: 750;
  text-decoration: none;
  transition: color var(--footer-transition), transform var(--footer-transition), box-shadow var(--footer-transition);
}

.footer-formatcoeur__bouton-contact::before {
  content: "";
  position: absolute;
  top: -130%;
  left: -45%;
  width: 40%;
  height: 350%;
  background: linear-gradient(90deg, transparent, rgba(192, 102, 126, 0.17), transparent);
  transform: rotate(17deg);
  transition: left 650ms ease;
}

.footer-formatcoeur__bouton-contact:hover {
  color: var(--footer-rose-profond);
  box-shadow: 0 20px 40px rgba(23, 5, 12, 0.32);
  transform: translateY(-4px);
}

.footer-formatcoeur__bouton-contact:hover::before {
  left: 130%;
}

.footer-formatcoeur__bouton-contact span,
.footer-formatcoeur__bouton-contact svg {
  position: relative;
  z-index: 2;
}

.footer-formatcoeur__bouton-contact svg {
  width: 1.1rem;
  height: 1.1rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform var(--footer-transition);
}

.footer-formatcoeur__bouton-contact:hover svg {
  transform: translateX(5px);
}

/* =========================================================
   BAS DU FOOTER
   ========================================================= */
.footer-formatcoeur__bas {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 1.5rem;
  min-height: 5.5rem;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.54);
  font-size: 0.83rem;
}

.footer-formatcoeur__bas p {
  margin: 0;
}

.footer-formatcoeur__signature {
  text-align: center;
}

.footer-formatcoeur__signature span {
  display: inline-block;
  margin: 0 0.2rem;
  color: #d6a0b0;
  animation: footerCoeur 2.3s ease-in-out infinite;
}

/* =========================================================
   RETOUR EN HAUT
   ========================================================= */
.footer-retour-haut {
  display: grid;
  width: 3rem;
  height: 3rem;
  place-items: center;
  justify-self: end;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 50%;
  color: #fff;
  background: rgba(255, 255, 255, 0.08);
  cursor: pointer;
  transition: transform var(--footer-transition), background-color var(--footer-transition), border-color var(--footer-transition), box-shadow var(--footer-transition);
}

.footer-retour-haut:hover {
  border-color: rgba(255, 255, 255, 0.42);
  background: var(--footer-rose);
  box-shadow: 0 15px 30px rgba(23, 5, 12, 0.25);
  transform: translateY(-5px);
}

.footer-retour-haut:focus-visible {
  outline: 3px solid rgba(255, 255, 255, 0.44);
  outline-offset: 4px;
}

.footer-retour-haut svg {
  width: 1.25rem;
  height: 1.25rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* =========================================================
   ACCESSIBILITÉ DU FOCUS
   ========================================================= */
.footer-formatcoeur a:focus-visible,
.footer-whatsapp__bouton:focus-visible {
  outline: 3px solid rgba(255, 255, 255, 0.5);
  outline-offset: 4px;
}

/* =========================================================
   ANIMATIONS
   ========================================================= */
@keyframes footerHalo {
  0%, 100% {
    opacity: 0.16;
    transform: scale(0.92);
  }
  50% {
    opacity: 0.26;
    transform: scale(1.08);
  }
}
@keyframes footerRotation {
  from {
    transform: rotate(0);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes footerCoeur {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.22);
  }
}
/* =========================================================
   RESPONSIVE GRANDES TABLETTES
   ========================================================= */
@media (max-width: 1199px) {
  .footer-whatsapp {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .footer-whatsapp__action {
    grid-column: 1/-1;
  }
  .footer-whatsapp__bouton {
    width: auto;
    min-width: 18rem;
  }
  .footer-formatcoeur__grille {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
/* =========================================================
   RESPONSIVE TABLETTES
   ========================================================= */
@media (max-width: 991px) {
  .footer-formatcoeur {
    padding-top: 6rem;
  }
  .footer-formatcoeur__grille {
    gap: 3rem 2rem;
  }
}
/* =========================================================
   RESPONSIVE MOBILES
   ========================================================= */
@media (max-width: 767px) {
  .footer-formatcoeur {
    padding-top: 5rem;
  }
  .footer-formatcoeur__vague {
    height: 5rem;
  }
  .footer-whatsapp {
    grid-template-columns: 1fr;
    padding: 1.7rem;
    border-radius: 1.7rem;
    text-align: center;
  }
  .footer-whatsapp__icone {
    margin: 0 auto;
  }
  .footer-whatsapp__contenu > p:last-child {
    margin-right: auto;
    margin-left: auto;
  }
  .footer-whatsapp__action {
    grid-column: auto;
  }
  .footer-whatsapp__bouton {
    width: 100%;
    min-width: 0;
  }
  .footer-formatcoeur__grille {
    grid-template-columns: 1fr;
  }
  .footer-formatcoeur__identite,
  .footer-formatcoeur__colonne {
    text-align: center;
  }
  .footer-formatcoeur__marque,
  .footer-reseaux {
    justify-content: center;
  }
  .footer-formatcoeur__description {
    margin-right: auto;
    margin-left: auto;
  }
  .footer-formatcoeur__citation {
    display: inline-block;
    text-align: left;
  }
  .footer-formatcoeur__titre::after {
    left: 50%;
    transform: translateX(-50%);
  }
  .footer-formatcoeur__liens a {
    justify-content: center;
  }
  .footer-formatcoeur__liens a span:last-child {
    display: none;
  }
  .footer-coordonnees li {
    justify-content: center;
    text-align: left;
  }
  .footer-formatcoeur__bouton-contact {
    width: 100%;
    max-width: 20rem;
  }
  .footer-formatcoeur__bas {
    grid-template-columns: 1fr;
    padding: 1.7rem 0;
    text-align: center;
  }
  .footer-retour-haut {
    justify-self: center;
  }
}
/* =========================================================
   TRÈS PETITS ÉCRANS
   ========================================================= */
@media (max-width: 420px) {
  .footer-whatsapp__bouton {
    flex-wrap: wrap;
  }
  .footer-whatsapp__fleche {
    display: none;
  }
  .footer-formatcoeur__marque {
    flex-direction: column;
  }
  .footer-formatcoeur__nom {
    font-size: 2.2rem;
  }
}
/* =========================================================
   RÉDUCTION DES ANIMATIONS
   ========================================================= */
@media (prefers-reduced-motion: reduce) {
  .footer-formatcoeur *,
  .footer-formatcoeur *::before,
  .footer-formatcoeur *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
.slam-planete {
  position: fixed;
  z-index: 1060;
  right: clamp(0.75rem, 2vw, 1.5rem);
  bottom: clamp(0.75rem, 2vw, 1.5rem);
  display: grid;
  width: clamp(7.4rem, 10vw, 10.5rem);
  aspect-ratio: 1;
  place-items: center;
  border-radius: 50%;
  color: #C0667E;
  text-decoration: none;
  filter: drop-shadow(0 1rem 1.5rem rgba(43, 31, 49, 0.28));
  isolation: isolate;
  transition: filter 0.35s ease, transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.slam-planete:hover,
.slam-planete:focus-visible {
  color: #C0667E;
  filter: drop-shadow(0 1.35rem 2rem rgba(93, 47, 70, 0.38));
  transform: translateY(-0.35rem) scale(1.035);
}

.slam-planete:focus-visible {
  outline: 3px solid #6CB6CC;
  outline-offset: 0.35rem;
}

.slam-planete__astre {
  position: absolute;
  inset: 0;
  display: block;
  animation: slamPlaneteFlotte 5.8s ease-in-out infinite;
}

.slam-planete__astre img,
.slam-planete__coeurs {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.slam-planete__astre img {
  object-fit: contain;
  user-select: none;
}

.slam-planete__coeurs {
  pointer-events: none;
  filter: drop-shadow(0 0 0.18rem rgba(255, 255, 255, 0.96)) drop-shadow(0 0 0.45rem rgba(239, 143, 176, 0.88));
  animation: slamCoeursScintillent 3.4s ease-in-out infinite;
}

.slam-planete__compteur {
  position: absolute;
  right: -0.2rem;
  bottom: 0.1rem;
  display: flex;
  min-width: 3.4rem;
  min-height: 3.4rem;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 0.35rem 0.55rem;
  border: 1px solid rgba(255, 255, 255, 0.88);
  border-radius: 50%;
  background: rgba(255, 248, 244, 0.94);
  box-shadow: 0 0.55rem 1.3rem rgba(79, 42, 59, 0.23);
  line-height: 1;
}

.slam-planete__compteur strong {
  font-family: "Forum", serif;
  font-size: 1.25rem;
  font-weight: 700;
}

.slam-planete__compteur span {
  margin-top: 0.15rem;
  font-size: 0.57rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.slam-planete--nouveau {
  animation: slamPlaneteCelebre 0.9s cubic-bezier(0.2, 0.9, 0.3, 1);
}

/* Pendant l'ouverture du dialogue, la planète est déplacée dans la top layer :
   elle reste nette tandis que la page située derrière conserve son flou. */
.slam-planete--premier-plan {
  z-index: 6;
  filter: drop-shadow(0 1.1rem 1.8rem rgba(43, 31, 49, 0.38));
}

@keyframes slamPlaneteFlotte {
  0%, 100% {
    transform: translateY(0) rotate(-1deg);
  }
  50% {
    transform: translateY(-0.42rem) rotate(1.5deg);
  }
}
@keyframes slamPlaneteCelebre {
  0% {
    transform: scale(1);
  }
  35% {
    transform: scale(1.16) rotate(-4deg);
  }
  68% {
    transform: scale(0.96) rotate(2deg);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes slamCoeursScintillent {
  0%, 100% {
    opacity: 0.9;
  }
  50% {
    opacity: 1;
    filter: drop-shadow(0 0 0.28rem #fff) drop-shadow(0 0 0.7rem rgb(239, 143, 176));
  }
}
.slam-heart-flight {
  position: fixed;
  z-index: 10;
  width: 2.8rem;
  height: 2.8rem;
  pointer-events: none;
  color: #C0667E;
  font-size: 2.75rem;
  line-height: 1;
  text-align: center;
  text-shadow: 0 0 0.35rem #fff, 0 0 0.85rem #fff, 0 0 1.4rem rgba(255, 120, 170, 0.98), 0 0.3rem 0.55rem rgba(92, 37, 61, 0.36);
}

.slam-modal {
  width: min(31rem, 100vw - 2rem);
  max-height: calc(100dvh - 2rem);
  padding: 0;
  overflow: visible;
  border: 0;
  border-radius: 2rem;
  color: #49353d;
  background: transparent;
}

.slam-modal::backdrop {
  background: rgba(43, 30, 37, 0.62);
  backdrop-filter: blur(0.45rem);
}

.slam-modal__carte {
  position: relative;
  padding: 1.55rem 1.75rem 1.4rem;
  overflow: visible;
  border: 1px solid rgba(255, 255, 255, 0.85);
  border-radius: 1.5rem;
  background: radial-gradient(circle at 100% 0, rgba(242, 185, 203, 0.38), transparent 34%), linear-gradient(145deg, #fffaf7, #F3DDC5);
  box-shadow: 0 2rem 5rem rgba(44, 25, 35, 0.35);
}

.slam-modal__fermer {
  position: absolute;
  top: 0.8rem;
  right: 0.8rem;
  display: grid;
  width: 2.2rem;
  height: 2.2rem;
  place-items: center;
  border: 1px solid rgba(149, 92, 111, 0.2);
  border-radius: 50%;
  color: #74475a;
  background: rgba(255, 255, 255, 0.74);
  font-size: 1.2rem;
  line-height: 1;
}

.slam-modal__sur-titre {
  margin: 0 2.5rem 0.3rem 0;
  color: #C0667E;
  font-size: 0.8125rem !important;
  line-height: 1.25 !important;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.slam-modal h2 {
  margin: 0;
  color: #563442;
  font-family: "Forum", serif;
  font-size: clamp(2rem, 4vw, 2.65rem) !important;
  font-weight: 400;
  line-height: 1.05 !important;
  white-space: nowrap;
}

.slam-modal__introduction {
  max-width: 27rem;
  margin: 0.6rem 0 0.9rem;
  color: #725c65;
  font-size: 1rem !important;
  line-height: 1.55 !important;
}

.slam-modal__form {
  display: grid;
  gap: 0.5rem;
}

.slam-modal__form > label:not(.slam-modal__consentement) {
  font-size: 0.9375rem !important;
  line-height: 1.3 !important;
  font-weight: 800;
}

.slam-modal textarea {
  width: 100%;
  height: 7.5rem;
  min-height: 7.5rem;
  max-height: 11rem;
  padding: 0.8rem 0.9rem;
  resize: vertical;
  border: 1px solid #dfcbd2;
  border-radius: 0.8rem;
  outline: 0;
  color: #49353d;
  background: rgba(255, 255, 255, 0.86);
  font: inherit;
  font-size: 1rem !important;
  line-height: 1.5 !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.slam-modal textarea:focus {
  border-color: #C0667E;
  box-shadow: 0 0 0 0.25rem rgba(192, 102, 126, 0.14);
}

.slam-modal__aide {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  color: #8b747c;
  font-size: 0.8125rem;
}

.slam-modal__consentement {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.6rem;
  align-items: start;
  margin: 0.35rem 0 0.45rem;
  color: #644e57;
  font-size: 0.9375rem !important;
  line-height: 1.45 !important;
}

.slam-modal__consentement input {
  width: 1rem;
  height: 1rem;
  margin-top: 0.12rem;
  accent-color: #C0667E;
}

.slam-modal__envoyer {
  display: inline-flex;
  min-height: 2.9rem;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  padding: 0.65rem 1.1rem;
  border: 0;
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg, #C0667E, #CC826C);
  box-shadow: 0 0.8rem 1.8rem rgba(138, 75, 98, 0.25);
  font-size: 0.9375rem !important;
  line-height: 1.2 !important;
  font-weight: 800;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.slam-modal__envoyer:hover {
  transform: translateY(-2px);
}

.slam-modal__envoyer:disabled {
  cursor: wait;
  opacity: 0.58;
  transform: none;
}

.slam-modal__statut {
  min-height: 1rem;
  margin: 0.05rem 0 0;
  color: #6d5360;
  font-size: 0.875rem !important;
  line-height: 1.4 !important;
  font-weight: 700;
  text-align: center;
}

.slam-modal__statut.is-error {
  color: #a52f50;
}

.slam-modal__statut.is-success {
  color: #4b7659;
}

/* Le formulaire vit dans <main> : ces règles ciblées prennent le pas sur
   l'échelle typographique générale du site sans modifier les autres pages. */
#contenu-principal .slam-modal .slam-modal__sur-titre {
  font-size: 0.8125rem !important;
  line-height: 1.3 !important;
}

#contenu-principal .slam-modal .slam-modal__introduction {
  font-size: 1rem !important;
  line-height: 1.55 !important;
}

#contenu-principal .slam-modal .slam-modal__form > label:not(.slam-modal__consentement) {
  font-size: 0.9375rem !important;
  line-height: 1.3 !important;
}

#contenu-principal .slam-modal .slam-modal__form textarea {
  font-size: 1rem !important;
  line-height: 1.5 !important;
}

#contenu-principal .slam-modal .slam-modal__consentement {
  font-size: 0.9375rem !important;
  line-height: 1.45 !important;
}

#contenu-principal .slam-modal .slam-modal__envoyer {
  font-size: 0.9375rem !important;
  line-height: 1.25 !important;
}

#contenu-principal .slam-modal .slam-modal__statut {
  font-size: 0.875rem !important;
  line-height: 1.4 !important;
}

.slam-modal__piege {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

@media (max-width: 575.98px) {
  /* Même gabarit compact sur toutes les pages, y compris « Slame tes émotions ». */
  .slam-planete {
    width: 5.2rem;
  }
  .slam-planete__compteur {
    min-width: 2.55rem;
    min-height: 2.55rem;
  }
  .slam-planete__compteur strong {
    font-size: 1rem;
  }
  .slam-modal {
    width: calc(100vw - 1rem);
    max-height: calc(100dvh - 1rem);
  }
  .slam-modal__carte {
    max-height: calc(100dvh - 1rem);
    padding: 1.25rem 1rem 1rem;
    overflow: auto;
    border-radius: 1.25rem;
  }
  .slam-modal__fermer {
    top: 0.65rem;
    right: 0.65rem;
  }
  .slam-modal h2 {
    font-size: 2.15rem !important;
    white-space: normal;
  }
  .slam-modal__introduction {
    margin: 0.5rem 0 0.75rem;
    line-height: 1.4;
  }
  .slam-modal textarea {
    height: 6.5rem;
    min-height: 6.5rem;
  }
}
@media (max-height: 620px) {
  .slam-modal__carte {
    max-height: calc(100dvh - 1rem);
    overflow: auto;
  }
  .slam-modal textarea {
    height: 5.2rem;
    min-height: 5.2rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .slam-planete__astre,
  .slam-planete__coeurs,
  .slam-planete--nouveau {
    animation: none;
  }
  .slam-planete,
  .slam-modal__envoyer {
    transition: none;
  }
}
:root {
  --fc-couleur-principale: #C0667E;
  --fc-couleur-accent: #CC826C;
  --fc-couleur-secondaire: #6CB6CC;
  --fc-couleur-fond: #F3DDC5;
  --couleur-rose-formatcoeur: var(--fc-couleur-principale);
  --couleur-navigation-active: #F3DDC5;
  --couleur-navigation-active-ligne: #CC826C;
  --couleur-navigation: rgba(255, 255, 255, 0.88);
  --couleur-menu: rgba(74, 69, 66, 0.8);
  --fc-ombre: 0 24px 70px rgba(103, 54, 74, 0.11);
  --fc-ombre-hover: 0 34px 90px rgba(103, 54, 74, 0.2);
  --fc-transition: 420ms cubic-bezier(0.2, 0.75, 0.25, 1);
}

html,
body {
  width: 100%;
  min-height: 100%;
  margin: 0;
}

html {
  /* Empêche le navigateur mobile de réinterpréter et grossir les textes. */
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

body {
  font-family: "Forum", serif;
}

/* Vagues superposées : la même transition organique que sur l'accueil. */
.transition-section {
  position: relative;
  z-index: 3;
  height: clamp(4rem, 7vw, 7rem);
  margin-top: -1px;
  margin-bottom: -1px;
  overflow: hidden;
  line-height: 0;
  background: var(--transition-from);
}

.transition-section svg {
  display: block;
  width: 100%;
  height: 100%;
}

.transition-section__forme--arriere {
  fill: var(--transition-mid);
  opacity: 0.62;
  animation: vagueInterneArriere 12s ease-in-out -5s infinite;
  will-change: d;
}

.transition-section__forme--avant {
  fill: var(--transition-to);
  animation: vagueInterneAvant 10s ease-in-out -2s infinite;
  will-change: d;
}

.transition-section--inverse svg {
  transform: scaleX(-1);
}

@keyframes vagueInterneArriere {
  0%, 100% {
    d: path("M0,35 C210,118 405,12 660,73 C910,132 1135,24 1440,70 L1440,130 L0,130 Z");
  }
  33% {
    d: path("M0,64 C175,108 395,22 655,48 C915,92 1165,28 1440,45 L1440,130 L0,130 Z");
  }
  66% {
    d: path("M0,24 C215,78 430,102 690,65 C940,24 1170,98 1440,90 L1440,130 L0,130 Z");
  }
}
@keyframes vagueInterneAvant {
  0%, 100% {
    d: path("M0,70 C250,126 455,43 720,87 C980,129 1180,48 1440,82 L1440,130 L0,130 Z");
  }
  33% {
    d: path("M0,94 C210,109 445,38 700,58 C955,91 1185,35 1440,52 L1440,130 L0,130 Z");
  }
  66% {
    d: path("M0,48 C235,75 470,104 735,70 C990,38 1210,99 1440,96 L1440,130 L0,130 Z");
  }
}
@media (prefers-reduced-motion: reduce) {
  .transition-section__forme,
  .footer-formatcoeur__vague-fond,
  .footer-formatcoeur__vague-avant {
    animation: none !important;
  }
}
/* Même langage d'interaction que l'accueil sur l'ensemble du site. */
.vente-grille article,
.vente-etapes article,
.vente-programme > article,
.vente-achat__carte,
.commande-page__paiement,
.commande-page__resume,
.carte-contact {
  transition: transform var(--fc-transition), box-shadow var(--fc-transition) !important;
}

.vente-grille article:hover,
.vente-etapes article:hover,
.vente-programme > article:hover,
.vente-achat__carte:hover,
.commande-page__paiement:hover,
.commande-page__resume:hover,
.carte-contact:hover {
  transform: translateY(-8px) !important;
  box-shadow: var(--fc-ombre-hover) !important;
}

.vente-bouton,
.bouton-contact,
.footer-formatcoeur__bouton-contact,
.footer-whatsapp__bouton {
  position: relative;
  overflow: hidden;
  transition: transform var(--fc-transition), box-shadow var(--fc-transition), background-color var(--fc-transition), border-color var(--fc-transition), color var(--fc-transition) !important;
}

.vente-bouton::before,
.bouton-contact::before,
.footer-formatcoeur__bouton-contact::before,
.footer-whatsapp__bouton::before {
  position: absolute;
  top: -120%;
  left: -45%;
  width: 28%;
  height: 340%;
  content: "";
  pointer-events: none;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.46), transparent);
  transform: rotate(18deg);
  transition: left 650ms ease;
}

.vente-bouton:hover,
.bouton-contact:hover,
.footer-formatcoeur__bouton-contact:hover,
.footer-whatsapp__bouton:hover {
  transform: translateY(-4px) !important;
}

.vente-bouton:hover::before,
.bouton-contact:hover::before,
.footer-formatcoeur__bouton-contact:hover::before,
.footer-whatsapp__bouton:hover::before {
  left: 125%;
}

@media (prefers-reduced-motion: reduce) {
  .vente-grille article,
  .vente-etapes article,
  .vente-programme > article,
  .vente-achat__carte,
  .commande-page__paiement,
  .commande-page__resume,
  .carte-contact,
  .vente-bouton,
  .bouton-contact,
  .footer-formatcoeur__bouton-contact,
  .footer-whatsapp__bouton,
  .vente-bouton::before,
  .bouton-contact::before,
  .footer-formatcoeur__bouton-contact::before,
  .footer-whatsapp__bouton::before {
    transition: none !important;
  }
}
/* Échelle typographique compacte et homogène, y compris sur l'accueil. */
.accueil-page .entete-section h2 {
  font-size: clamp(2.15rem, 3.8vw, 3.7rem) !important;
  line-height: 1.05 !important;
}

.accueil-page .entete-section > p:not(.accueil-sur-titre),
.accueil-page .accueil-hero__texte,
.accueil-page .accompagnement-intro,
.accueil-page .vision-ile p,
.accueil-page .public-orbite p,
.accueil-page .approche-arche p,
.accueil-page .temoignage-bulle p,
.accueil-page .valeur-petale p,
.accueil-page .action-ile p {
  font-size: clamp(0.86rem, 1.1vw, 0.98rem) !important;
  line-height: 1.65 !important;
}

.accueil-page .vision-ile h3,
.accueil-page .methode-pas h3,
.accueil-page .public-orbite h3,
.accueil-page .approche-arche h3,
.accueil-page .valeur-petale h3,
.accueil-page .action-ile h3,
.accueil-page .formation-feature h3,
.accueil-page .formation-bande h3 {
  font-size: clamp(1.12rem, 1.55vw, 1.55rem) !important;
  line-height: 1.12 !important;
}

/* Même rythme de lecture partout : titres de section plus sobres et texte à gauche. */
.accueil-page .entete-section,
.vente-texte-centre,
.vente-citation,
.vente-cta .container,
.entete-contact,
.commande-page--succes .container {
  text-align: left !important;
}

.accueil-page .entete-section h2,
.vente-section h2,
.vente-cta h2,
.vente-hero h1,
.titre-contact {
  font-size: clamp(1.7rem, 2.55vw, 2.45rem) !important;
  line-height: 1.12 !important;
}

.accueil-page .accueil-hero__contenu h1 {
  font-size: clamp(1.9rem, 2.9vw, 2.8rem) !important;
  line-height: 1.1 !important;
}

.accueil-page .vision-ile,
.accueil-page .public-orbite,
.accueil-page .approche-arche,
.accueil-page .valeur-petale,
.accueil-page .accompagnement-bulle,
.livre-page .vente-section--rose .vente-etapes article,
.livre-page .vente-section:not(.vente-section--rose) .vente-grille article,
.accompagnateurs-page .vente-grille article,
.hypersensibles-page .vente-etapes article {
  text-align: left !important;
}

/* Les deux bulles de la vision restent volontairement centrées. */
.accueil-page .vision-ile,
.accueil-page .vision-ile h3,
.accueil-page .vision-ile p {
  text-align: center !important;
}

.vente-texte-centre > p:not(.vente-sur-titre),
.vente-citation span,
.vente-cta p:not(.vente-sur-titre),
.entete-contact .introduction-contact {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

/* Source unique de vérité : aucune page ne peut agrandir ses titres isolément. */
main h1,
main h2 {
  font-size: clamp(2.8rem, 5.2vw, 5rem) !important;
  line-height: 1.12 !important;
}

/* Priorité aux grands titres, y compris lorsqu'une page avait son propre style. */
.accueil-page .entete-section h2,
.accueil-page .accueil-hero__contenu h1,
.vente-page h1,
.vente-page h2,
.page-contact .titre-contact,
.commande-page h1,
.commande-page h2 {
  font-size: clamp(2.35rem, 4vw, 3.85rem) !important;
  line-height: 1.07 !important;
}

main h3 {
  font-size: clamp(1.05rem, 1.45vw, 1.3rem) !important;
  line-height: 1.18 !important;
}

/* Échelle unique pour l'intégralité de l'interface. */
main p,
main li,
main label,
main input,
main textarea,
main select {
  font-size: clamp(1rem, 1.18vw, 1.1rem) !important;
  line-height: 1.65;
}

main .vente-sur-titre,
main .accueil-sur-titre,
main .sur-titre-contact,
main .sur-titre-panneau-contact {
  font-size: 0.68rem !important;
  letter-spacing: 0.18em;
}

main .vente-bouton,
main .bouton-accueil,
main .bouton-contact {
  font-size: 0.94rem !important;
}

.lien-navigation {
  font-size: 1rem !important;
}

.footer-formatcoeur h2 {
  font-size: clamp(1.75rem, 2.2vw, 2.35rem) !important;
  line-height: 1.15 !important;
}

.footer-formatcoeur h3,
.footer-formatcoeur__titre,
.footer-formatcoeur__nom {
  font-size: 1.05rem !important;
}

.footer-formatcoeur p,
.footer-formatcoeur li,
.footer-formatcoeur a,
.footer-formatcoeur button {
  font-size: 0.94rem !important;
  line-height: 1.55;
}

/* Place la navbar au-dessus de l'image d'accueil. */
.entete-principal {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1030;
  width: 100%;
}

/* Ajoute un léger dégradé sombre derrière la navigation. */
.navigation-principale {
  min-height: 115px;
  padding-top: 24px;
  padding-bottom: 18px;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.68) 0%, rgba(0, 0, 0, 0.2) 65%, transparent 100%);
}

.marque-navigation {
  margin-left: 28px;
}

.logo-navigation {
  display: block;
  background-color: #efe3cf;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25);
}

.navigation-liste {
  column-gap: 7px;
  margin-right: 22px;
}

/* Liens principaux de la navbar. */
.lien-navigation {
  position: relative;
  padding: 13px 5px 20px !important;
  color: var(--couleur-navigation) !important;
  font-family: "Forum", serif;
  font-size: 1.1rem;
  font-weight: 400;
  text-transform: uppercase;
  white-space: nowrap;
  background: transparent;
  border: 0;
  transition: color 0.25s ease, text-shadow 0.25s ease, opacity 0.25s ease;
}
.lien-navigation:hover, .lien-navigation:focus, .lien-navigation.show {
  color: rgba(255, 255, 255, 0.98) !important;
  text-shadow: 0 0 5px rgba(201, 133, 154, 0.38), 0 0 10px rgba(201, 133, 154, 0.16);
}

/* Reproduit le trait rose sous Accueil. */
.lien-navigation-actif {
  color: var(--couleur-navigation-active) !important;
}
.lien-navigation-actif::after {
  position: absolute;
  right: 5px;
  bottom: 7px;
  left: 5px;
  height: 3px;
  content: "";
  background-color: var(--couleur-navigation-active-ligne);
}

/* Séparateurs verticaux entre les liens. */
.separateur-navigation {
  align-items: center;
  padding: 0 12px;
}
.separateur-navigation span {
  display: block;
  width: 1px;
  height: 14px;
  background-color: rgba(255, 255, 255, 0.58);
  transform: translateY(-4px);
}

/* Menu déroulant translucide et arrondi. */
.menu-navigation {
  min-width: 235px;
  padding: 10px 13px;
  margin-top: -2px !important;
  background-color: var(--couleur-menu);
  border: 1px solid rgba(255, 255, 255, 0.48);
  border-radius: 24px;
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.22);
  backdrop-filter: blur(10px);
}

/* Éléments des menus déroulants. */
.element-menu-navigation {
  display: flex;
  gap: 13px;
  align-items: center;
  min-height: 46px;
  padding: 8px 9px;
  color: rgba(255, 255, 255, 0.9);
  font-family: "Forum", serif;
  font-size: 0.87rem;
  line-height: 1.15;
  white-space: normal;
  background-color: transparent;
  border-radius: 14px;
  transition: color 0.25s ease, background-color 0.25s ease, box-shadow 0.25s ease;
}
.element-menu-navigation:hover, .element-menu-navigation:focus {
  color: #ffffff;
  background-color: rgba(255, 255, 255, 0.025);
  box-shadow: inset 0 0 12px rgba(201, 133, 154, 0.06), 0 0 10px rgba(201, 133, 154, 0.12);
}

.icone-menu-navigation {
  display: inline-flex;
  flex: 0 0 27px;
  align-items: center;
  justify-content: center;
  color: #d69aae;
  font-size: 1.5rem;
  transition: color 0.25s ease, filter 0.25s ease;
}

/* Ajoute un halo léger autour de l'icône. */
.element-menu-navigation:hover .icone-menu-navigation,
.element-menu-navigation:focus .icone-menu-navigation {
  color: #dfacbd;
  filter: drop-shadow(0 0 4px rgba(214, 154, 174, 0.32));
}

.separateur-menu-navigation {
  margin: 2px 8px;
  border-color: rgba(255, 255, 255, 0.3);
}

/* Ouvre les menus déroulants au survol sur ordinateur. */
@media (min-width: 1200px) {
  .navigation-principale .dropdown:hover > .dropdown-menu {
    display: block;
  }
  .navigation-principale .dropdown:hover > .dropdown-toggle {
    color: rgba(255, 255, 255, 0.98) !important;
    text-shadow: 0 0 5px rgba(201, 133, 154, 0.38), 0 0 10px rgba(201, 133, 154, 0.16);
  }
}
/* Ajustement pour les écrans intermédiaires. */
@media (max-width: 1399.98px) {
  .marque-navigation {
    margin-left: 0;
  }
  .navigation-liste {
    margin-right: 0;
    column-gap: 2px;
  }
  .separateur-navigation {
    padding-right: 7px;
    padding-left: 7px;
  }
  .lien-navigation {
    font-size: 0.72rem;
  }
}
/* Affichage mobile sombre et lisible. */
@media (max-width: 1199.98px) {
  .entete-principal {
    position: fixed;
  }
  .navigation-principale {
    min-height: auto;
    padding-top: 10px;
    padding-bottom: 10px;
    background: rgba(12, 12, 12, 0.94);
    backdrop-filter: blur(12px);
  }
  .logo-navigation {
    width: 64px;
    height: 64px;
  }
  #navigationPrincipale {
    margin-top: 10px;
    padding: 12px 16px 18px;
    background-color: rgba(12, 12, 12, 0.96);
    border-top: 1px solid rgba(255, 255, 255, 0.12);
  }
  .navigation-liste {
    align-items: stretch !important;
  }
  .lien-navigation {
    width: 100%;
    padding: 12px 4px !important;
    text-align: left;
  }
  .lien-navigation-actif::after {
    right: auto;
    bottom: 4px;
    left: 4px;
    width: 45px;
  }
  .menu-navigation {
    width: 100%;
    margin-top: 0 !important;
    background-color: rgba(255, 255, 255, 0.08);
    border-radius: 14px;
    box-shadow: none;
  }
}
/* La rubrique Ressources est remplacée par l'accès direct au livre. */
.nav-item:has(.navigation-ressources) {
  display: none;
}

/* Normalisation finale : les styles de page et les utilitaires Bootstrap ne peuvent plus diverger. */
body main .accueil-page :is(h1, h2),
body main .vente-page :is(h1, h2),
body main .page-contact :is(h1, h2),
body main .commande-page :is(h1, h2) {
  font-size: clamp(2.35rem, 4vw, 3.85rem) !important;
  line-height: 1.07 !important;
}

body main .accueil-page h3,
body main .vente-page h3,
body main .page-contact h3,
body main .commande-page h3 {
  font-size: clamp(1.05rem, 1.45vw, 1.3rem) !important;
  line-height: 1.18 !important;
}

body footer :is(h1, h2) {
  font-size: clamp(1.75rem, 2.2vw, 2.35rem) !important;
  line-height: 1.15 !important;
}

body footer h3 {
  font-size: 1.05rem !important;
  line-height: 1.2 !important;
}

/* À partir du bureau, les titres ont l'espace nécessaire : la taille ne change pas. */
@media (min-width: 1200px) {
  .accueil-page .entete-section,
  .accueil-page .entete-section--large,
  .vente-page .vente-texte-centre {
    width: 100%;
    max-width: 1240px;
  }
  .vente-page .vente-hero__contenu {
    max-width: 1120px;
  }
  .accueil-page .accompagnement-scene {
    grid-template-columns: minmax(37rem, 1.45fr) minmax(13rem, 0.55fr) minmax(18rem, 0.8fr);
    gap: clamp(1.5rem, 2.5vw, 2.5rem);
  }
  .accueil-page .accompagnement-contenu,
  .accueil-page .accompagnement-contenu h2,
  .accueil-page .accompagnement-contenu p {
    max-width: none;
  }
  .commande-page__grille {
    grid-template-columns: minmax(34rem, 1fr) minmax(34rem, 1fr);
    max-width: 1420px;
  }
}
/* Page Hypersensibles : une seule largeur de référence pour chaque section. */
.hypersensibles-page .container {
  width: min(100% - 3rem, 1180px);
  max-width: 1180px;
  margin-right: auto;
  margin-left: auto;
}

/* Page Livre : chaque section utilise les mêmes bords de lecture. */
.livre-page .container {
  width: min(100% - 3rem, 1180px);
  max-width: 1180px;
  margin-right: auto;
  margin-left: auto;
}

/* Page de commande : priorité visuelle à la jaquette, panneau de paiement plus compact. */
.commande-page__grille {
  grid-template-columns: minmax(0, 1.15fr) minmax(26rem, 0.85fr) !important;
  gap: clamp(2rem, 4vw, 4rem) !important;
  max-width: 1240px !important;
}

.commande-page__resume {
  grid-template-columns: 250px minmax(0, 1fr) !important;
}

.commande-page__resume img {
  width: min(250px, 40vw) !important;
}

.commande-page .commande-page__resume h1 {
  font-size: clamp(1.85rem, 2.55vw, 2.6rem) !important;
  line-height: 1.08 !important;
}

.commande-page .commande-page__paiement {
  width: 100%;
  max-width: 32rem;
  justify-self: end;
  padding: clamp(1.8rem, 3.2vw, 2.6rem) !important;
}

.commande-page .commande-page__paiement h2 {
  font-size: clamp(2rem, 2.65vw, 2.65rem) !important;
  line-height: 1.08 !important;
}

.commande-page .commande-page__paiement input {
  min-height: 3rem;
}

@media (max-width: 767.98px) {
  .commande-page__grille,
  .commande-page__resume {
    grid-template-columns: 1fr !important;
  }
  .commande-page__paiement {
    justify-self: stretch !important;
  }
}
/* Lisibilité tablette et mobile : le header d'accueil conserve ses réglages
   spécifiques, tout le reste du site adopte une échelle plus généreuse. */
@media (max-width: 1499.98px) {
  body main :is(p, li, label, input, textarea, select, small, a, button):not(.accueil-hero *) {
    font-size: 1.18rem !important;
    line-height: 1.65 !important;
  }
  body main h3:not(.accueil-hero *) {
    font-size: 1.75rem !important;
    line-height: 1.2 !important;
  }
  body footer :is(p, li, a, button) {
    font-size: 1.05rem !important;
    line-height: 1.6 !important;
  }
}
@media (max-width: 767.98px) {
  body main :is(p, li, label, input, textarea, select, small, a, button):not(.accueil-hero *) {
    font-size: 1.08rem !important;
    line-height: 1.65 !important;
  }
  body main h3:not(.accueil-hero *) {
    font-size: 1.55rem !important;
  }
  body footer :is(p, li, a, button) {
    font-size: 1rem !important;
  }
}
/* Les contenus des pétales restent au cœur de chaque ovale. */
.accueil-page .valeur-petale,
.accueil-page .valeur-petale h3,
.accueil-page .valeur-petale p {
  text-align: center !important;
}

.accueil-page .valeur-petale > span {
  align-self: center;
  margin-right: auto;
  margin-left: auto;
}

.accueil-page .valeur-petale h3,
.accueil-page .valeur-petale p {
  width: min(100%, 22rem);
  margin-right: auto;
  margin-left: auto;
}

/* Les trois bulles d'action suivent le même centrage que les pétales. */
.accueil-page .action-ile,
.accueil-page .action-ile h3,
.accueil-page .action-ile p {
  text-align: center !important;
}

.accueil-page .action-ile > span {
  display: block;
  margin-right: auto;
  margin-left: auto;
}

.accueil-page .action-ile h3,
.accueil-page .action-ile p {
  width: min(100%, 19rem);
  margin-right: auto;
  margin-left: auto;
}

/* Les étapes des 5 Sensibles restent contenues dans leurs ovales. */
.hypersensibles-page .vente-etapes article::after {
  display: none;
}

.hypersensibles-page .vente-etapes article,
.hypersensibles-page .vente-etapes article:nth-child(odd),
.hypersensibles-page .vente-etapes article:nth-child(3) {
  text-align: center !important;
}

.hypersensibles-page .vente-etapes article h3,
.hypersensibles-page .vente-etapes article p {
  width: min(100%, 17rem);
  margin-right: auto;
  margin-left: auto;
}

/* La citation éditoriale porte le même poids visuel qu'un titre de section. */
.vente-page .vente-citation > p {
  max-width: none;
  font-family: "Forum", serif;
  font-size: clamp(2.35rem, 4vw, 3.85rem) !important;
  font-weight: 400;
  line-height: 1.07 !important;
}

/* Constat : contenu centré et respirant au cœur des trois bulles. */
.accompagnateurs-page .vente-grille article,
.accompagnateurs-page .vente-grille article h3,
.accompagnateurs-page .vente-grille article p {
  text-align: center !important;
}

.accompagnateurs-page .vente-grille article h3,
.accompagnateurs-page .vente-grille article p {
  width: min(100%, 16rem);
  margin-right: auto;
  margin-left: auto;
}

/* Un hover délicat, sans effet de carte ou d'ombre trop lourde. */
.accompagnateurs-page .vente-grille article:hover {
  transform: translateY(-5px) scale(1.01) !important;
  border-color: rgba(192, 102, 126, 0.45) !important;
  box-shadow: 0 20px 42px rgba(103, 54, 74, 0.14) !important;
}

.accompagnateurs-page .vente-programme > article {
  border-radius: 1rem;
  transition: transform var(--fc-transition), color var(--fc-transition) !important;
}

.accompagnateurs-page .vente-programme > article:hover {
  background: transparent !important;
  box-shadow: none !important;
  transform: translateY(-3px) !important;
}

.accompagnateurs-page .vente-programme > article:hover h3 {
  color: var(--couleur-rose-formatcoeur);
}

@media (min-width: 1200px) {
  .vente-page .vente-citation {
    max-width: 1320px;
  }
  .vente-page .vente-citation > p {
    white-space: nowrap;
  }
}
/* Jaquette : ratio exact de l'original et image entière, sans recadrage. */
.livre-page .livre-couverture {
  width: min(300px, 80vw);
  aspect-ratio: 971/1500;
  background-color: #fff;
  background-image: url(/build/images/slame-tes-emotions-et-rayonne.c54eccc5.jpg) !important;
  background-position: center;
  background-size: contain !important;
  background-repeat: no-repeat;
}

/* Les dimensions du livre deviennent des marque-pages éditoriaux. */
.livre-page .vente-section--rose .vente-etapes {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 1.25rem !important;
  max-width: 1240px !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

.livre-page .vente-section--rose .vente-etapes article,
.livre-page .vente-section--rose .vente-etapes article:nth-child(4),
.livre-page .vente-section--rose .vente-etapes article:nth-child(5) {
  display: flex !important;
  grid-column: auto !important;
  min-height: 19rem !important;
  margin-top: 0 !important;
  padding: 2.2rem 1.45rem 1.7rem !important;
  border: 1px solid rgba(192, 102, 126, 0.3) !important;
  border-radius: 0 !important;
  background: rgba(255, 253, 252, 0.82) !important;
  clip-path: polygon(0 0, 100% 0, 100% 94%, 50% 100%, 0 94%);
  box-shadow: 0 1rem 2.5rem rgba(103, 54, 74, 0.08) !important;
  text-align: left !important;
  transform: none !important;
}

.livre-page .vente-section--rose .vente-etapes article:nth-child(even) {
  margin-top: 2rem !important;
  background: rgba(255, 247, 250, 0.92) !important;
}

.livre-page .vente-section--rose .vente-etapes article::before {
  display: block;
  width: 2.8rem;
  height: 0.28rem;
  margin-bottom: 1.4rem;
  content: "";
  background: var(--fc-couleur-principale);
}

.livre-page .vente-section--rose .vente-etapes article h3,
.livre-page .vente-section--rose .vente-etapes article p {
  width: 100%;
  margin-right: 0;
  margin-left: 0;
  text-align: left !important;
}

@media (max-width: 991.98px) {
  .livre-page .vente-section--rose .vente-etapes {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 767.98px) {
  .livre-page .vente-section--rose .vente-etapes {
    grid-template-columns: 1fr !important;
  }
  .livre-page .vente-section--rose .vente-etapes article:nth-child(even) {
    margin-top: 0 !important;
  }
}
/* Aigle transparent, affiché en entier comme signature du header. */
.navigation-principale {
  min-height: 170px;
  padding-top: 6px;
  padding-bottom: 6px;
}

.marque-navigation {
  display: flex;
  width: 300px;
  height: 158px;
  align-items: center;
  justify-content: flex-start;
  flex: 0 0 300px;
  overflow: hidden;
  border-radius: 0;
  padding: 0.42rem 0.78rem 0.48rem;
  border: 1px solid rgba(255, 250, 246, 0.46);
  border-radius: 999px;
  background: rgba(45, 29, 34, 0.88) !important;
  box-shadow: 0 0.35rem 1rem rgba(38, 21, 27, 0.28) !important;
}

.logo-navigation {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: left top;
  background: transparent !important;
  -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 42%, rgba(0, 0, 0, 0.62) 57%, rgba(0, 0, 0, 0.2) 72%, transparent 91%);
  mask-image: linear-gradient(to bottom, #000 0%, #000 42%, rgba(0, 0, 0, 0.62) 57%, rgba(0, 0, 0, 0.2) 72%, transparent 91%);
  transform: none !important;
}

@media (max-width: 1199.98px) {
  .navigation-principale {
    min-height: 104px;
    padding-top: 6px;
    padding-bottom: 6px;
  }
  .marque-navigation {
    width: 172px;
    height: 92px;
    flex-basis: 172px;
  }
}
@media (max-width: 575.98px) {
  .navigation-principale {
    min-height: 82px;
  }
  .marque-navigation {
    width: 124px;
    height: 68px;
    flex-basis: 124px;
  }
}
/* Pages légales */
.page-legale {
  min-height: 100vh;
  padding: clamp(9rem, 14vw, 12rem) 0 clamp(4rem, 8vw, 7rem);
  background: radial-gradient(circle at 92% 12%, rgba(214, 173, 181, 0.2), transparent 28rem), linear-gradient(145deg, #fffaf7 0%, #f7eff0 100%);
}

.page-legale__contenu {
  width: min(100% - 2rem, 920px);
  margin-inline: auto;
}

.page-legale__sur-titre {
  margin: 0 0 0.8rem;
  color: #a66f7c;
  font-family: Arial, sans-serif;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.page-legale h1 {
  max-width: none;
  margin: 0;
  color: #3f302e;
  font-family: Forum, serif;
  font-size: clamp(2.4rem, 4vw, 3.8rem) !important;
  font-weight: 400;
  line-height: 1.06;
}

.page-legale__introduction {
  max-width: 760px;
  margin: 1.25rem 0 2.5rem;
  color: #64514e;
  font-size: 1.1rem !important;
  line-height: 1.75;
}

.page-legale section {
  padding: 1.5rem 0;
  border-top: 1px solid rgba(166, 111, 124, 0.22);
  scroll-margin-top: 7rem;
}

.page-legale h2 {
  margin: 0 0 0.55rem;
  color: #4b3835;
  font-family: Forum, serif;
  font-size: clamp(1.35rem, 2vw, 1.7rem) !important;
  font-weight: 400;
}

.page-legale section p {
  max-width: 800px;
  margin: 0;
  color: #6d5956;
  font-family: Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.75;
}

.page-legale section p + p {
  margin-top: 1rem;
}

.page-legale section ul {
  max-width: 800px;
  margin: 0.8rem 0 1rem;
  padding-left: 1.35rem;
  color: #6d5956;
  font-family: Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.7;
}

.page-legale__sommaire {
  margin: 0 0 2.5rem;
  padding: 1.4rem 0 1.6rem;
  border-top: 1px solid rgba(166, 111, 124, 0.22);
  border-bottom: 1px solid rgba(166, 111, 124, 0.22);
}

.page-legale__sommaire > p {
  margin: 0 0 0.9rem;
  color: #4b3835;
  font-family: Forum, serif;
  font-size: 1.2rem;
  font-weight: 700;
}

.page-legale__sommaire ol {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.42rem 2rem;
  margin: 0;
  padding-left: 1.5rem;
  color: #8f5d6a;
}

.page-legale__sommaire li {
  padding-left: 0.15rem;
}

.page-legale__sommaire a {
  color: #63464f;
  font-family: Arial, sans-serif;
  font-size: 0.94rem;
  line-height: 1.4;
}

.page-legale__annexe {
  margin-top: 1rem;
}

.page-legale__formulaire {
  max-width: 800px;
  margin: 1.25rem 0 0;
}

.page-legale__formulaire > div {
  display: grid;
  grid-template-columns: minmax(10rem, 0.42fr) minmax(0, 1fr);
  gap: 1rem;
  align-items: end;
  min-height: 2.6rem;
}

.page-legale__formulaire dt {
  padding: 0.45rem 0;
  color: #5e4845;
  font-family: Arial, sans-serif;
  font-size: 0.94rem;
  font-weight: 700;
}

.page-legale__formulaire dd {
  min-height: 2rem;
  margin: 0 0 0.45rem;
  border-bottom: 1px solid rgba(109, 89, 86, 0.5);
}

.page-legale .page-legale__precision {
  margin-top: 0.65rem;
  color: #8a7470;
  font-size: 0.86rem;
}

.page-legale a {
  color: #9e6674;
  text-decoration-color: rgba(158, 102, 116, 0.45);
  text-underline-offset: 0.18em;
}

.page-legale__mise-a-jour {
  margin: 2rem 0 0;
  color: #9a817e;
  font-size: 0.76rem;
}

@media (max-width: 575.98px) {
  .page-legale {
    padding-top: 7.5rem;
  }
  .page-legale__sommaire ol {
    grid-template-columns: minmax(0, 1fr);
  }
  .page-legale__formulaire > div {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    margin-bottom: 0.6rem;
  }
}
/* Navigation en panneau : le menu reste accessible depuis le bouton burger,
   y compris sur les grands écrans. */
.navigation-principale {
  min-height: 112px;
  padding: 8px 0;
  background: linear-gradient(180deg, rgba(12, 12, 12, 0.8), rgba(12, 12, 12, 0.12) 78%, transparent);
}

.bouton-menu-burger {
  position: relative;
  z-index: 11;
  display: inline-flex;
  width: 52px;
  height: 52px;
  flex-direction: column;
  gap: 6px;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin-right: clamp(0.25rem, 2vw, 2rem);
  border-radius: 50%;
  background: rgba(31, 25, 25, 0.52);
  transition: background-color 0.25s ease, transform 0.25s ease;
}

.bouton-menu-burger:hover,
.bouton-menu-burger:focus-visible {
  background: rgba(201, 133, 154, 0.55);
  transform: scale(1.06);
}

.bouton-menu-burger__ligne {
  display: block;
  width: 23px;
  height: 1px;
  background: #fff;
  transform-origin: center;
  transition: transform 0.32s ease, opacity 0.2s ease;
}

.bouton-menu-burger[aria-expanded=true] .bouton-menu-burger__ligne:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}

.bouton-menu-burger[aria-expanded=true] .bouton-menu-burger__ligne:nth-child(2) {
  opacity: 0;
}

.bouton-menu-burger[aria-expanded=true] .bouton-menu-burger__ligne:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

#navigationPrincipale {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 10;
  display: block !important;
  width: min(31rem, 100vw);
  height: 100vh !important;
  padding: clamp(7.5rem, 12vw, 10rem) clamp(2rem, 6vw, 5rem) 2rem;
  overflow-y: auto;
  visibility: hidden;
  background: rgba(35, 28, 29, 0.98);
  box-shadow: -20px 0 55px rgba(0, 0, 0, 0.28);
  opacity: 0;
  transform: translateX(100%);
  transition: transform 0.46s cubic-bezier(0.2, 0.8, 0.2, 1), opacity 0.3s ease, visibility 0s linear 0.46s;
}

#navigationPrincipale.show,
#navigationPrincipale.collapsing {
  z-index: 10;
  visibility: visible;
  opacity: 1;
  transform: translateX(0);
  transition-delay: 0s;
}

#navigationPrincipale.show .nav-item {
  animation: apparitionLienMenu 300ms cubic-bezier(0.2, 0.8, 0.2, 1) both;
}

#navigationPrincipale.show .nav-item:nth-child(1) {
  animation-delay: 150ms;
}

#navigationPrincipale.show .nav-item:nth-child(3) {
  animation-delay: 205ms;
}

#navigationPrincipale.show .nav-item:nth-child(5) {
  animation-delay: 260ms;
}

#navigationPrincipale.show .nav-item:nth-child(7) {
  animation-delay: 315ms;
}

#navigationPrincipale.show .nav-item:nth-child(9) {
  animation-delay: 370ms;
}

#navigationPrincipale.show .nav-item:nth-child(11) {
  animation-delay: 425ms;
}

@keyframes apparitionLienMenu {
  from {
    opacity: 0;
    transform: translateX(0.8rem);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.lettre-menu {
  display: inline-block;
}

#navigationPrincipale.show .lettre-menu {
  animation: apparitionLettreMenu 330ms cubic-bezier(0.16, 0.82, 0.22, 1) both;
  animation-delay: calc(110ms + var(--delai-lettre));
}

@keyframes apparitionLettreMenu {
  from {
    opacity: 0;
    transform: translateY(0.5em);
    filter: blur(3px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
  }
}
#navigationPrincipale.collapsing {
  height: 100vh !important;
}

.navigation-liste {
  gap: 0.3rem;
  align-items: stretch !important;
  margin: 0;
}

.navigation-liste .nav-item {
  width: 100%;
}

.lien-navigation {
  width: 100%;
  padding: 0.9rem 0 !important;
  font-size: clamp(1.25rem, 2vw, 1.55rem) !important;
  text-align: left;
}

.lien-navigation-actif::after {
  right: auto;
  bottom: 0.55rem;
  left: 0;
  width: 48px;
}

.navigation-liste .dropdown-menu {
  position: static;
  width: 100%;
  padding: 0.45rem 0 0.3rem;
  margin: 0.1rem 0 0.8rem !important;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.navigation-liste .dropdown-menu li {
  margin: 0 0 0.45rem;
}

.navigation-liste .dropdown-menu li:last-child {
  margin-bottom: 0;
}

.navigation-liste .separateur-menu-navigation {
  display: none;
}

.navigation-liste .element-menu-navigation {
  min-height: 3.55rem;
  gap: 0.9rem;
  padding: 0.72rem 0.95rem;
  color: rgba(255, 255, 255, 0.88);
  font-size: 0.98rem;
  line-height: 1.25;
  background: rgba(255, 255, 255, 0.055);
  border: 1px solid transparent;
  border-radius: 0.85rem;
}

.navigation-liste .element-menu-navigation:hover,
.navigation-liste .element-menu-navigation:focus-visible {
  color: #fff;
  background: rgba(201, 133, 154, 0.22);
  border-color: rgba(232, 183, 200, 0.38);
  box-shadow: none;
}

.navigation-liste .icone-menu-navigation {
  width: 2rem;
  height: 2rem;
  flex: 0 0 2rem;
  color: #e8b7c8;
  background: rgba(201, 133, 154, 0.14);
  border-radius: 50%;
  font-size: 1.1rem;
}

.separateur-navigation {
  display: none !important;
}

@media (max-width: 575.98px) {
  .navigation-principale {
    min-height: 82px;
  }
  .bouton-menu-burger {
    width: 46px;
    height: 46px;
    margin-right: 0;
  }
  #navigationPrincipale {
    width: 100%;
    padding: 6.8rem 2rem 2rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  #navigationPrincipale,
  .bouton-menu-burger,
  .bouton-menu-burger__ligne,
  #navigationPrincipale.show .nav-item,
  #navigationPrincipale.show .lettre-menu {
    transition: none;
    animation: none;
  }
}
/* Navigation compacte : le logo ne masque plus le panneau des 5 Sensibles,
   et le menu conserve des zones tactiles confortables sur mobile. */
.navigation-principale {
  min-height: 100px;
}

.marque-navigation {
  width: 184px;
  height: 96px;
  flex-basis: 184px;
}

.logo-navigation {
  object-position: left center;
  -webkit-mask-image: none;
  mask-image: none;
}

@media (max-width: 767.98px) {
  .entete-principal {
    position: fixed;
  }
  .navigation-principale {
    min-height: 68px;
    padding: 5px 0;
    background: linear-gradient(180deg, rgba(24, 19, 21, 0.62), rgba(24, 19, 21, 0.2) 64%, transparent);
    backdrop-filter: none;
  }
  .marque-navigation {
    width: 112px;
    height: 60px;
    flex-basis: 112px;
  }
  .bouton-menu-burger {
    width: 44px;
    height: 44px;
  }
  #navigationPrincipale {
    width: min(100%, 25rem);
    padding: 6.5rem 1.65rem 2rem;
  }
  .lien-navigation {
    padding: 0.78rem 0 !important;
    font-size: clamp(1.08rem, 5vw, 1.3rem) !important;
  }
  .element-menu-navigation {
    padding: 0.7rem;
    font-size: 0.95rem;
  }
}
/* Barre toujours accessible au scroll, sans aucun voile sur la page. */
.entete-principal {
  position: fixed !important;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1050;
  background: transparent !important;
  box-shadow: none !important;
}

.navigation-principale {
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
}

/* Logo rond complet, sans cartouche ajouté autour. */
.marque-navigation {
  position: relative;
  z-index: 11;
  display: flex;
  width: clamp(4.5rem, 6.6vw, 6.5rem);
  height: clamp(4.5rem, 6.6vw, 6.5rem);
  flex: 0 0 clamp(4.5rem, 6.6vw, 6.5rem);
  align-items: center;
  margin-left: clamp(0.1rem, 1vw, 0.75rem);
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  overflow: visible !important;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none !important;
  text-decoration: none;
}

.logo-navigation {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none !important;
  clip-path: circle(46.5% at 50% 50%);
  -webkit-mask-image: none !important;
  mask-image: none !important;
}

.marque-navigation__slogan {
  position: absolute;
  top: 50%;
  left: calc(100% + 0.75rem);
  width: min(20rem, 24vw);
  color: #3c2c2d;
  font-family: "Forum", serif;
  font-size: clamp(0.78rem, 0.9vw, 0.98rem);
  font-weight: 700;
  line-height: 1.18;
  text-align: left;
  text-shadow: 0 1px 2px rgba(255, 255, 255, 0.75);
  transform: translateY(-50%);
  opacity: 1;
  visibility: visible;
  transition: opacity 220ms ease, visibility 220ms ease;
}

body.slogan-navigation-masque .marque-navigation__slogan {
  opacity: 0;
  visibility: hidden;
}

/* Burger aérien : plus de pastille sombre, seulement un tracé raffiné. */
.bouton-menu-burger {
  width: 52px !important;
  height: 44px !important;
  display: block;
  margin-right: clamp(0.35rem, 2vw, 2rem);
  border-radius: 0.65rem;
  background: transparent !important;
  box-shadow: none !important;
}

.bouton-menu-burger:hover {
  background: rgba(255, 255, 255, 0.14) !important;
  transform: none;
}

.bouton-menu-burger:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.9);
  outline-offset: 3px;
  background: rgba(255, 255, 255, 0.14) !important;
  transform: none;
}

.bouton-menu-burger__ligne {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 27px;
  height: 3px;
  flex: 0 0 3px;
  border-radius: 999px;
  background: #21191a;
  box-shadow: 0 1px 2px rgba(255, 255, 255, 0.48);
  transition: transform 0.28s ease, opacity 0.18s ease, background-color 0.18s ease;
}

.bouton-menu-burger:not([aria-expanded=true]) .bouton-menu-burger__ligne:nth-child(2) {
  opacity: 1;
}

.bouton-menu-burger__ligne:nth-child(1) {
  transform: translate(-50%, calc(-50% - 9px));
}

.bouton-menu-burger__ligne:nth-child(2) {
  transform: translate(-50%, -50%);
}

.bouton-menu-burger__ligne:nth-child(3) {
  transform: translate(-50%, calc(-50% + 9px));
}

.bouton-menu-burger[aria-expanded=true] .bouton-menu-burger__ligne:nth-child(1) {
  background: #fff;
  box-shadow: none;
  transform: translate(-50%, -50%) rotate(45deg);
}

.bouton-menu-burger[aria-expanded=true] .bouton-menu-burger__ligne:nth-child(2) {
  opacity: 0;
  transform: translate(-50%, -50%) scale(0.35);
}

.bouton-menu-burger[aria-expanded=true] .bouton-menu-burger__ligne:nth-child(3) {
  background: #fff;
  box-shadow: none;
  transform: translate(-50%, -50%) rotate(-45deg);
}

/* Le panneau mobile part bien du bord supérieur de l'écran. */
@media (max-width: 767.98px) {
  .navigation-principale {
    min-height: 78px;
  }
  .marque-navigation {
    width: 3.5rem;
    height: 3.5rem;
    flex-basis: 3.5rem;
    margin-top: 0.65rem;
    margin-left: 1.3rem;
  }
  .marque-navigation__slogan {
    top: 50%;
    left: calc(100% + 0.5rem);
    width: min(13.5rem, 58vw);
    font-size: 0.68rem;
    line-height: 1.12;
    text-align: left;
    transform: translateY(-50%);
  }
  #navigationPrincipale {
    top: 0 !important;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100vw !important;
    height: 100dvh !important;
    margin-top: 0 !important;
    padding: 7.25rem 2rem 2.5rem !important;
  }
  .navigation-liste {
    gap: 0.35rem;
  }
  .navigation-liste .nav-item {
    width: 100%;
  }
  .lien-navigation {
    display: flex;
    width: 100%;
    min-height: 3.75rem;
    align-items: center;
    padding: 1rem 0 !important;
    font-size: 1.35rem !important;
    line-height: 1.25 !important;
  }
  .menu-navigation {
    width: 100%;
    margin-top: 0.25rem;
    padding: 0.5rem 0.9rem;
  }
  .element-menu-navigation {
    display: flex;
    min-height: 3.5rem;
    align-items: center;
    padding: 0.8rem 0.35rem !important;
    font-size: 1.08rem !important;
    line-height: 1.25 !important;
  }
}
/* Les mobiles étroits gardent une vraie zone de respiration avant le burger. */
@media (max-width: 430px) {
  .marque-navigation__slogan {
    width: min(10.5rem, 100vw - 12rem);
    font-size: 0.62rem;
    line-height: 1.08;
  }
  .bouton-menu-burger {
    margin-left: 1rem !important;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUFvekNKOztBQWp6Q0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQW96Q0o7O0FBanpDQTtFQUNJO0FBb3pDSjs7QUFqekNBO0VBQ0k7QUFvekNKOztBQWp6Q0E7RUFDSTtBQW96Q0o7O0FBanpDQTtFQUNJO0FBb3pDSjs7QUFqekNBO0VBQ0k7RUFDQTtFQUNBO0FBb3pDSjs7QUFqekNBO0VBQ0k7RUFDQTtBQW96Q0o7O0FBanpDQTtFQUNJO0VBQ0E7RUFDQTtBQW96Q0o7O0FBanpDQTtBQUNBO0VBQ0k7SUFDSTtFQW96Q047RUFqekNFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFQW16Q047RUFoekNFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUFrekNOO0VBL3lDRTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUFpekNOO0VBOXlDRTtJQUNJO0VBZ3pDTjtFQTd5Q0U7SUFDSTtFQSt5Q047RUE1eUNFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUE4eUNOO0VBM3lDRTtJQUNJO0lBQ0E7SUFDQTtFQTZ5Q047RUExeUNFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VBNHlDTjtBQUNGO0FBenlDQTtBQUNBO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7RUEyeUNOO0VBeHlDRTtJQUNJO0VBMHlDTjtBQUNGLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2Jhc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2Zvb3Rlci5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvc2xhbS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgJ2Zvb3Rlcic7XG5AdXNlICdzbGFtJztcblxyXG46cm9vdCB7XG4gICAgLS1mYy1jb3VsZXVyLXByaW5jaXBhbGU6ICNDMDY2N0U7XG4gICAgLS1mYy1jb3VsZXVyLWFjY2VudDogI0NDODI2QztcbiAgICAtLWZjLWNvdWxldXItc2Vjb25kYWlyZTogIzZDQjZDQztcbiAgICAtLWZjLWNvdWxldXItZm9uZDogI0YzRERDNTtcbiAgICAtLWNvdWxldXItcm9zZS1mb3JtYXRjb2V1cjogdmFyKC0tZmMtY291bGV1ci1wcmluY2lwYWxlKTtcbiAgICAtLWNvdWxldXItbmF2aWdhdGlvbi1hY3RpdmU6ICNGM0REQzU7XG4gICAgLS1jb3VsZXVyLW5hdmlnYXRpb24tYWN0aXZlLWxpZ25lOiAjQ0M4MjZDO1xuICAgIC0tY291bGV1ci1uYXZpZ2F0aW9uOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODgpO1xuICAgIC0tY291bGV1ci1tZW51OiByZ2JhKDc0LCA2OSwgNjYsIDAuOCk7XG4gICAgLS1mYy1vbWJyZTogMCAyNHB4IDcwcHggcmdiYSgxMDMsIDU0LCA3NCwgMC4xMSk7XG4gICAgLS1mYy1vbWJyZS1ob3ZlcjogMCAzNHB4IDkwcHggcmdiYSgxMDMsIDU0LCA3NCwgMC4yKTtcbiAgICAtLWZjLXRyYW5zaXRpb246IDQyMG1zIGN1YmljLWJlemllcigwLjIsIDAuNzUsIDAuMjUsIDEpO1xufVxuXHJcbmh0bWwsXG5ib2R5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbn1cblxuaHRtbCB7XG4gICAgLyogRW1ww6pjaGUgbGUgbmF2aWdhdGV1ciBtb2JpbGUgZGUgcsOpaW50ZXJwcsOpdGVyIGV0IGdyb3NzaXIgbGVzIHRleHRlcy4gKi9cbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7XG4gICAgdGV4dC1zaXplLWFkanVzdDogbm9uZTtcbn1cblxyXG5ib2R5IHtcbiAgICBmb250LWZhbWlseTogXCJGb3J1bVwiLCBzZXJpZjtcbn1cblxuLyogVmFndWVzIHN1cGVycG9zw6llcyA6IGxhIG3Dqm1lIHRyYW5zaXRpb24gb3JnYW5pcXVlIHF1ZSBzdXIgbCdhY2N1ZWlsLiAqL1xuLnRyYW5zaXRpb24tc2VjdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDM7XG4gICAgaGVpZ2h0OiBjbGFtcCg0cmVtLCA3dncsIDdyZW0pO1xuICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXRyYW5zaXRpb24tZnJvbSk7XG59XG5cbi50cmFuc2l0aW9uLXNlY3Rpb24gc3ZnIHsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IH1cbi50cmFuc2l0aW9uLXNlY3Rpb25fX2Zvcm1lLS1hcnJpZXJlIHtcbiAgICBmaWxsOiB2YXIoLS10cmFuc2l0aW9uLW1pZCk7XG4gICAgb3BhY2l0eTogLjYyO1xuICAgIGFuaW1hdGlvbjogdmFndWVJbnRlcm5lQXJyaWVyZSAxMnMgZWFzZS1pbi1vdXQgLTVzIGluZmluaXRlO1xuICAgIHdpbGwtY2hhbmdlOiBkO1xufVxuXG4udHJhbnNpdGlvbi1zZWN0aW9uX19mb3JtZS0tYXZhbnQge1xuICAgIGZpbGw6IHZhcigtLXRyYW5zaXRpb24tdG8pO1xuICAgIGFuaW1hdGlvbjogdmFndWVJbnRlcm5lQXZhbnQgMTBzIGVhc2UtaW4tb3V0IC0ycyBpbmZpbml0ZTtcbiAgICB3aWxsLWNoYW5nZTogZDtcbn1cbi50cmFuc2l0aW9uLXNlY3Rpb24tLWludmVyc2Ugc3ZnIHsgdHJhbnNmb3JtOiBzY2FsZVgoLTEpOyB9XG5cbkBrZXlmcmFtZXMgdmFndWVJbnRlcm5lQXJyaWVyZSB7XG4gICAgMCUsIDEwMCUgeyBkOiBwYXRoKFwiTTAsMzUgQzIxMCwxMTggNDA1LDEyIDY2MCw3MyBDOTEwLDEzMiAxMTM1LDI0IDE0NDAsNzAgTDE0NDAsMTMwIEwwLDEzMCBaXCIpOyB9XG4gICAgMzMlIHsgZDogcGF0aChcIk0wLDY0IEMxNzUsMTA4IDM5NSwyMiA2NTUsNDggQzkxNSw5MiAxMTY1LDI4IDE0NDAsNDUgTDE0NDAsMTMwIEwwLDEzMCBaXCIpOyB9XG4gICAgNjYlIHsgZDogcGF0aChcIk0wLDI0IEMyMTUsNzggNDMwLDEwMiA2OTAsNjUgQzk0MCwyNCAxMTcwLDk4IDE0NDAsOTAgTDE0NDAsMTMwIEwwLDEzMCBaXCIpOyB9XG59XG5cbkBrZXlmcmFtZXMgdmFndWVJbnRlcm5lQXZhbnQge1xuICAgIDAlLCAxMDAlIHsgZDogcGF0aChcIk0wLDcwIEMyNTAsMTI2IDQ1NSw0MyA3MjAsODcgQzk4MCwxMjkgMTE4MCw0OCAxNDQwLDgyIEwxNDQwLDEzMCBMMCwxMzAgWlwiKTsgfVxuICAgIDMzJSB7IGQ6IHBhdGgoXCJNMCw5NCBDMjEwLDEwOSA0NDUsMzggNzAwLDU4IEM5NTUsOTEgMTE4NSwzNSAxNDQwLDUyIEwxNDQwLDEzMCBMMCwxMzAgWlwiKTsgfVxuICAgIDY2JSB7IGQ6IHBhdGgoXCJNMCw0OCBDMjM1LDc1IDQ3MCwxMDQgNzM1LDcwIEM5OTAsMzggMTIxMCw5OSAxNDQwLDk2IEwxNDQwLDEzMCBMMCwxMzAgWlwiKTsgfVxufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIC50cmFuc2l0aW9uLXNlY3Rpb25fX2Zvcm1lLFxuICAgIC5mb290ZXItZm9ybWF0Y29ldXJfX3ZhZ3VlLWZvbmQsXG4gICAgLmZvb3Rlci1mb3JtYXRjb2V1cl9fdmFndWUtYXZhbnQge1xuICAgICAgICBhbmltYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8qIE3Dqm1lIGxhbmdhZ2UgZCdpbnRlcmFjdGlvbiBxdWUgbCdhY2N1ZWlsIHN1ciBsJ2Vuc2VtYmxlIGR1IHNpdGUuICovXG4udmVudGUtZ3JpbGxlIGFydGljbGUsXG4udmVudGUtZXRhcGVzIGFydGljbGUsXG4udmVudGUtcHJvZ3JhbW1lID4gYXJ0aWNsZSxcbi52ZW50ZS1hY2hhdF9fY2FydGUsXG4uY29tbWFuZGUtcGFnZV9fcGFpZW1lbnQsXG4uY29tbWFuZGUtcGFnZV9fcmVzdW1lLFxuLmNhcnRlLWNvbnRhY3Qge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS1mYy10cmFuc2l0aW9uKSwgYm94LXNoYWRvdyB2YXIoLS1mYy10cmFuc2l0aW9uKSAhaW1wb3J0YW50O1xufVxuXG4udmVudGUtZ3JpbGxlIGFydGljbGU6aG92ZXIsXG4udmVudGUtZXRhcGVzIGFydGljbGU6aG92ZXIsXG4udmVudGUtcHJvZ3JhbW1lID4gYXJ0aWNsZTpob3Zlcixcbi52ZW50ZS1hY2hhdF9fY2FydGU6aG92ZXIsXG4uY29tbWFuZGUtcGFnZV9fcGFpZW1lbnQ6aG92ZXIsXG4uY29tbWFuZGUtcGFnZV9fcmVzdW1lOmhvdmVyLFxuLmNhcnRlLWNvbnRhY3Q6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IHZhcigtLWZjLW9tYnJlLWhvdmVyKSAhaW1wb3J0YW50O1xufVxuXG4udmVudGUtYm91dG9uLFxuLmJvdXRvbi1jb250YWN0LFxuLmZvb3Rlci1mb3JtYXRjb2V1cl9fYm91dG9uLWNvbnRhY3QsXG4uZm9vdGVyLXdoYXRzYXBwX19ib3V0b24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS1mYy10cmFuc2l0aW9uKSwgYm94LXNoYWRvdyB2YXIoLS1mYy10cmFuc2l0aW9uKSwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS1mYy10cmFuc2l0aW9uKSwgYm9yZGVyLWNvbG9yIHZhcigtLWZjLXRyYW5zaXRpb24pLCBjb2xvciB2YXIoLS1mYy10cmFuc2l0aW9uKSAhaW1wb3J0YW50O1xufVxuXG4udmVudGUtYm91dG9uOjpiZWZvcmUsXG4uYm91dG9uLWNvbnRhY3Q6OmJlZm9yZSxcbi5mb290ZXItZm9ybWF0Y29ldXJfX2JvdXRvbi1jb250YWN0OjpiZWZvcmUsXG4uZm9vdGVyLXdoYXRzYXBwX19ib3V0b246OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTEyMCU7XG4gICAgbGVmdDogLTQ1JTtcbiAgICB3aWR0aDogMjglO1xuICAgIGhlaWdodDogMzQwJTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgdHJhbnNwYXJlbnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40NiksIHRyYW5zcGFyZW50KTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxOGRlZyk7XG4gICAgdHJhbnNpdGlvbjogbGVmdCA2NTBtcyBlYXNlO1xufVxuXG4udmVudGUtYm91dG9uOmhvdmVyLFxuLmJvdXRvbi1jb250YWN0OmhvdmVyLFxuLmZvb3Rlci1mb3JtYXRjb2V1cl9fYm91dG9uLWNvbnRhY3Q6aG92ZXIsXG4uZm9vdGVyLXdoYXRzYXBwX19ib3V0b246aG92ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNHB4KSAhaW1wb3J0YW50O1xufVxuXG4udmVudGUtYm91dG9uOmhvdmVyOjpiZWZvcmUsXG4uYm91dG9uLWNvbnRhY3Q6aG92ZXI6OmJlZm9yZSxcbi5mb290ZXItZm9ybWF0Y29ldXJfX2JvdXRvbi1jb250YWN0OmhvdmVyOjpiZWZvcmUsXG4uZm9vdGVyLXdoYXRzYXBwX19ib3V0b246aG92ZXI6OmJlZm9yZSB7XG4gICAgbGVmdDogMTI1JTtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAudmVudGUtZ3JpbGxlIGFydGljbGUsXG4gICAgLnZlbnRlLWV0YXBlcyBhcnRpY2xlLFxuICAgIC52ZW50ZS1wcm9ncmFtbWUgPiBhcnRpY2xlLFxuICAgIC52ZW50ZS1hY2hhdF9fY2FydGUsXG4gICAgLmNvbW1hbmRlLXBhZ2VfX3BhaWVtZW50LFxuICAgIC5jb21tYW5kZS1wYWdlX19yZXN1bWUsXG4gICAgLmNhcnRlLWNvbnRhY3QsXG4gICAgLnZlbnRlLWJvdXRvbixcbiAgICAuYm91dG9uLWNvbnRhY3QsXG4gICAgLmZvb3Rlci1mb3JtYXRjb2V1cl9fYm91dG9uLWNvbnRhY3QsXG4gICAgLmZvb3Rlci13aGF0c2FwcF9fYm91dG9uLFxuICAgIC52ZW50ZS1ib3V0b246OmJlZm9yZSxcbiAgICAuYm91dG9uLWNvbnRhY3Q6OmJlZm9yZSxcbiAgICAuZm9vdGVyLWZvcm1hdGNvZXVyX19ib3V0b24tY29udGFjdDo6YmVmb3JlLFxuICAgIC5mb290ZXItd2hhdHNhcHBfX2JvdXRvbjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLyogw4ljaGVsbGUgdHlwb2dyYXBoaXF1ZSBjb21wYWN0ZSBldCBob21vZ8OobmUsIHkgY29tcHJpcyBzdXIgbCdhY2N1ZWlsLiAqL1xuLmFjY3VlaWwtcGFnZSAuZW50ZXRlLXNlY3Rpb24gaDIge1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMi4xNXJlbSwgMy44dncsIDMuN3JlbSkgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS4wNSAhaW1wb3J0YW50O1xufVxuXG4uYWNjdWVpbC1wYWdlIC5lbnRldGUtc2VjdGlvbiA+IHA6bm90KC5hY2N1ZWlsLXN1ci10aXRyZSksXG4uYWNjdWVpbC1wYWdlIC5hY2N1ZWlsLWhlcm9fX3RleHRlLFxuLmFjY3VlaWwtcGFnZSAuYWNjb21wYWduZW1lbnQtaW50cm8sXG4uYWNjdWVpbC1wYWdlIC52aXNpb24taWxlIHAsXG4uYWNjdWVpbC1wYWdlIC5wdWJsaWMtb3JiaXRlIHAsXG4uYWNjdWVpbC1wYWdlIC5hcHByb2NoZS1hcmNoZSBwLFxuLmFjY3VlaWwtcGFnZSAudGVtb2lnbmFnZS1idWxsZSBwLFxuLmFjY3VlaWwtcGFnZSAudmFsZXVyLXBldGFsZSBwLFxuLmFjY3VlaWwtcGFnZSAuYWN0aW9uLWlsZSBwIHtcbiAgICBmb250LXNpemU6IGNsYW1wKC44NnJlbSwgMS4xdncsIC45OHJlbSkgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS42NSAhaW1wb3J0YW50O1xufVxuXG4uYWNjdWVpbC1wYWdlIC52aXNpb24taWxlIGgzLFxuLmFjY3VlaWwtcGFnZSAubWV0aG9kZS1wYXMgaDMsXG4uYWNjdWVpbC1wYWdlIC5wdWJsaWMtb3JiaXRlIGgzLFxuLmFjY3VlaWwtcGFnZSAuYXBwcm9jaGUtYXJjaGUgaDMsXG4uYWNjdWVpbC1wYWdlIC52YWxldXItcGV0YWxlIGgzLFxuLmFjY3VlaWwtcGFnZSAuYWN0aW9uLWlsZSBoMyxcbi5hY2N1ZWlsLXBhZ2UgLmZvcm1hdGlvbi1mZWF0dXJlIGgzLFxuLmFjY3VlaWwtcGFnZSAuZm9ybWF0aW9uLWJhbmRlIGgzIHtcbiAgICBmb250LXNpemU6IGNsYW1wKDEuMTJyZW0sIDEuNTV2dywgMS41NXJlbSkgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS4xMiAhaW1wb3J0YW50O1xufVxuXG4vKiBNw6ptZSByeXRobWUgZGUgbGVjdHVyZSBwYXJ0b3V0IDogdGl0cmVzIGRlIHNlY3Rpb24gcGx1cyBzb2JyZXMgZXQgdGV4dGUgw6AgZ2F1Y2hlLiAqL1xuLmFjY3VlaWwtcGFnZSAuZW50ZXRlLXNlY3Rpb24sXG4udmVudGUtdGV4dGUtY2VudHJlLFxuLnZlbnRlLWNpdGF0aW9uLFxuLnZlbnRlLWN0YSAuY29udGFpbmVyLFxuLmVudGV0ZS1jb250YWN0LFxuLmNvbW1hbmRlLXBhZ2UtLXN1Y2NlcyAuY29udGFpbmVyIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi5hY2N1ZWlsLXBhZ2UgLmVudGV0ZS1zZWN0aW9uIGgyLFxuLnZlbnRlLXNlY3Rpb24gaDIsXG4udmVudGUtY3RhIGgyLFxuLnZlbnRlLWhlcm8gaDEsXG4udGl0cmUtY29udGFjdCB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjdyZW0sIDIuNTV2dywgMi40NXJlbSkgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS4xMiAhaW1wb3J0YW50O1xufVxuXG4uYWNjdWVpbC1wYWdlIC5hY2N1ZWlsLWhlcm9fX2NvbnRlbnUgaDEge1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMS45cmVtLCAyLjl2dywgMi44cmVtKSAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjEgIWltcG9ydGFudDtcbn1cblxuLmFjY3VlaWwtcGFnZSAudmlzaW9uLWlsZSxcbi5hY2N1ZWlsLXBhZ2UgLnB1YmxpYy1vcmJpdGUsXG4uYWNjdWVpbC1wYWdlIC5hcHByb2NoZS1hcmNoZSxcbi5hY2N1ZWlsLXBhZ2UgLnZhbGV1ci1wZXRhbGUsXG4uYWNjdWVpbC1wYWdlIC5hY2NvbXBhZ25lbWVudC1idWxsZSxcbi5saXZyZS1wYWdlIC52ZW50ZS1zZWN0aW9uLS1yb3NlIC52ZW50ZS1ldGFwZXMgYXJ0aWNsZSxcbi5saXZyZS1wYWdlIC52ZW50ZS1zZWN0aW9uOm5vdCgudmVudGUtc2VjdGlvbi0tcm9zZSkgLnZlbnRlLWdyaWxsZSBhcnRpY2xlLFxuLmFjY29tcGFnbmF0ZXVycy1wYWdlIC52ZW50ZS1ncmlsbGUgYXJ0aWNsZSxcbi5oeXBlcnNlbnNpYmxlcy1wYWdlIC52ZW50ZS1ldGFwZXMgYXJ0aWNsZSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4vKiBMZXMgZGV1eCBidWxsZXMgZGUgbGEgdmlzaW9uIHJlc3RlbnQgdm9sb250YWlyZW1lbnQgY2VudHLDqWVzLiAqL1xuLmFjY3VlaWwtcGFnZSAudmlzaW9uLWlsZSxcbi5hY2N1ZWlsLXBhZ2UgLnZpc2lvbi1pbGUgaDMsXG4uYWNjdWVpbC1wYWdlIC52aXNpb24taWxlIHAge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4udmVudGUtdGV4dGUtY2VudHJlID4gcDpub3QoLnZlbnRlLXN1ci10aXRyZSksXG4udmVudGUtY2l0YXRpb24gc3Bhbixcbi52ZW50ZS1jdGEgcDpub3QoLnZlbnRlLXN1ci10aXRyZSksXG4uZW50ZXRlLWNvbnRhY3QgLmludHJvZHVjdGlvbi1jb250YWN0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4vKiBTb3VyY2UgdW5pcXVlIGRlIHbDqXJpdMOpIDogYXVjdW5lIHBhZ2UgbmUgcGV1dCBhZ3JhbmRpciBzZXMgdGl0cmVzIGlzb2zDqW1lbnQuICovXG5tYWluIGgxLFxubWFpbiBoMiB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgyLjhyZW0sIDUuMnZ3LCA1cmVtKSAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjEyICFpbXBvcnRhbnQ7XG59XG5cbi8qIFByaW9yaXTDqSBhdXggZ3JhbmRzIHRpdHJlcywgeSBjb21wcmlzIGxvcnNxdSd1bmUgcGFnZSBhdmFpdCBzb24gcHJvcHJlIHN0eWxlLiAqL1xuLmFjY3VlaWwtcGFnZSAuZW50ZXRlLXNlY3Rpb24gaDIsXG4uYWNjdWVpbC1wYWdlIC5hY2N1ZWlsLWhlcm9fX2NvbnRlbnUgaDEsXG4udmVudGUtcGFnZSBoMSxcbi52ZW50ZS1wYWdlIGgyLFxuLnBhZ2UtY29udGFjdCAudGl0cmUtY29udGFjdCxcbi5jb21tYW5kZS1wYWdlIGgxLFxuLmNvbW1hbmRlLXBhZ2UgaDIge1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMi4zNXJlbSwgNHZ3LCAzLjg1cmVtKSAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjA3ICFpbXBvcnRhbnQ7XG59XG5cbm1haW4gaDMge1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMS4wNXJlbSwgMS40NXZ3LCAxLjNyZW0pICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTggIWltcG9ydGFudDtcbn1cblxuLyogw4ljaGVsbGUgdW5pcXVlIHBvdXIgbCdpbnTDqWdyYWxpdMOpIGRlIGwnaW50ZXJmYWNlLiAqL1xubWFpbiBwLFxubWFpbiBsaSxcbm1haW4gbGFiZWwsXG5tYWluIGlucHV0LFxubWFpbiB0ZXh0YXJlYSxcbm1haW4gc2VsZWN0IHtcblx0Zm9udC1zaXplOiBjbGFtcCgxcmVtLCAxLjE4dncsIDEuMXJlbSkgIWltcG9ydGFudDtcblx0bGluZS1oZWlnaHQ6IDEuNjU7XG59XG5cbm1haW4gLnZlbnRlLXN1ci10aXRyZSxcbm1haW4gLmFjY3VlaWwtc3VyLXRpdHJlLFxubWFpbiAuc3VyLXRpdHJlLWNvbnRhY3QsXG5tYWluIC5zdXItdGl0cmUtcGFubmVhdS1jb250YWN0IHtcbiAgICBmb250LXNpemU6IC42OHJlbSAhaW1wb3J0YW50O1xuICAgIGxldHRlci1zcGFjaW5nOiAuMThlbTtcbn1cblxubWFpbiAudmVudGUtYm91dG9uLFxubWFpbiAuYm91dG9uLWFjY3VlaWwsXG5tYWluIC5ib3V0b24tY29udGFjdCB7XG5cdGZvbnQtc2l6ZTogLjk0cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5saWVuLW5hdmlnYXRpb24ge1xuXHRmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcbn1cblxuLmZvb3Rlci1mb3JtYXRjb2V1ciBoMiB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjc1cmVtLCAyLjJ2dywgMi4zNXJlbSkgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS4xNSAhaW1wb3J0YW50O1xufVxuXG4uZm9vdGVyLWZvcm1hdGNvZXVyIGgzLFxuLmZvb3Rlci1mb3JtYXRjb2V1cl9fdGl0cmUsXG4uZm9vdGVyLWZvcm1hdGNvZXVyX19ub20ge1xuICAgIGZvbnQtc2l6ZTogMS4wNXJlbSAhaW1wb3J0YW50O1xufVxuXG4uZm9vdGVyLWZvcm1hdGNvZXVyIHAsXG4uZm9vdGVyLWZvcm1hdGNvZXVyIGxpLFxuLmZvb3Rlci1mb3JtYXRjb2V1ciBhLFxuLmZvb3Rlci1mb3JtYXRjb2V1ciBidXR0b24ge1xuXHRmb250LXNpemU6IC45NHJlbSAhaW1wb3J0YW50O1xuXHRsaW5lLWhlaWdodDogMS41NTtcbn1cblxyXG4vKiBQbGFjZSBsYSBuYXZiYXIgYXUtZGVzc3VzIGRlIGwnaW1hZ2UgZCdhY2N1ZWlsLiAqL1xyXG4uZW50ZXRlLXByaW5jaXBhbCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgei1pbmRleDogMTAzMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vKiBBam91dGUgdW4gbMOpZ2VyIGTDqWdyYWTDqSBzb21icmUgZGVycmnDqHJlIGxhIG5hdmlnYXRpb24uICovXHJcbi5uYXZpZ2F0aW9uLXByaW5jaXBhbGUge1xyXG4gICAgbWluLWhlaWdodDogMTE1cHg7XHJcbiAgICBwYWRkaW5nLXRvcDogMjRweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxOHB4O1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICAgIDE4MGRlZyxcclxuICAgICAgICByZ2JhKDAsIDAsIDAsIDAuNjgpIDAlLFxyXG4gICAgICAgIHJnYmEoMCwgMCwgMCwgMC4yKSA2NSUsXHJcbiAgICAgICAgdHJhbnNwYXJlbnQgMTAwJVxyXG4gICAgKTtcclxufVxyXG5cclxuLm1hcnF1ZS1uYXZpZ2F0aW9uIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAyOHB4O1xyXG59XHJcblxyXG4ubG9nby1uYXZpZ2F0aW9uIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZTNjZjtcclxuICAgIGJveC1zaGFkb3c6IDAgNHB4IDE0cHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcclxufVxyXG5cclxuLm5hdmlnYXRpb24tbGlzdGUge1xyXG4gICAgY29sdW1uLWdhcDogN3B4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAyMnB4O1xyXG59XHJcblxyXG4vKiBMaWVucyBwcmluY2lwYXV4IGRlIGxhIG5hdmJhci4gKi9cclxuLmxpZW4tbmF2aWdhdGlvbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiAxM3B4IDVweCAyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogdmFyKC0tY291bGV1ci1uYXZpZ2F0aW9uKSAhaW1wb3J0YW50O1xyXG4gICAgZm9udC1mYW1pbHk6IFwiRm9ydW1cIiwgc2VyaWY7XHJcbiAgICBmb250LXNpemU6IDEuMXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyOiAwO1xyXG5cclxuICAgIHRyYW5zaXRpb246XHJcbiAgICAgICAgY29sb3IgMC4yNXMgZWFzZSxcclxuICAgICAgICB0ZXh0LXNoYWRvdyAwLjI1cyBlYXNlLFxyXG4gICAgICAgIG9wYWNpdHkgMC4yNXMgZWFzZTtcclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICYuc2hvdyB7XHJcbiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45OCkgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgdGV4dC1zaGFkb3c6XHJcbiAgICAgICAgICAgIDAgMCA1cHggcmdiYSgyMDEsIDEzMywgMTU0LCAwLjM4KSxcclxuICAgICAgICAgICAgMCAwIDEwcHggcmdiYSgyMDEsIDEzMywgMTU0LCAwLjE2KTtcclxuICAgIH1cclxufVxyXG5cclxuLyogUmVwcm9kdWl0IGxlIHRyYWl0IHJvc2Ugc291cyBBY2N1ZWlsLiAqL1xyXG4ubGllbi1uYXZpZ2F0aW9uLWFjdGlmIHtcclxuICAgIGNvbG9yOiB2YXIoLS1jb3VsZXVyLW5hdmlnYXRpb24tYWN0aXZlKSAhaW1wb3J0YW50O1xyXG5cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDVweDtcclxuICAgICAgICBib3R0b206IDdweDtcclxuICAgICAgICBsZWZ0OiA1cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzcHg7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb3VsZXVyLW5hdmlnYXRpb24tYWN0aXZlLWxpZ25lKTtcclxuICAgIH1cclxufVxyXG5cclxuLyogU8OpcGFyYXRldXJzIHZlcnRpY2F1eCBlbnRyZSBsZXMgbGllbnMuICovXHJcbi5zZXBhcmF0ZXVyLW5hdmlnYXRpb24ge1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDAgMTJweDtcclxuXHJcbiAgICBzcGFuIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMXB4O1xyXG4gICAgICAgIGhlaWdodDogMTRweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTRweCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIE1lbnUgZMOpcm91bGFudCB0cmFuc2x1Y2lkZSBldCBhcnJvbmRpLiAqL1xyXG4ubWVudS1uYXZpZ2F0aW9uIHtcbiAgICBtaW4td2lkdGg6IDIzNXB4O1xyXG4gICAgcGFkZGluZzogMTBweCAxM3B4O1xyXG4gICAgbWFyZ2luLXRvcDogLTJweCAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY291bGV1ci1tZW51KTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40OCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyNHB4O1xyXG4gICAgYm94LXNoYWRvdzogMCAxMnB4IDI0cHggcmdiYSgwLCAwLCAwLCAwLjIyKTtcclxuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxufVxyXG5cclxuLyogw4lsw6ltZW50cyBkZXMgbWVudXMgZMOpcm91bGFudHMuICovXHJcbi5lbGVtZW50LW1lbnUtbmF2aWdhdGlvbiB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZ2FwOiAxM3B4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIG1pbi1oZWlnaHQ6IDQ2cHg7XHJcbiAgICBwYWRkaW5nOiA4cHggOXB4O1xyXG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcclxuICAgIGZvbnQtZmFtaWx5OiBcIkZvcnVtXCIsIHNlcmlmO1xyXG4gICAgZm9udC1zaXplOiAwLjg3cmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxNHB4O1xyXG4gICAgdHJhbnNpdGlvbjpcclxuICAgICAgICBjb2xvciAwLjI1cyBlYXNlLFxyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZSxcclxuICAgICAgICBib3gtc2hhZG93IDAuMjVzIGVhc2U7XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMjUpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6XHJcbiAgICAgICAgICAgIGluc2V0IDAgMCAxMnB4IHJnYmEoMjAxLCAxMzMsIDE1NCwgMC4wNiksXHJcbiAgICAgICAgICAgIDAgMCAxMHB4IHJnYmEoMjAxLCAxMzMsIDE1NCwgMC4xMik7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5pY29uZS1tZW51LW5hdmlnYXRpb24ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBmbGV4OiAwIDAgMjdweDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGNvbG9yOiAjZDY5YWFlO1xyXG4gICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgICB0cmFuc2l0aW9uOlxyXG4gICAgICAgIGNvbG9yIDAuMjVzIGVhc2UsXHJcbiAgICAgICAgZmlsdGVyIDAuMjVzIGVhc2U7XHJcbn1cclxuXHJcbi8qIEFqb3V0ZSB1biBoYWxvIGzDqWdlciBhdXRvdXIgZGUgbCdpY8O0bmUuICovXHJcbi5lbGVtZW50LW1lbnUtbmF2aWdhdGlvbjpob3ZlciAuaWNvbmUtbWVudS1uYXZpZ2F0aW9uLFxyXG4uZWxlbWVudC1tZW51LW5hdmlnYXRpb246Zm9jdXMgLmljb25lLW1lbnUtbmF2aWdhdGlvbiB7XHJcbiAgICBjb2xvcjogI2RmYWNiZDtcclxuICAgIGZpbHRlcjogZHJvcC1zaGFkb3coMCAwIDRweCByZ2JhKDIxNCwgMTU0LCAxNzQsIDAuMzIpKTtcclxufVxyXG5cclxuLnNlcGFyYXRldXItbWVudS1uYXZpZ2F0aW9uIHtcclxuICAgIG1hcmdpbjogMnB4IDhweDtcclxuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xyXG59XHJcblxyXG4vKiBPdXZyZSBsZXMgbWVudXMgZMOpcm91bGFudHMgYXUgc3Vydm9sIHN1ciBvcmRpbmF0ZXVyLiAqL1xyXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAubmF2aWdhdGlvbi1wcmluY2lwYWxlIHtcclxuICAgICAgICAuZHJvcGRvd246aG92ZXIge1xyXG4gICAgICAgICAgICA+IC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICA+IC5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45OCkgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIHRleHQtc2hhZG93OlxyXG4gICAgICAgICAgICAgICAgICAgIDAgMCA1cHggcmdiYSgyMDEsIDEzMywgMTU0LCAwLjM4KSxcclxuICAgICAgICAgICAgICAgICAgICAwIDAgMTBweCByZ2JhKDIwMSwgMTMzLCAxNTQsIDAuMTYpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKiBBanVzdGVtZW50IHBvdXIgbGVzIMOpY3JhbnMgaW50ZXJtw6lkaWFpcmVzLiAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogMTM5OS45OHB4KSB7XHJcbiAgICAubWFycXVlLW5hdmlnYXRpb24ge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5uYXZpZ2F0aW9uLWxpc3RlIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgY29sdW1uLWdhcDogMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zZXBhcmF0ZXVyLW5hdmlnYXRpb24ge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDdweDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDdweDtcclxuICAgIH1cclxuXHJcbiAgICAubGllbi1uYXZpZ2F0aW9uIHtcclxuICAgICAgICBmb250LXNpemU6IDAuNzJyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEFmZmljaGFnZSBtb2JpbGUgc29tYnJlIGV0IGxpc2libGUuICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcclxuICAgIC5lbnRldGUtcHJpbmNpcGFsIHtcclxuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLm5hdmlnYXRpb24tcHJpbmNpcGFsZSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogYXV0bztcclxuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDEyLCAxMiwgMTIsIDAuOTQpO1xyXG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMnB4KTtcclxuICAgIH1cclxuXHJcbiAgICAubG9nby1uYXZpZ2F0aW9uIHtcclxuICAgICAgICB3aWR0aDogNjRweDtcclxuICAgICAgICBoZWlnaHQ6IDY0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgI25hdmlnYXRpb25QcmluY2lwYWxlIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDEycHggMTZweCAxOHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTIsIDEyLCAxMiwgMC45Nik7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XHJcbiAgICB9XHJcblxyXG4gICAgLm5hdmlnYXRpb24tbGlzdGUge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmxpZW4tbmF2aWdhdGlvbiB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcGFkZGluZzogMTJweCA0cHggIWltcG9ydGFudDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfVxyXG5cclxuICAgIC5saWVuLW5hdmlnYXRpb24tYWN0aWY6OmFmdGVyIHtcclxuICAgICAgICByaWdodDogYXV0bztcclxuICAgICAgICBib3R0b206IDRweDtcclxuICAgICAgICBsZWZ0OiA0cHg7XHJcbiAgICAgICAgd2lkdGg6IDQ1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLm1lbnUtbmF2aWdhdGlvbiB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTRweDtcclxuICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgfVxyXG59XG5cbi8qIExhIHJ1YnJpcXVlIFJlc3NvdXJjZXMgZXN0IHJlbXBsYWPDqWUgcGFyIGwnYWNjw6hzIGRpcmVjdCBhdSBsaXZyZS4gKi9cbi5uYXYtaXRlbTpoYXMoLm5hdmlnYXRpb24tcmVzc291cmNlcykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIE5vcm1hbGlzYXRpb24gZmluYWxlIDogbGVzIHN0eWxlcyBkZSBwYWdlIGV0IGxlcyB1dGlsaXRhaXJlcyBCb290c3RyYXAgbmUgcGV1dmVudCBwbHVzIGRpdmVyZ2VyLiAqL1xuYm9keSBtYWluIC5hY2N1ZWlsLXBhZ2UgOmlzKGgxLCBoMiksXG5ib2R5IG1haW4gLnZlbnRlLXBhZ2UgOmlzKGgxLCBoMiksXG5ib2R5IG1haW4gLnBhZ2UtY29udGFjdCA6aXMoaDEsIGgyKSxcbmJvZHkgbWFpbiAuY29tbWFuZGUtcGFnZSA6aXMoaDEsIGgyKSB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgyLjM1cmVtLCA0dncsIDMuODVyZW0pICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMDcgIWltcG9ydGFudDtcbn1cblxuYm9keSBtYWluIC5hY2N1ZWlsLXBhZ2UgaDMsXG5ib2R5IG1haW4gLnZlbnRlLXBhZ2UgaDMsXG5ib2R5IG1haW4gLnBhZ2UtY29udGFjdCBoMyxcbmJvZHkgbWFpbiAuY29tbWFuZGUtcGFnZSBoMyB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjA1cmVtLCAxLjQ1dncsIDEuM3JlbSkgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS4xOCAhaW1wb3J0YW50O1xufVxuXG5ib2R5IGZvb3RlciA6aXMoaDEsIGgyKSB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjc1cmVtLCAyLjJ2dywgMi4zNXJlbSkgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS4xNSAhaW1wb3J0YW50O1xufVxuXG5ib2R5IGZvb3RlciBoMyB7XG4gICAgZm9udC1zaXplOiAxLjA1cmVtICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMiAhaW1wb3J0YW50O1xufVxuXG4vKiDDgCBwYXJ0aXIgZHUgYnVyZWF1LCBsZXMgdGl0cmVzIG9udCBsJ2VzcGFjZSBuw6ljZXNzYWlyZSA6IGxhIHRhaWxsZSBuZSBjaGFuZ2UgcGFzLiAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC5hY2N1ZWlsLXBhZ2UgLmVudGV0ZS1zZWN0aW9uLFxuICAgIC5hY2N1ZWlsLXBhZ2UgLmVudGV0ZS1zZWN0aW9uLS1sYXJnZSxcbiAgICAudmVudGUtcGFnZSAudmVudGUtdGV4dGUtY2VudHJlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTI0MHB4O1xuICAgIH1cblxuICAgIC52ZW50ZS1wYWdlIC52ZW50ZS1oZXJvX19jb250ZW51IHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMTIwcHg7XG4gICAgfVxuXG4gICAgLmFjY3VlaWwtcGFnZSAuYWNjb21wYWduZW1lbnQtc2NlbmUge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgzN3JlbSwgMS40NWZyKSBtaW5tYXgoMTNyZW0sIC41NWZyKSBtaW5tYXgoMThyZW0sIC44ZnIpO1xuICAgICAgICBnYXA6IGNsYW1wKDEuNXJlbSwgMi41dncsIDIuNXJlbSk7XG4gICAgfVxuXG4gICAgLmFjY3VlaWwtcGFnZSAuYWNjb21wYWduZW1lbnQtY29udGVudSxcbiAgICAuYWNjdWVpbC1wYWdlIC5hY2NvbXBhZ25lbWVudC1jb250ZW51IGgyLFxuICAgIC5hY2N1ZWlsLXBhZ2UgLmFjY29tcGFnbmVtZW50LWNvbnRlbnUgcCB7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB9XG5cbiAgICAuY29tbWFuZGUtcGFnZV9fZ3JpbGxlIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMzRyZW0sIDFmcikgbWlubWF4KDM0cmVtLCAxZnIpO1xuICAgICAgICBtYXgtd2lkdGg6IDE0MjBweDtcbiAgICB9XG59XG5cbi8qIFBhZ2UgSHlwZXJzZW5zaWJsZXMgOiB1bmUgc2V1bGUgbGFyZ2V1ciBkZSByw6lmw6lyZW5jZSBwb3VyIGNoYXF1ZSBzZWN0aW9uLiAqL1xuLmh5cGVyc2Vuc2libGVzLXBhZ2UgLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IG1pbigxMDAlIC0gM3JlbSwgMTE4MHB4KTtcbiAgICBtYXgtd2lkdGg6IDExODBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbi8qIFBhZ2UgTGl2cmUgOiBjaGFxdWUgc2VjdGlvbiB1dGlsaXNlIGxlcyBtw6ptZXMgYm9yZHMgZGUgbGVjdHVyZS4gKi9cbi5saXZyZS1wYWdlIC5jb250YWluZXIge1xuICAgIHdpZHRoOiBtaW4oMTAwJSAtIDNyZW0sIDExODBweCk7XG4gICAgbWF4LXdpZHRoOiAxMTgwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4vKiBQYWdlIGRlIGNvbW1hbmRlIDogcHJpb3JpdMOpIHZpc3VlbGxlIMOgIGxhIGphcXVldHRlLCBwYW5uZWF1IGRlIHBhaWVtZW50IHBsdXMgY29tcGFjdC4gKi9cbi5jb21tYW5kZS1wYWdlX19ncmlsbGUge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDEuMTVmcikgbWlubWF4KDI2cmVtLCAuODVmcikgIWltcG9ydGFudDtcbiAgICBnYXA6IGNsYW1wKDJyZW0sIDR2dywgNHJlbSkgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDEyNDBweCAhaW1wb3J0YW50O1xufVxuXG4uY29tbWFuZGUtcGFnZV9fcmVzdW1lIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDI1MHB4IG1pbm1heCgwLCAxZnIpICFpbXBvcnRhbnQ7XG59XG5cbi5jb21tYW5kZS1wYWdlX19yZXN1bWUgaW1nIHtcbiAgICB3aWR0aDogbWluKDI1MHB4LCA0MHZ3KSAhaW1wb3J0YW50O1xufVxuXG4uY29tbWFuZGUtcGFnZSAuY29tbWFuZGUtcGFnZV9fcmVzdW1lIGgxIHtcbiAgICBmb250LXNpemU6IGNsYW1wKDEuODVyZW0sIDIuNTV2dywgMi42cmVtKSAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjA4ICFpbXBvcnRhbnQ7XG59XG5cbi5jb21tYW5kZS1wYWdlIC5jb21tYW5kZS1wYWdlX19wYWllbWVudCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAzMnJlbTtcbiAgICBqdXN0aWZ5LXNlbGY6IGVuZDtcbiAgICBwYWRkaW5nOiBjbGFtcCgxLjhyZW0sIDMuMnZ3LCAyLjZyZW0pICFpbXBvcnRhbnQ7XG59XG5cbi5jb21tYW5kZS1wYWdlIC5jb21tYW5kZS1wYWdlX19wYWllbWVudCBoMiB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgycmVtLCAyLjY1dncsIDIuNjVyZW0pICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMDggIWltcG9ydGFudDtcbn1cblxuLmNvbW1hbmRlLXBhZ2UgLmNvbW1hbmRlLXBhZ2VfX3BhaWVtZW50IGlucHV0IHtcbiAgICBtaW4taGVpZ2h0OiAzcmVtO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAuY29tbWFuZGUtcGFnZV9fZ3JpbGxlLFxuICAgIC5jb21tYW5kZS1wYWdlX19yZXN1bWUge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5jb21tYW5kZS1wYWdlX19wYWllbWVudCB7XG4gICAgICAgIGp1c3RpZnktc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLyogTGlzaWJpbGl0w6kgdGFibGV0dGUgZXQgbW9iaWxlIDogbGUgaGVhZGVyIGQnYWNjdWVpbCBjb25zZXJ2ZSBzZXMgcsOpZ2xhZ2VzXG4gICBzcMOpY2lmaXF1ZXMsIHRvdXQgbGUgcmVzdGUgZHUgc2l0ZSBhZG9wdGUgdW5lIMOpY2hlbGxlIHBsdXMgZ8OpbsOpcmV1c2UuICovXG5AbWVkaWEgKG1heC13aWR0aDogMTQ5OS45OHB4KSB7XG4gICAgYm9keSBtYWluIDppcyhwLCBsaSwgbGFiZWwsIGlucHV0LCB0ZXh0YXJlYSwgc2VsZWN0LCBzbWFsbCwgYSwgYnV0dG9uKTpub3QoLmFjY3VlaWwtaGVybyAqKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xOHJlbSAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMS42NSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGJvZHkgbWFpbiBoMzpub3QoLmFjY3VlaWwtaGVybyAqKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS43NXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYm9keSBmb290ZXIgOmlzKHAsIGxpLCBhLCBidXR0b24pIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjA1cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjYgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIGJvZHkgbWFpbiA6aXMocCwgbGksIGxhYmVsLCBpbnB1dCwgdGV4dGFyZWEsIHNlbGVjdCwgc21hbGwsIGEsIGJ1dHRvbik6bm90KC5hY2N1ZWlsLWhlcm8gKikge1xuICAgICAgICBmb250LXNpemU6IDEuMDhyZW0gIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBib2R5IG1haW4gaDM6bm90KC5hY2N1ZWlsLWhlcm8gKikge1xuICAgICAgICBmb250LXNpemU6IDEuNTVyZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBib2R5IGZvb3RlciA6aXMocCwgbGksIGEsIGJ1dHRvbikge1xuICAgICAgICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8qIExlcyBjb250ZW51cyBkZXMgcMOpdGFsZXMgcmVzdGVudCBhdSBjxZN1ciBkZSBjaGFxdWUgb3ZhbGUuICovXG4uYWNjdWVpbC1wYWdlIC52YWxldXItcGV0YWxlLFxuLmFjY3VlaWwtcGFnZSAudmFsZXVyLXBldGFsZSBoMyxcbi5hY2N1ZWlsLXBhZ2UgLnZhbGV1ci1wZXRhbGUgcCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi5hY2N1ZWlsLXBhZ2UgLnZhbGV1ci1wZXRhbGUgPiBzcGFuIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4uYWNjdWVpbC1wYWdlIC52YWxldXItcGV0YWxlIGgzLFxuLmFjY3VlaWwtcGFnZSAudmFsZXVyLXBldGFsZSBwIHtcbiAgICB3aWR0aDogbWluKDEwMCUsIDIycmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbi8qIExlcyB0cm9pcyBidWxsZXMgZCdhY3Rpb24gc3VpdmVudCBsZSBtw6ptZSBjZW50cmFnZSBxdWUgbGVzIHDDqXRhbGVzLiAqL1xuLmFjY3VlaWwtcGFnZSAuYWN0aW9uLWlsZSxcbi5hY2N1ZWlsLXBhZ2UgLmFjdGlvbi1pbGUgaDMsXG4uYWNjdWVpbC1wYWdlIC5hY3Rpb24taWxlIHAge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4uYWNjdWVpbC1wYWdlIC5hY3Rpb24taWxlID4gc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4uYWNjdWVpbC1wYWdlIC5hY3Rpb24taWxlIGgzLFxuLmFjY3VlaWwtcGFnZSAuYWN0aW9uLWlsZSBwIHtcbiAgICB3aWR0aDogbWluKDEwMCUsIDE5cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbi8qIExlcyDDqXRhcGVzIGRlcyA1IFNlbnNpYmxlcyByZXN0ZW50IGNvbnRlbnVlcyBkYW5zIGxldXJzIG92YWxlcy4gKi9cbi5oeXBlcnNlbnNpYmxlcy1wYWdlIC52ZW50ZS1ldGFwZXMgYXJ0aWNsZTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oeXBlcnNlbnNpYmxlcy1wYWdlIC52ZW50ZS1ldGFwZXMgYXJ0aWNsZSxcbi5oeXBlcnNlbnNpYmxlcy1wYWdlIC52ZW50ZS1ldGFwZXMgYXJ0aWNsZTpudGgtY2hpbGQob2RkKSxcbi5oeXBlcnNlbnNpYmxlcy1wYWdlIC52ZW50ZS1ldGFwZXMgYXJ0aWNsZTpudGgtY2hpbGQoMykge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4uaHlwZXJzZW5zaWJsZXMtcGFnZSAudmVudGUtZXRhcGVzIGFydGljbGUgaDMsXG4uaHlwZXJzZW5zaWJsZXMtcGFnZSAudmVudGUtZXRhcGVzIGFydGljbGUgcCB7XG4gICAgd2lkdGg6IG1pbigxMDAlLCAxN3JlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4vKiBMYSBjaXRhdGlvbiDDqWRpdG9yaWFsZSBwb3J0ZSBsZSBtw6ptZSBwb2lkcyB2aXN1ZWwgcXUndW4gdGl0cmUgZGUgc2VjdGlvbi4gKi9cbi52ZW50ZS1wYWdlIC52ZW50ZS1jaXRhdGlvbiA+IHAge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBmb250LWZhbWlseTogXCJGb3J1bVwiLCBzZXJpZjtcbiAgICBmb250LXNpemU6IGNsYW1wKDIuMzVyZW0sIDR2dywgMy44NXJlbSkgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjA3ICFpbXBvcnRhbnQ7XG59XG5cbi8qIENvbnN0YXQgOiBjb250ZW51IGNlbnRyw6kgZXQgcmVzcGlyYW50IGF1IGPFk3VyIGRlcyB0cm9pcyBidWxsZXMuICovXG4uYWNjb21wYWduYXRldXJzLXBhZ2UgLnZlbnRlLWdyaWxsZSBhcnRpY2xlLFxuLmFjY29tcGFnbmF0ZXVycy1wYWdlIC52ZW50ZS1ncmlsbGUgYXJ0aWNsZSBoMyxcbi5hY2NvbXBhZ25hdGV1cnMtcGFnZSAudmVudGUtZ3JpbGxlIGFydGljbGUgcCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi5hY2NvbXBhZ25hdGV1cnMtcGFnZSAudmVudGUtZ3JpbGxlIGFydGljbGUgaDMsXG4uYWNjb21wYWduYXRldXJzLXBhZ2UgLnZlbnRlLWdyaWxsZSBhcnRpY2xlIHAge1xuICAgIHdpZHRoOiBtaW4oMTAwJSwgMTZyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLyogVW4gaG92ZXIgZMOpbGljYXQsIHNhbnMgZWZmZXQgZGUgY2FydGUgb3UgZCdvbWJyZSB0cm9wIGxvdXJkZS4gKi9cbi5hY2NvbXBhZ25hdGV1cnMtcGFnZSAudmVudGUtZ3JpbGxlIGFydGljbGU6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KSBzY2FsZSgxLjAxKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgxOTIsIDEwMiwgMTI2LCAuNDUpICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogMCAyMHB4IDQycHggcmdiYSgxMDMsIDU0LCA3NCwgLjE0KSAhaW1wb3J0YW50O1xufVxuXG4uYWNjb21wYWduYXRldXJzLXBhZ2UgLnZlbnRlLXByb2dyYW1tZSA+IGFydGljbGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLWZjLXRyYW5zaXRpb24pLCBjb2xvciB2YXIoLS1mYy10cmFuc2l0aW9uKSAhaW1wb3J0YW50O1xufVxuXG4uYWNjb21wYWduYXRldXJzLXBhZ2UgLnZlbnRlLXByb2dyYW1tZSA+IGFydGljbGU6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3B4KSAhaW1wb3J0YW50O1xufVxuXG4uYWNjb21wYWduYXRldXJzLXBhZ2UgLnZlbnRlLXByb2dyYW1tZSA+IGFydGljbGU6aG92ZXIgaDMge1xuICAgIGNvbG9yOiB2YXIoLS1jb3VsZXVyLXJvc2UtZm9ybWF0Y29ldXIpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgLnZlbnRlLXBhZ2UgLnZlbnRlLWNpdGF0aW9uIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMzIwcHg7XG4gICAgfVxuXG4gICAgLnZlbnRlLXBhZ2UgLnZlbnRlLWNpdGF0aW9uID4gcCB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxufVxuXG4vKiBKYXF1ZXR0ZSA6IHJhdGlvIGV4YWN0IGRlIGwnb3JpZ2luYWwgZXQgaW1hZ2UgZW50acOocmUsIHNhbnMgcmVjYWRyYWdlLiAqL1xuLmxpdnJlLXBhZ2UgLmxpdnJlLWNvdXZlcnR1cmUge1xuICAgIHdpZHRoOiBtaW4oMzAwcHgsIDgwdncpO1xuICAgIGFzcGVjdC1yYXRpbzogOTcxIC8gMTUwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vcHVibGljL2ltYWdlcy9saXZyZS9zbGFtZS10ZXMtZW1vdGlvbnMtZXQtcmF5b25uZS5qcGcnKSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW4gIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4vKiBMZXMgZGltZW5zaW9ucyBkdSBsaXZyZSBkZXZpZW5uZW50IGRlcyBtYXJxdWUtcGFnZXMgw6lkaXRvcmlhdXguICovXG4ubGl2cmUtcGFnZSAudmVudGUtc2VjdGlvbi0tcm9zZSAudmVudGUtZXRhcGVzIHtcbiAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgbWlubWF4KDAsIDFmcikpICFpbXBvcnRhbnQ7XG4gICAgZ2FwOiAxLjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiAxMjQwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubGl2cmUtcGFnZSAudmVudGUtc2VjdGlvbi0tcm9zZSAudmVudGUtZXRhcGVzIGFydGljbGUsXG4ubGl2cmUtcGFnZSAudmVudGUtc2VjdGlvbi0tcm9zZSAudmVudGUtZXRhcGVzIGFydGljbGU6bnRoLWNoaWxkKDQpLFxuLmxpdnJlLXBhZ2UgLnZlbnRlLXNlY3Rpb24tLXJvc2UgLnZlbnRlLWV0YXBlcyBhcnRpY2xlOm50aC1jaGlsZCg1KSB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGdyaWQtY29sdW1uOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWluLWhlaWdodDogMTlyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMi4ycmVtIDEuNDVyZW0gMS43cmVtICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxOTIsIDEwMiwgMTI2LCAuMykgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1MywgMjUyLCAuODIpICFpbXBvcnRhbnQ7XG4gICAgY2xpcC1wYXRoOiBwb2x5Z29uKDAgMCwgMTAwJSAwLCAxMDAlIDk0JSwgNTAlIDEwMCUsIDAgOTQlKTtcbiAgICBib3gtc2hhZG93OiAwIDFyZW0gMi41cmVtIHJnYmEoMTAzLCA1NCwgNzQsIC4wOCkgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5saXZyZS1wYWdlIC52ZW50ZS1zZWN0aW9uLS1yb3NlIC52ZW50ZS1ldGFwZXMgYXJ0aWNsZTpudGgtY2hpbGQoZXZlbikge1xuICAgIG1hcmdpbi10b3A6IDJyZW0gIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjQ3LCAyNTAsIC45MikgIWltcG9ydGFudDtcbn1cblxuLmxpdnJlLXBhZ2UgLnZlbnRlLXNlY3Rpb24tLXJvc2UgLnZlbnRlLWV0YXBlcyBhcnRpY2xlOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAyLjhyZW07XG4gICAgaGVpZ2h0OiAuMjhyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS40cmVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWZjLWNvdWxldXItcHJpbmNpcGFsZSk7XG59XG5cbi5saXZyZS1wYWdlIC52ZW50ZS1zZWN0aW9uLS1yb3NlIC52ZW50ZS1ldGFwZXMgYXJ0aWNsZSBoMyxcbi5saXZyZS1wYWdlIC52ZW50ZS1zZWN0aW9uLS1yb3NlIC52ZW50ZS1ldGFwZXMgYXJ0aWNsZSBwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAubGl2cmUtcGFnZSAudmVudGUtc2VjdGlvbi0tcm9zZSAudmVudGUtZXRhcGVzIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAubGl2cmUtcGFnZSAudmVudGUtc2VjdGlvbi0tcm9zZSAudmVudGUtZXRhcGVzIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAubGl2cmUtcGFnZSAudmVudGUtc2VjdGlvbi0tcm9zZSAudmVudGUtZXRhcGVzIGFydGljbGU6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLyogQWlnbGUgdHJhbnNwYXJlbnQsIGFmZmljaMOpIGVuIGVudGllciBjb21tZSBzaWduYXR1cmUgZHUgaGVhZGVyLiAqL1xuLm5hdmlnYXRpb24tcHJpbmNpcGFsZSB7XG4gICAgbWluLWhlaWdodDogMTcwcHg7XG4gICAgcGFkZGluZy10b3A6IDZweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNnB4O1xufVxuXG4ubWFycXVlLW5hdmlnYXRpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDMwMHB4O1xuICAgIGhlaWdodDogMTU4cHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgZmxleDogMCAwIDMwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBwYWRkaW5nOiAuNDJyZW0gLjc4cmVtIC40OHJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjUwLCAyNDYsIC40Nik7XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSg0NSwgMjksIDM0LCAuODgpICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogMCAuMzVyZW0gMXJlbSByZ2JhKDM4LCAyMSwgMjcsIC4yOCkgIWltcG9ydGFudDtcbn1cblxuLmxvZ28tbmF2aWdhdGlvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgb2JqZWN0LXBvc2l0aW9uOiBsZWZ0IHRvcDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gICAgLXdlYmtpdC1tYXNrLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMDAwIDAlLCAjMDAwIDQyJSwgcmdiYSgwLCAwLCAwLCAuNjIpIDU3JSwgcmdiYSgwLCAwLCAwLCAuMikgNzIlLCB0cmFuc3BhcmVudCA5MSUpO1xyXG4gICAgbWFzay1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzAwMCAwJSwgIzAwMCA0MiUsIHJnYmEoMCwgMCwgMCwgLjYyKSA1NyUsIHJnYmEoMCwgMCwgMCwgLjIpIDcyJSwgdHJhbnNwYXJlbnQgOTElKTtcclxuICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgLm5hdmlnYXRpb24tcHJpbmNpcGFsZSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwNHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogNnB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNnB4O1xuICAgIH1cblxuICAgIC5tYXJxdWUtbmF2aWdhdGlvbiB7XG4gICAgICAgIHdpZHRoOiAxNzJweDtcbiAgICAgICAgaGVpZ2h0OiA5MnB4O1xuICAgICAgICBmbGV4LWJhc2lzOiAxNzJweDtcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAgIC5uYXZpZ2F0aW9uLXByaW5jaXBhbGUge1xuICAgICAgICBtaW4taGVpZ2h0OiA4MnB4O1xuICAgIH1cblxuICAgIC5tYXJxdWUtbmF2aWdhdGlvbiB7XG4gICAgICAgIHdpZHRoOiAxMjRweDtcbiAgICAgICAgaGVpZ2h0OiA2OHB4O1xuICAgICAgICBmbGV4LWJhc2lzOiAxMjRweDtcbiAgICB9XG59XG4vKiBQYWdlcyBsw6lnYWxlcyAqL1xuLnBhZ2UtbGVnYWxlIHtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICBwYWRkaW5nOiBjbGFtcCg5cmVtLCAxNHZ3LCAxMnJlbSkgMCBjbGFtcCg0cmVtLCA4dncsIDdyZW0pO1xuICAgIGJhY2tncm91bmQ6XG4gICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgOTIlIDEyJSwgcmdiYSgyMTQsIDE3MywgMTgxLCAuMiksIHRyYW5zcGFyZW50IDI4cmVtKSxcbiAgICAgICAgbGluZWFyLWdyYWRpZW50KDE0NWRlZywgI2ZmZmFmNyAwJSwgI2Y3ZWZmMCAxMDAlKTtcbn1cblxuLnBhZ2UtbGVnYWxlX19jb250ZW51IHtcbiAgICB3aWR0aDogbWluKDEwMCUgLSAycmVtLCA5MjBweCk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbn1cblxuLnBhZ2UtbGVnYWxlX19zdXItdGl0cmUge1xuICAgIG1hcmdpbjogMCAwIC44cmVtO1xuICAgIGNvbG9yOiAjYTY2ZjdjO1xuICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IC43MnJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMThlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4ucGFnZS1sZWdhbGUgaDEge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6ICMzZjMwMmU7XG4gICAgZm9udC1mYW1pbHk6IEZvcnVtLCBzZXJpZjtcbiAgICBmb250LXNpemU6IGNsYW1wKDIuNHJlbSwgNHZ3LCAzLjhyZW0pICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogMS4wNjtcbn1cblxuLnBhZ2UtbGVnYWxlX19pbnRyb2R1Y3Rpb24ge1xuICAgIG1heC13aWR0aDogNzYwcHg7XG4gICAgbWFyZ2luOiAxLjI1cmVtIDAgMi41cmVtO1xuICAgIGNvbG9yOiAjNjQ1MTRlO1xuXHRmb250LXNpemU6IDEuMXJlbSAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc1O1xufVxuXG4ucGFnZS1sZWdhbGUgc2VjdGlvbiB7XG4gICAgcGFkZGluZzogMS41cmVtIDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTY2LCAxMTEsIDEyNCwgLjIyKTtcbiAgICBzY3JvbGwtbWFyZ2luLXRvcDogN3JlbTtcbn1cblxuLnBhZ2UtbGVnYWxlIGgyIHtcbiAgICBtYXJnaW46IDAgMCAuNTVyZW07XG4gICAgY29sb3I6ICM0YjM4MzU7XG4gICAgZm9udC1mYW1pbHk6IEZvcnVtLCBzZXJpZjtcbiAgICBmb250LXNpemU6IGNsYW1wKDEuMzVyZW0sIDJ2dywgMS43cmVtKSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5wYWdlLWxlZ2FsZSBzZWN0aW9uIHAge1xuICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIGNvbG9yOiAjNmQ1OTU2O1xuICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjtcblx0Zm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc1O1xufVxuXG4ucGFnZS1sZWdhbGUgc2VjdGlvbiBwICsgcCB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbn1cblxuLnBhZ2UtbGVnYWxlIHNlY3Rpb24gdWwge1xuICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgbWFyZ2luOiAuOHJlbSAwIDFyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjM1cmVtO1xuICAgIGNvbG9yOiAjNmQ1OTU2O1xuICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNztcbn1cblxuLnBhZ2UtbGVnYWxlX19zb21tYWlyZSB7XG4gICAgbWFyZ2luOiAwIDAgMi41cmVtO1xuICAgIHBhZGRpbmc6IDEuNHJlbSAwIDEuNnJlbTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgxNjYsIDExMSwgMTI0LCAuMjIpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDE2NiwgMTExLCAxMjQsIC4yMik7XG59XG5cbi5wYWdlLWxlZ2FsZV9fc29tbWFpcmUgPiBwIHtcbiAgICBtYXJnaW46IDAgMCAuOXJlbTtcbiAgICBjb2xvcjogIzRiMzgzNTtcbiAgICBmb250LWZhbWlseTogRm9ydW0sIHNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5wYWdlLWxlZ2FsZV9fc29tbWFpcmUgb2wge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuICAgIGdhcDogLjQycmVtIDJyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgIGNvbG9yOiAjOGY1ZDZhO1xufVxuXG4ucGFnZS1sZWdhbGVfX3NvbW1haXJlIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IC4xNXJlbTtcbn1cblxuLnBhZ2UtbGVnYWxlX19zb21tYWlyZSBhIHtcbiAgICBjb2xvcjogIzYzNDY0ZjtcbiAgICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAuOTRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLnBhZ2UtbGVnYWxlX19hbm5leGUge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG59XG5cbi5wYWdlLWxlZ2FsZV9fZm9ybXVsYWlyZSB7XG4gICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICBtYXJnaW46IDEuMjVyZW0gMCAwO1xufVxuXG4ucGFnZS1sZWdhbGVfX2Zvcm11bGFpcmUgPiBkaXYge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMTByZW0sIC40MmZyKSBtaW5tYXgoMCwgMWZyKTtcbiAgICBnYXA6IDFyZW07XG4gICAgYWxpZ24taXRlbXM6IGVuZDtcbiAgICBtaW4taGVpZ2h0OiAyLjZyZW07XG59XG5cbi5wYWdlLWxlZ2FsZV9fZm9ybXVsYWlyZSBkdCB7XG4gICAgcGFkZGluZzogLjQ1cmVtIDA7XG4gICAgY29sb3I6ICM1ZTQ4NDU7XG4gICAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogLjk0cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5wYWdlLWxlZ2FsZV9fZm9ybXVsYWlyZSBkZCB7XG4gICAgbWluLWhlaWdodDogMnJlbTtcbiAgICBtYXJnaW46IDAgMCAuNDVyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTA5LCA4OSwgODYsIC41KTtcbn1cblxuLnBhZ2UtbGVnYWxlIC5wYWdlLWxlZ2FsZV9fcHJlY2lzaW9uIHtcbiAgICBtYXJnaW4tdG9wOiAuNjVyZW07XG4gICAgY29sb3I6ICM4YTc0NzA7XG4gICAgZm9udC1zaXplOiAuODZyZW07XG59XG5cbi5wYWdlLWxlZ2FsZSBhIHtcbiAgICBjb2xvcjogIzllNjY3NDtcbiAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHJnYmEoMTU4LCAxMDIsIDExNiwgLjQ1KTtcbiAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IC4xOGVtO1xufVxuXG4ucGFnZS1sZWdhbGVfX21pc2UtYS1qb3VyIHtcbiAgICBtYXJnaW46IDJyZW0gMCAwO1xuICAgIGNvbG9yOiAjOWE4MTdlO1xuICAgIGZvbnQtc2l6ZTogLjc2cmVtO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgICAucGFnZS1sZWdhbGUge1xuICAgICAgICBwYWRkaW5nLXRvcDogNy41cmVtO1xuICAgIH1cblxuICAgIC5wYWdlLWxlZ2FsZV9fc29tbWFpcmUgb2wge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xuICAgIH1cblxuICAgIC5wYWdlLWxlZ2FsZV9fZm9ybXVsYWlyZSA+IGRpdiB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcik7XG4gICAgICAgIGdhcDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLjZyZW07XG4gICAgfVxufVxuXG4vKiBOYXZpZ2F0aW9uIGVuIHBhbm5lYXUgOiBsZSBtZW51IHJlc3RlIGFjY2Vzc2libGUgZGVwdWlzIGxlIGJvdXRvbiBidXJnZXIsXG4gICB5IGNvbXByaXMgc3VyIGxlcyBncmFuZHMgw6ljcmFucy4gKi9cbi5uYXZpZ2F0aW9uLXByaW5jaXBhbGUge1xuICAgIG1pbi1oZWlnaHQ6IDExMnB4O1xuICAgIHBhZGRpbmc6IDhweCAwO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMTIsIDEyLCAxMiwgLjgpLCByZ2JhKDEyLCAxMiwgMTIsIC4xMikgNzglLCB0cmFuc3BhcmVudCk7XG59XG5cbi5ib3V0b24tbWVudS1idXJnZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICB3aWR0aDogNTJweDtcbiAgICBoZWlnaHQ6IDUycHg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDZweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiBjbGFtcCguMjVyZW0sIDJ2dywgMnJlbSk7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMzEsIDI1LCAyNSwgLjUyKTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4yNXMgZWFzZSwgdHJhbnNmb3JtIC4yNXMgZWFzZTtcbn1cblxuLmJvdXRvbi1tZW51LWJ1cmdlcjpob3Zlcixcbi5ib3V0b24tbWVudS1idXJnZXI6Zm9jdXMtdmlzaWJsZSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyMDEsIDEzMywgMTU0LCAuNTUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNik7XG59XG5cbi5ib3V0b24tbWVudS1idXJnZXJfX2xpZ25lIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMjNweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjMycyBlYXNlLCBvcGFjaXR5IC4ycyBlYXNlO1xufVxuXG4uYm91dG9uLW1lbnUtYnVyZ2VyW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIC5ib3V0b24tbWVudS1idXJnZXJfX2xpZ25lOm50aC1jaGlsZCgxKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDdweCkgcm90YXRlKDQ1ZGVnKTtcbn1cblxuLmJvdXRvbi1tZW51LWJ1cmdlclthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSAuYm91dG9uLW1lbnUtYnVyZ2VyX19saWduZTpudGgtY2hpbGQoMikge1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbi5ib3V0b24tbWVudS1idXJnZXJbYXJpYS1leHBhbmRlZD1cInRydWVcIl0gLmJvdXRvbi1tZW51LWJ1cmdlcl9fbGlnbmU6bnRoLWNoaWxkKDMpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTdweCkgcm90YXRlKC00NWRlZyk7XG59XG5cbiNuYXZpZ2F0aW9uUHJpbmNpcGFsZSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiBtaW4oMzFyZW0sIDEwMHZ3KTtcbiAgICBoZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogY2xhbXAoNy41cmVtLCAxMnZ3LCAxMHJlbSkgY2xhbXAoMnJlbSwgNnZ3LCA1cmVtKSAycmVtO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMzUsIDI4LCAyOSwgLjk4KTtcbiAgICBib3gtc2hhZG93OiAtMjBweCAwIDU1cHggcmdiYSgwLCAwLCAwLCAuMjgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNDZzIGN1YmljLWJlemllciguMiwgLjgsIC4yLCAxKSwgb3BhY2l0eSAuM3MgZWFzZSwgdmlzaWJpbGl0eSAwcyBsaW5lYXIgLjQ2cztcbn1cblxuI25hdmlnYXRpb25QcmluY2lwYWxlLnNob3csXG4jbmF2aWdhdGlvblByaW5jaXBhbGUuY29sbGFwc2luZyB7XG4gICAgei1pbmRleDogMTA7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbn1cblxuI25hdmlnYXRpb25QcmluY2lwYWxlLnNob3cgLm5hdi1pdGVtIHtcbiAgICBhbmltYXRpb246IGFwcGFyaXRpb25MaWVuTWVudSAzMDBtcyBjdWJpYy1iZXppZXIoLjIsIC44LCAuMiwgMSkgYm90aDtcbn1cblxuI25hdmlnYXRpb25QcmluY2lwYWxlLnNob3cgLm5hdi1pdGVtOm50aC1jaGlsZCgxKSB7IGFuaW1hdGlvbi1kZWxheTogMTUwbXM7IH1cbiNuYXZpZ2F0aW9uUHJpbmNpcGFsZS5zaG93IC5uYXYtaXRlbTpudGgtY2hpbGQoMykgeyBhbmltYXRpb24tZGVsYXk6IDIwNW1zOyB9XG4jbmF2aWdhdGlvblByaW5jaXBhbGUuc2hvdyAubmF2LWl0ZW06bnRoLWNoaWxkKDUpIHsgYW5pbWF0aW9uLWRlbGF5OiAyNjBtczsgfVxuI25hdmlnYXRpb25QcmluY2lwYWxlLnNob3cgLm5hdi1pdGVtOm50aC1jaGlsZCg3KSB7IGFuaW1hdGlvbi1kZWxheTogMzE1bXM7IH1cbiNuYXZpZ2F0aW9uUHJpbmNpcGFsZS5zaG93IC5uYXYtaXRlbTpudGgtY2hpbGQoOSkgeyBhbmltYXRpb24tZGVsYXk6IDM3MG1zOyB9XG4jbmF2aWdhdGlvblByaW5jaXBhbGUuc2hvdyAubmF2LWl0ZW06bnRoLWNoaWxkKDExKSB7IGFuaW1hdGlvbi1kZWxheTogNDI1bXM7IH1cblxuQGtleWZyYW1lcyBhcHBhcml0aW9uTGllbk1lbnUge1xuICAgIGZyb20geyBvcGFjaXR5OiAwOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLjhyZW0pOyB9XG4gICAgdG8geyBvcGFjaXR5OiAxOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cbn1cblxuLmxldHRyZS1tZW51IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbiNuYXZpZ2F0aW9uUHJpbmNpcGFsZS5zaG93IC5sZXR0cmUtbWVudSB7XG4gICAgYW5pbWF0aW9uOiBhcHBhcml0aW9uTGV0dHJlTWVudSAzMzBtcyBjdWJpYy1iZXppZXIoLjE2LCAuODIsIC4yMiwgMSkgYm90aDtcbiAgICBhbmltYXRpb24tZGVsYXk6IGNhbGMoMTEwbXMgKyB2YXIoLS1kZWxhaS1sZXR0cmUpKTtcbn1cblxuQGtleWZyYW1lcyBhcHBhcml0aW9uTGV0dHJlTWVudSB7XG4gICAgZnJvbSB7IG9wYWNpdHk6IDA7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSguNWVtKTsgZmlsdGVyOiBibHVyKDNweCk7IH1cbiAgICB0byB7IG9wYWNpdHk6IDE7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgZmlsdGVyOiBibHVyKDApOyB9XG59XG5cbiNuYXZpZ2F0aW9uUHJpbmNpcGFsZS5jb2xsYXBzaW5nIHtcbiAgICBoZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7XG59XG5cbi5uYXZpZ2F0aW9uLWxpc3RlIHtcbiAgICBnYXA6IC4zcmVtO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4ubmF2aWdhdGlvbi1saXN0ZSAubmF2LWl0ZW0ge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4ubGllbi1uYXZpZ2F0aW9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAuOXJlbSAwICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjI1cmVtLCAydncsIDEuNTVyZW0pICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmxpZW4tbmF2aWdhdGlvbi1hY3RpZjo6YWZ0ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGJvdHRvbTogLjU1cmVtO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDQ4cHg7XG59XG5cbi5uYXZpZ2F0aW9uLWxpc3RlIC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IC40NXJlbSAwIC4zcmVtO1xuICAgIG1hcmdpbjogLjFyZW0gMCAuOHJlbSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4ubmF2aWdhdGlvbi1saXN0ZSAuZHJvcGRvd24tbWVudSBsaSB7XG4gICAgbWFyZ2luOiAwIDAgLjQ1cmVtO1xufVxuXG4ubmF2aWdhdGlvbi1saXN0ZSAuZHJvcGRvd24tbWVudSBsaTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ubmF2aWdhdGlvbi1saXN0ZSAuc2VwYXJhdGV1ci1tZW51LW5hdmlnYXRpb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5uYXZpZ2F0aW9uLWxpc3RlIC5lbGVtZW50LW1lbnUtbmF2aWdhdGlvbiB7XG4gICAgbWluLWhlaWdodDogMy41NXJlbTtcbiAgICBnYXA6IC45cmVtO1xuICAgIHBhZGRpbmc6IC43MnJlbSAuOTVyZW07XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjg4KTtcbiAgICBmb250LXNpemU6IC45OHJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4wNTUpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IC44NXJlbTtcbn1cblxuLm5hdmlnYXRpb24tbGlzdGUgLmVsZW1lbnQtbWVudS1uYXZpZ2F0aW9uOmhvdmVyLFxuLm5hdmlnYXRpb24tbGlzdGUgLmVsZW1lbnQtbWVudS1uYXZpZ2F0aW9uOmZvY3VzLXZpc2libGUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjAxLCAxMzMsIDE1NCwgLjIyKTtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjMyLCAxODMsIDIwMCwgLjM4KTtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4ubmF2aWdhdGlvbi1saXN0ZSAuaWNvbmUtbWVudS1uYXZpZ2F0aW9uIHtcbiAgICB3aWR0aDogMnJlbTtcbiAgICBoZWlnaHQ6IDJyZW07XG4gICAgZmxleDogMCAwIDJyZW07XG4gICAgY29sb3I6ICNlOGI3Yzg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyMDEsIDEzMywgMTU0LCAuMTQpO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbn1cblxuLnNlcGFyYXRldXItbmF2aWdhdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgICAubmF2aWdhdGlvbi1wcmluY2lwYWxlIHtcbiAgICAgICAgbWluLWhlaWdodDogODJweDtcbiAgICB9XG5cbiAgICAuYm91dG9uLW1lbnUtYnVyZ2VyIHtcbiAgICAgICAgd2lkdGg6IDQ2cHg7XG4gICAgICAgIGhlaWdodDogNDZweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgICNuYXZpZ2F0aW9uUHJpbmNpcGFsZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiA2LjhyZW0gMnJlbSAycmVtO1xuICAgIH1cbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAjbmF2aWdhdGlvblByaW5jaXBhbGUsXG4gICAgLmJvdXRvbi1tZW51LWJ1cmdlcixcbiAgICAuYm91dG9uLW1lbnUtYnVyZ2VyX19saWduZSxcbiAgICAjbmF2aWdhdGlvblByaW5jaXBhbGUuc2hvdyAubmF2LWl0ZW0sXG4gICAgI25hdmlnYXRpb25QcmluY2lwYWxlLnNob3cgLmxldHRyZS1tZW51IHtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgIH1cbn1cblxuLyogTmF2aWdhdGlvbiBjb21wYWN0ZSA6IGxlIGxvZ28gbmUgbWFzcXVlIHBsdXMgbGUgcGFubmVhdSBkZXMgNSBTZW5zaWJsZXMsXG4gICBldCBsZSBtZW51IGNvbnNlcnZlIGRlcyB6b25lcyB0YWN0aWxlcyBjb25mb3J0YWJsZXMgc3VyIG1vYmlsZS4gKi9cbi5uYXZpZ2F0aW9uLXByaW5jaXBhbGUge1xuICAgIG1pbi1oZWlnaHQ6IDEwMHB4O1xufVxuXG4ubWFycXVlLW5hdmlnYXRpb24ge1xuICAgIHdpZHRoOiAxODRweDtcbiAgICBoZWlnaHQ6IDk2cHg7XG4gICAgZmxleC1iYXNpczogMTg0cHg7XG59XG5cbi5sb2dvLW5hdmlnYXRpb24ge1xuICAgIG9iamVjdC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgLXdlYmtpdC1tYXNrLWltYWdlOiBub25lO1xuICAgIG1hc2staW1hZ2U6IG5vbmU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5lbnRldGUtcHJpbmNpcGFsIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cblxuICAgIC5uYXZpZ2F0aW9uLXByaW5jaXBhbGUge1xuICAgICAgICBtaW4taGVpZ2h0OiA2OHB4O1xuICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNCwgMTksIDIxLCAuNjIpLCByZ2JhKDI0LCAxOSwgMjEsIC4yKSA2NCUsIHRyYW5zcGFyZW50KTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBub25lO1xuICAgIH1cblxuICAgIC5tYXJxdWUtbmF2aWdhdGlvbiB7XG4gICAgICAgIHdpZHRoOiAxMTJweDtcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICBmbGV4LWJhc2lzOiAxMTJweDtcbiAgICB9XG5cbiAgICAuYm91dG9uLW1lbnUtYnVyZ2VyIHtcbiAgICAgICAgd2lkdGg6IDQ0cHg7XG4gICAgICAgIGhlaWdodDogNDRweDtcbiAgICB9XG5cbiAgICAjbmF2aWdhdGlvblByaW5jaXBhbGUge1xuICAgICAgICB3aWR0aDogbWluKDEwMCUsIDI1cmVtKTtcbiAgICAgICAgcGFkZGluZzogNi41cmVtIDEuNjVyZW0gMnJlbTtcbiAgICB9XG5cbiAgICAubGllbi1uYXZpZ2F0aW9uIHtcbiAgICAgICAgcGFkZGluZzogLjc4cmVtIDAgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjA4cmVtLCA1dncsIDEuM3JlbSkgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuZWxlbWVudC1tZW51LW5hdmlnYXRpb24ge1xuICAgICAgICBwYWRkaW5nOiAuN3JlbTtcbiAgICAgICAgZm9udC1zaXplOiAuOTVyZW07XG4gICAgfVxufVxuXG4vKiBCYXJyZSB0b3Vqb3VycyBhY2Nlc3NpYmxlIGF1IHNjcm9sbCwgc2FucyBhdWN1biB2b2lsZSBzdXIgbGEgcGFnZS4gKi9cbi5lbnRldGUtcHJpbmNpcGFsIHtcbiAgICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAxMDUwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubmF2aWdhdGlvbi1wcmluY2lwYWxlIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJhY2tkcm9wLWZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiBMb2dvIHJvbmQgY29tcGxldCwgc2FucyBjYXJ0b3VjaGUgYWpvdXTDqSBhdXRvdXIuICovXG4ubWFycXVlLW5hdmlnYXRpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiBjbGFtcCg0LjVyZW0sIDYuNnZ3LCA2LjVyZW0pO1xuICAgIGhlaWdodDogY2xhbXAoNC41cmVtLCA2LjZ2dywgNi41cmVtKTtcbiAgICBmbGV4OiAwIDAgY2xhbXAoNC41cmVtLCA2LjZ2dywgNi41cmVtKTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1sZWZ0OiBjbGFtcCguMXJlbSwgMXZ3LCAuNzVyZW0pO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmxvZ28tbmF2aWdhdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgY2xpcC1wYXRoOiBjaXJjbGUoNDYuNSUgYXQgNTAlIDUwJSk7XG4gICAgLXdlYmtpdC1tYXNrLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWFzay1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubWFycXVlLW5hdmlnYXRpb25fX3Nsb2dhbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuXHRsZWZ0OiBjYWxjKDEwMCUgKyAuNzVyZW0pO1xuXHR3aWR0aDogbWluKDIwcmVtLCAyNHZ3KTtcbiAgICBjb2xvcjogIzNjMmMyZDtcbiAgICBmb250LWZhbWlseTogXCJGb3J1bVwiLCBzZXJpZjtcbiAgICBmb250LXNpemU6IGNsYW1wKC43OHJlbSwgLjl2dywgLjk4cmVtKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE4O1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR0ZXh0LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjc1KTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRvcGFjaXR5OiAxO1xuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDIyMG1zIGVhc2UsIHZpc2liaWxpdHkgMjIwbXMgZWFzZTtcbn1cblxuYm9keS5zbG9nYW4tbmF2aWdhdGlvbi1tYXNxdWUgLm1hcnF1ZS1uYXZpZ2F0aW9uX19zbG9nYW4ge1xuXHRvcGFjaXR5OiAwO1xuXHR2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qIEJ1cmdlciBhw6lyaWVuIDogcGx1cyBkZSBwYXN0aWxsZSBzb21icmUsIHNldWxlbWVudCB1biB0cmFjw6kgcmFmZmluw6kuICovXG4uYm91dG9uLW1lbnUtYnVyZ2VyIHtcbiAgICB3aWR0aDogNTJweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogNDRweCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogY2xhbXAoLjM1cmVtLCAydncsIDJyZW0pO1xuICAgIGJvcmRlci1yYWRpdXM6IC42NXJlbTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmJvdXRvbi1tZW51LWJ1cmdlcjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTQpICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiBub25lO1xufVxuXG4uYm91dG9uLW1lbnUtYnVyZ2VyOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIC45KTtcbiAgICBvdXRsaW5lLW9mZnNldDogM3B4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE0KSAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuLmJvdXRvbi1tZW51LWJ1cmdlcl9fbGlnbmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6IDI3cHg7XG4gICAgaGVpZ2h0OiAzcHg7XG4gICAgZmxleDogMCAwIDNweDtcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICBiYWNrZ3JvdW5kOiAjMjExOTFhO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDI1NSwgMjU1LCAyNTUsIC40OCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4yOHMgZWFzZSwgb3BhY2l0eSAuMThzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgLjE4cyBlYXNlO1xufVxuXG4uYm91dG9uLW1lbnUtYnVyZ2VyOm5vdChbYXJpYS1leHBhbmRlZD1cInRydWVcIl0pIC5ib3V0b24tbWVudS1idXJnZXJfX2xpZ25lOm50aC1jaGlsZCgyKSB7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLmJvdXRvbi1tZW51LWJ1cmdlcl9fbGlnbmU6bnRoLWNoaWxkKDEpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCBjYWxjKC01MCUgLSA5cHgpKTtcbn1cblxuLmJvdXRvbi1tZW51LWJ1cmdlcl9fbGlnbmU6bnRoLWNoaWxkKDIpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLmJvdXRvbi1tZW51LWJ1cmdlcl9fbGlnbmU6bnRoLWNoaWxkKDMpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCBjYWxjKC01MCUgKyA5cHgpKTtcbn1cblxuLmJvdXRvbi1tZW51LWJ1cmdlclthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSAuYm91dG9uLW1lbnUtYnVyZ2VyX19saWduZTpudGgtY2hpbGQoMSkge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoNDVkZWcpO1xufVxuXG4uYm91dG9uLW1lbnUtYnVyZ2VyW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIC5ib3V0b24tbWVudS1idXJnZXJfX2xpZ25lOm50aC1jaGlsZCgyKSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSguMzUpO1xufVxuXG4uYm91dG9uLW1lbnUtYnVyZ2VyW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIC5ib3V0b24tbWVudS1idXJnZXJfX2xpZ25lOm50aC1jaGlsZCgzKSB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4vKiBMZSBwYW5uZWF1IG1vYmlsZSBwYXJ0IGJpZW4gZHUgYm9yZCBzdXDDqXJpZXVyIGRlIGwnw6ljcmFuLiAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgLm5hdmlnYXRpb24tcHJpbmNpcGFsZSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDc4cHg7XG4gICAgfVxuXG4gICAgLm1hcnF1ZS1uYXZpZ2F0aW9uIHtcbiAgICAgICAgd2lkdGg6IDMuNXJlbTtcbiAgICAgICAgaGVpZ2h0OiAzLjVyZW07XG4gICAgICAgIGZsZXgtYmFzaXM6IDMuNXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogLjY1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMS4zcmVtO1xuICAgIH1cblxuICAgIC5tYXJxdWUtbmF2aWdhdGlvbl9fc2xvZ2FuIHtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IGNhbGMoMTAwJSArIC41cmVtKTtcbiAgICAgICAgd2lkdGg6IG1pbigxMy41cmVtLCA1OHZ3KTtcbiAgICAgICAgZm9udC1zaXplOiAuNjhyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjEyO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuXG4gICAgI25hdmlnYXRpb25QcmluY2lwYWxlIHtcbiAgICAgICAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IDEwMGR2aCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDcuMjVyZW0gMnJlbSAyLjVyZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAubmF2aWdhdGlvbi1saXN0ZSB7XG4gICAgICAgIGdhcDogLjM1cmVtO1xuICAgIH1cblxuICAgIC5uYXZpZ2F0aW9uLWxpc3RlIC5uYXYtaXRlbSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5saWVuLW5hdmlnYXRpb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLWhlaWdodDogMy43NXJlbTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMXJlbSAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yNSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5tZW51LW5hdmlnYXRpb24ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogLjI1cmVtO1xuICAgICAgICBwYWRkaW5nOiAuNXJlbSAuOXJlbTtcbiAgICB9XG5cbiAgICAuZWxlbWVudC1tZW51LW5hdmlnYXRpb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtaW4taGVpZ2h0OiAzLjVyZW07XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IC44cmVtIC4zNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDEuMDhyZW0gIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8qIExlcyBtb2JpbGVzIMOpdHJvaXRzIGdhcmRlbnQgdW5lIHZyYWllIHpvbmUgZGUgcmVzcGlyYXRpb24gYXZhbnQgbGUgYnVyZ2VyLiAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDQzMHB4KSB7XG4gICAgLm1hcnF1ZS1uYXZpZ2F0aW9uX19zbG9nYW4ge1xuICAgICAgICB3aWR0aDogbWluKDEwLjVyZW0sIGNhbGMoMTAwdncgLSAxMnJlbSkpO1xuICAgICAgICBmb250LXNpemU6IC42MnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMDg7XG4gICAgfVxuXG4gICAgLmJvdXRvbi1tZW51LWJ1cmdlciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuIiwiOnJvb3Qge1xyXG5cdC0tZm9vdGVyLXJvc2U6ICNDMDY2N0U7XG5cdC0tZm9vdGVyLXJvc2UtZm9uY2U6ICNDQzgyNkM7XG5cdC0tZm9vdGVyLXJvc2UtcHJvZm9uZDogIzYzNDY1MDtcblx0LS1mb290ZXItY3JlbWU6ICNGM0REQzU7XG5cdC0tZm9vdGVyLWJsYW5jOiAjZmZmZmZmO1xyXG5cdC0tZm9vdGVyLWJsZXUtZmFjZWJvb2s6ICM2Q0I2Q0M7XG5cdC0tZm9vdGVyLWJsZXUtZmFjZWJvb2stZm9uY2U6ICNDMDY2N0U7XG5cdC0tZm9vdGVyLXRleHRlOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODIpO1xyXG5cclxuXHQtLWZvb3Rlci10cmFuc2l0aW9uOlxyXG5cdFx0NDIwbXMgY3ViaWMtYmV6aWVyKDAuMiwgMC43NSwgMC4yNSwgMSk7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBTVFJVQ1RVUkUgR8OJTsOJUkFMRVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5mb290ZXItZm9ybWF0Y29ldXIge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR6LWluZGV4OiAxO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0bWFyZ2luLXRvcDogMDtcclxuXHRwYWRkaW5nLXRvcDogY2xhbXAoNXJlbSwgOHZ3LCA4cmVtKTtcclxuXHRjb2xvcjogdmFyKC0tZm9vdGVyLWJsYW5jKTtcclxuXHRiYWNrZ3JvdW5kOlxyXG5cdFx0cmFkaWFsLWdyYWRpZW50KFxyXG5cdFx0XHRjaXJjbGUgYXQgMTIlIDI4JSxcclxuXHRcdFx0cmdiYSgyNTUsIDIwMSwgMjIwLCAwLjE3KSxcclxuXHRcdFx0dHJhbnNwYXJlbnQgMjYlXHJcblx0XHQpLFxyXG5cdFx0cmFkaWFsLWdyYWRpZW50KFxyXG5cdFx0XHRjaXJjbGUgYXQgODglIDcyJSxcclxuXHRcdFx0cmdiYSgyNTUsIDIxOSwgMTc0LCAwLjE0KSxcclxuXHRcdFx0dHJhbnNwYXJlbnQgMzAlXHJcblx0XHQpLFxyXG5cdFx0cmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudChcclxuXHRcdFx0MTEyZGVnLFxyXG5cdFx0XHRyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDE4KSAwLFxyXG5cdFx0XHRyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDE4KSAxcHgsXHJcblx0XHRcdHRyYW5zcGFyZW50IDFweCxcclxuXHRcdFx0dHJhbnNwYXJlbnQgOXB4XHJcblx0XHQpLFxyXG5cdFx0bGluZWFyLWdyYWRpZW50KFxyXG5cdFx0XHQxNDVkZWcsXHJcblx0XHRcdCM2NzQ3NTEgMCUsXHJcblx0XHRcdCM0OTM2M2QgNTAlLFxyXG5cdFx0XHQjMzIyOTJkIDEwMCVcclxuXHRcdCk7XHJcblx0aXNvbGF0aW9uOiBpc29sYXRlO1xyXG59XHJcblxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGluc2V0OiAwO1xyXG5cdHotaW5kZXg6IC0xO1xyXG5cdGJhY2tncm91bmQ6XHJcblx0XHRyZXBlYXRpbmctcmFkaWFsLWdyYWRpZW50KFxyXG5cdFx0XHRjaXJjbGUgYXQgMjAlIDMwJSxcclxuXHRcdFx0cmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyNSkgMCxcclxuXHRcdFx0cmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyNSkgMXB4LFxyXG5cdFx0XHR0cmFuc3BhcmVudCAxcHgsXHJcblx0XHRcdHRyYW5zcGFyZW50IDhweFxyXG5cdFx0KTtcclxuXHRtaXgtYmxlbmQtbW9kZTogc29mdC1saWdodDtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLmZvb3Rlci1mb3JtYXRjb2V1cl9fY29udGVudSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHotaW5kZXg6IDQ7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBWQUdVRSBTVVDDiVJJRVVSRVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5mb290ZXItZm9ybWF0Y29ldXJfX3ZhZ3VlIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0ei1pbmRleDogMztcclxuXHR0b3A6IC0xcHg7XHJcblx0cmlnaHQ6IDA7XHJcblx0bGVmdDogMDtcclxuXHRoZWlnaHQ6IGNsYW1wKDVyZW0sIDh2dywgOHJlbSk7XHJcblx0bGluZS1oZWlnaHQ6IDA7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00OCUpO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyX192YWd1ZSBzdmcge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxufVxyXG5cclxuLmZvb3Rlci1mb3JtYXRjb2V1cl9fdmFndWUtZm9uZCB7XG5cdGZpbGw6IHJnYmEoMjI5LCAxMjksIDE2NSwgMC4zOCk7XG5cdGFuaW1hdGlvbjogdmFndWVGb290ZXJGb25kIDEycyBlYXNlLWluLW91dCAtNHMgaW5maW5pdGU7XG5cdHdpbGwtY2hhbmdlOiBkO1xufVxuXG4uZm9vdGVyLWZvcm1hdGNvZXVyX192YWd1ZS1hdmFudCB7XG5cdGZpbGw6ICM2NzQ3NTE7XG5cdGFuaW1hdGlvbjogdmFndWVGb290ZXJBdmFudCAxMHMgZWFzZS1pbi1vdXQgLTFzIGluZmluaXRlO1xuXHR3aWxsLWNoYW5nZTogZDtcbn1cblxuQGtleWZyYW1lcyB2YWd1ZUZvb3RlckZvbmQge1xuXHQwJSwgMTAwJSB7IGQ6IHBhdGgoXCJNMCw1MCBDMTgwLDEyNSAzNTUsMTUgNTkwLDcyIEM4MzUsMTMyIDEwNDAsMjIgMTQ0MCw3MCBMMTQ0MCwxNTAgTDAsMTUwIFpcIik7IH1cblx0MzMlIHsgZDogcGF0aChcIk0wLDcyIEMxNjAsMTEwIDM2MCwzMCA2MTAsNTAgQzg1MCw5NSAxMDkwLDI4IDE0NDAsNDggTDE0NDAsMTUwIEwwLDE1MCBaXCIpOyB9XG5cdDY2JSB7IGQ6IHBhdGgoXCJNMCwyOCBDMjAwLDgwIDM5MCwxMTggNjIwLDcwIEM4NjAsMzAgMTEwMCwxMDggMTQ0MCw5MiBMMTQ0MCwxNTAgTDAsMTUwIFpcIik7IH1cbn1cblxuQGtleWZyYW1lcyB2YWd1ZUZvb3RlckF2YW50IHtcblx0MCUsIDEwMCUgeyBkOiBwYXRoKFwiTTAsOTIgQzI1NSwxMzUgNDU1LDUyIDcyMCw5NiBDOTkwLDEzOCAxMTkwLDUyIDE0NDAsOTIgTDE0NDAsMTUwIEwwLDE1MCBaXCIpOyB9XG5cdDMzJSB7IGQ6IHBhdGgoXCJNMCwxMTIgQzIzMCwxMjIgNDUwLDU4IDcxMCw3MiBDOTgwLDEwNSAxMTkwLDQ4IDE0NDAsNjQgTDE0NDAsMTUwIEwwLDE1MCBaXCIpOyB9XG5cdDY2JSB7IGQ6IHBhdGgoXCJNMCw2NCBDMjQwLDkyIDQ3MCwxMjUgNzMwLDg2IEMxMDAwLDU1IDEyMTAsMTE4IDE0NDAsMTEyIEwxNDQwLDE1MCBMMCwxNTAgWlwiKTsgfVxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIETDiUNPUkFUSU9OU1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5mb290ZXItZm9ybWF0Y29ldXJfX2hhbG8ge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR6LWluZGV4OiAtMTtcclxuXHR3aWR0aDogMzJyZW07XHJcblx0aGVpZ2h0OiAzMnJlbTtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0ZmlsdGVyOiBibHVyKDgwcHgpO1xyXG5cdG9wYWNpdHk6IDAuMjtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRhbmltYXRpb246IGZvb3RlckhhbG8gOXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XHJcbn1cclxuXHJcbi5mb290ZXItZm9ybWF0Y29ldXJfX2hhbG8tLWdhdWNoZSB7XHJcblx0dG9wOiA4cmVtO1xyXG5cdGxlZnQ6IC0xNnJlbTtcclxuXHRiYWNrZ3JvdW5kOiAjZTRiOWM2O1xyXG59XHJcblxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyX19oYWxvLS1kcm9pdGUge1xyXG5cdHJpZ2h0OiAtMTVyZW07XHJcblx0Ym90dG9tOiAtOHJlbTtcclxuXHRiYWNrZ3JvdW5kOiAjQ0M4MjZDO1xuXHRhbmltYXRpb24tZGVsYXk6IC00cztcclxufVxyXG5cclxuLmZvb3Rlci1mb3JtYXRjb2V1cl9fYnJhbmNoZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHotaW5kZXg6IC0xO1xyXG5cdHdpZHRoOiAxOXJlbTtcclxuXHRoZWlnaHQ6IDMwcmVtO1xyXG5cdG9wYWNpdHk6IDAuMTM7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi5mb290ZXItZm9ybWF0Y29ldXJfX2JyYW5jaGU6OmJlZm9yZSxcclxuLmZvb3Rlci1mb3JtYXRjb2V1cl9fYnJhbmNoZTo6YWZ0ZXIge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcbn1cclxuXHJcbi5mb290ZXItZm9ybWF0Y29ldXJfX2JyYW5jaGU6OmJlZm9yZSB7XHJcblx0aW5zZXQ6IDJyZW0gOHJlbSAxcmVtO1xyXG5cdGJvcmRlci13aWR0aDogMCAxcHggMCAwO1xyXG5cdHRyYW5zZm9ybTogcm90YXRlKDI0ZGVnKTtcclxufVxyXG5cclxuLmZvb3Rlci1mb3JtYXRjb2V1cl9fYnJhbmNoZTo6YWZ0ZXIge1xyXG5cdHRvcDogNXJlbTtcclxuXHRsZWZ0OiA2cmVtO1xyXG5cdHdpZHRoOiA2cmVtO1xyXG5cdGhlaWdodDogMTVyZW07XHJcblx0Ym9yZGVyLXdpZHRoOiAxcHggMCAwIDFweDtcclxuXHRib3JkZXItcmFkaXVzOiA4MCUgMDtcclxuXHR0cmFuc2Zvcm06IHJvdGF0ZSgtMThkZWcpO1xyXG59XHJcblxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyX19icmFuY2hlLS1nYXVjaGUge1xyXG5cdGJvdHRvbTogLTZyZW07XHJcblx0bGVmdDogLTVyZW07XHJcblx0dHJhbnNmb3JtOiByb3RhdGUoLTEyZGVnKTtcclxufVxyXG5cclxuLmZvb3Rlci1mb3JtYXRjb2V1cl9fYnJhbmNoZS0tZHJvaXRlIHtcclxuXHR0b3A6IDRyZW07XHJcblx0cmlnaHQ6IC02cmVtO1xyXG5cdHRyYW5zZm9ybTogcm90YXRlKDE3NWRlZyk7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBTVVItVElUUkVTXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmZvb3Rlci1mb3JtYXRjb2V1cl9fc3VyLXRpdHJlIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMC42cmVtO1xyXG5cdG1hcmdpbjogMCAwIDAuNjVyZW07XHJcblx0Y29sb3I6ICNlNWMwY2I7XHJcblx0Zm9udC1zaXplOiAwLjcycmVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA4MDA7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuMThlbTtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyX19zdXItdGl0cmU6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHR3aWR0aDogMC40cmVtO1xyXG5cdGhlaWdodDogMC40cmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRiYWNrZ3JvdW5kOiAjZTVjMGNiO1xyXG5cdGJveC1zaGFkb3c6XHJcblx0XHQwIDAgMCA1cHggcmdiYSgyNDcsIDE4MCwgMjA0LCAwLjEyKTtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIElOVklUQVRJT04gRkFDRUJPT0tcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmZvb3Rlci13aGF0c2FwcCB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOlxyXG5cdFx0YXV0b1xyXG5cdFx0bWlubWF4KDAsIDFmcilcclxuXHRcdG1pbm1heCgxN3JlbSwgMC41NWZyKTtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogY2xhbXAoMS41cmVtLCA0dncsIDMuNXJlbSk7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRtYXJnaW4tYm90dG9tOiBjbGFtcCg0cmVtLCA3dncsIDdyZW0pO1xyXG5cdHBhZGRpbmc6IGNsYW1wKDEuOHJlbSwgNHZ3LCAzLjJyZW0pO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yMSk7XHJcblx0Ym9yZGVyLXJhZGl1czogMi4ycmVtO1xyXG5cdGJhY2tncm91bmQ6XHJcblx0XHRyYWRpYWwtZ3JhZGllbnQoXHJcblx0XHRcdGNpcmNsZSBhdCA5MiUgMTIlLFxyXG5cdFx0XHRyZ2JhKDI0LCAxMTksIDI0MiwgMC4yKSxcblx0XHRcdHRyYW5zcGFyZW50IDMwJVxyXG5cdFx0KSxcclxuXHRcdHJhZGlhbC1ncmFkaWVudChcclxuXHRcdFx0Y2lyY2xlIGF0IDUlIDEwMCUsXHJcblx0XHRcdHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSxcclxuXHRcdFx0dHJhbnNwYXJlbnQgMjglXHJcblx0XHQpLFxyXG5cdFx0cmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudChcclxuXHRcdFx0MTIwZGVnLFxyXG5cdFx0XHRyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDE2KSAwLFxyXG5cdFx0XHRyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDE2KSAxcHgsXHJcblx0XHRcdHRyYW5zcGFyZW50IDFweCxcclxuXHRcdFx0dHJhbnNwYXJlbnQgOHB4XHJcblx0XHQpLFxyXG5cdFx0bGluZWFyLWdyYWRpZW50KFxyXG5cdFx0XHQxMzVkZWcsXHJcblx0XHRcdHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNiksXHJcblx0XHRcdHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNylcclxuXHRcdCk7XHJcblx0Ym94LXNoYWRvdzpcclxuXHRcdDAgMzVweCA5MHB4IHJnYmEoMzAsIDcsIDE3LCAwLjMyKTtcclxuXHRiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMThweCk7XHJcblx0dHJhbnNpdGlvbjpcclxuXHRcdGJvcmRlci1jb2xvciB2YXIoLS1mb290ZXItdHJhbnNpdGlvbiksXHJcblx0XHRib3gtc2hhZG93IHZhcigtLWZvb3Rlci10cmFuc2l0aW9uKSxcclxuXHRcdHRyYW5zZm9ybSB2YXIoLS1mb290ZXItdHJhbnNpdGlvbik7XHJcbn1cclxuXHJcbi5mb290ZXItd2hhdHNhcHA6aG92ZXIge1xyXG5cdGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMyKTtcclxuXHRib3gtc2hhZG93OlxyXG5cdFx0MCA0MnB4IDEwMHB4IHJnYmEoMzAsIDcsIDE3LCAwLjQyKTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTRweCk7XHJcbn1cclxuXHJcbi5mb290ZXItd2hhdHNhcHA6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAtOHJlbTtcclxuXHRyaWdodDogLTRyZW07XHJcblx0d2lkdGg6IDIwcmVtO1xyXG5cdGhlaWdodDogMjByZW07XHJcblx0Ym9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKTtcclxuXHRib3JkZXItcmFkaXVzOiA0MSUgNTklIDY1JSAzNSUgLyA0NSUgMzUlIDY1JSA1NSU7XHJcblx0YW5pbWF0aW9uOiBmb290ZXJSb3RhdGlvbiAyNHMgbGluZWFyIGluZmluaXRlO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4uZm9vdGVyLXdoYXRzYXBwOjphZnRlciB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0cmlnaHQ6IDklO1xyXG5cdGJvdHRvbTogLThyZW07XHJcblx0d2lkdGg6IDE0cmVtO1xyXG5cdGhlaWdodDogMTRyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGJhY2tncm91bmQ6IHJnYmEoMjQsIDExOSwgMjQyLCAwLjEyKTtcblx0ZmlsdGVyOiBibHVyKDRweCk7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi5mb290ZXItd2hhdHNhcHBfX2ljb25lIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ei1pbmRleDogMjtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdHdpZHRoOiA1LjRyZW07XHJcblx0aGVpZ2h0OiA1LjRyZW07XHJcblx0cGxhY2UtaXRlbXM6IGNlbnRlcjtcclxuXHRib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjgpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDEuOHJlbTtcclxuXHRjb2xvcjogI2ZmZjtcclxuXHRiYWNrZ3JvdW5kOlxyXG5cdFx0bGluZWFyLWdyYWRpZW50KFxyXG5cdFx0XHQxNDVkZWcsXHJcblx0XHRcdCM0Yjk0ZjQsXG5cdFx0XHQjMTg3N2YyXG5cdFx0KTtcblx0Ym94LXNoYWRvdzpcblx0XHQwIDIwcHggNDVweCByZ2JhKDEzLCA5MywgMTk5LCAwLjMyKSxcblx0XHRpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSk7XHJcblx0dHJhbnNpdGlvbjpcclxuXHRcdHRyYW5zZm9ybSB2YXIoLS1mb290ZXItdHJhbnNpdGlvbiksXHJcblx0XHRib3JkZXItcmFkaXVzIHZhcigtLWZvb3Rlci10cmFuc2l0aW9uKSxcclxuXHRcdGJveC1zaGFkb3cgdmFyKC0tZm9vdGVyLXRyYW5zaXRpb24pO1xyXG59XHJcblxyXG4uZm9vdGVyLXdoYXRzYXBwOmhvdmVyIC5mb290ZXItd2hhdHNhcHBfX2ljb25lIHtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0Ym94LXNoYWRvdzpcclxuXHRcdDAgMjVweCA1NXB4IHJnYmEoMTMsIDkzLCAxOTksIDAuNDIpLFxuXHRcdGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KTtcclxuXHR0cmFuc2Zvcm06XHJcblx0XHR0cmFuc2xhdGVZKC01cHgpXHJcblx0XHRyb3RhdGUoLTZkZWcpXHJcblx0XHRzY2FsZSgxLjA2KTtcclxufVxyXG5cclxuLmZvb3Rlci13aGF0c2FwcF9faWNvbmUgc3ZnIHtcclxuXHR3aWR0aDogMi42cmVtO1xyXG5cdGhlaWdodDogMi42cmVtO1xyXG5cdGZpbGw6IG5vbmU7XHJcblx0c3Ryb2tlOiBjdXJyZW50Q29sb3I7XHJcblx0c3Ryb2tlLXdpZHRoOiAxLjQ1O1xyXG5cdHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuXHRzdHJva2UtbGluZWpvaW46IHJvdW5kO1xyXG59XHJcblxyXG4uZm9vdGVyLXdoYXRzYXBwX19jb250ZW51IHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ei1pbmRleDogMjtcclxufVxyXG5cclxuLmZvb3Rlci13aGF0c2FwcF9fY29udGVudSBoMiB7XHJcblx0bWFyZ2luOiAwIDAgMC43cmVtO1xyXG5cdGNvbG9yOiAjZmZmO1xyXG5cdGZvbnQtZmFtaWx5OiBcIkZvcnVtXCIsIHNlcmlmO1xyXG5cdGZvbnQtc2l6ZTogY2xhbXAoMnJlbSwgM3Z3LCAzLjJyZW0pO1xyXG5cdGZvbnQtd2VpZ2h0OiA0MDA7XHJcblx0bGluZS1oZWlnaHQ6IDE7XHJcblx0bGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XHJcbn1cclxuXHJcbi5mb290ZXItd2hhdHNhcHBfX2NvbnRlbnUgPiBwOmxhc3QtY2hpbGQge1xyXG5cdG1heC13aWR0aDogNDVyZW07XHJcblx0bWFyZ2luOiAwO1xyXG5cdGNvbG9yOiB2YXIoLS1mb290ZXItdGV4dGUpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjc7XHJcbn1cclxuXHJcbi5mb290ZXItd2hhdHNhcHBfX2FjdGlvbiB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHotaW5kZXg6IDI7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uZm9vdGVyLXdoYXRzYXBwX19ib3V0b24ge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtaW4taGVpZ2h0OiA0cmVtO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Z2FwOiAwLjhyZW07XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRwYWRkaW5nOiAwLjg1cmVtIDEuMzVyZW07XHJcblx0Ym9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIyKTtcclxuXHRib3JkZXItcmFkaXVzOiA5OTlweDtcclxuXHRjb2xvcjogIzE3NGI4Zjtcblx0YmFja2dyb3VuZDpcclxuXHRcdGxpbmVhci1ncmFkaWVudChcclxuXHRcdFx0MTM1ZGVnLFxyXG5cdFx0XHQjZmZmZmZmLFxyXG5cdFx0XHQjZWFmM2ZmXG5cdFx0KTtcclxuXHRib3gtc2hhZG93OlxyXG5cdFx0MCAxOHB4IDQwcHggcmdiYSgyMywgNSwgMTIsIDAuMjMpO1xyXG5cdGZvbnQtd2VpZ2h0OiA3NTA7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdHRyYW5zaXRpb246XHJcblx0XHRjb2xvciB2YXIoLS1mb290ZXItdHJhbnNpdGlvbiksXHJcblx0XHR0cmFuc2Zvcm0gdmFyKC0tZm9vdGVyLXRyYW5zaXRpb24pLFxyXG5cdFx0Ym94LXNoYWRvdyB2YXIoLS1mb290ZXItdHJhbnNpdGlvbiksXHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLWZvb3Rlci10cmFuc2l0aW9uKTtcclxufVxyXG5cclxuLmZvb3Rlci13aGF0c2FwcF9fYm91dG9uOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogLTEyMCU7XHJcblx0bGVmdDogLTQ1JTtcclxuXHR3aWR0aDogNDAlO1xyXG5cdGhlaWdodDogMzQwJTtcclxuXHRiYWNrZ3JvdW5kOlxyXG5cdFx0bGluZWFyLWdyYWRpZW50KFxyXG5cdFx0XHQ5MGRlZyxcclxuXHRcdFx0dHJhbnNwYXJlbnQsXHJcblx0XHRcdHJnYmEoMjQsIDExOSwgMjQyLCAwLjIpLFxuXHRcdFx0dHJhbnNwYXJlbnRcclxuXHRcdCk7XHJcblx0dHJhbnNmb3JtOiByb3RhdGUoMThkZWcpO1xyXG5cdHRyYW5zaXRpb246IGxlZnQgNjUwbXMgZWFzZTtcclxufVxyXG5cclxuLmZvb3Rlci13aGF0c2FwcF9fYm91dG9uOmhvdmVyIHtcclxuXHRjb2xvcjogIzE3NGI4Zjtcblx0Ym94LXNoYWRvdzpcclxuXHRcdDAgMjVweCA1MHB4IHJnYmEoMjMsIDUsIDEyLCAwLjMyKTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XHJcbn1cclxuXHJcbi5mb290ZXItd2hhdHNhcHBfX2JvdXRvbjpob3Zlcjo6YmVmb3JlIHtcclxuXHRsZWZ0OiAxMzAlO1xyXG59XHJcblxyXG4uZm9vdGVyLXdoYXRzYXBwX19ib3V0b24taWNvbmUge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR6LWluZGV4OiAyO1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0d2lkdGg6IDIuNXJlbTtcclxuXHRoZWlnaHQ6IDIuNXJlbTtcclxuXHRmbGV4OiAwIDAgYXV0bztcclxuXHRwbGFjZS1pdGVtczogY2VudGVyO1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRjb2xvcjogI2ZmZjtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1mb290ZXItYmxldS1mYWNlYm9vayk7XG5cdGJveC1zaGFkb3c6XG5cdFx0MCA4cHggMjBweCByZ2JhKDEzLCA5MywgMTk5LCAwLjI4KTtcblx0dHJhbnNpdGlvbjpcclxuXHRcdHRyYW5zZm9ybSB2YXIoLS1mb290ZXItdHJhbnNpdGlvbiksXHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLWZvb3Rlci10cmFuc2l0aW9uKTtcclxufVxyXG5cclxuLmZvb3Rlci13aGF0c2FwcF9fYm91dG9uOmhvdmVyXHJcbi5mb290ZXItd2hhdHNhcHBfX2JvdXRvbi1pY29uZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tZm9vdGVyLWJsZXUtZmFjZWJvb2stZm9uY2UpO1xuXHR0cmFuc2Zvcm06XHJcblx0XHRyb3RhdGUoLThkZWcpXHJcblx0XHRzY2FsZSgxLjA4KTtcclxufVxyXG5cclxuLmZvb3Rlci13aGF0c2FwcF9fYm91dG9uLWljb25lIHN2ZyB7XHJcblx0d2lkdGg6IDEuMzVyZW07XHJcblx0aGVpZ2h0OiAxLjM1cmVtO1xyXG5cdGZpbGw6IG5vbmU7XHJcblx0c3Ryb2tlOiBjdXJyZW50Q29sb3I7XHJcblx0c3Ryb2tlLXdpZHRoOiAxLjU1O1xyXG5cdHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuXHRzdHJva2UtbGluZWpvaW46IHJvdW5kO1xyXG59XHJcblxyXG4uZm9vdGVyLXdoYXRzYXBwX19ib3V0b24gPiBzcGFuOm50aC1jaGlsZCgyKSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHotaW5kZXg6IDI7XHJcbn1cclxuXHJcbi5mb290ZXItd2hhdHNhcHBfX2ZsZWNoZSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHotaW5kZXg6IDI7XHJcblx0Zm9udC1zaXplOiAxLjI1cmVtO1xyXG5cdHRyYW5zaXRpb246XHJcblx0XHR0cmFuc2Zvcm0gdmFyKC0tZm9vdGVyLXRyYW5zaXRpb24pO1xyXG59XHJcblxyXG4uZm9vdGVyLXdoYXRzYXBwX19ib3V0b246aG92ZXJcclxuLmZvb3Rlci13aGF0c2FwcF9fZmxlY2hlIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KTtcclxufVxyXG5cclxuLmZvb3Rlci13aGF0c2FwcF9fcHJlY2lzaW9uIHtcclxuXHRtYXJnaW46IDAuNzVyZW0gMCAwO1xyXG5cdGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XHJcblx0Zm9udC1zaXplOiAwLjc2cmVtO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgR1JJTExFIFBSSU5DSVBBTEVcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyX19ncmlsbGUge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOlxyXG5cdFx0bWlubWF4KDE3cmVtLCAxLjI1ZnIpXHJcblx0XHRtaW5tYXgoMTByZW0sIDAuN2ZyKVxyXG5cdFx0bWlubWF4KDEwcmVtLCAwLjdmcilcclxuXHRcdG1pbm1heCgxN3JlbSwgMWZyKTtcclxuXHRnYXA6IGNsYW1wKDJyZW0sIDR2dywgNHJlbSk7XHJcblx0cGFkZGluZy1ib3R0b206IGNsYW1wKDMuNXJlbSwgNnZ3LCA1cmVtKTtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIElERU5USVTDiSBFVCBMT0dPXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmZvb3Rlci1mb3JtYXRjb2V1cl9fbWFycXVlIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMXJlbTtcclxuXHRjb2xvcjogI2ZmZjtcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuXHJcbi5mb290ZXItZm9ybWF0Y29ldXJfX2xvZ28ge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0d2lkdGg6IDQuM3JlbTtcclxuXHRoZWlnaHQ6IDQuM3JlbTtcclxuXHRwbGFjZS1pdGVtczogY2VudGVyO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0Ym9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI0KTtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0YmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk0KTtcclxuXHRib3gtc2hhZG93OlxyXG5cdFx0MCAxNXB4IDM1cHggcmdiYSgyMywgNSwgMTIsIDAuMjYpO1xyXG5cdHRyYW5zaXRpb246XHJcblx0XHR0cmFuc2Zvcm0gdmFyKC0tZm9vdGVyLXRyYW5zaXRpb24pLFxyXG5cdFx0Ym94LXNoYWRvdyB2YXIoLS1mb290ZXItdHJhbnNpdGlvbik7XHJcbn1cclxuXHJcbi5mb290ZXItZm9ybWF0Y29ldXJfX21hcnF1ZTpob3ZlclxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyX19sb2dvIHtcclxuXHRib3gtc2hhZG93OlxyXG5cdFx0MCAyMnB4IDQ0cHggcmdiYSgyMywgNSwgMTIsIDAuMzUpO1xyXG5cdHRyYW5zZm9ybTpcclxuXHRcdHRyYW5zbGF0ZVkoLTRweClcclxuXHRcdHJvdGF0ZSgtNWRlZyk7XHJcbn1cclxuXHJcbi5mb290ZXItZm9ybWF0Y29ldXJfX2xvZ28gaW1nIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0cGFkZGluZzogMC4ycmVtO1xyXG5cdG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbn1cclxuXHJcbi5mb290ZXItZm9ybWF0Y29ldXJfX25vbSB7XHJcblx0Zm9udC1mYW1pbHk6IFwiRm9ydW1cIiwgc2VyaWY7XHJcblx0Zm9udC1zaXplOiBjbGFtcCgycmVtLCAyLjV2dywgMi43cmVtKTtcclxuXHRsaW5lLWhlaWdodDogMTtcclxufVxyXG5cclxuLmZvb3Rlci1mb3JtYXRjb2V1cl9fZGVzY3JpcHRpb24ge1xyXG5cdG1heC13aWR0aDogMjZyZW07XHJcblx0bWFyZ2luOiAxLjZyZW0gMDtcclxuXHRjb2xvcjogdmFyKC0tZm9vdGVyLXRleHRlKTtcclxuXHRsaW5lLWhlaWdodDogMS43NTtcclxufVxyXG5cclxuLmZvb3Rlci1mb3JtYXRjb2V1cl9fY2l0YXRpb24ge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtYXJnaW46IDAgMCAxLjhyZW07XHJcblx0cGFkZGluZzogMXJlbSAxcmVtIDFyZW0gMS40cmVtO1xyXG5cdGJvcmRlci1sZWZ0OiAycHggc29saWQgI2Q3YTViNDtcclxuXHRjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgyKTtcclxuXHRmb250LWZhbWlseTogXCJGb3J1bVwiLCBzZXJpZjtcclxuXHRmb250LXNpemU6IDEuMzVyZW07XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyX19jaXRhdGlvbiBzcGFuIHtcclxuXHRjb2xvcjogI2RkYWRiYjtcclxuXHRmb250LXNpemU6IDJyZW07XHJcblx0bGluZS1oZWlnaHQ6IDA7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBSw4lTRUFVWCBTT0NJQVVYXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmZvb3Rlci1yZXNlYXV4IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxuXHRnYXA6IDAuN3JlbTtcclxufVxyXG5cclxuLmZvb3Rlci1yZXNlYXV4IGEge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0d2lkdGg6IDIuOXJlbTtcclxuXHRoZWlnaHQ6IDIuOXJlbTtcclxuXHRwbGFjZS1pdGVtczogY2VudGVyO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xOCk7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGNvbG9yOiAjZmZmO1xyXG5cdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdHRyYW5zaXRpb246XHJcblx0XHRjb2xvciB2YXIoLS1mb290ZXItdHJhbnNpdGlvbiksXHJcblx0XHR0cmFuc2Zvcm0gdmFyKC0tZm9vdGVyLXRyYW5zaXRpb24pLFxyXG5cdFx0YmFja2dyb3VuZC1jb2xvciB2YXIoLS1mb290ZXItdHJhbnNpdGlvbiksXHJcblx0XHRib3JkZXItY29sb3IgdmFyKC0tZm9vdGVyLXRyYW5zaXRpb24pLFxyXG5cdFx0Ym94LXNoYWRvdyB2YXIoLS1mb290ZXItdHJhbnNpdGlvbik7XHJcbn1cclxuXHJcbi5mb290ZXItcmVzZWF1eCBhOmhvdmVyIHtcclxuXHRjb2xvcjogI2ZmZjtcclxuXHRib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40OCk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tZm9vdGVyLXJvc2UpO1xyXG5cdGJveC1zaGFkb3c6XHJcblx0XHQwIDE0cHggMjhweCByZ2JhKDIzLCA1LCAxMiwgMC4yMik7XHJcblx0dHJhbnNmb3JtOlxyXG5cdFx0dHJhbnNsYXRlWSgtNXB4KVxyXG5cdFx0cm90YXRlKC01ZGVnKTtcclxufVxyXG5cclxuLmZvb3Rlci1yZXNlYXV4IHN2ZyB7XHJcblx0d2lkdGg6IDEuMnJlbTtcclxuXHRoZWlnaHQ6IDEuMnJlbTtcclxuXHRmaWxsOiBub25lO1xyXG5cdHN0cm9rZTogY3VycmVudENvbG9yO1xyXG5cdHN0cm9rZS13aWR0aDogMS43O1xyXG5cdHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuXHRzdHJva2UtbGluZWpvaW46IHJvdW5kO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgVElUUkVTIERFUyBDT0xPTk5FU1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5mb290ZXItZm9ybWF0Y29ldXJfX3RpdHJlIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdG1hcmdpbjogMCAwIDEuNHJlbTtcclxuXHRwYWRkaW5nLWJvdHRvbTogMC43cmVtO1xyXG5cdGNvbG9yOiAjZmZmO1xyXG5cdGZvbnQtZmFtaWx5OiBcIkZvcnVtXCIsIHNlcmlmO1xyXG5cdGZvbnQtc2l6ZTogMS42NXJlbTtcclxuXHRmb250LXdlaWdodDogNDAwO1xyXG59XHJcblxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyX190aXRyZTo6YWZ0ZXIge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGJvdHRvbTogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHdpZHRoOiAyLjdyZW07XHJcblx0aGVpZ2h0OiAycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogOTk5cHg7XHJcblx0YmFja2dyb3VuZDpcclxuXHRcdGxpbmVhci1ncmFkaWVudChcclxuXHRcdFx0OTBkZWcsXHJcblx0XHRcdCNkZmI0YzAsXHJcblx0XHRcdHRyYW5zcGFyZW50XHJcblx0XHQpO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgTElFTlMgREUgTkFWSUdBVElPTlxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5mb290ZXItZm9ybWF0Y29ldXJfX2xpZW5zLFxyXG4uZm9vdGVyLWNvb3Jkb25uZWVzIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdhcDogMC40NXJlbTtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcblxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyX19saWVucyBhIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGdhcDogMC42cmVtO1xyXG5cdHBhZGRpbmc6IDAuNTVyZW0gMDtcclxuXHRjb2xvcjogdmFyKC0tZm9vdGVyLXRleHRlKTtcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0dHJhbnNpdGlvbjpcclxuXHRcdGNvbG9yIHZhcigtLWZvb3Rlci10cmFuc2l0aW9uKSxcclxuXHRcdHRyYW5zZm9ybSB2YXIoLS1mb290ZXItdHJhbnNpdGlvbik7XHJcbn1cclxuXHJcbi5mb290ZXItZm9ybWF0Y29ldXJfX2xpZW5zIGEgc3BhbjpsYXN0LWNoaWxkIHtcclxuXHRjb2xvcjogI2Q3YTViNDtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtOHB4KTtcclxuXHR0cmFuc2l0aW9uOlxyXG5cdFx0b3BhY2l0eSB2YXIoLS1mb290ZXItdHJhbnNpdGlvbiksXHJcblx0XHR0cmFuc2Zvcm0gdmFyKC0tZm9vdGVyLXRyYW5zaXRpb24pO1xyXG59XHJcblxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyX19saWVucyBhOmhvdmVyIHtcclxuXHRjb2xvcjogI2ZmZjtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KTtcclxufVxyXG5cclxuLmZvb3Rlci1mb3JtYXRjb2V1cl9fbGllbnMgYTpob3ZlclxyXG5zcGFuOmxhc3QtY2hpbGQge1xyXG5cdG9wYWNpdHk6IDE7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgQ09OVEFDVFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5mb290ZXItZm9ybWF0Y29ldXJfX2NvbnRhY3QtaW50cm8ge1xyXG5cdG1hcmdpbjogMCAwIDEuM3JlbTtcclxuXHRjb2xvcjogdmFyKC0tZm9vdGVyLXRleHRlKTtcclxuXHRsaW5lLWhlaWdodDogMS42NTtcclxufVxyXG5cclxuLmZvb3Rlci1jb29yZG9ubmVlcyB7XHJcblx0Z2FwOiAwLjg1cmVtO1xyXG5cdG1hcmdpbi1ib3R0b206IDEuN3JlbTtcclxufVxyXG5cclxuLmZvb3Rlci1jb29yZG9ubmVlcyBsaSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMC45cmVtO1xyXG5cdGNvbG9yOiB2YXIoLS1mb290ZXItdGV4dGUpO1xyXG59XHJcblxyXG4uZm9vdGVyLWNvb3Jkb25uZWVzIGEge1xyXG5cdGNvbG9yOiBpbmhlcml0O1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHR0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS1mb290ZXItdHJhbnNpdGlvbik7XHJcbn1cclxuXHJcbi5mb290ZXItY29vcmRvbm5lZXMgYTpob3ZlciB7XHJcblx0Y29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5mb290ZXItY29vcmRvbm5lZXNfX2ljb25lIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdHdpZHRoOiAyLjZyZW07XHJcblx0aGVpZ2h0OiAyLjZyZW07XHJcblx0ZmxleDogMCAwIGF1dG87XHJcblx0cGxhY2UtaXRlbXM6IGNlbnRlcjtcclxuXHRib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTYpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDAuOXJlbTtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpO1xyXG5cdHRyYW5zaXRpb246XHJcblx0XHR0cmFuc2Zvcm0gdmFyKC0tZm9vdGVyLXRyYW5zaXRpb24pLFxyXG5cdFx0Ym9yZGVyLXJhZGl1cyB2YXIoLS1mb290ZXItdHJhbnNpdGlvbiksXHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLWZvb3Rlci10cmFuc2l0aW9uKTtcclxufVxyXG5cclxuLmZvb3Rlci1jb29yZG9ubmVlcyBsaTpob3ZlclxyXG4uZm9vdGVyLWNvb3Jkb25uZWVzX19pY29uZSB7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGJhY2tncm91bmQ6IHJnYmEoMTkyLCAxMDIsIDEyNiwgMC44KTtcblx0dHJhbnNmb3JtOlxyXG5cdFx0cm90YXRlKC01ZGVnKVxyXG5cdFx0c2NhbGUoMS4wNik7XHJcbn1cclxuXHJcbi5mb290ZXItY29vcmRvbm5lZXMgc3ZnIHtcclxuXHR3aWR0aDogMS4xNXJlbTtcclxuXHRoZWlnaHQ6IDEuMTVyZW07XHJcblx0ZmlsbDogbm9uZTtcclxuXHRzdHJva2U6IGN1cnJlbnRDb2xvcjtcclxuXHRzdHJva2Utd2lkdGg6IDEuNTtcclxuXHRzdHJva2UtbGluZWNhcDogcm91bmQ7XHJcblx0c3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIEJPVVRPTiBDT05UQUNUXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmZvb3Rlci1mb3JtYXRjb2V1cl9fYm91dG9uLWNvbnRhY3Qge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRtaW4taGVpZ2h0OiAzLjJyZW07XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRnYXA6IDAuOHJlbTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbTtcclxuXHRib3JkZXItcmFkaXVzOiA5OTlweDtcclxuXHRjb2xvcjogdmFyKC0tZm9vdGVyLXJvc2UtcHJvZm9uZCk7XHJcblx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRib3gtc2hhZG93OlxyXG5cdFx0MCAxNHB4IDMwcHggcmdiYSgyMywgNSwgMTIsIDAuMjIpO1xyXG5cdGZvbnQtd2VpZ2h0OiA3NTA7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdHRyYW5zaXRpb246XHJcblx0XHRjb2xvciB2YXIoLS1mb290ZXItdHJhbnNpdGlvbiksXHJcblx0XHR0cmFuc2Zvcm0gdmFyKC0tZm9vdGVyLXRyYW5zaXRpb24pLFxyXG5cdFx0Ym94LXNoYWRvdyB2YXIoLS1mb290ZXItdHJhbnNpdGlvbik7XHJcbn1cclxuXHJcbi5mb290ZXItZm9ybWF0Y29ldXJfX2JvdXRvbi1jb250YWN0OjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogLTEzMCU7XHJcblx0bGVmdDogLTQ1JTtcclxuXHR3aWR0aDogNDAlO1xyXG5cdGhlaWdodDogMzUwJTtcclxuXHRiYWNrZ3JvdW5kOlxyXG5cdFx0bGluZWFyLWdyYWRpZW50KFxyXG5cdFx0XHQ5MGRlZyxcclxuXHRcdFx0dHJhbnNwYXJlbnQsXHJcblx0XHRcdHJnYmEoMTkyLCAxMDIsIDEyNiwgMC4xNyksXG5cdFx0XHR0cmFuc3BhcmVudFxyXG5cdFx0KTtcclxuXHR0cmFuc2Zvcm06IHJvdGF0ZSgxN2RlZyk7XHJcblx0dHJhbnNpdGlvbjogbGVmdCA2NTBtcyBlYXNlO1xyXG59XHJcblxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyX19ib3V0b24tY29udGFjdDpob3ZlciB7XHJcblx0Y29sb3I6IHZhcigtLWZvb3Rlci1yb3NlLXByb2ZvbmQpO1xyXG5cdGJveC1zaGFkb3c6XHJcblx0XHQwIDIwcHggNDBweCByZ2JhKDIzLCA1LCAxMiwgMC4zMik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpO1xyXG59XHJcblxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyX19ib3V0b24tY29udGFjdDpob3Zlcjo6YmVmb3JlIHtcclxuXHRsZWZ0OiAxMzAlO1xyXG59XHJcblxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyX19ib3V0b24tY29udGFjdCBzcGFuLFxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyX19ib3V0b24tY29udGFjdCBzdmcge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR6LWluZGV4OiAyO1xyXG59XHJcblxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyX19ib3V0b24tY29udGFjdCBzdmcge1xyXG5cdHdpZHRoOiAxLjFyZW07XHJcblx0aGVpZ2h0OiAxLjFyZW07XHJcblx0ZmlsbDogbm9uZTtcclxuXHRzdHJva2U6IGN1cnJlbnRDb2xvcjtcclxuXHRzdHJva2Utd2lkdGg6IDEuNztcclxuXHRzdHJva2UtbGluZWNhcDogcm91bmQ7XHJcblx0c3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tZm9vdGVyLXRyYW5zaXRpb24pO1xyXG59XHJcblxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyX19ib3V0b24tY29udGFjdDpob3ZlciBzdmcge1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgQkFTIERVIEZPT1RFUlxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5mb290ZXItZm9ybWF0Y29ldXJfX2JhcyB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgYXV0byAxZnI7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDEuNXJlbTtcclxuXHRtaW4taGVpZ2h0OiA1LjVyZW07XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XHJcblx0Y29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NCk7XHJcblx0Zm9udC1zaXplOiAwLjgzcmVtO1xyXG59XHJcblxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyX19iYXMgcCB7XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG4uZm9vdGVyLWZvcm1hdGNvZXVyX19zaWduYXR1cmUge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLmZvb3Rlci1mb3JtYXRjb2V1cl9fc2lnbmF0dXJlIHNwYW4ge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRtYXJnaW46IDAgMC4ycmVtO1xyXG5cdGNvbG9yOiAjZDZhMGIwO1xyXG5cdGFuaW1hdGlvbjogZm9vdGVyQ29ldXIgMi4zcyBlYXNlLWluLW91dCBpbmZpbml0ZTtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFJFVE9VUiBFTiBIQVVUXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmZvb3Rlci1yZXRvdXItaGF1dCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHR3aWR0aDogM3JlbTtcclxuXHRoZWlnaHQ6IDNyZW07XHJcblx0cGxhY2UtaXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LXNlbGY6IGVuZDtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0Y29sb3I6ICNmZmY7XHJcblx0YmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjpcclxuXHRcdHRyYW5zZm9ybSB2YXIoLS1mb290ZXItdHJhbnNpdGlvbiksXHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLWZvb3Rlci10cmFuc2l0aW9uKSxcclxuXHRcdGJvcmRlci1jb2xvciB2YXIoLS1mb290ZXItdHJhbnNpdGlvbiksXHJcblx0XHRib3gtc2hhZG93IHZhcigtLWZvb3Rlci10cmFuc2l0aW9uKTtcclxufVxyXG5cclxuLmZvb3Rlci1yZXRvdXItaGF1dDpob3ZlciB7XHJcblx0Ym9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNDIpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWZvb3Rlci1yb3NlKTtcclxuXHRib3gtc2hhZG93OlxyXG5cdFx0MCAxNXB4IDMwcHggcmdiYSgyMywgNSwgMTIsIDAuMjUpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcclxufVxyXG5cclxuLmZvb3Rlci1yZXRvdXItaGF1dDpmb2N1cy12aXNpYmxlIHtcclxuXHRvdXRsaW5lOiAzcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQ0KTtcclxuXHRvdXRsaW5lLW9mZnNldDogNHB4O1xyXG59XHJcblxyXG4uZm9vdGVyLXJldG91ci1oYXV0IHN2ZyB7XHJcblx0d2lkdGg6IDEuMjVyZW07XHJcblx0aGVpZ2h0OiAxLjI1cmVtO1xyXG5cdGZpbGw6IG5vbmU7XHJcblx0c3Ryb2tlOiBjdXJyZW50Q29sb3I7XHJcblx0c3Ryb2tlLXdpZHRoOiAxLjg7XHJcblx0c3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xyXG5cdHN0cm9rZS1saW5lam9pbjogcm91bmQ7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBBQ0NFU1NJQklMSVTDiSBEVSBGT0NVU1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5mb290ZXItZm9ybWF0Y29ldXIgYTpmb2N1cy12aXNpYmxlLFxyXG4uZm9vdGVyLXdoYXRzYXBwX19ib3V0b246Zm9jdXMtdmlzaWJsZSB7XHJcblx0b3V0bGluZTogM3B4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcclxuXHRvdXRsaW5lLW9mZnNldDogNHB4O1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgQU5JTUFUSU9OU1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBrZXlmcmFtZXMgZm9vdGVySGFsbyB7XHJcblx0MCUsXHJcblx0MTAwJSB7XHJcblx0XHRvcGFjaXR5OiAwLjE2O1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgwLjkyKTtcclxuXHR9XHJcblxyXG5cdDUwJSB7XHJcblx0XHRvcGFjaXR5OiAwLjI2O1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjA4KTtcclxuXHR9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZm9vdGVyUm90YXRpb24ge1xyXG5cdGZyb20ge1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMCk7XHJcblx0fVxyXG5cclxuXHR0byB7XHJcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG5cdH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmb290ZXJDb2V1ciB7XHJcblx0MCUsXHJcblx0MTAwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG5cdH1cclxuXHJcblx0NTAlIHtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMS4yMik7XHJcblx0fVxyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgUkVTUE9OU0lWRSBHUkFOREVTIFRBQkxFVFRFU1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcclxuXHQuZm9vdGVyLXdoYXRzYXBwIHtcclxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczpcclxuXHRcdFx0YXV0b1xyXG5cdFx0XHRtaW5tYXgoMCwgMWZyKTtcclxuXHR9XHJcblxyXG5cdC5mb290ZXItd2hhdHNhcHBfX2FjdGlvbiB7XHJcblx0XHRncmlkLWNvbHVtbjogMSAvIC0xO1xyXG5cdH1cclxuXHJcblx0LmZvb3Rlci13aGF0c2FwcF9fYm91dG9uIHtcclxuXHRcdHdpZHRoOiBhdXRvO1xyXG5cdFx0bWluLXdpZHRoOiAxOHJlbTtcclxuXHR9XHJcblxyXG5cdC5mb290ZXItZm9ybWF0Y29ldXJfX2dyaWxsZSB7XHJcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6XHJcblx0XHRcdHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XHJcblx0fVxyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgUkVTUE9OU0lWRSBUQUJMRVRURVNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcclxuXHQuZm9vdGVyLWZvcm1hdGNvZXVyIHtcclxuXHRcdHBhZGRpbmctdG9wOiA2cmVtO1xyXG5cdH1cclxuXHJcblx0LmZvb3Rlci1mb3JtYXRjb2V1cl9fZ3JpbGxlIHtcclxuXHRcdGdhcDogM3JlbSAycmVtO1xyXG5cdH1cclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFJFU1BPTlNJVkUgTU9CSUxFU1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG5cdC5mb290ZXItZm9ybWF0Y29ldXIge1xyXG5cdFx0cGFkZGluZy10b3A6IDVyZW07XHJcblx0fVxyXG5cclxuXHQuZm9vdGVyLWZvcm1hdGNvZXVyX192YWd1ZSB7XHJcblx0XHRoZWlnaHQ6IDVyZW07XHJcblx0fVxyXG5cclxuXHQuZm9vdGVyLXdoYXRzYXBwIHtcclxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG5cdFx0cGFkZGluZzogMS43cmVtO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogMS43cmVtO1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdH1cclxuXHJcblx0LmZvb3Rlci13aGF0c2FwcF9faWNvbmUge1xyXG5cdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0fVxyXG5cclxuXHQuZm9vdGVyLXdoYXRzYXBwX19jb250ZW51ID4gcDpsYXN0LWNoaWxkIHtcclxuXHRcdG1hcmdpbi1yaWdodDogYXV0bztcclxuXHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG5cdH1cclxuXHJcblx0LmZvb3Rlci13aGF0c2FwcF9fYWN0aW9uIHtcclxuXHRcdGdyaWQtY29sdW1uOiBhdXRvO1xyXG5cdH1cclxuXHJcblx0LmZvb3Rlci13aGF0c2FwcF9fYm91dG9uIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWluLXdpZHRoOiAwO1xyXG5cdH1cclxuXHJcblx0LmZvb3Rlci1mb3JtYXRjb2V1cl9fZ3JpbGxlIHtcclxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG5cdH1cclxuXHJcblx0LmZvb3Rlci1mb3JtYXRjb2V1cl9faWRlbnRpdGUsXHJcblx0LmZvb3Rlci1mb3JtYXRjb2V1cl9fY29sb25uZSB7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0fVxyXG5cclxuXHQuZm9vdGVyLWZvcm1hdGNvZXVyX19tYXJxdWUsXHJcblx0LmZvb3Rlci1yZXNlYXV4IHtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdH1cclxuXHJcblx0LmZvb3Rlci1mb3JtYXRjb2V1cl9fZGVzY3JpcHRpb24ge1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG5cdFx0bWFyZ2luLWxlZnQ6IGF1dG87XHJcblx0fVxyXG5cclxuXHQuZm9vdGVyLWZvcm1hdGNvZXVyX19jaXRhdGlvbiB7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdH1cclxuXHJcblx0LmZvb3Rlci1mb3JtYXRjb2V1cl9fdGl0cmU6OmFmdGVyIHtcclxuXHRcdGxlZnQ6IDUwJTtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuXHR9XHJcblxyXG5cdC5mb290ZXItZm9ybWF0Y29ldXJfX2xpZW5zIGEge1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0fVxyXG5cclxuXHQuZm9vdGVyLWZvcm1hdGNvZXVyX19saWVucyBhIHNwYW46bGFzdC1jaGlsZCB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0LmZvb3Rlci1jb29yZG9ubmVlcyBsaSB7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0fVxyXG5cclxuXHQuZm9vdGVyLWZvcm1hdGNvZXVyX19ib3V0b24tY29udGFjdCB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG1heC13aWR0aDogMjByZW07XHJcblx0fVxyXG5cclxuXHQuZm9vdGVyLWZvcm1hdGNvZXVyX19iYXMge1xyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcblx0XHRwYWRkaW5nOiAxLjdyZW0gMDtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHR9XHJcblxyXG5cdC5mb290ZXItcmV0b3VyLWhhdXQge1xyXG5cdFx0anVzdGlmeS1zZWxmOiBjZW50ZXI7XHJcblx0fVxyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgVFLDiFMgUEVUSVRTIMOJQ1JBTlNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNDIwcHgpIHtcclxuXHQuZm9vdGVyLXdoYXRzYXBwX19ib3V0b24ge1xyXG5cdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdH1cclxuXHJcblx0LmZvb3Rlci13aGF0c2FwcF9fZmxlY2hlIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG5cclxuXHQuZm9vdGVyLWZvcm1hdGNvZXVyX19tYXJxdWUge1xyXG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHR9XHJcblxyXG5cdC5mb290ZXItZm9ybWF0Y29ldXJfX25vbSB7XHJcblx0XHRmb250LXNpemU6IDIuMnJlbTtcclxuXHR9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBSw4lEVUNUSU9OIERFUyBBTklNQVRJT05TXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcclxuXHQuZm9vdGVyLWZvcm1hdGNvZXVyICosXHJcblx0LmZvb3Rlci1mb3JtYXRjb2V1ciAqOjpiZWZvcmUsXHJcblx0LmZvb3Rlci1mb3JtYXRjb2V1ciAqOjphZnRlciB7XHJcblx0XHRhbmltYXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xyXG5cdFx0YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSAhaW1wb3J0YW50O1xyXG5cdFx0c2Nyb2xsLWJlaGF2aW9yOiBhdXRvICFpbXBvcnRhbnQ7XHJcblx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcclxuXHR9XHJcbn1cbiIsIi5zbGFtLXBsYW5ldGUge1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHotaW5kZXg6IDEwNjA7XG5cdHJpZ2h0OiBjbGFtcCguNzVyZW0sIDJ2dywgMS41cmVtKTtcblx0Ym90dG9tOiBjbGFtcCguNzVyZW0sIDJ2dywgMS41cmVtKTtcblx0ZGlzcGxheTogZ3JpZDtcblx0d2lkdGg6IGNsYW1wKDcuNHJlbSwgMTB2dywgMTAuNXJlbSk7XG5cdGFzcGVjdC1yYXRpbzogMTtcblx0cGxhY2UtaXRlbXM6IGNlbnRlcjtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRjb2xvcjogI0MwNjY3RTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRmaWx0ZXI6IGRyb3Atc2hhZG93KDAgMXJlbSAxLjVyZW0gcmdiYSg0MywgMzEsIDQ5LCAuMjgpKTtcblx0aXNvbGF0aW9uOiBpc29sYXRlO1xuXHR0cmFuc2l0aW9uOiBmaWx0ZXIgLjM1cyBlYXNlLCB0cmFuc2Zvcm0gLjM1cyBjdWJpYy1iZXppZXIoLjIsIC44LCAuMiwgMSk7XG59XG5cbi5zbGFtLXBsYW5ldGU6aG92ZXIsXG4uc2xhbS1wbGFuZXRlOmZvY3VzLXZpc2libGUge1xuXHRjb2xvcjogI0MwNjY3RTtcblx0ZmlsdGVyOiBkcm9wLXNoYWRvdygwIDEuMzVyZW0gMnJlbSByZ2JhKDkzLCA0NywgNzAsIC4zOCkpO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLS4zNXJlbSkgc2NhbGUoMS4wMzUpO1xufVxuXG4uc2xhbS1wbGFuZXRlOmZvY3VzLXZpc2libGUge1xuXHRvdXRsaW5lOiAzcHggc29saWQgIzZDQjZDQztcblx0b3V0bGluZS1vZmZzZXQ6IC4zNXJlbTtcbn1cblxuLnNsYW0tcGxhbmV0ZV9fYXN0cmUge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGluc2V0OiAwO1xuXHRkaXNwbGF5OiBibG9jaztcblx0YW5pbWF0aW9uOiBzbGFtUGxhbmV0ZUZsb3R0ZSA1LjhzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xufVxuXG4uc2xhbS1wbGFuZXRlX19hc3RyZSBpbWcsXG4uc2xhbS1wbGFuZXRlX19jb2V1cnMge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGluc2V0OiAwO1xuXHRkaXNwbGF5OiBibG9jaztcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcbn1cblxuLnNsYW0tcGxhbmV0ZV9fYXN0cmUgaW1nIHtcblx0b2JqZWN0LWZpdDogY29udGFpbjtcblx0dXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5zbGFtLXBsYW5ldGVfX2NvZXVycyB7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRmaWx0ZXI6XG5cdFx0ZHJvcC1zaGFkb3coMCAwIC4xOHJlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIC45NikpXG5cdFx0ZHJvcC1zaGFkb3coMCAwIC40NXJlbSByZ2JhKDIzOSwgMTQzLCAxNzYsIC44OCkpO1xuXHRhbmltYXRpb246IHNsYW1Db2V1cnNTY2ludGlsbGVudCAzLjRzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xufVxuXG4uc2xhbS1wbGFuZXRlX19jb21wdGV1ciB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0cmlnaHQ6IC0uMnJlbTtcblx0Ym90dG9tOiAuMXJlbTtcblx0ZGlzcGxheTogZmxleDtcblx0bWluLXdpZHRoOiAzLjRyZW07XG5cdG1pbi1oZWlnaHQ6IDMuNHJlbTtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdHBhZGRpbmc6IC4zNXJlbSAuNTVyZW07XG5cdGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjg4KTtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjQ4LCAyNDQsIC45NCk7XG5cdGJveC1zaGFkb3c6IDAgLjU1cmVtIDEuM3JlbSByZ2JhKDc5LCA0MiwgNTksIC4yMyk7XG5cdGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uc2xhbS1wbGFuZXRlX19jb21wdGV1ciBzdHJvbmcge1xuXHRmb250LWZhbWlseTogXCJGb3J1bVwiLCBzZXJpZjtcblx0Zm9udC1zaXplOiAxLjI1cmVtO1xuXHRmb250LXdlaWdodDogNzAwO1xufVxuXG4uc2xhbS1wbGFuZXRlX19jb21wdGV1ciBzcGFuIHtcblx0bWFyZ2luLXRvcDogLjE1cmVtO1xuXHRmb250LXNpemU6IC41N3JlbTtcblx0Zm9udC13ZWlnaHQ6IDgwMDtcblx0bGV0dGVyLXNwYWNpbmc6IC4wOGVtO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uc2xhbS1wbGFuZXRlLS1ub3V2ZWF1IHsgYW5pbWF0aW9uOiBzbGFtUGxhbmV0ZUNlbGVicmUgLjlzIGN1YmljLWJlemllciguMiwgLjksIC4zLCAxKTsgfVxuXG4vKiBQZW5kYW50IGwnb3V2ZXJ0dXJlIGR1IGRpYWxvZ3VlLCBsYSBwbGFuw6h0ZSBlc3QgZMOpcGxhY8OpZSBkYW5zIGxhIHRvcCBsYXllciA6XG4gICBlbGxlIHJlc3RlIG5ldHRlIHRhbmRpcyBxdWUgbGEgcGFnZSBzaXR1w6llIGRlcnJpw6hyZSBjb25zZXJ2ZSBzb24gZmxvdS4gKi9cbi5zbGFtLXBsYW5ldGUtLXByZW1pZXItcGxhbiB7XG5cdHotaW5kZXg6IDY7XG5cdGZpbHRlcjogZHJvcC1zaGFkb3coMCAxLjFyZW0gMS44cmVtIHJnYmEoNDMsIDMxLCA0OSwgLjM4KSk7XG59XG5cbkBrZXlmcmFtZXMgc2xhbVBsYW5ldGVGbG90dGUge1xuXHQwJSwgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSByb3RhdGUoLTFkZWcpOyB9XG5cdDUwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtLjQycmVtKSByb3RhdGUoMS41ZGVnKTsgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsYW1QbGFuZXRlQ2VsZWJyZSB7XG5cdDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuXHQzNSUgeyB0cmFuc2Zvcm06IHNjYWxlKDEuMTYpIHJvdGF0ZSgtNGRlZyk7IH1cblx0NjglIHsgdHJhbnNmb3JtOiBzY2FsZSguOTYpIHJvdGF0ZSgyZGVnKTsgfVxuXHQxMDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsYW1Db2V1cnNTY2ludGlsbGVudCB7XG5cdDAlLCAxMDAlIHsgb3BhY2l0eTogLjk7IH1cblx0NTAlIHsgb3BhY2l0eTogMTsgZmlsdGVyOiBkcm9wLXNoYWRvdygwIDAgLjI4cmVtICNmZmYpIGRyb3Atc2hhZG93KDAgMCAuN3JlbSByZ2JhKDIzOSwgMTQzLCAxNzYsIDEpKTsgfVxufVxuXG4uc2xhbS1oZWFydC1mbGlnaHQge1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHotaW5kZXg6IDEwO1xuXHR3aWR0aDogMi44cmVtO1xuXHRoZWlnaHQ6IDIuOHJlbTtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdGNvbG9yOiAjQzA2NjdFO1xuXHRmb250LXNpemU6IDIuNzVyZW07XG5cdGxpbmUtaGVpZ2h0OiAxO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHRleHQtc2hhZG93OlxuXHRcdDAgMCAuMzVyZW0gI2ZmZixcblx0XHQwIDAgLjg1cmVtICNmZmYsXG5cdFx0MCAwIDEuNHJlbSByZ2JhKDI1NSwgMTIwLCAxNzAsIC45OCksXG5cdFx0MCAuM3JlbSAuNTVyZW0gcmdiYSg5MiwgMzcsIDYxLCAuMzYpO1xufVxuXG4uc2xhbS1tb2RhbCB7XG5cdHdpZHRoOiBtaW4oMzFyZW0sIGNhbGMoMTAwdncgLSAycmVtKSk7XG5cdG1heC1oZWlnaHQ6IGNhbGMoMTAwZHZoIC0gMnJlbSk7XG5cdHBhZGRpbmc6IDA7XG5cdG92ZXJmbG93OiB2aXNpYmxlO1xuXHRib3JkZXI6IDA7XG5cdGJvcmRlci1yYWRpdXM6IDJyZW07XG5cdGNvbG9yOiAjNDkzNTNkO1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLnNsYW0tbW9kYWw6OmJhY2tkcm9wIHtcblx0YmFja2dyb3VuZDogcmdiYSg0MywgMzAsIDM3LCAuNjIpO1xuXHRiYWNrZHJvcC1maWx0ZXI6IGJsdXIoLjQ1cmVtKTtcbn1cblxuLnNsYW0tbW9kYWxfX2NhcnRlIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nOiAxLjU1cmVtIDEuNzVyZW0gMS40cmVtO1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcblx0Ym9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAuODUpO1xuXHRib3JkZXItcmFkaXVzOiAxLjVyZW07XG5cdGJhY2tncm91bmQ6XG5cdFx0cmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAxMDAlIDAsIHJnYmEoMjQyLCAxODUsIDIwMywgLjM4KSwgdHJhbnNwYXJlbnQgMzQlKSxcblx0XHRsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLCAjZmZmYWY3LCAjRjNEREM1KTtcblx0Ym94LXNoYWRvdzogMCAycmVtIDVyZW0gcmdiYSg0NCwgMjUsIDM1LCAuMzUpO1xufVxuXG4uc2xhbS1tb2RhbF9fZmVybWVyIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IC44cmVtO1xuXHRyaWdodDogLjhyZW07XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdHdpZHRoOiAyLjJyZW07XG5cdGhlaWdodDogMi4ycmVtO1xuXHRwbGFjZS1pdGVtczogY2VudGVyO1xuXHRib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE0OSwgOTIsIDExMSwgLjIpO1xuXHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdGNvbG9yOiAjNzQ0NzVhO1xuXHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43NCk7XG5cdGZvbnQtc2l6ZTogMS4ycmVtO1xuXHRsaW5lLWhlaWdodDogMTtcbn1cblxuLnNsYW0tbW9kYWxfX3N1ci10aXRyZSB7XG5cdG1hcmdpbjogMCAyLjVyZW0gLjNyZW0gMDtcblx0Y29sb3I6ICNDMDY2N0U7XG5cdGZvbnQtc2l6ZTogLjgxMjVyZW0gIWltcG9ydGFudDtcblx0bGluZS1oZWlnaHQ6IDEuMjUgIWltcG9ydGFudDtcblx0Zm9udC13ZWlnaHQ6IDgwMDtcblx0bGV0dGVyLXNwYWNpbmc6IC4xOGVtO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uc2xhbS1tb2RhbCBoMiB7XG5cdG1hcmdpbjogMDtcblx0Y29sb3I6ICM1NjM0NDI7XG5cdGZvbnQtZmFtaWx5OiBcIkZvcnVtXCIsIHNlcmlmO1xuXHRmb250LXNpemU6IGNsYW1wKDJyZW0sIDR2dywgMi42NXJlbSkgIWltcG9ydGFudDtcblx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0bGluZS1oZWlnaHQ6IDEuMDUgIWltcG9ydGFudDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnNsYW0tbW9kYWxfX2ludHJvZHVjdGlvbiB7XG5cdG1heC13aWR0aDogMjdyZW07XG5cdG1hcmdpbjogLjZyZW0gMCAuOXJlbTtcblx0Y29sb3I6ICM3MjVjNjU7XG5cdGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xuXHRsaW5lLWhlaWdodDogMS41NSAhaW1wb3J0YW50O1xufVxuXG4uc2xhbS1tb2RhbF9fZm9ybSB7IGRpc3BsYXk6IGdyaWQ7IGdhcDogLjVyZW07IH1cbi5zbGFtLW1vZGFsX19mb3JtID4gbGFiZWw6bm90KC5zbGFtLW1vZGFsX19jb25zZW50ZW1lbnQpIHsgZm9udC1zaXplOiAuOTM3NXJlbSAhaW1wb3J0YW50OyBsaW5lLWhlaWdodDogMS4zICFpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0OiA4MDA7IH1cblxuLnNsYW0tbW9kYWwgdGV4dGFyZWEge1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiA3LjVyZW07XG5cdG1pbi1oZWlnaHQ6IDcuNXJlbTtcblx0bWF4LWhlaWdodDogMTFyZW07XG5cdHBhZGRpbmc6IC44cmVtIC45cmVtO1xuXHRyZXNpemU6IHZlcnRpY2FsO1xuXHRib3JkZXI6IDFweCBzb2xpZCAjZGZjYmQyO1xuXHRib3JkZXItcmFkaXVzOiAuOHJlbTtcblx0b3V0bGluZTogMDtcblx0Y29sb3I6ICM0OTM1M2Q7XG5cdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjg2KTtcblx0Zm9udDogaW5oZXJpdDtcblx0Zm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG5cdGxpbmUtaGVpZ2h0OiAxLjUgIWltcG9ydGFudDtcblx0dHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIC4ycyBlYXNlLCBib3gtc2hhZG93IC4ycyBlYXNlO1xufVxuXG4uc2xhbS1tb2RhbCB0ZXh0YXJlYTpmb2N1cyB7XG5cdGJvcmRlci1jb2xvcjogI0MwNjY3RTtcblx0Ym94LXNoYWRvdzogMCAwIDAgLjI1cmVtIHJnYmEoMTkyLCAxMDIsIDEyNiwgLjE0KTtcbn1cblxuLnNsYW0tbW9kYWxfX2FpZGUge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdGdhcDogMXJlbTtcblx0Y29sb3I6ICM4Yjc0N2M7XG5cdGZvbnQtc2l6ZTogLjgxMjVyZW07XG59XG5cbi5zbGFtLW1vZGFsX19jb25zZW50ZW1lbnQge1xuXHRkaXNwbGF5OiBncmlkO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyO1xuXHRnYXA6IC42cmVtO1xuXHRhbGlnbi1pdGVtczogc3RhcnQ7XG5cdG1hcmdpbjogLjM1cmVtIDAgLjQ1cmVtO1xuXHRjb2xvcjogIzY0NGU1Nztcblx0Zm9udC1zaXplOiAuOTM3NXJlbSAhaW1wb3J0YW50O1xuXHRsaW5lLWhlaWdodDogMS40NSAhaW1wb3J0YW50O1xufVxuXG4uc2xhbS1tb2RhbF9fY29uc2VudGVtZW50IGlucHV0IHtcblx0d2lkdGg6IDFyZW07XG5cdGhlaWdodDogMXJlbTtcblx0bWFyZ2luLXRvcDogLjEycmVtO1xuXHRhY2NlbnQtY29sb3I6ICNDMDY2N0U7XG59XG5cbi5zbGFtLW1vZGFsX19lbnZveWVyIHtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdG1pbi1oZWlnaHQ6IDIuOXJlbTtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGdhcDogLjhyZW07XG5cdHBhZGRpbmc6IC42NXJlbSAxLjFyZW07XG5cdGJvcmRlcjogMDtcblx0Ym9yZGVyLXJhZGl1czogOTk5cHg7XG5cdGNvbG9yOiAjZmZmO1xuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjQzA2NjdFLCAjQ0M4MjZDKTtcblx0Ym94LXNoYWRvdzogMCAuOHJlbSAxLjhyZW0gcmdiYSgxMzgsIDc1LCA5OCwgLjI1KTtcblx0Zm9udC1zaXplOiAuOTM3NXJlbSAhaW1wb3J0YW50O1xuXHRsaW5lLWhlaWdodDogMS4yICFpbXBvcnRhbnQ7XG5cdGZvbnQtd2VpZ2h0OiA4MDA7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UsIHRyYW5zZm9ybSAuMnMgZWFzZTtcbn1cblxuLnNsYW0tbW9kYWxfX2Vudm95ZXI6aG92ZXIgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7IH1cbi5zbGFtLW1vZGFsX19lbnZveWVyOmRpc2FibGVkIHsgY3Vyc29yOiB3YWl0OyBvcGFjaXR5OiAuNTg7IHRyYW5zZm9ybTogbm9uZTsgfVxuXG4uc2xhbS1tb2RhbF9fc3RhdHV0IHtcblx0bWluLWhlaWdodDogMXJlbTtcblx0bWFyZ2luOiAuMDVyZW0gMCAwO1xuXHRjb2xvcjogIzZkNTM2MDtcblx0Zm9udC1zaXplOiAuODc1cmVtICFpbXBvcnRhbnQ7XG5cdGxpbmUtaGVpZ2h0OiAxLjQgIWltcG9ydGFudDtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc2xhbS1tb2RhbF9fc3RhdHV0LmlzLWVycm9yIHsgY29sb3I6ICNhNTJmNTA7IH1cbi5zbGFtLW1vZGFsX19zdGF0dXQuaXMtc3VjY2VzcyB7IGNvbG9yOiAjNGI3NjU5OyB9XG5cbi8qIExlIGZvcm11bGFpcmUgdml0IGRhbnMgPG1haW4+IDogY2VzIHLDqGdsZXMgY2libMOpZXMgcHJlbm5lbnQgbGUgcGFzIHN1clxuICAgbCfDqWNoZWxsZSB0eXBvZ3JhcGhpcXVlIGfDqW7DqXJhbGUgZHUgc2l0ZSBzYW5zIG1vZGlmaWVyIGxlcyBhdXRyZXMgcGFnZXMuICovXG4jY29udGVudS1wcmluY2lwYWwgLnNsYW0tbW9kYWwgLnNsYW0tbW9kYWxfX3N1ci10aXRyZSB7IGZvbnQtc2l6ZTogLjgxMjVyZW0gIWltcG9ydGFudDsgbGluZS1oZWlnaHQ6IDEuMyAhaW1wb3J0YW50OyB9XG4jY29udGVudS1wcmluY2lwYWwgLnNsYW0tbW9kYWwgLnNsYW0tbW9kYWxfX2ludHJvZHVjdGlvbiB7IGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50OyBsaW5lLWhlaWdodDogMS41NSAhaW1wb3J0YW50OyB9XG4jY29udGVudS1wcmluY2lwYWwgLnNsYW0tbW9kYWwgLnNsYW0tbW9kYWxfX2Zvcm0gPiBsYWJlbDpub3QoLnNsYW0tbW9kYWxfX2NvbnNlbnRlbWVudCkgeyBmb250LXNpemU6IC45Mzc1cmVtICFpbXBvcnRhbnQ7IGxpbmUtaGVpZ2h0OiAxLjMgIWltcG9ydGFudDsgfVxuI2NvbnRlbnUtcHJpbmNpcGFsIC5zbGFtLW1vZGFsIC5zbGFtLW1vZGFsX19mb3JtIHRleHRhcmVhIHsgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7IGxpbmUtaGVpZ2h0OiAxLjUgIWltcG9ydGFudDsgfVxuI2NvbnRlbnUtcHJpbmNpcGFsIC5zbGFtLW1vZGFsIC5zbGFtLW1vZGFsX19jb25zZW50ZW1lbnQgeyBmb250LXNpemU6IC45Mzc1cmVtICFpbXBvcnRhbnQ7IGxpbmUtaGVpZ2h0OiAxLjQ1ICFpbXBvcnRhbnQ7IH1cbiNjb250ZW51LXByaW5jaXBhbCAuc2xhbS1tb2RhbCAuc2xhbS1tb2RhbF9fZW52b3llciB7IGZvbnQtc2l6ZTogLjkzNzVyZW0gIWltcG9ydGFudDsgbGluZS1oZWlnaHQ6IDEuMjUgIWltcG9ydGFudDsgfVxuI2NvbnRlbnUtcHJpbmNpcGFsIC5zbGFtLW1vZGFsIC5zbGFtLW1vZGFsX19zdGF0dXQgeyBmb250LXNpemU6IC44NzVyZW0gIWltcG9ydGFudDsgbGluZS1oZWlnaHQ6IDEuNCAhaW1wb3J0YW50OyB9XG5cbi5zbGFtLW1vZGFsX19waWVnZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuXHRsZWZ0OiAtMTAwMDBweCAhaW1wb3J0YW50O1xuXHR3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG5cdGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG5cdG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG5cdC8qIE3Dqm1lIGdhYmFyaXQgY29tcGFjdCBzdXIgdG91dGVzIGxlcyBwYWdlcywgeSBjb21wcmlzIMKrIFNsYW1lIHRlcyDDqW1vdGlvbnMgwrsuICovXG5cdC5zbGFtLXBsYW5ldGUgeyB3aWR0aDogNS4ycmVtOyB9XG5cdC5zbGFtLXBsYW5ldGVfX2NvbXB0ZXVyIHsgbWluLXdpZHRoOiAyLjU1cmVtOyBtaW4taGVpZ2h0OiAyLjU1cmVtOyB9XG5cdC5zbGFtLXBsYW5ldGVfX2NvbXB0ZXVyIHN0cm9uZyB7IGZvbnQtc2l6ZTogMXJlbTsgfVxuXHQuc2xhbS1tb2RhbCB7IHdpZHRoOiBjYWxjKDEwMHZ3IC0gMXJlbSk7IG1heC1oZWlnaHQ6IGNhbGMoMTAwZHZoIC0gMXJlbSk7IH1cblx0LnNsYW0tbW9kYWxfX2NhcnRlIHsgbWF4LWhlaWdodDogY2FsYygxMDBkdmggLSAxcmVtKTsgcGFkZGluZzogMS4yNXJlbSAxcmVtIDFyZW07IG92ZXJmbG93OiBhdXRvOyBib3JkZXItcmFkaXVzOiAxLjI1cmVtOyB9XG5cdC5zbGFtLW1vZGFsX19mZXJtZXIgeyB0b3A6IC42NXJlbTsgcmlnaHQ6IC42NXJlbTsgfVxuXHQuc2xhbS1tb2RhbCBoMiB7IGZvbnQtc2l6ZTogMi4xNXJlbSAhaW1wb3J0YW50OyB3aGl0ZS1zcGFjZTogbm9ybWFsOyB9XG5cdC5zbGFtLW1vZGFsX19pbnRyb2R1Y3Rpb24geyBtYXJnaW46IC41cmVtIDAgLjc1cmVtOyBsaW5lLWhlaWdodDogMS40OyB9XG5cdC5zbGFtLW1vZGFsIHRleHRhcmVhIHsgaGVpZ2h0OiA2LjVyZW07IG1pbi1oZWlnaHQ6IDYuNXJlbTsgfVxufVxuXG5AbWVkaWEgKG1heC1oZWlnaHQ6IDYyMHB4KSB7XG5cdC5zbGFtLW1vZGFsX19jYXJ0ZSB7IG1heC1oZWlnaHQ6IGNhbGMoMTAwZHZoIC0gMXJlbSk7IG92ZXJmbG93OiBhdXRvOyB9XG5cdC5zbGFtLW1vZGFsIHRleHRhcmVhIHsgaGVpZ2h0OiA1LjJyZW07IG1pbi1oZWlnaHQ6IDUuMnJlbTsgfVxufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuXHQuc2xhbS1wbGFuZXRlX19hc3RyZSxcblx0LnNsYW0tcGxhbmV0ZV9fY29ldXJzLFxuXHQuc2xhbS1wbGFuZXRlLS1ub3V2ZWF1IHsgYW5pbWF0aW9uOiBub25lOyB9XG5cdC5zbGFtLXBsYW5ldGUsXG5cdC5zbGFtLW1vZGFsX19lbnZveWVyIHsgdHJhbnNpdGlvbjogbm9uZTsgfVxufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/