/*!******************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/components/configprofessionnel/FullCalendar/styles/DialogHebdo.css ***!
  \******************************************************************************************************************************************************************/
.p-dialog-header {
    background-color: '#FFFFFF00'

}
/*!********************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/components/configprofessionnel/FullCalendar/styles/Hebdovisiteur.css ***!
  \********************************************************************************************************************************************************************/
/* Style général du calendrier - UNIQUEMENT pour calendriers visiteurs (.professional-card) */
.professional-card .fc {
  font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
  position: relative;
  overflow: visible !important;
  --fc-today-bg-color: #f8f9fa; /* Fond très clair pour aujourd'hui */
  --fc-page-bg-color: white; /* Fond blanc */
  --fc-border-color: #e9ecef; /* Bordures claires */
  --fc-neutral-bg-color: white;
  --fc-neutral-text-color: #212529;
  --fc-event-bg-color: #212529; /* Fond des événements en noir */
  --fc-event-border-color: #212529;
  --fc-event-text-color: #ffffff; /* Texte des événements en blanc */
  --fc-list-event-hover-bg-color: #f8f9fa;
  --fc-highlight-color: rgba(0, 0, 0, 0.1);
  --fc-now-indicator-color: #dc3545; /* Ligne "maintenant" en rouge */
  --fc-button-bg-color: #212529; /* Boutons en noir */
  --fc-button-border-color: #212529;
  --fc-button-hover-bg-color: #343a40;
  --fc-button-hover-border-color: #343a40;
  --fc-button-active-bg-color: #495057;
  --fc-button-active-border-color: #495057;
  --fc-button-text-color: white;
  --fc-button-disabled-bg-color: #f8f9fa;
  --fc-button-disabled-border-color: #f8f9fa;
  --fc-button-disabled-text-color: #6c757d;
  --fc-button-font-weight: 500;
  --fc-button-icon-color: white;
  --fc-button-icon-hover-color: white;
  --fc-button-icon-active-color: white;
  --fc-button-icon-disabled-color: #6c757d;
  --fc-button-icon-font-size: 1.25em;
  --fc-button-icon-padding: 0.25em;
  --fc-button-icon-spin-nonuple: 9;
  --fc-button-icon-spin-decuple: 10;
  --fc-button-icon-spin-undecuple: 11;
  --fc-button-icon-spin-duodecuple: 12;
  --fc-button-icon-spin-tredecim: 13;
  --fc-button-icon-spin-quattuordecim: 14;
  --fc-button-icon-spin-quindecim: 15;
  --fc-button-icon-spin-sexdecim: 16;
  --fc-button-icon-spin-septendecim: 17;
  --fc-button-icon-spin-octodecim: 18;
  --fc-button-icon-spin-novemdecim: 19;
  --fc-button-icon-spin-vigintuple: 20;
  --fc-button-icon-spin-unvigintuple: 21;
  --fc-button-icon-spin-duovigintuple: 22;
  --fc-button-icon-spin-trevigintuple: 23;
  --fc-button-icon-spin-quattuorvigintuple: 24;
  --fc-button-icon-spin-quinvigintuple: 25;
  --fc-button-icon-spin-sesvigintuple: 26;
  --fc-button-icon-spin-septenvigintuple: 27;
  --fc-button-icon-spin-octovigintuple: 28;
  --fc-button-icon-spin-novemvigintuple: 29;
  --fc-button-icon-spin-trigintuple: 30;
  --fc-button-icon-spin-untrigintuple: 31;
  --fc-button-icon-spin-duotrigintuple: 32;
  --fc-button-icon-spin-tritrigintuple: 33;
  --fc-button-icon-spin-quattuortrigintuple: 34;
  --fc-button-icon-spin-quintrigintuple: 35;
  --fc-button-icon-spin-sestrigintuple: 36;
  --fc-button-icon-spin-septentrigintuple: 37;
  --fc-button-icon-spin-octotrigintuple: 38;
  --fc-button-icon-spin-novemtrigintuple: 39;
  --fc-button-icon-spin-quadragintuple: 40;
  --fc-button-icon-spin-unquadragintuple: 41;
  --fc-button-icon-spin-duoquadragintuple: 42;
  --fc-button-icon-spin-trequadragintuple: 43;
  --fc-button-icon-spin-quattuorquadragintuple: 44;
  --fc-button-icon-spin-quinquadragintuple: 45;
  --fc-button-icon-spin-sesquadragintuple: 46;
  --fc-button-icon-spin-septenquadragintuple: 47;
  --fc-button-icon-spin-octoquadragintuple: 48;
  --fc-button-icon-spin-novemquadragintuple: 49;
  --fc-button-icon-spin-quinquagintuple: 50;
}






/* Boutons Précédent/Suivant du FullCalendar - UNIQUEMENT pour calendriers visiteurs */
.professional-card .fc-prev-button,
.professional-card .fc-next-button {
  background-color: #212529 !important;
  border: none !important;
  border-radius: 50% !important;
  width: 36px !important;
  height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
  transition: all 0.2s ease !important;
  color: white !important;
  padding: 0 !important;
}

.professional-card .fc-prev-button:hover,
.professional-card .fc-next-button:hover {
  background-color: #343a40 !important;
  transform: scale(1.05) !important;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15) !important;
}

.professional-card .fc-prev-button:disabled,
.professional-card .fc-next-button:disabled {
  background-color: #e9ecef !important;
  color: #adb5bd !important;
  transform: none !important;
  box-shadow: none !important;
}

.professional-card .fc-icon-chevron-left::before,
.professional-card .fc-icon-chevron-right::before {
  font-size: 14px !important;
  font-weight: bold !important;
}





/* Chip "Collaborateurs" */
.custom-chip {
  background-color: #212529 !important;
  color: white !important;
  border-radius: 28px !important;
  padding: 0.5rem 1rem !important;
  font-weight: 500 !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
  transition: all 0.2s ease !important;
  border: none !important;
}

.custom-chip:hover {
  background-color: #343a40 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15) !important;
}



/* Bouton "Tous" dans le Dropdown */
.p-inputgroup-addon {
  background-color: #212529 !important;
  color: white !important;
  border: none !important;
  border-radius: 0 6px 6px 0 !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.p-inputgroup-addon:hover {
  background-color: #343a40 !important;
}


/* Icône du Chip */
.custom-chip .p-chip-icon {
  color: white !important;
  font-size: 1rem !important;
  margin-right: 0.5rem !important;
}


/* Supprime toutes les bordures du tableau dayGrid - UNIQUEMENT pour calendriers visiteurs */
.professional-card .fc .fc-scrollgrid,
.professional-card .fc .fc-scrollgrid thead,
.professional-card .fc .fc-scrollgrid tbody,
.professional-card .fc .fc-scrollgrid td,
.professional-card .fc .fc-scrollgrid th {
    border: none !important;
}

/* Optionnel : supprime les lignes entre les jours - UNIQUEMENT pour calendriers visiteurs */
.professional-card .fc .fc-daygrid-day-frame {
    border: none !important;
}


/* Descend toute la zone du header - UNIQUEMENT pour calendriers visiteurs */
/* IMPORTANT: position: static est crucial pour que les boutons prev/next se positionnent par rapport à .fc */
.professional-card .fc .fc-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;  /* place le contenu plus bas */
  margin-bottom: 20px;    /* espace sous le header */
  position: static !important; /* les boutons absolute se positionnent par rapport à .fc, pas à toolbar */
}


/* Styles communs pour mobile et bureau - UNIQUEMENT pour calendriers visiteurs */
.professional-card .fc .fc-col-header-cell {
  background-color: white !important;
}

/* ============================================
   BOUTONS PREV/NEXT - REFACTORISÉ RESPONSIVE
   ============================================ */

/* Base : boutons toujours visibles et centrés verticalement */
.professional-card .fc .fc-prev-button,
.professional-card .fc .fc-next-button {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%);
  z-index: 10 !important;
  opacity: 1;
  pointer-events: auto;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

/* Mobile (< 768px) : boutons sur les bords */
@media (max-width: 767px) {
  .professional-card .fc .fc-prev-button { left: -5px !important; }
  .professional-card .fc .fc-next-button { right: -5px !important; }
}

/* Tablette (768px - 1199px) : boutons bien à l'extérieur du calendrier */
@media (min-width: 768px) and (max-width: 1199px) {
  .professional-card .fc .fc-prev-button { left: -45px !important; }
  .professional-card .fc .fc-next-button { right: -45px !important; }
}

/* Desktop (>= 1200px) : boutons complètement dans l'espace blanc */
@media (min-width: 1200px) {
  .professional-card .fc .fc-prev-button { left: -50px !important; }
  .professional-card .fc .fc-next-button { right: -50px !important; }

  .professional-card .fc .fc-prev-button,
  .professional-card .fc .fc-next-button {
    opacity: 0.7;
  }

  .professional-card:hover .fc .fc-prev-button,
  .professional-card:hover .fc .fc-next-button {
    opacity: 1;
  }
}

/* Grand écran (>= 1400px) : encore plus d'espace */
@media (min-width: 1400px) {
  .professional-card .fc .fc-prev-button { left: -55px !important; }
  .professional-card .fc .fc-next-button { right: -55px !important; }
}

/* Désactivés : toujours cachés */
.professional-card .fc .fc-button-disabled,
.professional-card .fc .fc-prev-button[disabled],
.professional-card .fc .fc-next-button[disabled],
.professional-card .fc .fc-prev-button[aria-disabled="true"],
.professional-card .fc .fc-next-button[aria-disabled="true"] {
  opacity: 0 !important;
  pointer-events: none !important;
}






.fcalend {
  max-width: 490px;
  margin: 30px auto; /* centre le calendrier */
}

/* ============================================
   HAUTEUR RESPONSIVE DU CALENDRIER
   ============================================ */

/* Base : hauteur responsive pour le calendrier */
.professional-card .fc .fc-view-harness {
  margin-top: -30px !important;
  padding-top: 0 !important;
  min-height: 220px;
  max-height: 350px;
}

/* Tablette : hauteur intermédiaire */
@media (min-width: 768px) and (max-width: 1199px) {
  .professional-card .fc .fc-view-harness {
    min-height: 200px;
    max-height: 300px;
  }
}

/* Desktop : hauteur compacte */
@media (min-width: 1200px) {
  .professional-card .fc .fc-view-harness {
    min-height: 180px;
    max-height: 280px;
  }
}


/* créer les cas où il n'y apas de rendez vous - UNIQUEMENT pour calendriers visiteurs */
/* Enlever le padding interne des cellules jour */
.professional-card .fc .fc-daygrid-day-frame {
    padding: 0 !important;
}

/* Centrer parfaitement le contenu du jour - UNIQUEMENT pour calendriers visiteurs */
.professional-card .fc .fc-daygrid-day-top {
    justify-content: center !important;
}

/* Centrer les éléments internes (Aucun rdv / pastille) */
.empty-slot {
    display: flex;
    flex-direction: column;
    align-items: center;
}


.empty-pill {
    background: #f1f3f5;
    color: #6c757d;
    width: 70px;
    height: 26px;              /* optionnel, pour un vrai pill régulier */
    margin: 0 auto 4px auto;
    border-radius: 20px;
    font-weight: 600;
    font-size: 14px;

    /* centrage parfait du tiret */
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}


.empty-text {
    color: #adb5bd;
    font-size: 14px;
    font-weight: 500;
}


/* Pastille des créneaux (noire + reflet) */
.slot-pill {
  position: relative;
  background: #000000;
  border-radius: 999px;
  overflow: hidden;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.35);
  font-size: 14px;
}

/* Override Bootstrap col-12 et w-100 pour le slot-pill responsive - UNIQUEMENT pour calendriers visiteurs */
.professional-card .slot-pill.col-12.w-100,
.professional-card .fc-daygrid-event .slot-pill,
.professional-card .fc-daygrid-dot-event .slot-pill,
.professional-card div.slot-pill.col-12 {
  width: auto !important;
  max-width: fit-content !important;
  min-width: fit-content !important;
  flex: 0 0 auto !important;
  white-space: nowrap !important;
  padding: 6px 14px !important;
  box-sizing: border-box !important;
}

/* ============================================
   SLOT-PILL RESPONSIVE - Éviter les chevauchements
   ============================================ */

/* Tablette paysage et petits desktop (992px - 1199px) */
@media (min-width: 992px) and (max-width: 1199px) {
  .professional-card .slot-pill {
    font-size: 12px !important;
    padding: 4px 10px !important;
  }

  .professional-card .slot-pill i {
    font-size: 0.75rem !important;
    margin-right: 2px !important;
  }
}

/* Tablette portrait (768px - 991px) */
@media (min-width: 768px) and (max-width: 991px) {
  .professional-card .slot-pill {
    font-size: 11px !important;
    padding: 3px 8px !important;
  }

  .professional-card .slot-pill i {
    font-size: 0.7rem !important;
    margin-right: 2px !important;
  }
}

/* Mobile (< 768px) */
@media (max-width: 767px) {
  .professional-card .slot-pill {
    font-size: 12px !important;
    padding: 5px 10px !important;
  }
}

/* Reflet en haut de la pastille */
.slot-pill::before {
  content: "";
  position: absolute;
  top: -40%;
  left: -10%;
  width: 120%;
  height: 60%;
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0.55),
    rgba(255, 255, 255, 0)
  );
  pointer-events: none;
}

/* Petit effet au survol (optionnel) */
.slot-pill:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.45);
  transition: all 0.15s ease-out;
}

/* Styles pour le conteneur des événements FullCalendar - UNIQUEMENT pour calendriers visiteurs */
.professional-card .fc-daygrid-event,
.professional-card .fc-daygrid-dot-event {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  background: transparent !important;
  border: none !important;
  padding: 2px !important;
}

/* Conteneur interne des slot-pill - responsive - UNIQUEMENT pour calendriers visiteurs */
.professional-card .fc-daygrid-event .row,
.professional-card .fc-daygrid-dot-event .row,
.professional-card .fc-daygrid-event .row.col-12,
.professional-card .fc-daygrid-dot-event .row.col-12 {
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  display: flex !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  margin: 0 auto !important;
}

/* Mode bureau - styles additionnels pour les boutons - UNIQUEMENT pour calendriers visiteurs */
@media (min-width: 1201px) {
  /* Conteneur du calendrier - position relative pour contenir les boutons */
  .professional-card .fc {
    position: relative;
  }

  /* IMPORTANT: toolbar doit rester static pour que les boutons absolute se positionnent par rapport à .fc */
  .professional-card .fc .fc-toolbar {
    position: static;
    overflow: visible;
  }
}


/* pour la fonction find aucune disponibilité */

/* .next-avail-banner {
  background: #f1f3f5;
  padding: 14px 18px;
  margin: 250px 0px 18px 30px;
  border-radius: 12px;
  width: 80%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #495057;
  font-size: 15px;
  font-weight: 500;
}

.next-avail-link {
  color: #1a54d7;
  font-weight: 600;
  cursor: pointer;
}

.next-avail-link:hover {
  text-decoration: underline;
} */
/***********************************************
 *  CONTENEUR DU TABLEAU (bloc mobile)
 ***********************************************/
.mx-auto.text-center.mt-4.d-md-none {
  /* on garde ta position absolue, on ajuste juste un peu la hauteur */
  top: 310px !important;         /* monte un peu le bandeau (mets 300 ou 290 si tu veux + haut) */
  width: 100% !important;
  z-index: 9 !important;
}

/* tableau et cellule transparents, sans bordures ni ombres */
.mx-auto.text-center.mt-4.d-md-none table,
.mx-auto.text-center.mt-4.d-md-none tr,
.mx-auto.text-center.mt-4.d-md-none td,
.mx-auto.text-center.mt-4.d-md-none th {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* pas de padding parasite sur la cellule */
.mx-auto.text-center.mt-4.d-md-none td {
  padding: 0 !important;
}


/***********************************************
 *  STYLE DU BANDEAU (à l'intérieur du <td>)
 ***********************************************/
.next-avail-banner {
  background: #f1f3f5;
  padding: 14px 24px;
  border-radius: 16px;
  max-width: 80%;                /* largeur du bandeau (augmente à 85–90% si tu veux plus large) */
  margin: 0 auto;                /* centré dans le <td> */
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08);

  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;

  color: #495057;
  font-size: 15px;
  font-weight: 500;
  text-align: left;
}

/***********************************************
 *  LIEN "Voir cette date"
 ***********************************************/
.next-avail-link {
  color: #1a54d7;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;           /* "Voir cette date" reste sur une seule ligne */
}

.next-avail-link:hover {
  text-decoration: underline;
}

.card-body {
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    min-height: 1px;
    padding: 0rem !important;;
}




/* Conteneur principal pour la bulle de disponibilité */
.prochaine-dispo-bulle {
    position: absolute;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    width: 90%;
    max-width: 400px;
    background-color: #EAEAEA; /* gris neutre adapté à une UI noir/blanc */
    border-radius: 12px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12);
    padding: 16px;
    z-index: 10;
    text-align: center;
    font-size: 14px;
    border: 1px solid #D5D5D5;
}



/* Titre de la bulle */
.prochaine-dispo-titre {
    font-weight: 600;
    color: #1A3A66; /* Bleu foncé : lisible, professionnel */
    margin-bottom: 12px;
    font-size: 15px;
}

/* Liste des jours disponibles */
.prochaine-dispo-liste {
    text-align: left;
    margin-bottom: 8px;
}

/* Élément de la liste (un jour disponible) */
.prochaine-dispo-element {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 3px 0;
    border-bottom: 1px solid #E3ECF8; /* Ligne plus douce */
}

/* Date du jour disponible */
.prochaine-dispo-element-date {
    color: #2F4259; /* bleu-gris moderne */
    font-size: 13px;
}

/* Lien "Voir cette date" pour chaque jour */
.prochaine-dispo-element-lien {
    color: #1E6FFF; /* bleu action standard */
    text-decoration: none;
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
}

.prochaine-dispo-element-lien:hover {
    text-decoration: underline;
}

/* Bouton "Retour à la semaine actuelle" */
.prochaine-dispo-bouton-semaine {
    display: block;
    margin-top: 14px;
    padding: 8px 16px;
    background-color: #F4F8FF; /* bleu-gris clair pour cohérence */
    border: 1px solid #C9D9F0;
    border-radius: 6px;
    color: #1A3A66;
    text-decoration: none;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    text-align: center;
}

.prochaine-dispo-bouton-semaine:hover {
    background-color: #E9F1FF;
}

/* Message "Aucun créneau disponible" */
.aucun-creneau-message {
    color: #52627A;
    font-style: italic;
    margin-bottom: 10px;
}


/* Pour overpanel des boutons chat et visio */
.overlaypanel-custom {
    border-radius: 14px !important;
    padding: 0 !important;
    width: 240px !important;
    border: none !important;
    box-shadow: 0 4px 24px rgba(0,0,0,0.12) !important;
}

.contact-menu {
    display: flex;
    flex-direction: column;
    padding: 12px;
}

.contact-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    border-radius: 10px;
    font-size: 1.1rem;
    cursor: pointer;
    transition: 0.15s ease;
    color: #1a1a1a;
}

.contact-item i {
    font-size: 1.3rem;
    color: #2563eb; /* bleu moderne */
}

.contact-item:hover {
    background: #f0f7ff;
    color: #2563eb;
}

/* Pour overpanel du reste des menus */
/* Style général du panneau */
.overlaypanel-custom-opts {
    border-radius: 14px !important;
    padding: 0 !important;
    width: 260px !important;
    border: none !important;
    box-shadow: 0 4px 24px rgba(0,0,0,0.12) !important;
}

/* Conteneur interne */
.options-menu {
    display: flex;
    flex-direction: column;
    padding: 10px;
}

/* Une ligne = une action */
.options-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    border-radius: 10px;
    font-size: 1.15rem;
    cursor: pointer;
    transition: 0.15s ease;
    color: #1a1a1a;
}

.options-item i {
    font-size: 1.4rem;
    width: 26px;
    color: #374151; /* gris premium */
}

.options-item:hover {
    background: #f0f7ff;
    color: #2563eb; /* bleu moderne */
}

.options-item:hover i {
    color: #2563eb;
}

/* Séparateur avant la note */
.options-divider {
    border-top: 1px solid #e5e7eb;
    margin: 8px 0;
}

/* Bloc des avis */
.options-avis {
    padding: 6px 12px 2px;
    font-size: 1rem;
    opacity: 0.9;
}


/* visioconference annuaire */
.dialog-visio .p-dialog-content {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 0 !important;
}

.visio-body {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.visio-footer {
    margin-top: auto;
}

/*!*************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/components/date/index.css ***!
  \*************************************************************************************************************************/

html {
    font-size: 14px;
}

body {
    background-color: #ffffff;
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;
    font-weight: normal;
    color: #495057;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    padding: .5em;
    margin-bottom: 50px;
}

h1, h2, h3, h4, h5, h6 {
    margin: 1.5rem 0 1rem 0;
    font-family: inherit;
    font-weight: 600;
    line-height: 1.2;
    color: inherit;
}

h1 { font-size: 2.5rem; }
h2 { font-size: 2rem; }
h3 { font-size: 1.75rem; }
h4 { font-size: 1.5rem; }
h5 { font-size: 1.25rem; }
h6 { font-size: 1rem; }
p {
    line-height: 1.5;
    margin: 0 0 1rem 0;
}

.card {
    margin-bottom: 2rem;
}

input[type="number"] {
    -moz-appearance: textfield;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

@keyframes pulse {
    0% {
        background-color: rgba(165, 165, 165, 0.1)
    }
    50% {
        background-color: rgba(165, 165, 165, 0.3)
    }
    100% {
        background-color: rgba(165, 165, 165, 0.1)
    }
}

.customer-badge {
    border-radius: 2px;
    padding: .25em .5rem;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 12px;
    letter-spacing: .3px;
}

.customer-badge.status-qualified {
    background-color: #C8E6C9;
    color: #256029;
}

.customer-badge.status-unqualified {
    background-color: #FFCDD2;
    color: #C63737;
}

.customer-badge.status-negotiation {
    background-color: #FEEDAF;
    color: #8A5340;
}

.customer-badge.status-new {
    background-color: #B3E5FC;
    color: #23547B;
}

.customer-badge.status-renewal {
    background-color: #ECCFFF;
    color: #694382;
}

.customer-badge.status-proposal {
    background-color: #FFD8B2;
    color: #805B36;
}

.product-badge {
    border-radius: 2px;
    padding: .25em .5rem;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 12px;
    letter-spacing: .3px;
}

.product-badge.status-instock {
    background: #C8E6C9;
    color: #256029;
}

.product-badge.status-outofstock {
    background: #FFCDD2;
    color: #C63737;
}

.product-badge.status-lowstock {
    background: #FEEDAF;
    color: #8A5340;
}

.order-badge {
    border-radius: 2px;
    padding: .25em .5rem;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 12px;
    letter-spacing: .3px;
}

.order-badge.order-delivered {
    background: #C8E6C9;
    color: #256029;
}

.order-badge.order-cancelled {
    background: #FFCDD2;
    color: #C63737;
}

.order-badge.order-pending {
    background: #FEEDAF;
    color: #8A5340;
}

.order-badge.order-returned {
    background: #ECCFFF;
    color: #694382;
}

.image-text {
    vertical-align: middle;
    margin-left: .5rem;
}

.p-multiselect-representative-option {
    display: inline-block;
    vertical-align: middle;
}

.p-multiselect-representative-option img {
    vertical-align: middle;
    width: 24px;
}

.p-multiselect-representative-option span {
    margin-top: .125rem;
}

.p-column-filter {
    width: 100%;
}

.country-item {
    display: flex;
    align-items: center;
}

.country-item img.flag {
    width: 18px;
    margin-right: .5rem;
}

.flag {
    vertical-align: middle;
}

span.flag {
    width:44px;
    height:30px;
    display:inline-block;
}

img.flag {
    width:30px
}

                    
/*!********************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/components/visio/professionnal/VideoRoomProfessional.css ***!
  \********************************************************************************************************************************************************/
/* Conteneur principal */
.video-room {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 60vh;
  text-align: center;
}

/* Conteneur de la vidéo */
.video-container {
  position: relative;
  width: 100%;
  height: 70vh;
  background: black;
  border-radius: 10px;
  overflow: hidden;
}

/* Conteneur de la vidéo */
.appel-visio-container {
  position: relative;
  width: 100%;
  height: 40vh;
  background: black;
  border-radius: 10px;
  overflow: hidden;
}

/* Vidéo */
.video-stream {
  width: 100%;
  height: 100%;
  object-fit: cover; /* Remplir l'écran */
}

/* Message quand la caméra est désactivée */
.video-off {
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 20px;
  height: 100%;
  background: #333;
}

/* Nom de l'utilisateur */
.user-name {
  margin-top: 10px;
  font-size: 18px;
  font-weight: bold;
}

/* Boutons de contrôle */
.controls {
  margin-top: 10px;
}

.control-btn {
  padding: 10px 20px;
  font-size: 16px;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  transition: background 0.3s;
}

.control-btn.on {
  background: #28a745;
  color: white;
}

.control-btn.off {
  background: #dc3545;
  color: white;
}

/* Bouton rejoindre */
.join-btn {
  margin-top: 20px;
  padding: 10px 20px;
  font-size: 16px;
  background: #007bff;
  color: white;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  transition: background 0.3s;
}

.join-btn:hover {
  background: #0056b3;
}

/* 📱 Responsive pour mobile */
@media (max-width: 768px) {
  .video-container {
    width: 100%;
    height: 60vh; /* Ajuste la hauteur sur mobile */
  }
  .appel-visio-container {
    width: 100%;
    height: 30vh; /* Ajuste la hauteur sur mobile */
  }
  .video-stream {
    width: 100%;
    height: 100%;
  }

  .user-name {
    font-size: 16px;
  }

  .control-btn, .join-btn {
    width: 90%;
    max-width: 300px;
  }
}

/*!*************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/components/questionnaire/TodoList.css ***!
  \*************************************************************************************************************************************/
/* ===========================================
   TODO LIST - QUESTIONNAIRE CREATION
   Style: Glassmorphism (harmonisé avec questionnaire.css)
   =========================================== */

/* === FORM CONTAINER === */
.form-container {
  background: var(--glass-bg, rgba(255, 255, 255, 0.85));
  backdrop-filter: var(--glass-blur, blur(20px));
  -webkit-backdrop-filter: var(--glass-blur, blur(20px));
  padding: 2.5rem;
  border-radius: var(--radius-xl, 28px);
  border: 1px solid var(--glass-border-strong, rgba(255, 255, 255, 0.5));
  box-shadow: var(--shadow-lg, 0 16px 48px rgba(102, 126, 234, 0.16)),
              var(--shadow-inset, inset 0 2px 4px rgba(102, 126, 234, 0.06));
  max-width: 1400px;
  margin: 2rem auto;
  color: var(--text-primary, #1a1a2e);
  animation: fadeInUp 0.6s ease-out;
  position: relative;
  overflow: hidden;
}

.form-container::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: var(--gradient-primary, linear-gradient(135deg, #667eea 0%, #764ba2 100%));
  border-radius: var(--radius-xl, 28px) var(--radius-xl, 28px) 0 0;
}

/* === TITRES === */
h2 {
  font-size: 1.5rem;
  margin-bottom: 1.5rem;
  color: var(--text-primary, #1a1a2e);
  font-weight: 700;
  position: relative;
  padding-bottom: 0.75rem;
}

h2::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 60px;
  height: 3px;
  background: var(--gradient-primary, linear-gradient(135deg, #667eea 0%, #764ba2 100%));
  border-radius: var(--radius-full, 9999px);
}

/* === FIELD ROWS === */
.field-row {
  margin-bottom: 1.25rem;
  animation: fadeIn 0.3s ease-out;
}

/* === FORM GRID === */
.form-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  margin-bottom: 1.25rem;
}

@media (min-width: 768px) {
  .form-grid {
    grid-template-columns: 2fr 1fr;
  }
}

/* === WIDTH UTILITIES === */
.w-full {
  width: 100%;
}

/* === WARNING TEXT === */
.warning-text {
  color: var(--danger, #ef4444);
  font-weight: 500;
  padding: 1rem 1.25rem;
  background: linear-gradient(135deg, rgba(239, 68, 68, 0.1) 0%, rgba(220, 38, 38, 0.1) 100%);
  border: 1px solid rgba(239, 68, 68, 0.3);
  border-radius: var(--radius-md, 12px);
  display: flex;
  align-items: center;
  gap: 0.5rem;
  animation: fadeIn 0.3s ease-out;
}

.warning-text i {
  font-size: 1.1rem;
}

/* === QUESTION HIGHLIGHT === */
.question-highlight {
  border: 2px dashed var(--primary, #667eea) !important;
  background-color: rgba(102, 126, 234, 0.05);
  padding: 1rem;
  border-radius: var(--radius-md, 12px);
  transition: var(--transition-normal, 0.3s cubic-bezier(0.4, 0, 0.2, 1));
}

.question-highlight:focus-within {
  border-style: solid !important;
  box-shadow: 0 0 0 4px rgba(102, 126, 234, 0.15);
  background-color: rgba(102, 126, 234, 0.08);
}

/* === DROPDOWN MODE SELECTOR === */
.field-row .p-dropdown {
  background: var(--glass-bg-light, rgba(255, 255, 255, 0.95));
  border: 2px solid rgba(102, 126, 234, 0.2);
  border-radius: var(--radius-md, 12px);
  transition: var(--transition-normal, 0.3s cubic-bezier(0.4, 0, 0.2, 1));
}

.field-row .p-dropdown:hover {
  border-color: rgba(102, 126, 234, 0.4);
}

.field-row .p-dropdown.p-focus {
  border-color: var(--primary, #667eea);
  box-shadow: 0 0 0 4px rgba(102, 126, 234, 0.15);
}

/* === INPUT TEXT === */
.field-row .p-inputtext {
  background: var(--glass-bg-light, rgba(255, 255, 255, 0.95));
  border: 2px solid rgba(102, 126, 234, 0.2);
  border-radius: var(--radius-md, 12px);
  padding: 0.75rem 1rem;
  transition: var(--transition-normal, 0.3s cubic-bezier(0.4, 0, 0.2, 1));
  color: var(--text-primary, #1a1a2e);
}

.field-row .p-inputtext:hover {
  border-color: rgba(102, 126, 234, 0.4);
}

.field-row .p-inputtext:focus {
  border-color: var(--primary, #667eea);
  box-shadow: 0 0 0 4px rgba(102, 126, 234, 0.15);
  outline: none;
}

.field-row .p-inputtext::placeholder {
  color: var(--text-muted, #8888a0);
}

/* === BUTTON STYLES === */
.field-row .p-button {
  background: var(--gradient-primary, linear-gradient(135deg, #667eea 0%, #764ba2 100%));
  border: none;
  border-radius: var(--radius-md, 12px);
  padding: 0.75rem 1.5rem;
  font-weight: 600;
  transition: var(--transition-normal, 0.3s cubic-bezier(0.4, 0, 0.2, 1));
  box-shadow: var(--shadow-sm, 0 2px 8px rgba(102, 126, 234, 0.08));
}

.field-row .p-button:hover {
  background: var(--gradient-primary-hover, linear-gradient(135deg, #5a6fd1 0%, #6a4090 100%));
  transform: translateY(-2px);
  box-shadow: var(--shadow-md, 0 8px 24px rgba(102, 126, 234, 0.12));
}

.field-row .p-button:active {
  transform: translateY(0);
}

.field-row .p-button.p-button-success {
  background: var(--glass-bg, rgba(255, 255, 255, 0.85));
  color: var(--text-primary, #1a1a2e);
  border: 2px solid rgba(102, 126, 234, 0.3);
}

.field-row .p-button.p-button-success:hover {
  background: rgba(102, 126, 234, 0.1);
  border-color: var(--primary, #667eea);
  color: var(--primary, #667eea);
}

/* === MULTISELECT === */
.form-grid .p-multiselect {
  background: var(--glass-bg-light, rgba(255, 255, 255, 0.95));
  border: 2px solid rgba(102, 126, 234, 0.2);
  border-radius: var(--radius-md, 12px);
  transition: var(--transition-normal, 0.3s cubic-bezier(0.4, 0, 0.2, 1));
}

.form-grid .p-multiselect:hover {
  border-color: rgba(102, 126, 234, 0.4);
}

.form-grid .p-multiselect.p-focus {
  border-color: var(--primary, #667eea);
  box-shadow: 0 0 0 4px rgba(102, 126, 234, 0.15);
}

.form-grid .p-multiselect .p-multiselect-label {
  color: var(--text-primary, #1a1a2e);
}

.form-grid .p-multiselect .p-multiselect-token {
  background: var(--gradient-primary, linear-gradient(135deg, #667eea 0%, #764ba2 100%));
  color: white;
  border-radius: var(--radius-sm, 8px);
  padding: 0.25rem 0.75rem;
}

/* === TEXTAREA === */
.form-grid .p-inputtextarea {
  background: var(--glass-bg-light, rgba(255, 255, 255, 0.95));
  border: 2px dashed var(--primary, #667eea);
  border-radius: var(--radius-md, 12px);
  padding: 1rem;
  transition: var(--transition-normal, 0.3s cubic-bezier(0.4, 0, 0.2, 1));
  color: var(--text-primary, #1a1a2e);
  resize: vertical;
  min-height: 80px;
}

.form-grid .p-inputtextarea:hover {
  background: rgba(102, 126, 234, 0.03);
}

.form-grid .p-inputtextarea:focus {
  border-style: solid;
  border-color: var(--primary, #667eea);
  box-shadow: 0 0 0 4px rgba(102, 126, 234, 0.15);
  background: rgba(102, 126, 234, 0.05);
  outline: none;
}

.form-grid .p-inputtextarea::placeholder {
  color: var(--text-muted, #8888a0);
}

/* ===========================================
   RESPONSIVE MOBILE TODOLIST
   =========================================== */

@media (max-width: 1024px) {
  .form-container {
    padding: 1.5rem;
    margin: 1rem;
    border-radius: var(--radius-lg, 20px);
  }
}

@media (max-width: 768px) {
  .form-container {
    margin: 0 0 1rem 0;
    padding: 1.25rem;
    border-radius: var(--radius-lg, 20px);
    background: white;
    box-shadow: 0 4px 20px rgba(102, 126, 234, 0.1);
    border: none;
  }

  .form-container::before {
    height: 3px;
    border-radius: var(--radius-lg, 20px) var(--radius-lg, 20px) 0 0;
  }

  .form-grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  h2 {
    font-size: 1.1rem;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
  }

  h2::after {
    width: 40px;
    height: 2px;
  }

  .field-row {
    margin-bottom: 1rem;
  }

  /* Dropdown mode - Style carte */
  .field-row .p-dropdown {
    font-size: 16px !important;
    padding: 0.875rem 1rem;
    min-height: 52px;
    border-radius: var(--radius-md, 12px);
    background: linear-gradient(135deg, rgba(102, 126, 234, 0.05) 0%, rgba(118, 75, 162, 0.05) 100%);
    border: 2px solid rgba(102, 126, 234, 0.15);
  }

  .field-row .p-dropdown .p-dropdown-label {
    font-weight: 600;
    color: var(--text-primary, #1a1a2e);
  }

  .field-row .p-dropdown .p-dropdown-trigger {
    width: 3rem;
  }

  /* Input titre questionnaire */
  .field-row .p-inputtext {
    font-size: 16px !important;
    padding: 0.875rem 1rem;
    min-height: 52px;
    border-radius: var(--radius-md, 12px);
  }

  /* Textarea question */
  .form-grid .p-inputtextarea {
    font-size: 16px !important;
    padding: 1rem;
    min-height: 100px;
    border-radius: var(--radius-md, 12px);
    border: 2px solid rgba(102, 126, 234, 0.2);
    border-style: solid;
    background: white;
  }

  .form-grid .p-inputtextarea:focus {
    border-color: var(--primary, #667eea);
    background: rgba(102, 126, 234, 0.02);
  }

  /* Multiselect questionnaires */
  .form-grid .p-multiselect {
    font-size: 16px !important;
    min-height: 52px;
    border-radius: var(--radius-md, 12px);
  }

  .form-grid .p-multiselect .p-multiselect-label {
    padding: 0.75rem 1rem;
  }

  .form-grid .p-multiselect .p-multiselect-token {
    padding: 0.4rem 0.75rem;
    font-size: 0.85rem;
    margin: 0.2rem;
  }

  /* Bouton principal */
  .field-row .p-button {
    width: 100%;
    padding: 1rem 1.5rem;
    font-size: 1rem;
    font-weight: 600;
    min-height: 52px;
    border-radius: var(--radius-md, 12px);
    justify-content: center;
  }

  .field-row .p-button:active {
    transform: scale(0.98);
  }

  .field-row .p-button .p-button-icon {
    font-size: 1.1rem;
  }

  /* Warning message */
  .warning-text {
    padding: 1rem;
    font-size: 0.9rem;
    border-radius: var(--radius-md, 12px);
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.08) 0%, rgba(220, 38, 38, 0.08) 100%);
  }

  .warning-text i {
    font-size: 1.25rem;
    flex-shrink: 0;
  }

  /* Question highlight */
  .question-highlight {
    padding: 1rem;
    border-width: 2px;
  }
}

@media (max-width: 480px) {
  .form-container {
    padding: 1rem;
    border-radius: var(--radius-md, 12px);
  }

  .field-row .p-dropdown,
  .field-row .p-inputtext {
    padding: 0.75rem;
    min-height: 48px;
  }

  .form-grid .p-inputtextarea {
    padding: 0.875rem;
    min-height: 90px;
  }

  .field-row .p-button {
    padding: 0.875rem 1rem;
    min-height: 48px;
    font-size: 0.95rem;
  }

  .warning-text {
    padding: 0.875rem;
    font-size: 0.85rem;
  }
}

/* === ANIMATIONS === */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

/* Désactiver animations sur mobile pour performance */
@media (max-width: 768px) {
  .form-container,
  .field-row {
    animation: none;
  }
}

/*!******************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/components/questionnaire/questionnaire.css ***!
  \******************************************************************************************************************************************/
/* ===========================================
   QUESTIONNAIRE DESIGN SYSTEM
   Style: Glassmorphism
   Palette: Violet/Bleu (#667eea → #764ba2)
   IMPORTANT: Tous les styles sont scopés à .questionnaire-page
   =========================================== */

/* === VARIABLES CSS (globales, ok) === */
.questionnaire-page {
  --q-primary: #667eea;
  --q-primary-dark: #5a6fd1;
  --q-primary-light: #8b9cf5;
  --q-secondary: #764ba2;
  --q-gradient-primary: linear-gradient(135deg, #111524 0%, #764ba2 100%);
  --q-gradient-primary-hover: linear-gradient(135deg, #5a6fd1 0%, #6a4090 100%);

  /* Glassmorphism */
  --q-glass-bg: rgba(255, 255, 255, 0.85);
  --q-glass-bg-light: rgba(255, 255, 255, 0.95);
  --q-glass-bg-dark: rgba(255, 255, 255, 0.7);
  --q-glass-border: rgba(255, 255, 255, 0.3);
  --q-glass-border-strong: rgba(255, 255, 255, 0.5);
  --q-glass-blur: blur(20px);

  /* Ombres */
  --q-shadow-sm: 0 2px 8px rgba(102, 126, 234, 0.08);
  --q-shadow-md: 0 8px 24px rgba(102, 126, 234, 0.12);
  --q-shadow-lg: 0 16px 48px rgba(102, 126, 234, 0.16);
  --q-shadow-xl: 0 24px 64px rgba(102, 126, 234, 0.2);
  --q-shadow-glow: 0 0 40px rgba(102, 126, 234, 0.2);
  --q-shadow-inset: inset 0 2px 4px rgba(102, 126, 234, 0.06);

  /* Rayons */
  --q-radius-sm: 8px;
  --q-radius-md: 12px;
  --q-radius-lg: 20px;
  --q-radius-xl: 28px;
  --q-radius-full: 9999px;

  /* Transitions */
  --q-transition-fast: 0.15s ease;
  --q-transition-normal: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  --q-transition-slow: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  --q-transition-bounce: 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);

  /* Texte */
  --q-text-primary: #1a1a2e;
  --q-text-secondary: #4a4a68;
  --q-text-muted: #8888a0;
  --q-text-light: #b0b0c0;

  /* États */
  --q-success: #10b981;
  --q-warning: #f59e0b;
  --q-danger: #ef4444;
  --q-info: #3b82f6;
}

/* === ANIMATIONS KEYFRAMES === */
@keyframes q-fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes q-fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes q-slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes q-pulse {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(102, 126, 234, 0.4);
  }
  50% {
    box-shadow: 0 0 0 12px rgba(102, 126, 234, 0);
  }
}

/* === CONTAINER PRINCIPAL === */
.questionnaire-page .form-container {
  background: var(--q-glass-bg);
  backdrop-filter: var(--q-glass-blur);
  -webkit-backdrop-filter: var(--q-glass-blur);
  padding: 2.5rem;
  border-radius: var(--q-radius-xl);
  border: 1px solid var(--q-glass-border-strong);
  box-shadow: var(--q-shadow-lg), var(--q-shadow-inset);
  max-width: 1400px;
  margin: 2rem auto;
  color: var(--q-text-primary);
  animation: q-fadeInUp 0.6s ease-out;
  position: relative;
  overflow: hidden;
}

.questionnaire-page .form-container::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: var(--q-gradient-primary);
  border-radius: var(--q-radius-xl) var(--q-radius-xl) 0 0;
}

/* === PANEL HEADER (QUESTIONNAIRE) === */
.questionnaire-page .p-panel {
  background: transparent;
  border: none;
  margin-bottom: 1.5rem;
  border-radius: var(--q-radius-lg);
  overflow: hidden;
  box-shadow: var(--q-shadow-md);
  transition: var(--q-transition-normal);
  animation: q-fadeInUp 0.5s ease-out backwards;
}

.questionnaire-page .p-panel:nth-child(1) { animation-delay: 0.1s; }
.questionnaire-page .p-panel:nth-child(2) { animation-delay: 0.2s; }
.questionnaire-page .p-panel:nth-child(3) { animation-delay: 0.3s; }
.questionnaire-page .p-panel:nth-child(4) { animation-delay: 0.4s; }
.questionnaire-page .p-panel:nth-child(5) { animation-delay: 0.5s; }

.questionnaire-page .p-panel:hover {
  box-shadow: var(--q-shadow-xl);
  transform: translateY(-2px);
}

.questionnaire-page .p-panel-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: var(--q-glass-bg-light);
  backdrop-filter: var(--q-glass-blur);
  -webkit-backdrop-filter: var(--q-glass-blur);
  padding: 1rem 1.5rem;
  border: none;
  border-bottom: 1px solid rgba(102, 126, 234, 0.1);
  transition: var(--q-transition-normal);
}

.questionnaire-page .p-panel-header:hover {
  background: rgba(255, 255, 255, 0.98);
}

.questionnaire-page .p-panel-content {
  background: var(--q-glass-bg-light);
  border: none;
  padding: 1.5rem;
}

.questionnaire-page .p-panel-header-icon {
  margin-left: 0.5rem;
  color: var(--q-text-secondary);
  transition: var(--q-transition-normal);
  border-radius: var(--q-radius-sm);
  padding: 0.5rem;
}

.questionnaire-page .p-panel-header-icon:hover {
  color: var(--q-primary);
  background: rgba(102, 126, 234, 0.1);
  transform: scale(1.1);
}

/* Taille des icônes SVG en mode bureau */
@media (min-width: 769px) {
  .questionnaire-page .header-actions button.p-panel-header-icon.p-link {
    width: auto !important;
    height: auto !important;
    min-width: 40px !important;
    min-height: 40px !important;
    padding: 8px !important;
  }

  .questionnaire-page .header-actions button.p-panel-header-icon.p-link svg,
  .questionnaire-page .header-actions .tooltip-eye svg,
  .questionnaire-page .header-actions .tooltip-edit svg,
  .questionnaire-page .header-actions .tooltip-delete svg {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    display: block !important;
  }
}

/* Avatar dans Panel Header */
.questionnaire-page .p-panel .p-avatar {
  background: var(--q-gradient-primary);
  color: white;
  font-weight: 700;
  font-size: 1.1rem;
  box-shadow: var(--q-shadow-md);
  transition: var(--q-transition-bounce);
}

.questionnaire-page .p-panel:hover .p-avatar {
  transform: scale(1.05);
  box-shadow: var(--q-shadow-lg), var(--q-shadow-glow);
}

/* === ACCORDION (QUESTIONS) === */
.questionnaire-page .custom-accordion {
  margin-bottom: 1rem;
}

/* Le header parent reçoit la couleur via headerStyle de React */
.questionnaire-page .custom-accordion .p-accordion-header {
  border: none;
  margin-bottom: 0.5rem;
  border-radius: var(--q-radius-md);
  overflow: hidden;
}

.questionnaire-page .custom-accordion .p-accordion-header-link {
  display: block !important;
  background: inherit !important;
  color: inherit !important;
  backdrop-filter: var(--q-glass-blur);
  -webkit-backdrop-filter: var(--q-glass-blur);
  border: 1px solid rgba(102, 126, 234, 0.15);
  border-radius: var(--q-radius-md) !important;
  padding: 1rem 1.25rem;
  transition: var(--q-transition-normal);
  position: relative;
  overflow: hidden;
}

.questionnaire-page .custom-accordion .p-accordion-header-link::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: var(--q-gradient-primary);
  opacity: 0;
  transition: var(--q-transition-normal);
}

.questionnaire-page .custom-accordion .p-accordion-header-link:hover {
  filter: brightness(0.95);
  border-color: rgba(102, 126, 234, 0.3);
  box-shadow: var(--q-shadow-md);
  transform: translateX(4px);
}

.questionnaire-page .custom-accordion .p-accordion-header-link:hover::before {
  opacity: 1;
}

.questionnaire-page .custom-accordion .p-accordion-content {
  padding: 1.5rem;
  background: var(--q-glass-bg-light);
  border: 1px solid rgba(102, 126, 234, 0.1);
  border-top: none;
  border-radius: 0 0 var(--q-radius-md) var(--q-radius-md);
  animation: q-slideDown 0.3s ease-out;
}

/* === INPUTS ET CONTROLES === */
.questionnaire-page .p-inputtext,
.questionnaire-page .p-inputtextarea,
.questionnaire-page .p-dropdown,
.questionnaire-page .p-multiselect {
  border: 2px solid rgba(102, 126, 234, 0.2);
  border-radius: var(--q-radius-md);
  padding: 0.75rem 1rem;
  transition: var(--q-transition-normal);
  background: var(--q-glass-bg-light);
  color: var(--q-text-primary);
}

.questionnaire-page .p-inputtext:hover,
.questionnaire-page .p-inputtextarea:hover,
.questionnaire-page .p-dropdown:hover,
.questionnaire-page .p-multiselect:hover {
  border-color: rgba(102, 126, 234, 0.4);
}

.questionnaire-page .p-inputtext:focus,
.questionnaire-page .p-inputtextarea:focus,
.questionnaire-page .p-dropdown:focus,
.questionnaire-page .p-multiselect:focus,
.questionnaire-page .p-inputtext:focus-within,
.questionnaire-page .p-dropdown.p-focus,
.questionnaire-page .p-multiselect.p-focus {
  border-color: var(--q-primary);
  box-shadow: 0 0 0 4px rgba(102, 126, 234, 0.15);
  outline: none;
}

.questionnaire-page .p-inputtext::placeholder,
.questionnaire-page .p-inputtextarea::placeholder {
  color: var(--q-text-muted);
  transition: var(--q-transition-normal);
}

/* === BOUTONS === */
.questionnaire-page .p-button {
  background: var(--q-gradient-primary);
  border: none;
  border-radius: var(--q-radius-md);
  padding: 0.75rem 1.5rem;
  font-weight: 600;
  transition: var(--q-transition-normal);
  position: relative;
  overflow: hidden;
  box-shadow: var(--q-shadow-sm);
}

.questionnaire-page .p-button:hover {
  background: var(--q-gradient-primary-hover);
  transform: translateY(-2px);
  box-shadow: var(--q-shadow-md);
}

.questionnaire-page .p-button:active {
  transform: translateY(0);
  box-shadow: var(--q-shadow-sm);
}

.questionnaire-page .p-button.p-button-success {
  background: linear-gradient(135deg, #1a2622 0%, #059669 100%);
}

.questionnaire-page .p-button.p-button-danger {
  background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
}

.questionnaire-page .p-button.p-button-secondary {
  background: var(--q-glass-bg);
  color: var(--q-text-primary);
  border: 2px solid rgba(102, 126, 234, 0.3);
}

.questionnaire-page .p-button.p-button-secondary:hover {
  background: rgba(102, 126, 234, 0.1);
  border-color: var(--q-primary);
}

.questionnaire-page .p-button.p-button-text {
  background: transparent;
  color: var(--q-primary);
  box-shadow: none;
}

.questionnaire-page .p-button.p-button-text:hover {
  background: rgba(102, 126, 234, 0.1);
  transform: none;
}

/* === RADIO BUTTONS === */
.questionnaire-page .p-radiobutton .p-radiobutton-box {
  border: 2px solid rgba(102, 126, 234, 0.3);
  background: var(--q-glass-bg-light);
  transition: var(--q-transition-normal);
}

.questionnaire-page .p-radiobutton .p-radiobutton-box:hover {
  border-color: var(--q-primary);
}

.questionnaire-page .p-radiobutton .p-radiobutton-box.p-highlight {
  background: var(--q-gradient-primary);
  border-color: var(--q-primary);
}

.questionnaire-page .p-radiobutton .p-radiobutton-box .p-radiobutton-icon {
  background: white;
}

/* === CHECKBOXES === */
.questionnaire-page .p-checkbox .p-checkbox-box {
  border: 2px solid rgba(102, 126, 234, 0.3);
  border-radius: var(--q-radius-sm);
  background: var(--q-glass-bg-light);
  transition: var(--q-transition-normal);
}

.questionnaire-page .p-checkbox .p-checkbox-box:hover {
  border-color: var(--q-primary);
}

.questionnaire-page .p-checkbox .p-checkbox-box.p-highlight {
  background: var(--q-gradient-primary);
  border-color: var(--q-primary);
}

/* === DIALOGS === */
.questionnaire-page .p-dialog {
  border-radius: var(--q-radius-xl);
  overflow: hidden;
  box-shadow: var(--q-shadow-xl);
  border: 1px solid var(--q-glass-border);
  animation: q-fadeInUp 0.3s ease-out;
}

.questionnaire-page .p-dialog .p-dialog-header {
  background: var(--q-glass-bg-light);
  backdrop-filter: var(--q-glass-blur);
  -webkit-backdrop-filter: var(--q-glass-blur);
  border-bottom: 1px solid rgba(102, 126, 234, 0.1);
  padding: 1.25rem 1.5rem;
}

.questionnaire-page .p-dialog .p-dialog-header .p-dialog-title {
  font-weight: 700;
  color: var(--q-text-primary);
  font-size: 1.25rem;
}

.questionnaire-page .p-dialog .p-dialog-content {
  background: var(--q-glass-bg);
  padding: 1.5rem;
}

.questionnaire-page .p-dialog .p-dialog-footer {
  background: var(--q-glass-bg-light);
  border-top: 1px solid rgba(102, 126, 234, 0.1);
  padding: 1rem 1.5rem;
}

/* === COLOR PICKER === */
.questionnaire-page .p-colorpicker {
  transition: var(--q-transition-normal);
  touch-action: manipulation;
}

.questionnaire-page .p-colorpicker:hover {
  transform: scale(1.1);
}

.questionnaire-page .p-colorpicker-preview {
  border-radius: var(--q-radius-sm);
  box-shadow: var(--q-shadow-sm);
  border: 2px solid rgba(255, 255, 255, 0.5);
  touch-action: manipulation;
}

/* === DROPDOWN === */
.questionnaire-page .p-dropdown-panel {
  background: var(--q-glass-bg-light);
  backdrop-filter: var(--q-glass-blur);
  -webkit-backdrop-filter: var(--q-glass-blur);
  border-radius: var(--q-radius-md);
  box-shadow: var(--q-shadow-lg);
  border: 1px solid var(--q-glass-border);
}

.questionnaire-page .p-dropdown-item {
  padding: 0.75rem 1rem;
  transition: var(--q-transition-fast);
}

.questionnaire-page .p-dropdown-item:hover {
  background: rgba(102, 126, 234, 0.1);
  color: var(--q-primary);
}

.questionnaire-page .p-dropdown-item.p-highlight {
  background: var(--q-gradient-primary);
  color: white;
}

/* === TOAST === */
.questionnaire-page .p-toast {
  opacity: 1;
}

.questionnaire-page .p-toast .p-toast-message {
  border-radius: var(--q-radius-lg);
  backdrop-filter: var(--q-glass-blur);
  -webkit-backdrop-filter: var(--q-glass-blur);
  box-shadow: var(--q-shadow-lg);
  animation: q-slideDown 0.3s ease-out;
}

.questionnaire-page .p-toast .p-toast-message-success {
  background: linear-gradient(135deg, rgba(16, 185, 129, 0.95) 0%, rgba(5, 150, 105, 0.95) 100%);
  border-left: 4px solid #10b981;
}

.questionnaire-page .p-toast .p-toast-message-error {
  background: linear-gradient(135deg, rgba(239, 68, 68, 0.95) 0%, rgba(220, 38, 38, 0.95) 100%);
  border-left: 4px solid #ef4444;
}

.questionnaire-page .p-toast .p-toast-message-warn {
  background: linear-gradient(135deg, rgba(245, 158, 11, 0.95) 0%, rgba(217, 119, 6, 0.95) 100%);
  border-left: 4px solid #f59e0b;
}

.questionnaire-page .p-toast .p-toast-message-info {
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.95) 0%, rgba(37, 99, 235, 0.95) 100%);
  border-left: 4px solid #3b82f6;
}

/* === TOOLTIP === */
.questionnaire-page .p-tooltip .p-tooltip-text {
  background: var(--q-text-primary);
  border-radius: var(--q-radius-sm);
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
  box-shadow: var(--q-shadow-md);
}

/* === DIVIDER === */
.questionnaire-page .p-divider {
  border-color: rgba(102, 126, 234, 0.15);
}

.questionnaire-page .p-divider.p-divider-vertical::before {
  border-left-color: rgba(102, 126, 234, 0.2);
}

/* === EDITOR === */
.questionnaire-page .p-editor-container {
  border-radius: var(--q-radius-md);
  overflow: hidden;
  border: 2px solid rgba(102, 126, 234, 0.2);
  transition: var(--q-transition-normal);
}

.questionnaire-page .p-editor-container:focus-within {
  border-color: var(--q-primary);
  box-shadow: 0 0 0 4px rgba(102, 126, 234, 0.15);
}

.questionnaire-page .p-editor-toolbar {
  background: var(--q-glass-bg-light);
  border-bottom: 1px solid rgba(102, 126, 234, 0.1);
}

.questionnaire-page .p-editor-content {
  background: var(--q-glass-bg-light);
}

.questionnaire-page .p-editor-content .ql-editor {
  min-height: 100px;
  font-size: 0.95rem;
  color: var(--q-text-primary);
}

/* === SLIDER === */
.questionnaire-page .p-slider {
  background: rgba(102, 126, 234, 0.2);
  border-radius: var(--q-radius-full);
}

.questionnaire-page .p-slider .p-slider-range {
  background: var(--q-gradient-primary);
}

.questionnaire-page .p-slider .p-slider-handle {
  background: white;
  border: 3px solid var(--q-primary);
  box-shadow: var(--q-shadow-md);
  transition: var(--q-transition-normal);
}

.questionnaire-page .p-slider .p-slider-handle:hover {
  transform: scale(1.2);
  box-shadow: var(--q-shadow-lg), var(--q-shadow-glow);
}

/* === AUTOCOMPLETE === */
.questionnaire-page .p-autocomplete-panel {
  background: var(--q-glass-bg-light);
  backdrop-filter: var(--q-glass-blur);
  -webkit-backdrop-filter: var(--q-glass-blur);
  border-radius: var(--q-radius-md);
  box-shadow: var(--q-shadow-lg);
  border: 1px solid var(--q-glass-border);
}

.questionnaire-page .p-autocomplete-item {
  padding: 0.75rem 1rem;
  transition: var(--q-transition-fast);
}

.questionnaire-page .p-autocomplete-item:hover {
  background: rgba(102, 126, 234, 0.1);
}

.questionnaire-page .p-autocomplete-item.p-highlight {
  background: var(--q-gradient-primary);
  color: white;
}

.questionnaire-page .p-autocomplete-multiple-container {
  background: var(--q-glass-bg-light);
  border: 2px solid rgba(102, 126, 234, 0.2);
  border-radius: var(--q-radius-md);
  padding: 0.5rem;
  transition: var(--q-transition-normal);
}

.questionnaire-page .p-autocomplete-multiple-container:hover {
  border-color: rgba(102, 126, 234, 0.4);
}

.questionnaire-page .p-autocomplete-multiple-container.p-focus {
  border-color: var(--q-primary);
  box-shadow: 0 0 0 4px rgba(102, 126, 234, 0.15);
}

.questionnaire-page .p-autocomplete-token {
  background: var(--q-gradient-primary);
  color: white;
  border-radius: var(--q-radius-sm);
  padding: 0.25rem 0.75rem;
  margin: 0.125rem;
}

/* === ICONES ACTIONS === */
.questionnaire-page .tooltip-eye,
.questionnaire-page .tooltip-edit,
.questionnaire-page .tooltip-delete,
.questionnaire-page .tooltip-color,
.questionnaire-page .tooltip-edit-question,
.questionnaire-page .tooltip-delete-question {
  border: none;
  background: transparent;
  cursor: pointer;
  padding: 0.5rem;
  border-radius: var(--q-radius-sm);
  transition: var(--q-transition-normal);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.questionnaire-page .tooltip-eye:hover,
.questionnaire-page .tooltip-edit:hover,
.questionnaire-page .tooltip-color:hover,
.questionnaire-page .tooltip-edit-question:hover {
  background: rgba(102, 126, 234, 0.1);
  transform: scale(1.1);
}

.questionnaire-page .tooltip-delete:hover,
.questionnaire-page .tooltip-delete-question:hover {
  background: rgba(239, 68, 68, 0.1);
  transform: scale(1.1);
}

/* === FORM ELEMENTS === */
.questionnaire-page .field {
  margin-bottom: 1.25rem;
}

.questionnaire-page .field label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
  color: var(--q-text-secondary);
  font-size: 0.9rem;
}

.questionnaire-page .p-field {
  margin-bottom: 1.25rem;
}

.questionnaire-page .p-field label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
  color: var(--q-text-secondary);
}

.questionnaire-page .p-fluid .p-inputtext,
.questionnaire-page .p-fluid .p-dropdown,
.questionnaire-page .p-fluid .p-multiselect {
  width: 100%;
}

/* ===========================================
   RESPONSIVE DESIGN - MOBILE
   =========================================== */

/* Tablet (768px - 1024px) */
@media (max-width: 1024px) {
  .questionnaire-page .form-container {
    padding: 1.5rem;
    margin: 1rem;
    border-radius: var(--q-radius-lg);
  }

  .questionnaire-page .p-panel-header {
    padding: 1rem;
  }

  .questionnaire-page .p-dialog {
    width: 85vw !important;
    max-width: 600px !important;
  }
}

/* ===========================================
   MOBILE DESIGN (< 768px)
   =========================================== */
@media (max-width: 768px) {
  /* === CONTAINER MOBILE === */
  .questionnaire-page .form-container {
    padding: 0;
    margin: 0;
    border-radius: 0;
    border: none;
    box-shadow: none;
    background: linear-gradient(180deg, #f8f9ff 0%, #eef1ff 100%);
  }

  .questionnaire-page .form-container::before {
    display: none;
  }

  /* === PANEL QUESTIONNAIRE MOBILE === */
  .questionnaire-page .p-panel {
    margin: 0 0 1rem 0;
    border-radius: var(--q-radius-lg);
    box-shadow: 0 4px 20px rgba(102, 126, 234, 0.1);
    overflow: visible;
  }

  .questionnaire-page .p-panel-header {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 0;
    background: transparent;
    border: none;
  }

  /* Titre du questionnaire - Style carte */
  .questionnaire-page .p-panel-header > div:first-child {
    background:rgb(4 1 1);
    padding: 1.25rem 1rem;
    border-radius: var(--q-radius-lg) var(--q-radius-lg) 0 0;
    display: flex;
    align-items: center;
    gap: 0.75rem;
  }

  .questionnaire-page .p-panel-header > div:first-child .p-avatar {
    background: rgba(255, 255, 255, 0.25);
    color: white;
    width: 2.5rem;
    height: 2.5rem;
    font-size: 1rem;
    font-weight: 700;
    flex-shrink: 0;
  }

  .questionnaire-page .p-panel-header > div:first-child span {
    color: white !important;
    font-size: 1.1rem !important;
    font-weight: 600 !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.1);
  }

  /* Barre d'actions du questionnaire */
  .questionnaire-page .p-panel-header > div:last-child,
  .questionnaire-page .p-panel-header .header-actions {
    background: white;
    padding: 0.75rem;
    display: flex;
    justify-content: space-around;
    align-items: center;
    border-bottom: 1px solid rgba(102, 126, 234, 0.1);
    gap: 0.25rem;
  }

  .questionnaire-page .p-panel-header .p-panel-header-icon {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--q-radius-md);
    margin: 0;
    padding: 0;
    background: rgba(102, 126, 234, 0.08);
    transition: var(--q-transition-fast);
  }

  .questionnaire-page .p-panel-header .p-panel-header-icon:active {
    transform: scale(0.95);
    background: rgba(102, 126, 234, 0.15);
  }

  .questionnaire-page .p-panel-header .p-panel-header-icon svg {
    width: 22px !important;
    height: 22px !important;
  }

  /* ColorPicker mobile */
  .questionnaire-page .p-panel-header .p-colorpicker {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .questionnaire-page .p-panel-header .p-colorpicker-preview {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 3px solid white;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
  }

  /* Contenu du panel */
  .questionnaire-page .p-panel-content {
    padding: 1rem;
    background: white;
    border-radius: 0 0 var(--q-radius-lg) var(--q-radius-lg);
  }

  /* === ACCORDION QUESTIONS MOBILE === */
  .questionnaire-page .custom-accordion {
    margin-bottom: 0.75rem;
  }

  .questionnaire-page .custom-accordion .p-accordion-header {
    margin-bottom: 0;
    border-radius: var(--q-radius-md);
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(102, 126, 234, 0.08);
  }

  .questionnaire-page .custom-accordion .p-accordion-header-link {
    padding: 0;
    border: none;
    border-radius: var(--q-radius-md);
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }

  /* Titre de la question - première ligne */
  .questionnaire-page .custom-accordion .p-accordion-header-link > .p-accordion-toggle-icon {
    position: absolute;
    right: 1rem;
    top: 1rem;
    color: inherit;
    opacity: 0.7;
  }

  .questionnaire-page .custom-accordion .p-accordion-header-link .p-accordion-header-text {
    width: 100%;
  }

  /* Container du header de question */
  .questionnaire-page .custom-accordion .p-accordion-header-link .d-flex.align-items-center.w-100 {
    flex-direction: column;
    align-items: stretch !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Titre de la question */
  .questionnaire-page .custom-accordion .p-accordion-header-link .font-weight-bold {
    padding: 1rem;
    padding-right: 2.5rem;
    font-size: 0.95rem;
    line-height: 1.4;
    border-bottom: 1px solid rgba(102, 126, 234, 0.1);
  }

  /* Container des types et actions */
  .questionnaire-page .custom-accordion .p-accordion-header-link .d-flex.align-items-center.ml-auto,
  .questionnaire-page .custom-accordion .p-accordion-header-link .d-flex.align-items-center.flex-wrap {
    width: 100% !important;
    margin: 0 !important;
    padding: 0.75rem;
    background: rgba(102, 126, 234, 0.03);
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) auto auto;
    gap: 0.5rem;
    align-items: center;
  }

  /* Boutons de type de question */
  .questionnaire-page .custom-accordion .p-accordion-header-link label {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0.6rem 0.25rem;
    margin: 0 !important;
    background: white;
    border-radius: var(--q-radius-sm);
    border: 2px solid transparent;
    transition: var(--q-transition-fast);
    min-height: 52px;
  }

  .questionnaire-page .custom-accordion .p-accordion-header-link label:has(.p-radiobutton-checked) {
    border-color: var(--q-primary);
    background: rgba(102, 126, 234, 0.1);
  }

  .questionnaire-page .custom-accordion .p-accordion-header-link label .p-radiobutton {
    display: none;
  }

  .questionnaire-page .custom-accordion .p-accordion-header-link label svg {
    width: 20px !important;
    height: 20px !important;
    margin: 0 !important;
  }

  /* Divider caché sur mobile */
  .questionnaire-page .custom-accordion .p-divider {
    display: none !important;
  }

  /* Boutons edit/delete */
  .questionnaire-page .custom-accordion .p-accordion-header-link button.p-panel-header-icon {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border-radius: var(--q-radius-sm);
    padding: 0;
    margin: 0 !important;
  }

  .questionnaire-page .custom-accordion .p-accordion-header-link button.tooltip-edit-question svg,
  .questionnaire-page .custom-accordion .p-accordion-header-link button.tooltip-delete-question svg {
    width: 18px !important;
    height: 18px !important;
  }

  /* Contenu accordéon */
  .questionnaire-page .custom-accordion .p-accordion-content {
    padding: 1rem;
    border: none;
    border-radius: 0 0 var(--q-radius-md) var(--q-radius-md);
    margin-top: -1px;
  }

  /* === INPUTS MOBILE === */
  .questionnaire-page .p-inputtext,
  .questionnaire-page .p-inputtextarea,
  .questionnaire-page .p-dropdown,
  .questionnaire-page .p-multiselect {
    font-size: 16px !important; /* Empêche le zoom iOS */
    padding: 0.875rem 1rem;
    border-radius: var(--q-radius-md);
    border: 2px solid rgba(102, 126, 234, 0.15);
    background: white;
  }

  .questionnaire-page .p-inputtext:focus,
  .questionnaire-page .p-inputtextarea:focus,
  .questionnaire-page .p-dropdown.p-focus,
  .questionnaire-page .p-multiselect.p-focus {
    border-color: var(--q-primary);
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
  }

  /* === BOUTONS MOBILE === */
  .questionnaire-page .p-button {
    width: 100%;
    padding: 1rem;
    font-size: 1rem;
    font-weight: 600;
    border-radius: var(--q-radius-md);
    min-height: 52px;
  }

  .questionnaire-page .p-button:active {
    transform: scale(0.98);
  }

  /* === DIALOGS MOBILE === */
  .questionnaire-page .p-dialog {
    width: 100vw !important;
    max-width: 100vw !important;
    height: 100vh !important;
    max-height: 100vh !important;
    margin: 0 !important;
    border-radius: 0 !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
  }

  .questionnaire-page .p-dialog .p-dialog-header {
    padding: 1rem;
    background: var(--q-gradient-primary);
    border: none;
  }

  .questionnaire-page .p-dialog .p-dialog-title {
    color: white !important;
    font-size: 1.1rem;
  }

  .questionnaire-page .p-dialog .p-dialog-header-icon {
    color: white;
    width: 40px;
    height: 40px;
  }

  .questionnaire-page .p-dialog .p-dialog-content {
    padding: 1rem;
    flex: 1;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  .questionnaire-page .p-dialog .p-dialog-footer {
    padding: 1rem;
    border-top: 1px solid rgba(102, 126, 234, 0.1);
    background: white;
  }

  .questionnaire-page .p-dialog .p-dialog-footer .p-button {
    margin: 0;
  }

  /* === AUTOCOMPLETE MOBILE === */
  .questionnaire-page .p-autocomplete-multiple-container {
    min-height: 52px;
    padding: 0.5rem;
    gap: 0.5rem;
  }

  .questionnaire-page .p-autocomplete-token {
    padding: 0.5rem 0.75rem;
    font-size: 0.9rem;
    border-radius: var(--q-radius-sm);
  }

  /* === EDITOR MOBILE === */
  .questionnaire-page .p-editor-container {
    border-radius: var(--q-radius-md);
  }

  .questionnaire-page .p-editor-toolbar {
    padding: 0.5rem;
    flex-wrap: wrap;
  }

  .questionnaire-page .p-editor-content .ql-editor {
    min-height: 120px;
    font-size: 16px;
  }

  /* === SLIDER MOBILE === */
  .questionnaire-page .p-slider {
    height: 8px;
  }

  .questionnaire-page .p-slider .p-slider-handle {
    width: 28px;
    height: 28px;
    margin-top: -10px;
    margin-left: -14px;
  }

  /* === FIELD LABELS MOBILE === */
  .questionnaire-page .field label,
  .questionnaire-page .p-field label {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--q-text-secondary);
    margin-bottom: 0.5rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  /* === ANIMATIONS MOBILE OPTIMISÉES === */
  .questionnaire-page .p-panel,
  .questionnaire-page .custom-accordion,
  .questionnaire-page .p-button,
  .questionnaire-page .p-inputtext {
    animation: none;
  }
}

/* ===========================================
   MOBILE SMALL (< 480px)
   =========================================== */
@media (max-width: 480px) {
  /* Grille de types sur 2 colonnes pour très petits écrans */
  .questionnaire-page .custom-accordion .p-accordion-header-link .d-flex.align-items-center.ml-auto,
  .questionnaire-page .custom-accordion .p-accordion-header-link .d-flex.align-items-center.flex-wrap {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto auto auto;
  }

  .questionnaire-page .custom-accordion .p-accordion-header-link label {
    flex-direction: row;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    min-height: 44px;
  }

  /* Boutons edit/delete en bas */
  .questionnaire-page .custom-accordion .p-accordion-header-link button.p-panel-header-icon {
    grid-column: span 1;
  }

  /* Titre questionnaire plus compact */
  .questionnaire-page .p-panel-header > div:first-child {
    padding: 1rem;
  }

  .questionnaire-page .p-panel-header > div:first-child span {
    font-size: 1rem !important;
  }

  /* Actions plus compactes */
  .questionnaire-page .p-panel-header > div:last-child,
  .questionnaire-page .p-panel-header .header-actions {
    padding: 0.5rem;
  }

  .questionnaire-page .p-panel-header .p-panel-header-icon {
    width: 40px;
    height: 40px;
  }

  /* Input légèrement plus petit */
  .questionnaire-page .p-inputtext,
  .questionnaire-page .p-inputtextarea,
  .questionnaire-page .p-dropdown {
    padding: 0.75rem;
  }

  /* Bouton adapté */
  .questionnaire-page .p-button {
    padding: 0.875rem;
    min-height: 48px;
  }
}

/* === UTILITIES (scopés) === */
.questionnaire-page .w-full { width: 100%; }
.questionnaire-page .w-100 { width: 100%; }
.questionnaire-page .mb-2 { margin-bottom: 0.5rem; }
.questionnaire-page .mb-5 { margin-bottom: 1.25rem; }
.questionnaire-page .mt-3 { margin-top: 0.75rem; }
.questionnaire-page .ml-3 { margin-left: 0.75rem; }
.questionnaire-page .mr-2 { margin-right: 0.5rem; }
.questionnaire-page .mr-3 { margin-right: 0.75rem; }
.questionnaire-page .mr-5 { margin-right: 1.25rem; }
.questionnaire-page .mx-2 { margin-left: 0.5rem; margin-right: 0.5rem; }
.questionnaire-page .mx-4 { margin-left: 1rem; margin-right: 1rem; }
.questionnaire-page .py-4 { padding-top: 1rem; padding-bottom: 1rem; }
.questionnaire-page .gap-2 { gap: 0.5rem; }
.questionnaire-page .font-weight-bold { font-weight: 700; }
.questionnaire-page .font-semibold { font-weight: 600; }
.questionnaire-page .text-sm { font-size: 0.875rem; }
.questionnaire-page .text-blue-600 { color: var(--q-primary); }
.questionnaire-page .text-danger { color: var(--q-danger); }

.questionnaire-page .d-flex { display: flex; }
.questionnaire-page .d-block { display: block; }
.questionnaire-page .flex { display: flex; }
.questionnaire-page .align-items-center { align-items: center; }
.questionnaire-page .justify-content-space-between { justify-content: space-between; }

.questionnaire-page .list-unstyled {
  list-style: none;
  padding: 0;
  margin: 0;
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzX2NvbXBvbmVudHNfY29uZmlncHJvZmVzc2lvbm5lbF9BdmlzX2pzLWFzc2V0c19jb21wb25lbnRzX2NvbmZpZ3Byb2Zlc3Npb25uZWxfQ2hhdF9jaGF0LTk0YTlkNS5jc3MiLCJtYXBwaW5ncyI6Ijs7O0FBQUE7SUFDSTs7QUFFSixDOzs7O0FDSEEsNkZBQTZGO0FBQzdGO0VBQ0UseURBQXlEO0VBQ3pELGtCQUFrQjtFQUNsQiw0QkFBNEI7RUFDNUIsNEJBQTRCLEVBQUUscUNBQXFDO0VBQ25FLHlCQUF5QixFQUFFLGVBQWU7RUFDMUMsMEJBQTBCLEVBQUUscUJBQXFCO0VBQ2pELDRCQUE0QjtFQUM1QixnQ0FBZ0M7RUFDaEMsNEJBQTRCLEVBQUUsZ0NBQWdDO0VBQzlELGdDQUFnQztFQUNoQyw4QkFBOEIsRUFBRSxrQ0FBa0M7RUFDbEUsdUNBQXVDO0VBQ3ZDLHdDQUF3QztFQUN4QyxpQ0FBaUMsRUFBRSxnQ0FBZ0M7RUFDbkUsNkJBQTZCLEVBQUUsb0JBQW9CO0VBQ25ELGlDQUFpQztFQUNqQyxtQ0FBbUM7RUFDbkMsdUNBQXVDO0VBQ3ZDLG9DQUFvQztFQUNwQyx3Q0FBd0M7RUFDeEMsNkJBQTZCO0VBQzdCLHNDQUFzQztFQUN0QywwQ0FBMEM7RUFDMUMsd0NBQXdDO0VBQ3hDLDRCQUE0QjtFQUM1Qiw2QkFBNkI7RUFDN0IsbUNBQW1DO0VBQ25DLG9DQUFvQztFQUNwQyx3Q0FBd0M7RUFDeEMsa0NBQWtDO0VBQ2xDLGdDQUFnQztFQUNoQyxnQ0FBZ0M7RUFDaEMsaUNBQWlDO0VBQ2pDLG1DQUFtQztFQUNuQyxvQ0FBb0M7RUFDcEMsa0NBQWtDO0VBQ2xDLHVDQUF1QztFQUN2QyxtQ0FBbUM7RUFDbkMsa0NBQWtDO0VBQ2xDLHFDQUFxQztFQUNyQyxtQ0FBbUM7RUFDbkMsb0NBQW9DO0VBQ3BDLG9DQUFvQztFQUNwQyxzQ0FBc0M7RUFDdEMsdUNBQXVDO0VBQ3ZDLHVDQUF1QztFQUN2Qyw0Q0FBNEM7RUFDNUMsd0NBQXdDO0VBQ3hDLHVDQUF1QztF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InNvdXJjZXMiOlsid2VicGFjazovLy8uL2Fzc2V0cy9jb21wb25lbnRzL2NvbmZpZ3Byb2Zlc3Npb25uZWwvRnVsbENhbGVuZGFyL3N0eWxlcy9EaWFsb2dIZWJkby5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2NvbXBvbmVudHMvY29uZmlncHJvZmVzc2lvbm5lbC9GdWxsQ2FsZW5kYXIvc3R5bGVzL0hlYmRvdmlzaXRldXIuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9jb21wb25lbnRzL2RhdGUvaW5kZXguY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9jb21wb25lbnRzL3Zpc2lvL3Byb2Zlc3Npb25uYWwvVmlkZW9Sb29tUHJvZmVzc2lvbmFsLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvY29tcG9uZW50cy9xdWVzdGlvbm5haXJlL1RvZG9MaXN0LmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvY29tcG9uZW50cy9xdWVzdGlvbm5haXJlL3F1ZXN0aW9ubmFpcmUuY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi5wLWRpYWxvZy1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICcjRkZGRkZGMDAnXG5cbn0iLCIvKiBTdHlsZSBnw6luw6lyYWwgZHUgY2FsZW5kcmllciAtIFVOSVFVRU1FTlQgcG91ciBjYWxlbmRyaWVycyB2aXNpdGV1cnMgKC5wcm9mZXNzaW9uYWwtY2FyZCkgKi9cbi5wcm9mZXNzaW9uYWwtY2FyZCAuZmMge1xuICBmb250LWZhbWlseTogJ0ludGVyJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgLS1mYy10b2RheS1iZy1jb2xvcjogI2Y4ZjlmYTsgLyogRm9uZCB0csOocyBjbGFpciBwb3VyIGF1am91cmQnaHVpICovXG4gIC0tZmMtcGFnZS1iZy1jb2xvcjogd2hpdGU7IC8qIEZvbmQgYmxhbmMgKi9cbiAgLS1mYy1ib3JkZXItY29sb3I6ICNlOWVjZWY7IC8qIEJvcmR1cmVzIGNsYWlyZXMgKi9cbiAgLS1mYy1uZXV0cmFsLWJnLWNvbG9yOiB3aGl0ZTtcbiAgLS1mYy1uZXV0cmFsLXRleHQtY29sb3I6ICMyMTI1Mjk7XG4gIC0tZmMtZXZlbnQtYmctY29sb3I6ICMyMTI1Mjk7IC8qIEZvbmQgZGVzIMOpdsOpbmVtZW50cyBlbiBub2lyICovXG4gIC0tZmMtZXZlbnQtYm9yZGVyLWNvbG9yOiAjMjEyNTI5O1xuICAtLWZjLWV2ZW50LXRleHQtY29sb3I6ICNmZmZmZmY7IC8qIFRleHRlIGRlcyDDqXbDqW5lbWVudHMgZW4gYmxhbmMgKi9cbiAgLS1mYy1saXN0LWV2ZW50LWhvdmVyLWJnLWNvbG9yOiAjZjhmOWZhO1xuICAtLWZjLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAtLWZjLW5vdy1pbmRpY2F0b3ItY29sb3I6ICNkYzM1NDU7IC8qIExpZ25lIFwibWFpbnRlbmFudFwiIGVuIHJvdWdlICovXG4gIC0tZmMtYnV0dG9uLWJnLWNvbG9yOiAjMjEyNTI5OyAvKiBCb3V0b25zIGVuIG5vaXIgKi9cbiAgLS1mYy1idXR0b24tYm9yZGVyLWNvbG9yOiAjMjEyNTI5O1xuICAtLWZjLWJ1dHRvbi1ob3Zlci1iZy1jb2xvcjogIzM0M2E0MDtcbiAgLS1mYy1idXR0b24taG92ZXItYm9yZGVyLWNvbG9yOiAjMzQzYTQwO1xuICAtLWZjLWJ1dHRvbi1hY3RpdmUtYmctY29sb3I6ICM0OTUwNTc7XG4gIC0tZmMtYnV0dG9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICM0OTUwNTc7XG4gIC0tZmMtYnV0dG9uLXRleHQtY29sb3I6IHdoaXRlO1xuICAtLWZjLWJ1dHRvbi1kaXNhYmxlZC1iZy1jb2xvcjogI2Y4ZjlmYTtcbiAgLS1mYy1idXR0b24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xuICAtLWZjLWJ1dHRvbi1kaXNhYmxlZC10ZXh0LWNvbG9yOiAjNmM3NTdkO1xuICAtLWZjLWJ1dHRvbi1mb250LXdlaWdodDogNTAwO1xuICAtLWZjLWJ1dHRvbi1pY29uLWNvbG9yOiB3aGl0ZTtcbiAgLS1mYy1idXR0b24taWNvbi1ob3Zlci1jb2xvcjogd2hpdGU7XG4gIC0tZmMtYnV0dG9uLWljb24tYWN0aXZlLWNvbG9yOiB3aGl0ZTtcbiAgLS1mYy1idXR0b24taWNvbi1kaXNhYmxlZC1jb2xvcjogIzZjNzU3ZDtcbiAgLS1mYy1idXR0b24taWNvbi1mb250LXNpemU6IDEuMjVlbTtcbiAgLS1mYy1idXR0b24taWNvbi1wYWRkaW5nOiAwLjI1ZW07XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi1ub251cGxlOiA5O1xuICAtLWZjLWJ1dHRvbi1pY29uLXNwaW4tZGVjdXBsZTogMTA7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi11bmRlY3VwbGU6IDExO1xuICAtLWZjLWJ1dHRvbi1pY29uLXNwaW4tZHVvZGVjdXBsZTogMTI7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi10cmVkZWNpbTogMTM7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi1xdWF0dHVvcmRlY2ltOiAxNDtcbiAgLS1mYy1idXR0b24taWNvbi1zcGluLXF1aW5kZWNpbTogMTU7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi1zZXhkZWNpbTogMTY7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi1zZXB0ZW5kZWNpbTogMTc7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi1vY3RvZGVjaW06IDE4O1xuICAtLWZjLWJ1dHRvbi1pY29uLXNwaW4tbm92ZW1kZWNpbTogMTk7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi12aWdpbnR1cGxlOiAyMDtcbiAgLS1mYy1idXR0b24taWNvbi1zcGluLXVudmlnaW50dXBsZTogMjE7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi1kdW92aWdpbnR1cGxlOiAyMjtcbiAgLS1mYy1idXR0b24taWNvbi1zcGluLXRyZXZpZ2ludHVwbGU6IDIzO1xuICAtLWZjLWJ1dHRvbi1pY29uLXNwaW4tcXVhdHR1b3J2aWdpbnR1cGxlOiAyNDtcbiAgLS1mYy1idXR0b24taWNvbi1zcGluLXF1aW52aWdpbnR1cGxlOiAyNTtcbiAgLS1mYy1idXR0b24taWNvbi1zcGluLXNlc3ZpZ2ludHVwbGU6IDI2O1xuICAtLWZjLWJ1dHRvbi1pY29uLXNwaW4tc2VwdGVudmlnaW50dXBsZTogMjc7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi1vY3RvdmlnaW50dXBsZTogMjg7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi1ub3ZlbXZpZ2ludHVwbGU6IDI5O1xuICAtLWZjLWJ1dHRvbi1pY29uLXNwaW4tdHJpZ2ludHVwbGU6IDMwO1xuICAtLWZjLWJ1dHRvbi1pY29uLXNwaW4tdW50cmlnaW50dXBsZTogMzE7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi1kdW90cmlnaW50dXBsZTogMzI7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi10cml0cmlnaW50dXBsZTogMzM7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi1xdWF0dHVvcnRyaWdpbnR1cGxlOiAzNDtcbiAgLS1mYy1idXR0b24taWNvbi1zcGluLXF1aW50cmlnaW50dXBsZTogMzU7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi1zZXN0cmlnaW50dXBsZTogMzY7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi1zZXB0ZW50cmlnaW50dXBsZTogMzc7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi1vY3RvdHJpZ2ludHVwbGU6IDM4O1xuICAtLWZjLWJ1dHRvbi1pY29uLXNwaW4tbm92ZW10cmlnaW50dXBsZTogMzk7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi1xdWFkcmFnaW50dXBsZTogNDA7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi11bnF1YWRyYWdpbnR1cGxlOiA0MTtcbiAgLS1mYy1idXR0b24taWNvbi1zcGluLWR1b3F1YWRyYWdpbnR1cGxlOiA0MjtcbiAgLS1mYy1idXR0b24taWNvbi1zcGluLXRyZXF1YWRyYWdpbnR1cGxlOiA0MztcbiAgLS1mYy1idXR0b24taWNvbi1zcGluLXF1YXR0dW9ycXVhZHJhZ2ludHVwbGU6IDQ0O1xuICAtLWZjLWJ1dHRvbi1pY29uLXNwaW4tcXVpbnF1YWRyYWdpbnR1cGxlOiA0NTtcbiAgLS1mYy1idXR0b24taWNvbi1zcGluLXNlc3F1YWRyYWdpbnR1cGxlOiA0NjtcbiAgLS1mYy1idXR0b24taWNvbi1zcGluLXNlcHRlbnF1YWRyYWdpbnR1cGxlOiA0NztcbiAgLS1mYy1idXR0b24taWNvbi1zcGluLW9jdG9xdWFkcmFnaW50dXBsZTogNDg7XG4gIC0tZmMtYnV0dG9uLWljb24tc3Bpbi1ub3ZlbXF1YWRyYWdpbnR1cGxlOiA0OTtcbiAgLS1mYy1idXR0b24taWNvbi1zcGluLXF1aW5xdWFnaW50dXBsZTogNTA7XG59XG5cblxuXG5cblxuXG4vKiBCb3V0b25zIFByw6ljw6lkZW50L1N1aXZhbnQgZHUgRnVsbENhbGVuZGFyIC0gVU5JUVVFTUVOVCBwb3VyIGNhbGVuZHJpZXJzIHZpc2l0ZXVycyAqL1xuLnByb2Zlc3Npb25hbC1jYXJkIC5mYy1wcmV2LWJ1dHRvbixcbi5wcm9mZXNzaW9uYWwtY2FyZCAuZmMtbmV4dC1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDM2cHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAzNnB4ICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgIWltcG9ydGFudDtcbiAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLnByb2Zlc3Npb25hbC1jYXJkIC5mYy1wcmV2LWJ1dHRvbjpob3Zlcixcbi5wcm9mZXNzaW9uYWwtY2FyZCAuZmMtbmV4dC1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSkgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMCA0cHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xNSkgIWltcG9ydGFudDtcbn1cblxuLnByb2Zlc3Npb25hbC1jYXJkIC5mYy1wcmV2LWJ1dHRvbjpkaXNhYmxlZCxcbi5wcm9mZXNzaW9uYWwtY2FyZCAuZmMtbmV4dC1idXR0b246ZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjYWRiNWJkICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5wcm9mZXNzaW9uYWwtY2FyZCAuZmMtaWNvbi1jaGV2cm9uLWxlZnQ6OmJlZm9yZSxcbi5wcm9mZXNzaW9uYWwtY2FyZCAuZmMtaWNvbi1jaGV2cm9uLXJpZ2h0OjpiZWZvcmUge1xuICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbn1cblxuXG5cblxuXG4vKiBDaGlwIFwiQ29sbGFib3JhdGV1cnNcIiAqL1xuLmN1c3RvbS1jaGlwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOSAhaW1wb3J0YW50O1xuICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMjhweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMSkgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmN1c3RvbS1jaGlwOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0M2E0MCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCkgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMCA0cHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xNSkgIWltcG9ydGFudDtcbn1cblxuXG5cbi8qIEJvdXRvbiBcIlRvdXNcIiBkYW5zIGxlIERyb3Bkb3duICovXG4ucC1pbnB1dGdyb3VwLWFkZG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOSAhaW1wb3J0YW50O1xuICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgNnB4IDZweCAwICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgIWltcG9ydGFudDtcbn1cblxuLnAtaW5wdXRncm91cC1hZGRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDNhNDAgIWltcG9ydGFudDtcbn1cblxuXG4vKiBJY8O0bmUgZHUgQ2hpcCAqL1xuLmN1c3RvbS1jaGlwIC5wLWNoaXAtaWNvbiB7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbn1cblxuXG4vKiBTdXBwcmltZSB0b3V0ZXMgbGVzIGJvcmR1cmVzIGR1IHRhYmxlYXUgZGF5R3JpZCAtIFVOSVFVRU1FTlQgcG91ciBjYWxlbmRyaWVycyB2aXNpdGV1cnMgKi9cbi5wcm9mZXNzaW9uYWwtY2FyZCAuZmMgLmZjLXNjcm9sbGdyaWQsXG4ucHJvZmVzc2lvbmFsLWNhcmQgLmZjIC5mYy1zY3JvbGxncmlkIHRoZWFkLFxuLnByb2Zlc3Npb25hbC1jYXJkIC5mYyAuZmMtc2Nyb2xsZ3JpZCB0Ym9keSxcbi5wcm9mZXNzaW9uYWwtY2FyZCAuZmMgLmZjLXNjcm9sbGdyaWQgdGQsXG4ucHJvZmVzc2lvbmFsLWNhcmQgLmZjIC5mYy1zY3JvbGxncmlkIHRoIHtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyogT3B0aW9ubmVsIDogc3VwcHJpbWUgbGVzIGxpZ25lcyBlbnRyZSBsZXMgam91cnMgLSBVTklRVUVNRU5UIHBvdXIgY2FsZW5kcmllcnMgdmlzaXRldXJzICovXG4ucHJvZmVzc2lvbmFsLWNhcmQgLmZjIC5mYy1kYXlncmlkLWRheS1mcmFtZSB7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cblxuLyogRGVzY2VuZCB0b3V0ZSBsYSB6b25lIGR1IGhlYWRlciAtIFVOSVFVRU1FTlQgcG91ciBjYWxlbmRyaWVycyB2aXNpdGV1cnMgKi9cbi8qIElNUE9SVEFOVDogcG9zaXRpb246IHN0YXRpYyBlc3QgY3J1Y2lhbCBwb3VyIHF1ZSBsZXMgYm91dG9ucyBwcmV2L25leHQgc2UgcG9zaXRpb25uZW50IHBhciByYXBwb3J0IMOgIC5mYyAqL1xuLnByb2Zlc3Npb25hbC1jYXJkIC5mYyAuZmMtdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyAgLyogcGxhY2UgbGUgY29udGVudSBwbHVzIGJhcyAqL1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyAgICAvKiBlc3BhY2Ugc291cyBsZSBoZWFkZXIgKi9cbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50OyAvKiBsZXMgYm91dG9ucyBhYnNvbHV0ZSBzZSBwb3NpdGlvbm5lbnQgcGFyIHJhcHBvcnQgw6AgLmZjLCBwYXMgw6AgdG9vbGJhciAqL1xufVxuXG5cbi8qIFN0eWxlcyBjb21tdW5zIHBvdXIgbW9iaWxlIGV0IGJ1cmVhdSAtIFVOSVFVRU1FTlQgcG91ciBjYWxlbmRyaWVycyB2aXNpdGV1cnMgKi9cbi5wcm9mZXNzaW9uYWwtY2FyZCAuZmMgLmZjLWNvbC1oZWFkZXItY2VsbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCT1VUT05TIFBSRVYvTkVYVCAtIFJFRkFDVE9SSVPDiSBSRVNQT05TSVZFXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiBCYXNlIDogYm91dG9ucyB0b3Vqb3VycyB2aXNpYmxlcyBldCBjZW50csOpcyB2ZXJ0aWNhbGVtZW50ICovXG4ucHJvZmVzc2lvbmFsLWNhcmQgLmZjIC5mYy1wcmV2LWJ1dHRvbixcbi5wcm9mZXNzaW9uYWwtY2FyZCAuZmMgLmZjLW5leHQtYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHRvcDogNTAlICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgei1pbmRleDogMTAgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLCB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xufVxuXG4vKiBNb2JpbGUgKDwgNzY4cHgpIDogYm91dG9ucyBzdXIgbGVzIGJvcmRzICovXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnByb2Zlc3Npb25hbC1jYXJkIC5mYyAuZmMtcHJldi1idXR0b24geyBsZWZ0OiAtNXB4ICFpbXBvcnRhbnQ7IH1cbiAgLnByb2Zlc3Npb25hbC1jYXJkIC5mYyAuZmMtbmV4dC1idXR0b24geyByaWdodDogLTVweCAhaW1wb3J0YW50OyB9XG59XG5cbi8qIFRhYmxldHRlICg3NjhweCAtIDExOTlweCkgOiBib3V0b25zIGJpZW4gw6AgbCdleHTDqXJpZXVyIGR1IGNhbGVuZHJpZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAucHJvZmVzc2lvbmFsLWNhcmQgLmZjIC5mYy1wcmV2LWJ1dHRvbiB7IGxlZnQ6IC00NXB4ICFpbXBvcnRhbnQ7IH1cbiAgLnByb2Zlc3Npb25hbC1jYXJkIC5mYyAuZmMtbmV4dC1idXR0b24geyByaWdodDogLTQ1cHggIWltcG9ydGFudDsgfVxufVxuXG4vKiBEZXNrdG9wICg+PSAxMjAwcHgpIDogYm91dG9ucyBjb21wbMOodGVtZW50IGRhbnMgbCdlc3BhY2UgYmxhbmMgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnByb2Zlc3Npb25hbC1jYXJkIC5mYyAuZmMtcHJldi1idXR0b24geyBsZWZ0OiAtNTBweCAhaW1wb3J0YW50OyB9XG4gIC5wcm9mZXNzaW9uYWwtY2FyZCAuZmMgLmZjLW5leHQtYnV0dG9uIHsgcmlnaHQ6IC01MHB4ICFpbXBvcnRhbnQ7IH1cblxuICAucHJvZmVzc2lvbmFsLWNhcmQgLmZjIC5mYy1wcmV2LWJ1dHRvbixcbiAgLnByb2Zlc3Npb25hbC1jYXJkIC5mYyAuZmMtbmV4dC1idXR0b24ge1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxuXG4gIC5wcm9mZXNzaW9uYWwtY2FyZDpob3ZlciAuZmMgLmZjLXByZXYtYnV0dG9uLFxuICAucHJvZmVzc2lvbmFsLWNhcmQ6aG92ZXIgLmZjIC5mYy1uZXh0LWJ1dHRvbiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4vKiBHcmFuZCDDqWNyYW4gKD49IDE0MDBweCkgOiBlbmNvcmUgcGx1cyBkJ2VzcGFjZSAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAucHJvZmVzc2lvbmFsLWNhcmQgLmZjIC5mYy1wcmV2LWJ1dHRvbiB7IGxlZnQ6IC01NXB4ICFpbXBvcnRhbnQ7IH1cbiAgLnByb2Zlc3Npb25hbC1jYXJkIC5mYyAuZmMtbmV4dC1idXR0b24geyByaWdodDogLTU1cHggIWltcG9ydGFudDsgfVxufVxuXG4vKiBEw6lzYWN0aXbDqXMgOiB0b3Vqb3VycyBjYWNow6lzICovXG4ucHJvZmVzc2lvbmFsLWNhcmQgLmZjIC5mYy1idXR0b24tZGlzYWJsZWQsXG4ucHJvZmVzc2lvbmFsLWNhcmQgLmZjIC5mYy1wcmV2LWJ1dHRvbltkaXNhYmxlZF0sXG4ucHJvZmVzc2lvbmFsLWNhcmQgLmZjIC5mYy1uZXh0LWJ1dHRvbltkaXNhYmxlZF0sXG4ucHJvZmVzc2lvbmFsLWNhcmQgLmZjIC5mYy1wcmV2LWJ1dHRvblthcmlhLWRpc2FibGVkPVwidHJ1ZVwiXSxcbi5wcm9mZXNzaW9uYWwtY2FyZCAuZmMgLmZjLW5leHQtYnV0dG9uW2FyaWEtZGlzYWJsZWQ9XCJ0cnVlXCJdIHtcbiAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xuICBwb2ludGVyLWV2ZW50czogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5cblxuXG5cblxuLmZjYWxlbmQge1xuICBtYXgtd2lkdGg6IDQ5MHB4O1xuICBtYXJnaW46IDMwcHggYXV0bzsgLyogY2VudHJlIGxlIGNhbGVuZHJpZXIgKi9cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEhBVVRFVVIgUkVTUE9OU0lWRSBEVSBDQUxFTkRSSUVSXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiBCYXNlIDogaGF1dGV1ciByZXNwb25zaXZlIHBvdXIgbGUgY2FsZW5kcmllciAqL1xuLnByb2Zlc3Npb25hbC1jYXJkIC5mYyAuZmMtdmlldy1oYXJuZXNzIHtcbiAgbWFyZ2luLXRvcDogLTMwcHggIWltcG9ydGFudDtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogMjIwcHg7XG4gIG1heC1oZWlnaHQ6IDM1MHB4O1xufVxuXG4vKiBUYWJsZXR0ZSA6IGhhdXRldXIgaW50ZXJtw6lkaWFpcmUgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAucHJvZmVzc2lvbmFsLWNhcmQgLmZjIC5mYy12aWV3LWhhcm5lc3Mge1xuICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICAgIG1heC1oZWlnaHQ6IDMwMHB4O1xuICB9XG59XG5cbi8qIERlc2t0b3AgOiBoYXV0ZXVyIGNvbXBhY3RlICovXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wcm9mZXNzaW9uYWwtY2FyZCAuZmMgLmZjLXZpZXctaGFybmVzcyB7XG4gICAgbWluLWhlaWdodDogMTgwcHg7XG4gICAgbWF4LWhlaWdodDogMjgwcHg7XG4gIH1cbn1cblxuXG4vKiBjcsOpZXIgbGVzIGNhcyBvw7kgaWwgbid5IGFwYXMgZGUgcmVuZGV6IHZvdXMgLSBVTklRVUVNRU5UIHBvdXIgY2FsZW5kcmllcnMgdmlzaXRldXJzICovXG4vKiBFbmxldmVyIGxlIHBhZGRpbmcgaW50ZXJuZSBkZXMgY2VsbHVsZXMgam91ciAqL1xuLnByb2Zlc3Npb25hbC1jYXJkIC5mYyAuZmMtZGF5Z3JpZC1kYXktZnJhbWUge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLyogQ2VudHJlciBwYXJmYWl0ZW1lbnQgbGUgY29udGVudSBkdSBqb3VyIC0gVU5JUVVFTUVOVCBwb3VyIGNhbGVuZHJpZXJzIHZpc2l0ZXVycyAqL1xuLnByb2Zlc3Npb25hbC1jYXJkIC5mYyAuZmMtZGF5Z3JpZC1kYXktdG9wIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4vKiBDZW50cmVyIGxlcyDDqWzDqW1lbnRzIGludGVybmVzIChBdWN1biByZHYgLyBwYXN0aWxsZSkgKi9cbi5lbXB0eS1zbG90IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuXG4uZW1wdHktcGlsbCB7XG4gICAgYmFja2dyb3VuZDogI2YxZjNmNTtcbiAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICB3aWR0aDogNzBweDtcbiAgICBoZWlnaHQ6IDI2cHg7ICAgICAgICAgICAgICAvKiBvcHRpb25uZWwsIHBvdXIgdW4gdnJhaSBwaWxsIHLDqWd1bGllciAqL1xuICAgIG1hcmdpbjogMCBhdXRvIDRweCBhdXRvO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAvKiBjZW50cmFnZSBwYXJmYWl0IGR1IHRpcmV0ICovXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuXG4uZW1wdHktdGV4dCB7XG4gICAgY29sb3I6ICNhZGI1YmQ7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cblxuLyogUGFzdGlsbGUgZGVzIGNyw6luZWF1eCAobm9pcmUgKyByZWZsZXQpICovXG4uc2xvdC1waWxsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm94LXNoYWRvdzogMCA0cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMzUpO1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbi8qIE92ZXJyaWRlIEJvb3RzdHJhcCBjb2wtMTIgZXQgdy0xMDAgcG91ciBsZSBzbG90LXBpbGwgcmVzcG9uc2l2ZSAtIFVOSVFVRU1FTlQgcG91ciBjYWxlbmRyaWVycyB2aXNpdGV1cnMgKi9cbi5wcm9mZXNzaW9uYWwtY2FyZCAuc2xvdC1waWxsLmNvbC0xMi53LTEwMCxcbi5wcm9mZXNzaW9uYWwtY2FyZCAuZmMtZGF5Z3JpZC1ldmVudCAuc2xvdC1waWxsLFxuLnByb2Zlc3Npb25hbC1jYXJkIC5mYy1kYXlncmlkLWRvdC1ldmVudCAuc2xvdC1waWxsLFxuLnByb2Zlc3Npb25hbC1jYXJkIGRpdi5zbG90LXBpbGwuY29sLTEyIHtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgbWF4LXdpZHRoOiBmaXQtY29udGVudCAhaW1wb3J0YW50O1xuICBtaW4td2lkdGg6IGZpdC1jb250ZW50ICFpbXBvcnRhbnQ7XG4gIGZsZXg6IDAgMCBhdXRvICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogNnB4IDE0cHggIWltcG9ydGFudDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveCAhaW1wb3J0YW50O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgU0xPVC1QSUxMIFJFU1BPTlNJVkUgLSDDiXZpdGVyIGxlcyBjaGV2YXVjaGVtZW50c1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogVGFibGV0dGUgcGF5c2FnZSBldCBwZXRpdHMgZGVza3RvcCAoOTkycHggLSAxMTk5cHgpICovXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLnByb2Zlc3Npb25hbC1jYXJkIC5zbG90LXBpbGwge1xuICAgIGZvbnQtc2l6ZTogMTJweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDRweCAxMHB4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHJvZmVzc2lvbmFsLWNhcmQgLnNsb3QtcGlsbCBpIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IDJweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qIFRhYmxldHRlIHBvcnRyYWl0ICg3NjhweCAtIDk5MXB4KSAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLnByb2Zlc3Npb25hbC1jYXJkIC5zbG90LXBpbGwge1xuICAgIGZvbnQtc2l6ZTogMTFweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDNweCA4cHggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wcm9mZXNzaW9uYWwtY2FyZCAuc2xvdC1waWxsIGkge1xuICAgIGZvbnQtc2l6ZTogMC43cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAycHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKiBNb2JpbGUgKDwgNzY4cHgpICovXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnByb2Zlc3Npb25hbC1jYXJkIC5zbG90LXBpbGwge1xuICAgIGZvbnQtc2l6ZTogMTJweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDVweCAxMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyogUmVmbGV0IGVuIGhhdXQgZGUgbGEgcGFzdGlsbGUgKi9cbi5zbG90LXBpbGw6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNDAlO1xuICBsZWZ0OiAtMTAlO1xuICB3aWR0aDogMTIwJTtcbiAgaGVpZ2h0OiA2MCU7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICB0byBib3R0b20sXG4gICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjU1KSxcbiAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApXG4gICk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4vKiBQZXRpdCBlZmZldCBhdSBzdXJ2b2wgKG9wdGlvbm5lbCkgKi9cbi5zbG90LXBpbGw6aG92ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gIGJveC1zaGFkb3c6IDAgNnB4IDE0cHggcmdiYSgwLCAwLCAwLCAwLjQ1KTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2Utb3V0O1xufVxuXG4vKiBTdHlsZXMgcG91ciBsZSBjb250ZW5ldXIgZGVzIMOpdsOpbmVtZW50cyBGdWxsQ2FsZW5kYXIgLSBVTklRVUVNRU5UIHBvdXIgY2FsZW5kcmllcnMgdmlzaXRldXJzICovXG4ucHJvZmVzc2lvbmFsLWNhcmQgLmZjLWRheWdyaWQtZXZlbnQsXG4ucHJvZmVzc2lvbmFsLWNhcmQgLmZjLWRheWdyaWQtZG90LWV2ZW50IHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAycHggIWltcG9ydGFudDtcbn1cblxuLyogQ29udGVuZXVyIGludGVybmUgZGVzIHNsb3QtcGlsbCAtIHJlc3BvbnNpdmUgLSBVTklRVUVNRU5UIHBvdXIgY2FsZW5kcmllcnMgdmlzaXRldXJzICovXG4ucHJvZmVzc2lvbmFsLWNhcmQgLmZjLWRheWdyaWQtZXZlbnQgLnJvdyxcbi5wcm9mZXNzaW9uYWwtY2FyZCAuZmMtZGF5Z3JpZC1kb3QtZXZlbnQgLnJvdyxcbi5wcm9mZXNzaW9uYWwtY2FyZCAuZmMtZGF5Z3JpZC1ldmVudCAucm93LmNvbC0xMixcbi5wcm9mZXNzaW9uYWwtY2FyZCAuZmMtZGF5Z3JpZC1kb3QtZXZlbnQgLnJvdy5jb2wtMTIge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgZmxleDogMCAwIGF1dG8gIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbn1cblxuLyogTW9kZSBidXJlYXUgLSBzdHlsZXMgYWRkaXRpb25uZWxzIHBvdXIgbGVzIGJvdXRvbnMgLSBVTklRVUVNRU5UIHBvdXIgY2FsZW5kcmllcnMgdmlzaXRldXJzICovXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMXB4KSB7XG4gIC8qIENvbnRlbmV1ciBkdSBjYWxlbmRyaWVyIC0gcG9zaXRpb24gcmVsYXRpdmUgcG91ciBjb250ZW5pciBsZXMgYm91dG9ucyAqL1xuICAucHJvZmVzc2lvbmFsLWNhcmQgLmZjIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAvKiBJTVBPUlRBTlQ6IHRvb2xiYXIgZG9pdCByZXN0ZXIgc3RhdGljIHBvdXIgcXVlIGxlcyBib3V0b25zIGFic29sdXRlIHNlIHBvc2l0aW9ubmVudCBwYXIgcmFwcG9ydCDDoCAuZmMgKi9cbiAgLnByb2Zlc3Npb25hbC1jYXJkIC5mYyAuZmMtdG9vbGJhciB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxufVxuXG5cbi8qIHBvdXIgbGEgZm9uY3Rpb24gZmluZCBhdWN1bmUgZGlzcG9uaWJpbGl0w6kgKi9cblxuLyogLm5leHQtYXZhaWwtYmFubmVyIHtcbiAgYmFja2dyb3VuZDogI2YxZjNmNTtcbiAgcGFkZGluZzogMTRweCAxOHB4O1xuICBtYXJnaW46IDI1MHB4IDBweCAxOHB4IDMwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIHdpZHRoOiA4MCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLm5leHQtYXZhaWwtbGluayB7XG4gIGNvbG9yOiAjMWE1NGQ3O1xuICBmb250LXdlaWdodDogNjAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5uZXh0LWF2YWlsLWxpbms6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn0gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogIENPTlRFTkVVUiBEVSBUQUJMRUFVIChibG9jIG1vYmlsZSlcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5teC1hdXRvLnRleHQtY2VudGVyLm10LTQuZC1tZC1ub25lIHtcbiAgLyogb24gZ2FyZGUgdGEgcG9zaXRpb24gYWJzb2x1ZSwgb24gYWp1c3RlIGp1c3RlIHVuIHBldSBsYSBoYXV0ZXVyICovXG4gIHRvcDogMzEwcHggIWltcG9ydGFudDsgICAgICAgICAvKiBtb250ZSB1biBwZXUgbGUgYmFuZGVhdSAobWV0cyAzMDAgb3UgMjkwIHNpIHR1IHZldXggKyBoYXV0KSAqL1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB6LWluZGV4OiA5ICFpbXBvcnRhbnQ7XG59XG5cbi8qIHRhYmxlYXUgZXQgY2VsbHVsZSB0cmFuc3BhcmVudHMsIHNhbnMgYm9yZHVyZXMgbmkgb21icmVzICovXG4ubXgtYXV0by50ZXh0LWNlbnRlci5tdC00LmQtbWQtbm9uZSB0YWJsZSxcbi5teC1hdXRvLnRleHQtY2VudGVyLm10LTQuZC1tZC1ub25lIHRyLFxuLm14LWF1dG8udGV4dC1jZW50ZXIubXQtNC5kLW1kLW5vbmUgdGQsXG4ubXgtYXV0by50ZXh0LWNlbnRlci5tdC00LmQtbWQtbm9uZSB0aCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qIHBhcyBkZSBwYWRkaW5nIHBhcmFzaXRlIHN1ciBsYSBjZWxsdWxlICovXG4ubXgtYXV0by50ZXh0LWNlbnRlci5tdC00LmQtbWQtbm9uZSB0ZCB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqICBTVFlMRSBEVSBCQU5ERUFVICjDoCBsJ2ludMOpcmlldXIgZHUgPHRkPilcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5uZXh0LWF2YWlsLWJhbm5lciB7XG4gIGJhY2tncm91bmQ6ICNmMWYzZjU7XG4gIHBhZGRpbmc6IDE0cHggMjRweDtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgbWF4LXdpZHRoOiA4MCU7ICAgICAgICAgICAgICAgIC8qIGxhcmdldXIgZHUgYmFuZGVhdSAoYXVnbWVudGUgw6AgODXigJM5MCUgc2kgdHUgdmV1eCBwbHVzIGxhcmdlKSAqL1xuICBtYXJnaW46IDAgYXV0bzsgICAgICAgICAgICAgICAgLyogY2VudHLDqSBkYW5zIGxlIDx0ZD4gKi9cbiAgYm94LXNoYWRvdzogMCA0cHggMTRweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAxMnB4O1xuXG4gIGNvbG9yOiAjNDk1MDU3O1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogIExJRU4gXCJWb2lyIGNldHRlIGRhdGVcIlxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLm5leHQtYXZhaWwtbGluayB7XG4gIGNvbG9yOiAjMWE1NGQ3O1xuICBmb250LXdlaWdodDogNjAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7ICAgICAgICAgICAvKiBcIlZvaXIgY2V0dGUgZGF0ZVwiIHJlc3RlIHN1ciB1bmUgc2V1bGUgbGlnbmUgKi9cbn1cblxuLm5leHQtYXZhaWwtbGluazpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uY2FyZC1ib2R5IHtcbiAgICAtbXMtZmxleDogMSAxIGF1dG87XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIHBhZGRpbmc6IDByZW0gIWltcG9ydGFudDs7XG59XG5cblxuXG5cbi8qIENvbnRlbmV1ciBwcmluY2lwYWwgcG91ciBsYSBidWxsZSBkZSBkaXNwb25pYmlsaXTDqSAqL1xuLnByb2NoYWluZS1kaXNwby1idWxsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMjBweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHdpZHRoOiA5MCU7XG4gICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUFFQUVBOyAvKiBncmlzIG5ldXRyZSBhZGFwdMOpIMOgIHVuZSBVSSBub2lyL2JsYW5jICovXG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBib3gtc2hhZG93OiAwIDZweCAxOHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gICAgcGFkZGluZzogMTZweDtcbiAgICB6LWluZGV4OiAxMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNENUQ1RDU7XG59XG5cblxuXG4vKiBUaXRyZSBkZSBsYSBidWxsZSAqL1xuLnByb2NoYWluZS1kaXNwby10aXRyZSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogIzFBM0E2NjsgLyogQmxldSBmb25jw6kgOiBsaXNpYmxlLCBwcm9mZXNzaW9ubmVsICovXG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICBmb250LXNpemU6IDE1cHg7XG59XG5cbi8qIExpc3RlIGRlcyBqb3VycyBkaXNwb25pYmxlcyAqL1xuLnByb2NoYWluZS1kaXNwby1saXN0ZSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG59XG5cbi8qIMOJbMOpbWVudCBkZSBsYSBsaXN0ZSAodW4gam91ciBkaXNwb25pYmxlKSAqL1xuLnByb2NoYWluZS1kaXNwby1lbGVtZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDNweCAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRTNFQ0Y4OyAvKiBMaWduZSBwbHVzIGRvdWNlICovXG59XG5cbi8qIERhdGUgZHUgam91ciBkaXNwb25pYmxlICovXG4ucHJvY2hhaW5lLWRpc3BvLWVsZW1lbnQtZGF0ZSB7XG4gICAgY29sb3I6ICMyRjQyNTk7IC8qIGJsZXUtZ3JpcyBtb2Rlcm5lICovXG4gICAgZm9udC1zaXplOiAxM3B4O1xufVxuXG4vKiBMaWVuIFwiVm9pciBjZXR0ZSBkYXRlXCIgcG91ciBjaGFxdWUgam91ciAqL1xuLnByb2NoYWluZS1kaXNwby1lbGVtZW50LWxpZW4ge1xuICAgIGNvbG9yOiAjMUU2RkZGOyAvKiBibGV1IGFjdGlvbiBzdGFuZGFyZCAqL1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5wcm9jaGFpbmUtZGlzcG8tZWxlbWVudC1saWVuOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLyogQm91dG9uIFwiUmV0b3VyIMOgIGxhIHNlbWFpbmUgYWN0dWVsbGVcIiAqL1xuLnByb2NoYWluZS1kaXNwby1ib3V0b24tc2VtYWluZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMTRweDtcbiAgICBwYWRkaW5nOiA4cHggMTZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGOEZGOyAvKiBibGV1LWdyaXMgY2xhaXIgcG91ciBjb2jDqXJlbmNlICovXG4gICAgYm9yZGVyOiAxcHggc29saWQgI0M5RDlGMDtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgY29sb3I6ICMxQTNBNjY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wcm9jaGFpbmUtZGlzcG8tYm91dG9uLXNlbWFpbmU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFOUYxRkY7XG59XG5cbi8qIE1lc3NhZ2UgXCJBdWN1biBjcsOpbmVhdSBkaXNwb25pYmxlXCIgKi9cbi5hdWN1bi1jcmVuZWF1LW1lc3NhZ2Uge1xuICAgIGNvbG9yOiAjNTI2MjdBO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG5cbi8qIFBvdXIgb3ZlcnBhbmVsIGRlcyBib3V0b25zIGNoYXQgZXQgdmlzaW8gKi9cbi5vdmVybGF5cGFuZWwtY3VzdG9tIHtcbiAgICBib3JkZXItcmFkaXVzOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAyNDBweCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDI0cHggcmdiYSgwLDAsMCwwLjEyKSAhaW1wb3J0YW50O1xufVxuXG4uY29udGFjdC1tZW51IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcGFkZGluZzogMTJweDtcbn1cblxuLmNvbnRhY3QtaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMTJweDtcbiAgICBwYWRkaW5nOiAxMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IDAuMTVzIGVhc2U7XG4gICAgY29sb3I6ICMxYTFhMWE7XG59XG5cbi5jb250YWN0LWl0ZW0gaSB7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgY29sb3I6ICMyNTYzZWI7IC8qIGJsZXUgbW9kZXJuZSAqL1xufVxuXG4uY29udGFjdC1pdGVtOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjBmN2ZmO1xuICAgIGNvbG9yOiAjMjU2M2ViO1xufVxuXG4vKiBQb3VyIG92ZXJwYW5lbCBkdSByZXN0ZSBkZXMgbWVudXMgKi9cbi8qIFN0eWxlIGfDqW7DqXJhbCBkdSBwYW5uZWF1ICovXG4ub3ZlcmxheXBhbmVsLWN1c3RvbS1vcHRzIHtcbiAgICBib3JkZXItcmFkaXVzOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAyNjBweCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDI0cHggcmdiYSgwLDAsMCwwLjEyKSAhaW1wb3J0YW50O1xufVxuXG4vKiBDb250ZW5ldXIgaW50ZXJuZSAqL1xuLm9wdGlvbnMtbWVudSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBhZGRpbmc6IDEwcHg7XG59XG5cbi8qIFVuZSBsaWduZSA9IHVuZSBhY3Rpb24gKi9cbi5vcHRpb25zLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDEycHg7XG4gICAgcGFkZGluZzogMTJweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogMC4xNXMgZWFzZTtcbiAgICBjb2xvcjogIzFhMWExYTtcbn1cblxuLm9wdGlvbnMtaXRlbSBpIHtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICB3aWR0aDogMjZweDtcbiAgICBjb2xvcjogIzM3NDE1MTsgLyogZ3JpcyBwcmVtaXVtICovXG59XG5cbi5vcHRpb25zLWl0ZW06aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNmMGY3ZmY7XG4gICAgY29sb3I6ICMyNTYzZWI7IC8qIGJsZXUgbW9kZXJuZSAqL1xufVxuXG4ub3B0aW9ucy1pdGVtOmhvdmVyIGkge1xuICAgIGNvbG9yOiAjMjU2M2ViO1xufVxuXG4vKiBTw6lwYXJhdGV1ciBhdmFudCBsYSBub3RlICovXG4ub3B0aW9ucy1kaXZpZGVyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2U1ZTdlYjtcbiAgICBtYXJnaW46IDhweCAwO1xufVxuXG4vKiBCbG9jIGRlcyBhdmlzICovXG4ub3B0aW9ucy1hdmlzIHtcbiAgICBwYWRkaW5nOiA2cHggMTJweCAycHg7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIG9wYWNpdHk6IDAuOTtcbn1cblxuXG4vKiB2aXNpb2NvbmZlcmVuY2UgYW5udWFpcmUgKi9cbi5kaWFsb2ctdmlzaW8gLnAtZGlhbG9nLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4udmlzaW8tYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXg6IDE7XG59XG5cbi52aXNpby1mb290ZXIge1xuICAgIG1hcmdpbi10b3A6IGF1dG87XG59XG4iLCJcbmh0bWwge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuYm9keSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBTZWdvZSBVSSwgUm9ib3RvLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmLCBBcHBsZSBDb2xvciBFbW9qaSwgU2Vnb2UgVUkgRW1vamksIFNlZ29lIFVJIFN5bWJvbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgcGFkZGluZzogLjVlbTtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICBtYXJnaW46IDEuNXJlbSAwIDFyZW0gMDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgY29sb3I6IGluaGVyaXQ7XG59XG5cbmgxIHsgZm9udC1zaXplOiAyLjVyZW07IH1cbmgyIHsgZm9udC1zaXplOiAycmVtOyB9XG5oMyB7IGZvbnQtc2l6ZTogMS43NXJlbTsgfVxuaDQgeyBmb250LXNpemU6IDEuNXJlbTsgfVxuaDUgeyBmb250LXNpemU6IDEuMjVyZW07IH1cbmg2IHsgZm9udC1zaXplOiAxcmVtOyB9XG5wIHtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbn1cblxuLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xufVxuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbn1cblxuQGtleWZyYW1lcyBwdWxzZSB7XG4gICAgMCUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE2NSwgMTY1LCAxNjUsIDAuMSlcbiAgICB9XG4gICAgNTAlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNjUsIDE2NSwgMTY1LCAwLjMpXG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE2NSwgMTY1LCAxNjUsIDAuMSlcbiAgICB9XG59XG5cbi5jdXN0b21lci1iYWRnZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIHBhZGRpbmc6IC4yNWVtIC41cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4zcHg7XG59XG5cbi5jdXN0b21lci1iYWRnZS5zdGF0dXMtcXVhbGlmaWVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzhFNkM5O1xuICAgIGNvbG9yOiAjMjU2MDI5O1xufVxuXG4uY3VzdG9tZXItYmFkZ2Uuc3RhdHVzLXVucXVhbGlmaWVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZDREQyO1xuICAgIGNvbG9yOiAjQzYzNzM3O1xufVxuXG4uY3VzdG9tZXItYmFkZ2Uuc3RhdHVzLW5lZ290aWF0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkVFREFGO1xuICAgIGNvbG9yOiAjOEE1MzQwO1xufVxuXG4uY3VzdG9tZXItYmFkZ2Uuc3RhdHVzLW5ldyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0IzRTVGQztcbiAgICBjb2xvcjogIzIzNTQ3Qjtcbn1cblxuLmN1c3RvbWVyLWJhZGdlLnN0YXR1cy1yZW5ld2FsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUNDRkZGO1xuICAgIGNvbG9yOiAjNjk0MzgyO1xufVxuXG4uY3VzdG9tZXItYmFkZ2Uuc3RhdHVzLXByb3Bvc2FsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZEOEIyO1xuICAgIGNvbG9yOiAjODA1QjM2O1xufVxuXG4ucHJvZHVjdC1iYWRnZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIHBhZGRpbmc6IC4yNWVtIC41cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4zcHg7XG59XG5cbi5wcm9kdWN0LWJhZGdlLnN0YXR1cy1pbnN0b2NrIHtcbiAgICBiYWNrZ3JvdW5kOiAjQzhFNkM5O1xuICAgIGNvbG9yOiAjMjU2MDI5O1xufVxuXG4ucHJvZHVjdC1iYWRnZS5zdGF0dXMtb3V0b2ZzdG9jayB7XG4gICAgYmFja2dyb3VuZDogI0ZGQ0REMjtcbiAgICBjb2xvcjogI0M2MzczNztcbn1cblxuLnByb2R1Y3QtYmFkZ2Uuc3RhdHVzLWxvd3N0b2NrIHtcbiAgICBiYWNrZ3JvdW5kOiAjRkVFREFGO1xuICAgIGNvbG9yOiAjOEE1MzQwO1xufVxuXG4ub3JkZXItYmFkZ2Uge1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBwYWRkaW5nOiAuMjVlbSAuNXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAuM3B4O1xufVxuXG4ub3JkZXItYmFkZ2Uub3JkZXItZGVsaXZlcmVkIHtcbiAgICBiYWNrZ3JvdW5kOiAjQzhFNkM5O1xuICAgIGNvbG9yOiAjMjU2MDI5O1xufVxuXG4ub3JkZXItYmFkZ2Uub3JkZXItY2FuY2VsbGVkIHtcbiAgICBiYWNrZ3JvdW5kOiAjRkZDREQyO1xuICAgIGNvbG9yOiAjQzYzNzM3O1xufVxuXG4ub3JkZXItYmFkZ2Uub3JkZXItcGVuZGluZyB7XG4gICAgYmFja2dyb3VuZDogI0ZFRURBRjtcbiAgICBjb2xvcjogIzhBNTM0MDtcbn1cblxuLm9yZGVyLWJhZGdlLm9yZGVyLXJldHVybmVkIHtcbiAgICBiYWNrZ3JvdW5kOiAjRUNDRkZGO1xuICAgIGNvbG9yOiAjNjk0MzgyO1xufVxuXG4uaW1hZ2UtdGV4dCB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW4tbGVmdDogLjVyZW07XG59XG5cbi5wLW11bHRpc2VsZWN0LXJlcHJlc2VudGF0aXZlLW9wdGlvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5wLW11bHRpc2VsZWN0LXJlcHJlc2VudGF0aXZlLW9wdGlvbiBpbWcge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgd2lkdGg6IDI0cHg7XG59XG5cbi5wLW11bHRpc2VsZWN0LXJlcHJlc2VudGF0aXZlLW9wdGlvbiBzcGFuIHtcbiAgICBtYXJnaW4tdG9wOiAuMTI1cmVtO1xufVxuXG4ucC1jb2x1bW4tZmlsdGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmNvdW50cnktaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uY291bnRyeS1pdGVtIGltZy5mbGFnIHtcbiAgICB3aWR0aDogMThweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC41cmVtO1xufVxuXG4uZmxhZyB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuc3Bhbi5mbGFnIHtcbiAgICB3aWR0aDo0NHB4O1xuICAgIGhlaWdodDozMHB4O1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xufVxuXG5pbWcuZmxhZyB7XG4gICAgd2lkdGg6MzBweFxufVxuXG4gICAgICAgICAgICAgICAgICAgICIsIi8qIENvbnRlbmV1ciBwcmluY2lwYWwgKi9cbi52aWRlby1yb29tIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGhlaWdodDogNjB2aDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKiBDb250ZW5ldXIgZGUgbGEgdmlkw6lvICovXG4udmlkZW8tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA3MHZoO1xuICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogQ29udGVuZXVyIGRlIGxhIHZpZMOpbyAqL1xuLmFwcGVsLXZpc2lvLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDB2aDtcbiAgYmFja2dyb3VuZDogYmxhY2s7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIFZpZMOpbyAqL1xuLnZpZGVvLXN0cmVhbSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyOyAvKiBSZW1wbGlyIGwnw6ljcmFuICovXG59XG5cbi8qIE1lc3NhZ2UgcXVhbmQgbGEgY2Ftw6lyYSBlc3QgZMOpc2FjdGl2w6llICovXG4udmlkZW8tb2ZmIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMzMzM7XG59XG5cbi8qIE5vbSBkZSBsJ3V0aWxpc2F0ZXVyICovXG4udXNlci1uYW1lIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyogQm91dG9ucyBkZSBjb250csO0bGUgKi9cbi5jb250cm9scyB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi5jb250cm9sLWJ0biB7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3M7XG59XG5cbi5jb250cm9sLWJ0bi5vbiB7XG4gIGJhY2tncm91bmQ6ICMyOGE3NDU7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLmNvbnRyb2wtYnRuLm9mZiB7XG4gIGJhY2tncm91bmQ6ICNkYzM1NDU7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLyogQm91dG9uIHJlam9pbmRyZSAqL1xuLmpvaW4tYnRuIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGJhY2tncm91bmQ6ICMwMDdiZmY7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzO1xufVxuXG4uam9pbi1idG46aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMDA1NmIzO1xufVxuXG4vKiDwn5OxIFJlc3BvbnNpdmUgcG91ciBtb2JpbGUgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAudmlkZW8tY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDYwdmg7IC8qIEFqdXN0ZSBsYSBoYXV0ZXVyIHN1ciBtb2JpbGUgKi9cbiAgfVxuICAuYXBwZWwtdmlzaW8tY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDMwdmg7IC8qIEFqdXN0ZSBsYSBoYXV0ZXVyIHN1ciBtb2JpbGUgKi9cbiAgfVxuICAudmlkZW8tc3RyZWFtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAudXNlci1uYW1lIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cblxuICAuY29udHJvbC1idG4sIC5qb2luLWJ0biB7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUT0RPIExJU1QgLSBRVUVTVElPTk5BSVJFIENSRUFUSU9OXG4gICBTdHlsZTogR2xhc3Ntb3JwaGlzbSAoaGFybW9uaXPDqSBhdmVjIHF1ZXN0aW9ubmFpcmUuY3NzKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiA9PT0gRk9STSBDT05UQUlORVIgPT09ICovXG4uZm9ybS1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1nbGFzcy1iZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg1KSk7XG4gIGJhY2tkcm9wLWZpbHRlcjogdmFyKC0tZ2xhc3MtYmx1ciwgYmx1cigyMHB4KSk7XG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiB2YXIoLS1nbGFzcy1ibHVyLCBibHVyKDIwcHgpKTtcbiAgcGFkZGluZzogMi41cmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMteGwsIDI4cHgpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1nbGFzcy1ib3JkZXItc3Ryb25nLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkpO1xuICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbGcsIDAgMTZweCA0OHB4IHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4xNikpLFxuICAgICAgICAgICAgICB2YXIoLS1zaGFkb3ctaW5zZXQsIGluc2V0IDAgMnB4IDRweCByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuMDYpKTtcbiAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gIG1hcmdpbjogMnJlbSBhdXRvO1xuICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LCAjMWExYTJlKTtcbiAgYW5pbWF0aW9uOiBmYWRlSW5VcCAwLjZzIGVhc2Utb3V0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5mb3JtLWNvbnRhaW5lcjo6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiA0cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdyYWRpZW50LXByaW1hcnksIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM2NjdlZWEgMCUsICM3NjRiYTIgMTAwJSkpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMteGwsIDI4cHgpIHZhcigtLXJhZGl1cy14bCwgMjhweCkgMCAwO1xufVxuXG4vKiA9PT0gVElUUkVTID09PSAqL1xuaDIge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5LCAjMWExYTJlKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTtcbn1cblxuaDI6OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogNjBweDtcbiAgaGVpZ2h0OiAzcHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdyYWRpZW50LXByaW1hcnksIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM2NjdlZWEgMCUsICM3NjRiYTIgMTAwJSkpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtZnVsbCwgOTk5OXB4KTtcbn1cblxuLyogPT09IEZJRUxEIFJPV1MgPT09ICovXG4uZmllbGQtcm93IHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgYW5pbWF0aW9uOiBmYWRlSW4gMC4zcyBlYXNlLW91dDtcbn1cblxuLyogPT09IEZPUk0gR1JJRCA9PT0gKi9cbi5mb3JtLWdyaWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgZ2FwOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvcm0tZ3JpZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyZnIgMWZyO1xuICB9XG59XG5cbi8qID09PSBXSURUSCBVVElMSVRJRVMgPT09ICovXG4udy1mdWxsIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qID09PSBXQVJOSU5HIFRFWFQgPT09ICovXG4ud2FybmluZy10ZXh0IHtcbiAgY29sb3I6IHZhcigtLWRhbmdlciwgI2VmNDQ0NCk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHBhZGRpbmc6IDFyZW0gMS4yNXJlbTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgyMzksIDY4LCA2OCwgMC4xKSAwJSwgcmdiYSgyMjAsIDM4LCAzOCwgMC4xKSAxMDAlKTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyMzksIDY4LCA2OCwgMC4zKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kLCAxMnB4KTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjVyZW07XG4gIGFuaW1hdGlvbjogZmFkZUluIDAuM3MgZWFzZS1vdXQ7XG59XG5cbi53YXJuaW5nLXRleHQgaSB7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xufVxuXG4vKiA9PT0gUVVFU1RJT04gSElHSExJR0hUID09PSAqL1xuLnF1ZXN0aW9uLWhpZ2hsaWdodCB7XG4gIGJvcmRlcjogMnB4IGRhc2hlZCB2YXIoLS1wcmltYXJ5LCAjNjY3ZWVhKSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuMDUpO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbWQsIDEycHgpO1xuICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLW5vcm1hbCwgMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpKTtcbn1cblxuLnF1ZXN0aW9uLWhpZ2hsaWdodDpmb2N1cy13aXRoaW4ge1xuICBib3JkZXItc3R5bGU6IHNvbGlkICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuMTUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuMDgpO1xufVxuXG4vKiA9PT0gRFJPUERPV04gTU9ERSBTRUxFQ1RPUiA9PT0gKi9cbi5maWVsZC1yb3cgLnAtZHJvcGRvd24ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1nbGFzcy1iZy1saWdodCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk1KSk7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4yKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kLCAxMnB4KTtcbiAgdHJhbnNpdGlvbjogdmFyKC0tdHJhbnNpdGlvbi1ub3JtYWwsIDAuM3MgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKSk7XG59XG5cbi5maWVsZC1yb3cgLnAtZHJvcGRvd246aG92ZXIge1xuICBib3JkZXItY29sb3I6IHJnYmEoMTAyLCAxMjYsIDIzNCwgMC40KTtcbn1cblxuLmZpZWxkLXJvdyAucC1kcm9wZG93bi5wLWZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LCAjNjY3ZWVhKTtcbiAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4xNSk7XG59XG5cbi8qID09PSBJTlBVVCBURVhUID09PSAqL1xuLmZpZWxkLXJvdyAucC1pbnB1dHRleHQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1nbGFzcy1iZy1saWdodCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk1KSk7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4yKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kLCAxMnB4KTtcbiAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLW5vcm1hbCwgMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpKTtcbiAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSwgIzFhMWEyZSk7XG59XG5cbi5maWVsZC1yb3cgLnAtaW5wdXR0ZXh0OmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuNCk7XG59XG5cbi5maWVsZC1yb3cgLnAtaW5wdXR0ZXh0OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LCAjNjY3ZWVhKTtcbiAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4xNSk7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5maWVsZC1yb3cgLnAtaW5wdXR0ZXh0OjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkLCAjODg4OGEwKTtcbn1cblxuLyogPT09IEJVVFRPTiBTVFlMRVMgPT09ICovXG4uZmllbGQtcm93IC5wLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdyYWRpZW50LXByaW1hcnksIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM2NjdlZWEgMCUsICM3NjRiYTIgMTAwJSkpO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCwgMTJweCk7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLW5vcm1hbCwgMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNtLCAwIDJweCA4cHggcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjA4KSk7XG59XG5cbi5maWVsZC1yb3cgLnAtYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ3JhZGllbnQtcHJpbWFyeS1ob3ZlciwgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzVhNmZkMSAwJSwgIzZhNDA5MCAxMDAlKSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LW1kLCAwIDhweCAyNHB4IHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4xMikpO1xufVxuXG4uZmllbGQtcm93IC5wLWJ1dHRvbjphY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi5maWVsZC1yb3cgLnAtYnV0dG9uLnAtYnV0dG9uLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1nbGFzcy1iZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg1KSk7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnksICMxYTFhMmUpO1xuICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuMyk7XG59XG5cbi5maWVsZC1yb3cgLnAtYnV0dG9uLnAtYnV0dG9uLXN1Y2Nlc3M6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuMSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeSwgIzY2N2VlYSk7XG4gIGNvbG9yOiB2YXIoLS1wcmltYXJ5LCAjNjY3ZWVhKTtcbn1cblxuLyogPT09IE1VTFRJU0VMRUNUID09PSAqL1xuLmZvcm0tZ3JpZCAucC1tdWx0aXNlbGVjdCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsYXNzLWJnLWxpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTUpKTtcbiAgYm9yZGVyOiAycHggc29saWQgcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbWQsIDEycHgpO1xuICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLW5vcm1hbCwgMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpKTtcbn1cblxuLmZvcm0tZ3JpZCAucC1tdWx0aXNlbGVjdDpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjQpO1xufVxuXG4uZm9ybS1ncmlkIC5wLW11bHRpc2VsZWN0LnAtZm9jdXMge1xuICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnksICM2NjdlZWEpO1xuICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjE1KTtcbn1cblxuLmZvcm0tZ3JpZCAucC1tdWx0aXNlbGVjdCAucC1tdWx0aXNlbGVjdC1sYWJlbCB7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnksICMxYTFhMmUpO1xufVxuXG4uZm9ybS1ncmlkIC5wLW11bHRpc2VsZWN0IC5wLW11bHRpc2VsZWN0LXRva2VuIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ3JhZGllbnQtcHJpbWFyeSwgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzY2N2VlYSAwJSwgIzc2NGJhMiAxMDAlKSk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtLCA4cHgpO1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNzVyZW07XG59XG5cbi8qID09PSBURVhUQVJFQSA9PT0gKi9cbi5mb3JtLWdyaWQgLnAtaW5wdXR0ZXh0YXJlYSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsYXNzLWJnLWxpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTUpKTtcbiAgYm9yZGVyOiAycHggZGFzaGVkIHZhcigtLXByaW1hcnksICM2NjdlZWEpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbWQsIDEycHgpO1xuICBwYWRkaW5nOiAxcmVtO1xuICB0cmFuc2l0aW9uOiB2YXIoLS10cmFuc2l0aW9uLW5vcm1hbCwgMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpKTtcbiAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSwgIzFhMWEyZSk7XG4gIHJlc2l6ZTogdmVydGljYWw7XG4gIG1pbi1oZWlnaHQ6IDgwcHg7XG59XG5cbi5mb3JtLWdyaWQgLnAtaW5wdXR0ZXh0YXJlYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4wMyk7XG59XG5cbi5mb3JtLWdyaWQgLnAtaW5wdXR0ZXh0YXJlYTpmb2N1cyB7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeSwgIzY2N2VlYSk7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuMTUpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuMDUpO1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4uZm9ybS1ncmlkIC5wLWlucHV0dGV4dGFyZWE6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQsICM4ODg4YTApO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBSRVNQT05TSVZFIE1PQklMRSBUT0RPTElTVFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5mb3JtLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMS41cmVtO1xuICAgIG1hcmdpbjogMXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbGcsIDIwcHgpO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuZm9ybS1jb250YWluZXIge1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1sZywgMjBweCk7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMCA0cHggMjBweCByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuMSk7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgLmZvcm0tY29udGFpbmVyOjpiZWZvcmUge1xuICAgIGhlaWdodDogM3B4O1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1sZywgMjBweCkgdmFyKC0tcmFkaXVzLWxnLCAyMHB4KSAwIDA7XG4gIH1cblxuICAuZm9ybS1ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBnYXA6IDFyZW07XG4gIH1cblxuICBoMiB7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICB9XG5cbiAgaDI6OmFmdGVyIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgfVxuXG4gIC5maWVsZC1yb3cge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICAvKiBEcm9wZG93biBtb2RlIC0gU3R5bGUgY2FydGUgKi9cbiAgLmZpZWxkLXJvdyAucC1kcm9wZG93biB7XG4gICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMC44NzVyZW0gMXJlbTtcbiAgICBtaW4taGVpZ2h0OiA1MnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCwgMTJweCk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjA1KSAwJSwgcmdiYSgxMTgsIDc1LCAxNjIsIDAuMDUpIDEwMCUpO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4xNSk7XG4gIH1cblxuICAuZmllbGQtcm93IC5wLWRyb3Bkb3duIC5wLWRyb3Bkb3duLWxhYmVsIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnksICMxYTFhMmUpO1xuICB9XG5cbiAgLmZpZWxkLXJvdyAucC1kcm9wZG93biAucC1kcm9wZG93bi10cmlnZ2VyIHtcbiAgICB3aWR0aDogM3JlbTtcbiAgfVxuXG4gIC8qIElucHV0IHRpdHJlIHF1ZXN0aW9ubmFpcmUgKi9cbiAgLmZpZWxkLXJvdyAucC1pbnB1dHRleHQge1xuICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAuODc1cmVtIDFyZW07XG4gICAgbWluLWhlaWdodDogNTJweDtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbWQsIDEycHgpO1xuICB9XG5cbiAgLyogVGV4dGFyZWEgcXVlc3Rpb24gKi9cbiAgLmZvcm0tZ3JpZCAucC1pbnB1dHRleHRhcmVhIHtcbiAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIG1pbi1oZWlnaHQ6IDEwMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCwgMTJweCk7XG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjIpO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gIH1cblxuICAuZm9ybS1ncmlkIC5wLWlucHV0dGV4dGFyZWE6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeSwgIzY2N2VlYSk7XG4gICAgYmFja2dyb3VuZDogcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjAyKTtcbiAgfVxuXG4gIC8qIE11bHRpc2VsZWN0IHF1ZXN0aW9ubmFpcmVzICovXG4gIC5mb3JtLWdyaWQgLnAtbXVsdGlzZWxlY3Qge1xuICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgIG1pbi1oZWlnaHQ6IDUycHg7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kLCAxMnB4KTtcbiAgfVxuXG4gIC5mb3JtLWdyaWQgLnAtbXVsdGlzZWxlY3QgLnAtbXVsdGlzZWxlY3QtbGFiZWwge1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgfVxuXG4gIC5mb3JtLWdyaWQgLnAtbXVsdGlzZWxlY3QgLnAtbXVsdGlzZWxlY3QtdG9rZW4ge1xuICAgIHBhZGRpbmc6IDAuNHJlbSAwLjc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgICBtYXJnaW46IDAuMnJlbTtcbiAgfVxuXG4gIC8qIEJvdXRvbiBwcmluY2lwYWwgKi9cbiAgLmZpZWxkLXJvdyAucC1idXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1pbi1oZWlnaHQ6IDUycHg7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kLCAxMnB4KTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC5maWVsZC1yb3cgLnAtYnV0dG9uOmFjdGl2ZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk4KTtcbiAgfVxuXG4gIC5maWVsZC1yb3cgLnAtYnV0dG9uIC5wLWJ1dHRvbi1pY29uIHtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgfVxuXG4gIC8qIFdhcm5pbmcgbWVzc2FnZSAqL1xuICAud2FybmluZy10ZXh0IHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCwgMTJweCk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgyMzksIDY4LCA2OCwgMC4wOCkgMCUsIHJnYmEoMjIwLCAzOCwgMzgsIDAuMDgpIDEwMCUpO1xuICB9XG5cbiAgLndhcm5pbmctdGV4dCBpIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cblxuICAvKiBRdWVzdGlvbiBoaWdobGlnaHQgKi9cbiAgLnF1ZXN0aW9uLWhpZ2hsaWdodCB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBib3JkZXItd2lkdGg6IDJweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmZvcm0tY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCwgMTJweCk7XG4gIH1cblxuICAuZmllbGQtcm93IC5wLWRyb3Bkb3duLFxuICAuZmllbGQtcm93IC5wLWlucHV0dGV4dCB7XG4gICAgcGFkZGluZzogMC43NXJlbTtcbiAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICB9XG5cbiAgLmZvcm0tZ3JpZCAucC1pbnB1dHRleHRhcmVhIHtcbiAgICBwYWRkaW5nOiAwLjg3NXJlbTtcbiAgICBtaW4taGVpZ2h0OiA5MHB4O1xuICB9XG5cbiAgLmZpZWxkLXJvdyAucC1idXR0b24ge1xuICAgIHBhZGRpbmc6IDAuODc1cmVtIDFyZW07XG4gICAgbWluLWhlaWdodDogNDhweDtcbiAgICBmb250LXNpemU6IDAuOTVyZW07XG4gIH1cblxuICAud2FybmluZy10ZXh0IHtcbiAgICBwYWRkaW5nOiAwLjg3NXJlbTtcbiAgICBmb250LXNpemU6IDAuODVyZW07XG4gIH1cbn1cblxuLyogPT09IEFOSU1BVElPTlMgPT09ICovXG5Aa2V5ZnJhbWVzIGZhZGVJblVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgZnJvbSB7IG9wYWNpdHk6IDA7IH1cbiAgdG8geyBvcGFjaXR5OiAxOyB9XG59XG5cbi8qIETDqXNhY3RpdmVyIGFuaW1hdGlvbnMgc3VyIG1vYmlsZSBwb3VyIHBlcmZvcm1hbmNlICovXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmZvcm0tY29udGFpbmVyLFxuICAuZmllbGQtcm93IHtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFFVRVNUSU9OTkFJUkUgREVTSUdOIFNZU1RFTVxuICAgU3R5bGU6IEdsYXNzbW9ycGhpc21cbiAgIFBhbGV0dGU6IFZpb2xldC9CbGV1ICgjNjY3ZWVhIOKGkiAjNzY0YmEyKVxuICAgSU1QT1JUQU5UOiBUb3VzIGxlcyBzdHlsZXMgc29udCBzY29ww6lzIMOgIC5xdWVzdGlvbm5haXJlLXBhZ2VcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogPT09IFZBUklBQkxFUyBDU1MgKGdsb2JhbGVzLCBvaykgPT09ICovXG4ucXVlc3Rpb25uYWlyZS1wYWdlIHtcbiAgLS1xLXByaW1hcnk6ICM2NjdlZWE7XG4gIC0tcS1wcmltYXJ5LWRhcms6ICM1YTZmZDE7XG4gIC0tcS1wcmltYXJ5LWxpZ2h0OiAjOGI5Y2Y1O1xuICAtLXEtc2Vjb25kYXJ5OiAjNzY0YmEyO1xuICAtLXEtZ3JhZGllbnQtcHJpbWFyeTogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzExMTUyNCAwJSwgIzc2NGJhMiAxMDAlKTtcbiAgLS1xLWdyYWRpZW50LXByaW1hcnktaG92ZXI6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM1YTZmZDEgMCUsICM2YTQwOTAgMTAwJSk7XG5cbiAgLyogR2xhc3Ntb3JwaGlzbSAqL1xuICAtLXEtZ2xhc3MtYmc6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7XG4gIC0tcS1nbGFzcy1iZy1saWdodDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk1KTtcbiAgLS1xLWdsYXNzLWJnLWRhcms6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiAgLS1xLWdsYXNzLWJvcmRlcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICAtLXEtZ2xhc3MtYm9yZGVyLXN0cm9uZzogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAtLXEtZ2xhc3MtYmx1cjogYmx1cigyMHB4KTtcblxuICAvKiBPbWJyZXMgKi9cbiAgLS1xLXNoYWRvdy1zbTogMCAycHggOHB4IHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4wOCk7XG4gIC0tcS1zaGFkb3ctbWQ6IDAgOHB4IDI0cHggcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjEyKTtcbiAgLS1xLXNoYWRvdy1sZzogMCAxNnB4IDQ4cHggcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjE2KTtcbiAgLS1xLXNoYWRvdy14bDogMCAyNHB4IDY0cHggcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjIpO1xuICAtLXEtc2hhZG93LWdsb3c6IDAgMCA0MHB4IHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4yKTtcbiAgLS1xLXNoYWRvdy1pbnNldDogaW5zZXQgMCAycHggNHB4IHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4wNik7XG5cbiAgLyogUmF5b25zICovXG4gIC0tcS1yYWRpdXMtc206IDhweDtcbiAgLS1xLXJhZGl1cy1tZDogMTJweDtcbiAgLS1xLXJhZGl1cy1sZzogMjBweDtcbiAgLS1xLXJhZGl1cy14bDogMjhweDtcbiAgLS1xLXJhZGl1cy1mdWxsOiA5OTk5cHg7XG5cbiAgLyogVHJhbnNpdGlvbnMgKi9cbiAgLS1xLXRyYW5zaXRpb24tZmFzdDogMC4xNXMgZWFzZTtcbiAgLS1xLXRyYW5zaXRpb24tbm9ybWFsOiAwLjNzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIC0tcS10cmFuc2l0aW9uLXNsb3c6IDAuNXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgLS1xLXRyYW5zaXRpb24tYm91bmNlOiAwLjRzIGN1YmljLWJlemllcigwLjM0LCAxLjU2LCAwLjY0LCAxKTtcblxuICAvKiBUZXh0ZSAqL1xuICAtLXEtdGV4dC1wcmltYXJ5OiAjMWExYTJlO1xuICAtLXEtdGV4dC1zZWNvbmRhcnk6ICM0YTRhNjg7XG4gIC0tcS10ZXh0LW11dGVkOiAjODg4OGEwO1xuICAtLXEtdGV4dC1saWdodDogI2IwYjBjMDtcblxuICAvKiDDiXRhdHMgKi9cbiAgLS1xLXN1Y2Nlc3M6ICMxMGI5ODE7XG4gIC0tcS13YXJuaW5nOiAjZjU5ZTBiO1xuICAtLXEtZGFuZ2VyOiAjZWY0NDQ0O1xuICAtLXEtaW5mbzogIzNiODJmNjtcbn1cblxuLyogPT09IEFOSU1BVElPTlMgS0VZRlJBTUVTID09PSAqL1xuQGtleWZyYW1lcyBxLWZhZGVJblVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcS1mYWRlSW4ge1xuICBmcm9tIHsgb3BhY2l0eTogMDsgfVxuICB0byB7IG9wYWNpdHk6IDE7IH1cbn1cblxuQGtleWZyYW1lcyBxLXNsaWRlRG93biB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBxLXB1bHNlIHtcbiAgMCUsIDEwMCUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjQpO1xuICB9XG4gIDUwJSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMTJweCByZ2JhKDEwMiwgMTI2LCAyMzQsIDApO1xuICB9XG59XG5cbi8qID09PSBDT05UQUlORVIgUFJJTkNJUEFMID09PSAqL1xuLnF1ZXN0aW9ubmFpcmUtcGFnZSAuZm9ybS1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1xLWdsYXNzLWJnKTtcbiAgYmFja2Ryb3AtZmlsdGVyOiB2YXIoLS1xLWdsYXNzLWJsdXIpO1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogdmFyKC0tcS1nbGFzcy1ibHVyKTtcbiAgcGFkZGluZzogMi41cmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1xLXJhZGl1cy14bCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXEtZ2xhc3MtYm9yZGVyLXN0cm9uZyk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXEtc2hhZG93LWxnKSwgdmFyKC0tcS1zaGFkb3ctaW5zZXQpO1xuICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgbWFyZ2luOiAycmVtIGF1dG87XG4gIGNvbG9yOiB2YXIoLS1xLXRleHQtcHJpbWFyeSk7XG4gIGFuaW1hdGlvbjogcS1mYWRlSW5VcCAwLjZzIGVhc2Utb3V0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLmZvcm0tY29udGFpbmVyOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDRweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcS1ncmFkaWVudC1wcmltYXJ5KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcS1yYWRpdXMteGwpIHZhcigtLXEtcmFkaXVzLXhsKSAwIDA7XG59XG5cbi8qID09PSBQQU5FTCBIRUFERVIgKFFVRVNUSU9OTkFJUkUpID09PSAqL1xuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1wYW5lbCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcS1yYWRpdXMtbGcpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3gtc2hhZG93OiB2YXIoLS1xLXNoYWRvdy1tZCk7XG4gIHRyYW5zaXRpb246IHZhcigtLXEtdHJhbnNpdGlvbi1ub3JtYWwpO1xuICBhbmltYXRpb246IHEtZmFkZUluVXAgMC41cyBlYXNlLW91dCBiYWNrd2FyZHM7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtcGFuZWw6bnRoLWNoaWxkKDEpIHsgYW5pbWF0aW9uLWRlbGF5OiAwLjFzOyB9XG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLXBhbmVsOm50aC1jaGlsZCgyKSB7IGFuaW1hdGlvbi1kZWxheTogMC4yczsgfVxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1wYW5lbDpudGgtY2hpbGQoMykgeyBhbmltYXRpb24tZGVsYXk6IDAuM3M7IH1cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtcGFuZWw6bnRoLWNoaWxkKDQpIHsgYW5pbWF0aW9uLWRlbGF5OiAwLjRzOyB9XG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLXBhbmVsOm50aC1jaGlsZCg1KSB7IGFuaW1hdGlvbi1kZWxheTogMC41czsgfVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLXBhbmVsOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogdmFyKC0tcS1zaGFkb3cteGwpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtcGFuZWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1xLWdsYXNzLWJnLWxpZ2h0KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiB2YXIoLS1xLWdsYXNzLWJsdXIpO1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogdmFyKC0tcS1nbGFzcy1ibHVyKTtcbiAgcGFkZGluZzogMXJlbSAxLjVyZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4xKTtcbiAgdHJhbnNpdGlvbjogdmFyKC0tcS10cmFuc2l0aW9uLW5vcm1hbCk7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtcGFuZWwtaGVhZGVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk4KTtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1wYW5lbC1jb250ZW50IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcS1nbGFzcy1iZy1saWdodCk7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMS41cmVtO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLXBhbmVsLWhlYWRlci1pY29uIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgY29sb3I6IHZhcigtLXEtdGV4dC1zZWNvbmRhcnkpO1xuICB0cmFuc2l0aW9uOiB2YXIoLS1xLXRyYW5zaXRpb24tbm9ybWFsKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcS1yYWRpdXMtc20pO1xuICBwYWRkaW5nOiAwLjVyZW07XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtcGFuZWwtaGVhZGVyLWljb246aG92ZXIge1xuICBjb2xvcjogdmFyKC0tcS1wcmltYXJ5KTtcbiAgYmFja2dyb3VuZDogcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG59XG5cbi8qIFRhaWxsZSBkZXMgaWPDtG5lcyBTVkcgZW4gbW9kZSBidXJlYXUgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5oZWFkZXItYWN0aW9ucyBidXR0b24ucC1wYW5lbC1oZWFkZXItaWNvbi5wLWxpbmsge1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiA0MHB4ICFpbXBvcnRhbnQ7XG4gICAgbWluLWhlaWdodDogNDBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDhweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAuaGVhZGVyLWFjdGlvbnMgYnV0dG9uLnAtcGFuZWwtaGVhZGVyLWljb24ucC1saW5rIHN2ZyxcbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAuaGVhZGVyLWFjdGlvbnMgLnRvb2x0aXAtZXllIHN2ZyxcbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAuaGVhZGVyLWFjdGlvbnMgLnRvb2x0aXAtZWRpdCBzdmcsXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLmhlYWRlci1hY3Rpb25zIC50b29sdGlwLWRlbGV0ZSBzdmcge1xuICAgIHdpZHRoOiAyOHB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAyOHB4ICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiAyOHB4ICFpbXBvcnRhbnQ7XG4gICAgbWluLWhlaWdodDogMjhweCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyogQXZhdGFyIGRhbnMgUGFuZWwgSGVhZGVyICovXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLXBhbmVsIC5wLWF2YXRhciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXEtZ3JhZGllbnQtcHJpbWFyeSk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIGJveC1zaGFkb3c6IHZhcigtLXEtc2hhZG93LW1kKTtcbiAgdHJhbnNpdGlvbjogdmFyKC0tcS10cmFuc2l0aW9uLWJvdW5jZSk7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtcGFuZWw6aG92ZXIgLnAtYXZhdGFyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgYm94LXNoYWRvdzogdmFyKC0tcS1zaGFkb3ctbGcpLCB2YXIoLS1xLXNoYWRvdy1nbG93KTtcbn1cblxuLyogPT09IEFDQ09SRElPTiAoUVVFU1RJT05TKSA9PT0gKi9cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLmN1c3RvbS1hY2NvcmRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4vKiBMZSBoZWFkZXIgcGFyZW50IHJlw6dvaXQgbGEgY291bGV1ciB2aWEgaGVhZGVyU3R5bGUgZGUgUmVhY3QgKi9cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLmN1c3RvbS1hY2NvcmRpb24gLnAtYWNjb3JkaW9uLWhlYWRlciB7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1xLXJhZGl1cy1tZCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLmN1c3RvbS1hY2NvcmRpb24gLnAtYWNjb3JkaW9uLWhlYWRlci1saW5rIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICBiYWNrZHJvcC1maWx0ZXI6IHZhcigtLXEtZ2xhc3MtYmx1cik7XG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiB2YXIoLS1xLWdsYXNzLWJsdXIpO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1xLXJhZGl1cy1tZCkgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMXJlbSAxLjI1cmVtO1xuICB0cmFuc2l0aW9uOiB2YXIoLS1xLXRyYW5zaXRpb24tbm9ybWFsKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5jdXN0b20tYWNjb3JkaW9uIC5wLWFjY29yZGlvbi1oZWFkZXItbGluazo6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiA0cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXEtZ3JhZGllbnQtcHJpbWFyeSk7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IHZhcigtLXEtdHJhbnNpdGlvbi1ub3JtYWwpO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5jdXN0b20tYWNjb3JkaW9uIC5wLWFjY29yZGlvbi1oZWFkZXItbGluazpob3ZlciB7XG4gIGZpbHRlcjogYnJpZ2h0bmVzcygwLjk1KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuMyk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXEtc2hhZG93LW1kKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweCk7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLmN1c3RvbS1hY2NvcmRpb24gLnAtYWNjb3JkaW9uLWhlYWRlci1saW5rOmhvdmVyOjpiZWZvcmUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5jdXN0b20tYWNjb3JkaW9uIC5wLWFjY29yZGlvbi1jb250ZW50IHtcbiAgcGFkZGluZzogMS41cmVtO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1xLWdsYXNzLWJnLWxpZ2h0KTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjEpO1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tcS1yYWRpdXMtbWQpIHZhcigtLXEtcmFkaXVzLW1kKTtcbiAgYW5pbWF0aW9uOiBxLXNsaWRlRG93biAwLjNzIGVhc2Utb3V0O1xufVxuXG4vKiA9PT0gSU5QVVRTIEVUIENPTlRST0xFUyA9PT0gKi9cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtaW5wdXR0ZXh0LFxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1pbnB1dHRleHRhcmVhLFxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1kcm9wZG93bixcbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtbXVsdGlzZWxlY3Qge1xuICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuMik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXEtcmFkaXVzLW1kKTtcbiAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICB0cmFuc2l0aW9uOiB2YXIoLS1xLXRyYW5zaXRpb24tbm9ybWFsKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tcS1nbGFzcy1iZy1saWdodCk7XG4gIGNvbG9yOiB2YXIoLS1xLXRleHQtcHJpbWFyeSk7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtaW5wdXR0ZXh0OmhvdmVyLFxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1pbnB1dHRleHRhcmVhOmhvdmVyLFxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1kcm9wZG93bjpob3Zlcixcbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtbXVsdGlzZWxlY3Q6aG92ZXIge1xuICBib3JkZXItY29sb3I6IHJnYmEoMTAyLCAxMjYsIDIzNCwgMC40KTtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1pbnB1dHRleHQ6Zm9jdXMsXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWlucHV0dGV4dGFyZWE6Zm9jdXMsXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWRyb3Bkb3duOmZvY3VzLFxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1tdWx0aXNlbGVjdDpmb2N1cyxcbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtaW5wdXR0ZXh0OmZvY3VzLXdpdGhpbixcbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtZHJvcGRvd24ucC1mb2N1cyxcbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtbXVsdGlzZWxlY3QucC1mb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tcS1wcmltYXJ5KTtcbiAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4xNSk7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtaW5wdXR0ZXh0OjpwbGFjZWhvbGRlcixcbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtaW5wdXR0ZXh0YXJlYTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogdmFyKC0tcS10ZXh0LW11dGVkKTtcbiAgdHJhbnNpdGlvbjogdmFyKC0tcS10cmFuc2l0aW9uLW5vcm1hbCk7XG59XG5cbi8qID09PSBCT1VUT05TID09PSAqL1xuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1xLWdyYWRpZW50LXByaW1hcnkpO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXEtcmFkaXVzLW1kKTtcbiAgcGFkZGluZzogMC43NXJlbSAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRyYW5zaXRpb246IHZhcigtLXEtdHJhbnNpdGlvbi1ub3JtYWwpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IHZhcigtLXEtc2hhZG93LXNtKTtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1xLWdyYWRpZW50LXByaW1hcnktaG92ZXIpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXEtc2hhZG93LW1kKTtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1idXR0b246YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICBib3gtc2hhZG93OiB2YXIoLS1xLXNoYWRvdy1zbSk7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtYnV0dG9uLnAtYnV0dG9uLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMWEyNjIyIDAlLCAjMDU5NjY5IDEwMCUpO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWJ1dHRvbi5wLWJ1dHRvbi1kYW5nZXIge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZWY0NDQ0IDAlLCAjZGMyNjI2IDEwMCUpO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWJ1dHRvbi5wLWJ1dHRvbi1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1xLWdsYXNzLWJnKTtcbiAgY29sb3I6IHZhcigtLXEtdGV4dC1wcmltYXJ5KTtcbiAgYm9yZGVyOiAycHggc29saWQgcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjMpO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWJ1dHRvbi5wLWJ1dHRvbi1zZWNvbmRhcnk6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuMSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tcS1wcmltYXJ5KTtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1idXR0b24ucC1idXR0b24tdGV4dCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tcS1wcmltYXJ5KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1idXR0b24ucC1idXR0b24tdGV4dDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4xKTtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKiA9PT0gUkFESU8gQlVUVE9OUyA9PT0gKi9cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtcmFkaW9idXR0b24gLnAtcmFkaW9idXR0b24tYm94IHtcbiAgYm9yZGVyOiAycHggc29saWQgcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjMpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1xLWdsYXNzLWJnLWxpZ2h0KTtcbiAgdHJhbnNpdGlvbjogdmFyKC0tcS10cmFuc2l0aW9uLW5vcm1hbCk7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtcmFkaW9idXR0b24gLnAtcmFkaW9idXR0b24tYm94OmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1xLXByaW1hcnkpO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLXJhZGlvYnV0dG9uIC5wLXJhZGlvYnV0dG9uLWJveC5wLWhpZ2hsaWdodCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXEtZ3JhZGllbnQtcHJpbWFyeSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tcS1wcmltYXJ5KTtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1yYWRpb2J1dHRvbiAucC1yYWRpb2J1dHRvbi1ib3ggLnAtcmFkaW9idXR0b24taWNvbiB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuXG4vKiA9PT0gQ0hFQ0tCT1hFUyA9PT0gKi9cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtY2hlY2tib3ggLnAtY2hlY2tib3gtYm94IHtcbiAgYm9yZGVyOiAycHggc29saWQgcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjMpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1xLXJhZGl1cy1zbSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXEtZ2xhc3MtYmctbGlnaHQpO1xuICB0cmFuc2l0aW9uOiB2YXIoLS1xLXRyYW5zaXRpb24tbm9ybWFsKTtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1jaGVja2JveCAucC1jaGVja2JveC1ib3g6aG92ZXIge1xuICBib3JkZXItY29sb3I6IHZhcigtLXEtcHJpbWFyeSk7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtY2hlY2tib3ggLnAtY2hlY2tib3gtYm94LnAtaGlnaGxpZ2h0IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcS1ncmFkaWVudC1wcmltYXJ5KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1xLXByaW1hcnkpO1xufVxuXG4vKiA9PT0gRElBTE9HUyA9PT0gKi9cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtZGlhbG9nIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcS1yYWRpdXMteGwpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3gtc2hhZG93OiB2YXIoLS1xLXNoYWRvdy14bCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXEtZ2xhc3MtYm9yZGVyKTtcbiAgYW5pbWF0aW9uOiBxLWZhZGVJblVwIDAuM3MgZWFzZS1vdXQ7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtZGlhbG9nIC5wLWRpYWxvZy1oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1xLWdsYXNzLWJnLWxpZ2h0KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiB2YXIoLS1xLWdsYXNzLWJsdXIpO1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogdmFyKC0tcS1nbGFzcy1ibHVyKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4xKTtcbiAgcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtZGlhbG9nIC5wLWRpYWxvZy1oZWFkZXIgLnAtZGlhbG9nLXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6IHZhcigtLXEtdGV4dC1wcmltYXJ5KTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWRpYWxvZyAucC1kaWFsb2ctY29udGVudCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXEtZ2xhc3MtYmcpO1xuICBwYWRkaW5nOiAxLjVyZW07XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtZGlhbG9nIC5wLWRpYWxvZy1mb290ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1xLWdsYXNzLWJnLWxpZ2h0KTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4xKTtcbiAgcGFkZGluZzogMXJlbSAxLjVyZW07XG59XG5cbi8qID09PSBDT0xPUiBQSUNLRVIgPT09ICovXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWNvbG9ycGlja2VyIHtcbiAgdHJhbnNpdGlvbjogdmFyKC0tcS10cmFuc2l0aW9uLW5vcm1hbCk7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWNvbG9ycGlja2VyOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWNvbG9ycGlja2VyLXByZXZpZXcge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1xLXJhZGl1cy1zbSk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXEtc2hhZG93LXNtKTtcbiAgYm9yZGVyOiAycHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbn1cblxuLyogPT09IERST1BET1dOID09PSAqL1xuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1kcm9wZG93bi1wYW5lbCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXEtZ2xhc3MtYmctbGlnaHQpO1xuICBiYWNrZHJvcC1maWx0ZXI6IHZhcigtLXEtZ2xhc3MtYmx1cik7XG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiB2YXIoLS1xLWdsYXNzLWJsdXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1xLXJhZGl1cy1tZCk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXEtc2hhZG93LWxnKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcS1nbGFzcy1ib3JkZXIpO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWRyb3Bkb3duLWl0ZW0ge1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gIHRyYW5zaXRpb246IHZhcigtLXEtdHJhbnNpdGlvbi1mYXN0KTtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1kcm9wZG93bi1pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjEpO1xuICBjb2xvcjogdmFyKC0tcS1wcmltYXJ5KTtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1kcm9wZG93bi1pdGVtLnAtaGlnaGxpZ2h0IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcS1ncmFkaWVudC1wcmltYXJ5KTtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4vKiA9PT0gVE9BU1QgPT09ICovXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLXRvYXN0IHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC10b2FzdCAucC10b2FzdC1tZXNzYWdlIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcS1yYWRpdXMtbGcpO1xuICBiYWNrZHJvcC1maWx0ZXI6IHZhcigtLXEtZ2xhc3MtYmx1cik7XG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiB2YXIoLS1xLWdsYXNzLWJsdXIpO1xuICBib3gtc2hhZG93OiB2YXIoLS1xLXNoYWRvdy1sZyk7XG4gIGFuaW1hdGlvbjogcS1zbGlkZURvd24gMC4zcyBlYXNlLW91dDtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC10b2FzdCAucC10b2FzdC1tZXNzYWdlLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZ2JhKDE2LCAxODUsIDEyOSwgMC45NSkgMCUsIHJnYmEoNSwgMTUwLCAxMDUsIDAuOTUpIDEwMCUpO1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkICMxMGI5ODE7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtdG9hc3QgLnAtdG9hc3QtbWVzc2FnZS1lcnJvciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJnYmEoMjM5LCA2OCwgNjgsIDAuOTUpIDAlLCByZ2JhKDIyMCwgMzgsIDM4LCAwLjk1KSAxMDAlKTtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjZWY0NDQ0O1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLXRvYXN0IC5wLXRvYXN0LW1lc3NhZ2Utd2FybiB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJnYmEoMjQ1LCAxNTgsIDExLCAwLjk1KSAwJSwgcmdiYSgyMTcsIDExOSwgNiwgMC45NSkgMTAwJSk7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2Y1OWUwYjtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC10b2FzdCAucC10b2FzdC1tZXNzYWdlLWluZm8ge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZ2JhKDU5LCAxMzAsIDI0NiwgMC45NSkgMCUsIHJnYmEoMzcsIDk5LCAyMzUsIDAuOTUpIDEwMCUpO1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkICMzYjgyZjY7XG59XG5cbi8qID09PSBUT09MVElQID09PSAqL1xuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC10b29sdGlwIC5wLXRvb2x0aXAtdGV4dCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXEtdGV4dC1wcmltYXJ5KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcS1yYWRpdXMtc20pO1xuICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgYm94LXNoYWRvdzogdmFyKC0tcS1zaGFkb3ctbWQpO1xufVxuXG4vKiA9PT0gRElWSURFUiA9PT0gKi9cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtZGl2aWRlciB7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjE1KTtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1kaXZpZGVyLnAtZGl2aWRlci12ZXJ0aWNhbDo6YmVmb3JlIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4yKTtcbn1cblxuLyogPT09IEVESVRPUiA9PT0gKi9cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtZWRpdG9yLWNvbnRhaW5lciB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXEtcmFkaXVzLW1kKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyOiAycHggc29saWQgcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjIpO1xuICB0cmFuc2l0aW9uOiB2YXIoLS1xLXRyYW5zaXRpb24tbm9ybWFsKTtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1lZGl0b3ItY29udGFpbmVyOmZvY3VzLXdpdGhpbiB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tcS1wcmltYXJ5KTtcbiAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4xNSk7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtZWRpdG9yLXRvb2xiYXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1xLWdsYXNzLWJnLWxpZ2h0KTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4xKTtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1lZGl0b3ItY29udGVudCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXEtZ2xhc3MtYmctbGlnaHQpO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWVkaXRvci1jb250ZW50IC5xbC1lZGl0b3Ige1xuICBtaW4taGVpZ2h0OiAxMDBweDtcbiAgZm9udC1zaXplOiAwLjk1cmVtO1xuICBjb2xvcjogdmFyKC0tcS10ZXh0LXByaW1hcnkpO1xufVxuXG4vKiA9PT0gU0xJREVSID09PSAqL1xuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1zbGlkZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuMik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXEtcmFkaXVzLWZ1bGwpO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLXNsaWRlciAucC1zbGlkZXItcmFuZ2Uge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1xLWdyYWRpZW50LXByaW1hcnkpO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLXNsaWRlciAucC1zbGlkZXItaGFuZGxlIHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlcjogM3B4IHNvbGlkIHZhcigtLXEtcHJpbWFyeSk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXEtc2hhZG93LW1kKTtcbiAgdHJhbnNpdGlvbjogdmFyKC0tcS10cmFuc2l0aW9uLW5vcm1hbCk7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtc2xpZGVyIC5wLXNsaWRlci1oYW5kbGU6aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gIGJveC1zaGFkb3c6IHZhcigtLXEtc2hhZG93LWxnKSwgdmFyKC0tcS1zaGFkb3ctZ2xvdyk7XG59XG5cbi8qID09PSBBVVRPQ09NUExFVEUgPT09ICovXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWF1dG9jb21wbGV0ZS1wYW5lbCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXEtZ2xhc3MtYmctbGlnaHQpO1xuICBiYWNrZHJvcC1maWx0ZXI6IHZhcigtLXEtZ2xhc3MtYmx1cik7XG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiB2YXIoLS1xLWdsYXNzLWJsdXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1xLXJhZGl1cy1tZCk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXEtc2hhZG93LWxnKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcS1nbGFzcy1ib3JkZXIpO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWF1dG9jb21wbGV0ZS1pdGVtIHtcbiAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICB0cmFuc2l0aW9uOiB2YXIoLS1xLXRyYW5zaXRpb24tZmFzdCk7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtYXV0b2NvbXBsZXRlLWl0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuMSk7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtYXV0b2NvbXBsZXRlLWl0ZW0ucC1oaWdobGlnaHQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1xLWdyYWRpZW50LXByaW1hcnkpO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtYXV0b2NvbXBsZXRlLW11bHRpcGxlLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXEtZ2xhc3MtYmctbGlnaHQpO1xuICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuMik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXEtcmFkaXVzLW1kKTtcbiAgcGFkZGluZzogMC41cmVtO1xuICB0cmFuc2l0aW9uOiB2YXIoLS1xLXRyYW5zaXRpb24tbm9ybWFsKTtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1hdXRvY29tcGxldGUtbXVsdGlwbGUtY29udGFpbmVyOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuNCk7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtYXV0b2NvbXBsZXRlLW11bHRpcGxlLWNvbnRhaW5lci5wLWZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1xLXByaW1hcnkpO1xuICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjE1KTtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1hdXRvY29tcGxldGUtdG9rZW4ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1xLWdyYWRpZW50LXByaW1hcnkpO1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXEtcmFkaXVzLXNtKTtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjc1cmVtO1xuICBtYXJnaW46IDAuMTI1cmVtO1xufVxuXG4vKiA9PT0gSUNPTkVTIEFDVElPTlMgPT09ICovXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC50b29sdGlwLWV5ZSxcbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnRvb2x0aXAtZWRpdCxcbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnRvb2x0aXAtZGVsZXRlLFxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAudG9vbHRpcC1jb2xvcixcbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnRvb2x0aXAtZWRpdC1xdWVzdGlvbixcbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnRvb2x0aXAtZGVsZXRlLXF1ZXN0aW9uIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXEtcmFkaXVzLXNtKTtcbiAgdHJhbnNpdGlvbjogdmFyKC0tcS10cmFuc2l0aW9uLW5vcm1hbCk7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAudG9vbHRpcC1leWU6aG92ZXIsXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC50b29sdGlwLWVkaXQ6aG92ZXIsXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC50b29sdGlwLWNvbG9yOmhvdmVyLFxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAudG9vbHRpcC1lZGl0LXF1ZXN0aW9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnRvb2x0aXAtZGVsZXRlOmhvdmVyLFxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAudG9vbHRpcC1kZWxldGUtcXVlc3Rpb246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDIzOSwgNjgsIDY4LCAwLjEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG59XG5cbi8qID09PSBGT1JNIEVMRU1FTlRTID09PSAqL1xuLnF1ZXN0aW9ubmFpcmUtcGFnZSAuZmllbGQge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5maWVsZCBsYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiB2YXIoLS1xLXRleHQtc2Vjb25kYXJ5KTtcbiAgZm9udC1zaXplOiAwLjlyZW07XG59XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtZmllbGQge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWZpZWxkIGxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6IHZhcigtLXEtdGV4dC1zZWNvbmRhcnkpO1xufVxuXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWZsdWlkIC5wLWlucHV0dGV4dCxcbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtZmx1aWQgLnAtZHJvcGRvd24sXG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWZsdWlkIC5wLW11bHRpc2VsZWN0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFJFU1BPTlNJVkUgREVTSUdOIC0gTU9CSUxFXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIFRhYmxldCAoNzY4cHggLSAxMDI0cHgpICovXG5AbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLmZvcm0tY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgbWFyZ2luOiAxcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXEtcmFkaXVzLWxnKTtcbiAgfVxuXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtcGFuZWwtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG5cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1kaWFsb2cge1xuICAgIHdpZHRoOiA4NXZ3ICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiA2MDBweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE1PQklMRSBERVNJR04gKDwgNzY4cHgpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLyogPT09IENPTlRBSU5FUiBNT0JJTEUgPT09ICovXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLmZvcm0tY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNmOGY5ZmYgMCUsICNlZWYxZmYgMTAwJSk7XG4gIH1cblxuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5mb3JtLWNvbnRhaW5lcjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLyogPT09IFBBTkVMIFFVRVNUSU9OTkFJUkUgTU9CSUxFID09PSAqL1xuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5wLXBhbmVsIHtcbiAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcS1yYWRpdXMtbGcpO1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDIwcHggcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjEpO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1wYW5lbC1oZWFkZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgZ2FwOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgLyogVGl0cmUgZHUgcXVlc3Rpb25uYWlyZSAtIFN0eWxlIGNhcnRlICovXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtcGFuZWwtaGVhZGVyID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICBiYWNrZ3JvdW5kOnJnYig0IDEgMSk7XG4gICAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXEtcmFkaXVzLWxnKSB2YXIoLS1xLXJhZGl1cy1sZykgMCAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNzVyZW07XG4gIH1cblxuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5wLXBhbmVsLWhlYWRlciA+IGRpdjpmaXJzdC1jaGlsZCAucC1hdmF0YXIge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHdpZHRoOiAyLjVyZW07XG4gICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cblxuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5wLXBhbmVsLWhlYWRlciA+IGRpdjpmaXJzdC1jaGlsZCBzcGFuIHtcbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEuMXJlbSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgfVxuXG4gIC8qIEJhcnJlIGQnYWN0aW9ucyBkdSBxdWVzdGlvbm5haXJlICovXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtcGFuZWwtaGVhZGVyID4gZGl2Omxhc3QtY2hpbGQsXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtcGFuZWwtaGVhZGVyIC5oZWFkZXItYWN0aW9ucyB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgcGFkZGluZzogMC43NXJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4xKTtcbiAgICBnYXA6IDAuMjVyZW07XG4gIH1cblxuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5wLXBhbmVsLWhlYWRlciAucC1wYW5lbC1oZWFkZXItaWNvbiB7XG4gICAgd2lkdGg6IDQ0cHg7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1xLXJhZGl1cy1tZCk7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjA4KTtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS1xLXRyYW5zaXRpb24tZmFzdCk7XG4gIH1cblxuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5wLXBhbmVsLWhlYWRlciAucC1wYW5lbC1oZWFkZXItaWNvbjphY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gICAgYmFja2dyb3VuZDogcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjE1KTtcbiAgfVxuXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtcGFuZWwtaGVhZGVyIC5wLXBhbmVsLWhlYWRlci1pY29uIHN2ZyB7XG4gICAgd2lkdGg6IDIycHggIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDIycHggIWltcG9ydGFudDtcbiAgfVxuXG4gIC8qIENvbG9yUGlja2VyIG1vYmlsZSAqL1xuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5wLXBhbmVsLWhlYWRlciAucC1jb2xvcnBpY2tlciB7XG4gICAgd2lkdGg6IDQ0cHg7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtcGFuZWwtaGVhZGVyIC5wLWNvbG9ycGlja2VyLXByZXZpZXcge1xuICAgIHdpZHRoOiAyOHB4O1xuICAgIGhlaWdodDogMjhweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyOiAzcHggc29saWQgd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwwLDAsMC4xNSk7XG4gIH1cblxuICAvKiBDb250ZW51IGR1IHBhbmVsICovXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtcGFuZWwtY29udGVudCB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tcS1yYWRpdXMtbGcpIHZhcigtLXEtcmFkaXVzLWxnKTtcbiAgfVxuXG4gIC8qID09PSBBQ0NPUkRJT04gUVVFU1RJT05TIE1PQklMRSA9PT0gKi9cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAuY3VzdG9tLWFjY29yZGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgfVxuXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLmN1c3RvbS1hY2NvcmRpb24gLnAtYWNjb3JkaW9uLWhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1xLXJhZGl1cy1tZCk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3gtc2hhZG93OiAwIDJweCAxMnB4IHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4wOCk7XG4gIH1cblxuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5jdXN0b20tYWNjb3JkaW9uIC5wLWFjY29yZGlvbi1oZWFkZXItbGluayB7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcS1yYWRpdXMtbWQpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuXG4gIC8qIFRpdHJlIGRlIGxhIHF1ZXN0aW9uIC0gcHJlbWnDqHJlIGxpZ25lICovXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLmN1c3RvbS1hY2NvcmRpb24gLnAtYWNjb3JkaW9uLWhlYWRlci1saW5rID4gLnAtYWNjb3JkaW9uLXRvZ2dsZS1pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgdG9wOiAxcmVtO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxuXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLmN1c3RvbS1hY2NvcmRpb24gLnAtYWNjb3JkaW9uLWhlYWRlci1saW5rIC5wLWFjY29yZGlvbi1oZWFkZXItdGV4dCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvKiBDb250YWluZXIgZHUgaGVhZGVyIGRlIHF1ZXN0aW9uICovXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLmN1c3RvbS1hY2NvcmRpb24gLnAtYWNjb3JkaW9uLWhlYWRlci1saW5rIC5kLWZsZXguYWxpZ24taXRlbXMtY2VudGVyLnctMTAwIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLyogVGl0cmUgZGUgbGEgcXVlc3Rpb24gKi9cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAuY3VzdG9tLWFjY29yZGlvbiAucC1hY2NvcmRpb24taGVhZGVyLWxpbmsgLmZvbnQtd2VpZ2h0LWJvbGQge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgcGFkZGluZy1yaWdodDogMi41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC45NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDEwMiwgMTI2LCAyMzQsIDAuMSk7XG4gIH1cblxuICAvKiBDb250YWluZXIgZGVzIHR5cGVzIGV0IGFjdGlvbnMgKi9cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAuY3VzdG9tLWFjY29yZGlvbiAucC1hY2NvcmRpb24taGVhZGVyLWxpbmsgLmQtZmxleC5hbGlnbi1pdGVtcy1jZW50ZXIubWwtYXV0byxcbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAuY3VzdG9tLWFjY29yZGlvbiAucC1hY2NvcmRpb24taGVhZGVyLWxpbmsgLmQtZmxleC5hbGlnbi1pdGVtcy1jZW50ZXIuZmxleC13cmFwIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gICAgYmFja2dyb3VuZDogcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjAzKTtcbiAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKSBhdXRvIGF1dG87XG4gICAgZ2FwOiAwLjVyZW07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIC8qIEJvdXRvbnMgZGUgdHlwZSBkZSBxdWVzdGlvbiAqL1xuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5jdXN0b20tYWNjb3JkaW9uIC5wLWFjY29yZGlvbi1oZWFkZXItbGluayBsYWJlbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogMC42cmVtIDAuMjVyZW07XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcS1yYWRpdXMtc20pO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIHRyYW5zaXRpb246IHZhcigtLXEtdHJhbnNpdGlvbi1mYXN0KTtcbiAgICBtaW4taGVpZ2h0OiA1MnB4O1xuICB9XG5cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAuY3VzdG9tLWFjY29yZGlvbiAucC1hY2NvcmRpb24taGVhZGVyLWxpbmsgbGFiZWw6aGFzKC5wLXJhZGlvYnV0dG9uLWNoZWNrZWQpIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXEtcHJpbWFyeSk7XG4gICAgYmFja2dyb3VuZDogcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjEpO1xuICB9XG5cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAuY3VzdG9tLWFjY29yZGlvbiAucC1hY2NvcmRpb24taGVhZGVyLWxpbmsgbGFiZWwgLnAtcmFkaW9idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5jdXN0b20tYWNjb3JkaW9uIC5wLWFjY29yZGlvbi1oZWFkZXItbGluayBsYWJlbCBzdmcge1xuICAgIHdpZHRoOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKiBEaXZpZGVyIGNhY2jDqSBzdXIgbW9iaWxlICovXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLmN1c3RvbS1hY2NvcmRpb24gLnAtZGl2aWRlciB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLyogQm91dG9ucyBlZGl0L2RlbGV0ZSAqL1xuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5jdXN0b20tYWNjb3JkaW9uIC5wLWFjY29yZGlvbi1oZWFkZXItbGluayBidXR0b24ucC1wYW5lbC1oZWFkZXItaWNvbiB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1xLXJhZGl1cy1zbSk7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLmN1c3RvbS1hY2NvcmRpb24gLnAtYWNjb3JkaW9uLWhlYWRlci1saW5rIGJ1dHRvbi50b29sdGlwLWVkaXQtcXVlc3Rpb24gc3ZnLFxuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5jdXN0b20tYWNjb3JkaW9uIC5wLWFjY29yZGlvbi1oZWFkZXItbGluayBidXR0b24udG9vbHRpcC1kZWxldGUtcXVlc3Rpb24gc3ZnIHtcbiAgICB3aWR0aDogMThweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMThweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLyogQ29udGVudSBhY2NvcmTDqW9uICovXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLmN1c3RvbS1hY2NvcmRpb24gLnAtYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1xLXJhZGl1cy1tZCkgdmFyKC0tcS1yYWRpdXMtbWQpO1xuICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gIH1cblxuICAvKiA9PT0gSU5QVVRTIE1PQklMRSA9PT0gKi9cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1pbnB1dHRleHQsXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtaW5wdXR0ZXh0YXJlYSxcbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1kcm9wZG93bixcbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1tdWx0aXNlbGVjdCB7XG4gICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7IC8qIEVtcMOqY2hlIGxlIHpvb20gaU9TICovXG4gICAgcGFkZGluZzogMC44NzVyZW0gMXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1xLXJhZGl1cy1tZCk7XG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgxMDIsIDEyNiwgMjM0LCAwLjE1KTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgfVxuXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtaW5wdXR0ZXh0OmZvY3VzLFxuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWlucHV0dGV4dGFyZWE6Zm9jdXMsXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtZHJvcGRvd24ucC1mb2N1cyxcbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1tdWx0aXNlbGVjdC5wLWZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXEtcHJpbWFyeSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4xKTtcbiAgfVxuXG4gIC8qID09PSBCT1VUT05TIE1PQklMRSA9PT0gKi9cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1idXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcS1yYWRpdXMtbWQpO1xuICAgIG1pbi1oZWlnaHQ6IDUycHg7XG4gIH1cblxuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWJ1dHRvbjphY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45OCk7XG4gIH1cblxuICAvKiA9PT0gRElBTE9HUyBNT0JJTEUgPT09ICovXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtZGlhbG9nIHtcbiAgICB3aWR0aDogMTAwdncgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50O1xuICAgIG1heC1oZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtZGlhbG9nIC5wLWRpYWxvZy1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgYmFja2dyb3VuZDogdmFyKC0tcS1ncmFkaWVudC1wcmltYXJ5KTtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cblxuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWRpYWxvZyAucC1kaWFsb2ctdGl0bGUge1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICB9XG5cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1kaWFsb2cgLnAtZGlhbG9nLWhlYWRlci1pY29uIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICB9XG5cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1kaWFsb2cgLnAtZGlhbG9nLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgZmxleDogMTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxuXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtZGlhbG9nIC5wLWRpYWxvZy1mb290ZXIge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTAyLCAxMjYsIDIzNCwgMC4xKTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgfVxuXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtZGlhbG9nIC5wLWRpYWxvZy1mb290ZXIgLnAtYnV0dG9uIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvKiA9PT0gQVVUT0NPTVBMRVRFIE1PQklMRSA9PT0gKi9cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1hdXRvY29tcGxldGUtbXVsdGlwbGUtY29udGFpbmVyIHtcbiAgICBtaW4taGVpZ2h0OiA1MnB4O1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICBnYXA6IDAuNXJlbTtcbiAgfVxuXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtYXV0b2NvbXBsZXRlLXRva2VuIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1xLXJhZGl1cy1zbSk7XG4gIH1cblxuICAvKiA9PT0gRURJVE9SIE1PQklMRSA9PT0gKi9cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1lZGl0b3ItY29udGFpbmVyIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1xLXJhZGl1cy1tZCk7XG4gIH1cblxuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5wLWVkaXRvci10b29sYmFyIHtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1lZGl0b3ItY29udGVudCAucWwtZWRpdG9yIHtcbiAgICBtaW4taGVpZ2h0OiAxMjBweDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cblxuICAvKiA9PT0gU0xJREVSIE1PQklMRSA9PT0gKi9cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1zbGlkZXIge1xuICAgIGhlaWdodDogOHB4O1xuICB9XG5cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1zbGlkZXIgLnAtc2xpZGVyLWhhbmRsZSB7XG4gICAgd2lkdGg6IDI4cHg7XG4gICAgaGVpZ2h0OiAyOHB4O1xuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMTRweDtcbiAgfVxuXG4gIC8qID09PSBGSUVMRCBMQUJFTFMgTU9CSUxFID09PSAqL1xuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5maWVsZCBsYWJlbCxcbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1maWVsZCBsYWJlbCB7XG4gICAgZm9udC1zaXplOiAwLjg1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6IHZhcigtLXEtdGV4dC1zZWNvbmRhcnkpO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgfVxuXG4gIC8qID09PSBBTklNQVRJT05TIE1PQklMRSBPUFRJTUlTw4lFUyA9PT0gKi9cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1wYW5lbCxcbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAuY3VzdG9tLWFjY29yZGlvbixcbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1idXR0b24sXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtaW5wdXR0ZXh0IHtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgTU9CSUxFIFNNQUxMICg8IDQ4MHB4KVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC8qIEdyaWxsZSBkZSB0eXBlcyBzdXIgMiBjb2xvbm5lcyBwb3VyIHRyw6hzIHBldGl0cyDDqWNyYW5zICovXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLmN1c3RvbS1hY2NvcmRpb24gLnAtYWNjb3JkaW9uLWhlYWRlci1saW5rIC5kLWZsZXguYWxpZ24taXRlbXMtY2VudGVyLm1sLWF1dG8sXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLmN1c3RvbS1hY2NvcmRpb24gLnAtYWNjb3JkaW9uLWhlYWRlci1saW5rIC5kLWZsZXguYWxpZ24taXRlbXMtY2VudGVyLmZsZXgtd3JhcCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0byBhdXRvO1xuICB9XG5cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAuY3VzdG9tLWFjY29yZGlvbiAucC1hY2NvcmRpb24taGVhZGVyLWxpbmsgbGFiZWwge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZ2FwOiAwLjVyZW07XG4gICAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XG4gICAgbWluLWhlaWdodDogNDRweDtcbiAgfVxuXG4gIC8qIEJvdXRvbnMgZWRpdC9kZWxldGUgZW4gYmFzICovXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLmN1c3RvbS1hY2NvcmRpb24gLnAtYWNjb3JkaW9uLWhlYWRlci1saW5rIGJ1dHRvbi5wLXBhbmVsLWhlYWRlci1pY29uIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxO1xuICB9XG5cbiAgLyogVGl0cmUgcXVlc3Rpb25uYWlyZSBwbHVzIGNvbXBhY3QgKi9cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1wYW5lbC1oZWFkZXIgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cblxuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5wLXBhbmVsLWhlYWRlciA+IGRpdjpmaXJzdC1jaGlsZCBzcGFuIHtcbiAgICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC8qIEFjdGlvbnMgcGx1cyBjb21wYWN0ZXMgKi9cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1wYW5lbC1oZWFkZXIgPiBkaXY6bGFzdC1jaGlsZCxcbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1wYW5lbC1oZWFkZXIgLmhlYWRlci1hY3Rpb25zIHtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gIH1cblxuICAucXVlc3Rpb25uYWlyZS1wYWdlIC5wLXBhbmVsLWhlYWRlciAucC1wYW5lbC1oZWFkZXItaWNvbiB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICB9XG5cbiAgLyogSW5wdXQgbMOpZ8OocmVtZW50IHBsdXMgcGV0aXQgKi9cbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1pbnB1dHRleHQsXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtaW5wdXR0ZXh0YXJlYSxcbiAgLnF1ZXN0aW9ubmFpcmUtcGFnZSAucC1kcm9wZG93biB7XG4gICAgcGFkZGluZzogMC43NXJlbTtcbiAgfVxuXG4gIC8qIEJvdXRvbiBhZGFwdMOpICovXG4gIC5xdWVzdGlvbm5haXJlLXBhZ2UgLnAtYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAwLjg3NXJlbTtcbiAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICB9XG59XG5cbi8qID09PSBVVElMSVRJRVMgKHNjb3DDqXMpID09PSAqL1xuLnF1ZXN0aW9ubmFpcmUtcGFnZSAudy1mdWxsIHsgd2lkdGg6IDEwMCU7IH1cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnctMTAwIHsgd2lkdGg6IDEwMCU7IH1cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLm1iLTIgeyBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLm1iLTUgeyBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5tdC0zIHsgbWFyZ2luLXRvcDogMC43NXJlbTsgfVxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAubWwtMyB7IG1hcmdpbi1sZWZ0OiAwLjc1cmVtOyB9XG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5tci0yIHsgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLm1yLTMgeyBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07IH1cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLm1yLTUgeyBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07IH1cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLm14LTIgeyBtYXJnaW4tbGVmdDogMC41cmVtOyBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgfVxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAubXgtNCB7IG1hcmdpbi1sZWZ0OiAxcmVtOyBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnB5LTQgeyBwYWRkaW5nLXRvcDogMXJlbTsgcGFkZGluZy1ib3R0b206IDFyZW07IH1cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLmdhcC0yIHsgZ2FwOiAwLjVyZW07IH1cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLmZvbnQtd2VpZ2h0LWJvbGQgeyBmb250LXdlaWdodDogNzAwOyB9XG4ucXVlc3Rpb25uYWlyZS1wYWdlIC5mb250LXNlbWlib2xkIHsgZm9udC13ZWlnaHQ6IDYwMDsgfVxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAudGV4dC1zbSB7IGZvbnQtc2l6ZTogMC44NzVyZW07IH1cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLnRleHQtYmx1ZS02MDAgeyBjb2xvcjogdmFyKC0tcS1wcmltYXJ5KTsgfVxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAudGV4dC1kYW5nZXIgeyBjb2xvcjogdmFyKC0tcS1kYW5nZXIpOyB9XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLmQtZmxleCB7IGRpc3BsYXk6IGZsZXg7IH1cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLmQtYmxvY2sgeyBkaXNwbGF5OiBibG9jazsgfVxuLnF1ZXN0aW9ubmFpcmUtcGFnZSAuZmxleCB7IGRpc3BsYXk6IGZsZXg7IH1cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLmFsaWduLWl0ZW1zLWNlbnRlciB7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLmp1c3RpZnktY29udGVudC1zcGFjZS1iZXR3ZWVuIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG5cbi5xdWVzdGlvbm5haXJlLXBhZ2UgLmxpc3QtdW5zdHlsZWQge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/