/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./src/Eolas/ECommerce/OrcabBundle/Resources/private/css/masterOrcab.scss ***!
  \***************************************************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/* ===================================================================
 * VARIABLES
 * =================================================================*/
:root {
  --border-color-gray: $grisBordure;
}

/* ===================================================================
 * CLASS STANDARD
 * =================================================================*/
.withJS .js_hidden {
  display: none;
}

.clear {
  clear: both;
}

.invisible {
  display: none;
}

.alignleft {
  text-align: left;
}

.alignright {
  text-align: right;
}

.aligncenter {
  text-align: center;
}

.alignjustify {
  text-align: justify;
}

.clearfix, .frontModalBoxContainer .actions, .form-fields-wrapper, .form-field, .form-check, .TPL_LOCATION .inner {
  zoom: 1;
}

.clearfix::before, .frontModalBoxContainer .actions::before, .form-fields-wrapper::before, .form-field::before, .form-check::before, .TPL_LOCATION .inner::before, .clearfix::after, .frontModalBoxContainer .actions::after, .form-fields-wrapper::after, .form-field::after, .form-check::after, .TPL_LOCATION .inner::after {
  content: ".";
  display: block;
  height: 0;
  overflow: hidden;
}

.clearfix::after, .frontModalBoxContainer .actions::after, .form-fields-wrapper::after, .form-field::after, .form-check::after, .TPL_LOCATION .inner::after {
  clear: both;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

/* ===================================================================
 * GESTION AFFICHAGE TABLETTE / MOBILE
 * =================================================================*/
body.pseudo .cms-hide-for-desktop,
body.pseudo .cms-hide-for-mobile,
body.pseudo .cms-hide-for-tablet {
  display: block;
}

.style-tablet,
.cms-hide-for-desktop {
  display: none;
}

@media (max-width: 1024px) {
  .tablet-hidden {
    display: none !important;
  }
  .cms-hide-for-tablet,
  .cms-hide-for-desktop.cms-hide-for-tablet {
    display: none;
  }
  .style-tablet,
  .cms-hide-for-desktop {
    display: block;
  }
}

@media (max-width: 767px) {
  .mobile-hidden {
    display: none !important;
  }
  .cms-hide-for-mobile,
  .cms-hide-for-tablet.cms-hide-for-mobile {
    display: none;
  }
  .cms-hide-for-tablet,
  .cms-hide-for-desktop.cms-hide-for-tablet {
    display: block;
  }
}

/* ===================================================================
 * POLICES D'ICONES
 * =================================================================*/
.fa, .link-edit::before, .link-edit-bleu::before, .paginator .prev a::before, .paginator .next a::before,
.paginator .first a::before, .paginator .last a::before, .TPL_REDACTIONEL ul li::before, .TPL_PARTAGE ul li::before, .select-wrap::before, .select-wrap::after, .select2-container::before, .select2-container::after, .facette-wrapper h3.mobile-style.slideUp:after, .facette-wrapper h3.mobile-style:not(.slideUp):after, .recherche_facette_produit_form .rechercheFacetteProduit-optionGroup > label::after, .intitules .fl-down::before, .intitules .fl-up::before, .bouton-retour::before, .btn-export::before, .btn-imprimer::before,
.btn-editer::before, .btn-ajouter-panier::before, .btn-icon::before, .bouton-deplier-liste::after, .fiche-retour-produit-toggle a::after, .TPL_ORCAB_NOUVEAU_RETOUR .responsive-table .bouton-supprimer a::before,
.TPL_ORCAB_RETOUR_A_VALIDER .responsive-table .bouton-supprimer a::before, .TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .pop-up-gestion-connexions .fa-chevron-right::before, .TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .pop-up-gestion-connexions .fa-chevron-double-right::before, .TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .pop-up-gestion-connexions .fa-chevron-left::before, .TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .pop-up-gestion-connexions .fa-chevron-double-left::before, .TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .clientsConnexionAQuiOnSeConnecteMulti .clientsConnexionAQuiOnSeConnecteMultiSearch::after, .TPL_DIAPORAMA_ACCUEIL .carousel-nav .carousel-control, .TPL_DIAPORAMA_ORCAB .carousel-button, .liste-produits .show-comment:after,
.TPL_FICHE_PRODUIT .liste-produits .show-comment:after, .liste-achat-plugin .ajouter-a-la-liste .close-ajout-produit-liste:before, .TPL_FICHE_PRODUIT .titre-produit .bouton-retour-produit::before, .TPL_FICHE_PRODUIT .produitPrix .prix-conditionnement-msg::before, .TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .encart-commande-rapide .depot-fichier .bouton-rouge:before, .TPL_COMPARATEUR .action a.voir-produit::before, .materiel-preview-pane .cont__desc-btn:before, .cont__visuel .slick-arrow:before, .materiel-selection-wrapper .btn-voir:before, .icon-document-confidentiel span::after, .listes-de-courses .float-left .btn-edit:before, .listes-de-courses .table-actions .btn::before, .listes-de-courses .vider::before, .listes-de-courses .comment .show-comment::before, #navCommande .etapes-tunnel > div.valider::after, .tunnel-wrapper .bouton-precedent span::before, .tunnel-wrapper .bouton-suivant span::after, .TPL_TUNNEL .adresse-container .address-block .selected .address-block-title > p:first-child > span::before, .TPL_TUNNEL .wrapper-calendrier .btn-afficher::before, .TPL_TUNNEL .alert-danger::before, .TPL_TUNNEL .alert-warning::before, .liste-panier-commande-rapide .liste-produits-item .qte .pallier::before, .liste-panier-commande-rapide .liste-produits-item .show-comment::before, .liste-panier-commande-rapide .liste-produits-item .show-comment::after, .commande-rapide-panier .titre:after, .fiche-adherent .slick-arrow:before, .TPL_ORCAB_AGENDA .bouton-details.tarif-payant:before, .TPL_ORCAB_AGENDA .voirPlusEvenementsPage:before, .agenda-google-link:after, .c-agenda__bloc.c-agenda__bloc--tarif-payant:before, .semaine-mois button:before, .tableau-agenda .div-col li:not(.with-button) .inscrit:before, .fa-chevron-double-right::before {
  font-family: 'FontAwesome', Arial, sans-serif;
  zoom: 1;
  speak: none;
  -webkit-font-smoothing: antialiased;
  font-style: normal;
}

.icomoon, #toast-container .toast-message::after, #bandeau-haut .top-header .right .btn::before, #bandeau-haut .show-tablet .btn:before, #bandeau-haut .recherche-header button::before, #mini-panier .panier-detail-item .btn-icon-delete::before, .menu .menu-style-mobile::before,
.menu .mm-close::before, .mm-menu .menu-style-mobile::before,
.mm-menu .mm-close::before, .menu .mm-navbars-top .mm-title::before, .mm-menu .mm-navbars-top .mm-title::before, #menuMobile .menu-niv .link:after, #search-suggester-results .search-all-results::before, #search-suggester-results .link-close::before, .quantite a.minus::before, .quantite a.plus::before, .icon::before, .btn-bloc > span::before, .btn-bloc > a::before, .ariane li:not(:first-child)::before, [type="checkbox"]:not(:checked) + label:after,
[type="checkbox"]:checked + label:after, .u-checkbox-parent label:has(+ [type="checkbox"]):after, .textarea-wrap::before, .col-left .menu-col a.current-parent::after,
.TPL_RECHERCHE_FACETTE_PRODUIT .menu-col a.current-parent::after,
.TPL_RECHERCHE_FACETTE_DOCUMENT .menu-col a.current-parent::after,
.TPL_RECHERCHE_ACTUALITE .menu-col a.current-parent::after,
.TPL_RECHERCHE_FACETTE_TYPEFORM .menu-col a.current-parent::after, .menu-secondaire .nav0 .openChild::after, .menu-category h3 a::before, .recherche-facette-gauche button::before, .bouton-rechercher span::before, .btn-ajouter-au-panier::before,
.btn-liste-achat-activate::before, .btn-liste-achat-actif::before, .btn-export::before, .bouton-creer-panier a::after, .btn-panier-actif::before,
.btn-definir-panier-actif::before,
.btn-valider-panier::before,
.btn-modifier-panier::before,
.btn-refuser-panier::before,
.btn-dupliquer-liste-achat::before,
.btn-supprimer-liste-achat::before,
.btn-generer-pdf::before,
.btn-print-chifree::before,
.btn-print-nonchifree::before, .c-contacts__mail::before, .c-contacts__tel::before, .c-documents a::before, .favoris-btn-container a:before, .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie a:before, .fiche-retour-header > dl::before, .responsive-table .row.locked .libelle__title::before, .TPL_ORCAB_LISTE_ACHAT .item-commande[data-type="2"]:before, .TPL_ORCAB_FICHE_DEVIS_BONS .btn-ajouter-panier::before, .TPL_INFOS_COMPTE .table-roles .roleHeader .btn-retirer::before, .TPL_DIAPORAMA_ORCAB .carousel-action.play, .bloc-titre-pag .pag a::before, .liste-actu-lienplus a::before, .ressources-associees li a::before, .TPL_ACTUALITE_ZOOM_SUR .lien-plus::before, .liste-produits .btn-ajouter::before,
.TPL_FICHE_PRODUIT .btn-ajouter::before,
.search-suggester-results-produits .btn-ajouter::before, .liste-produits .actions-declinaison .bouton-vert::before, .liste-produits .actions-declinaison .form-submit button::before, .form-submit .liste-produits .actions-declinaison button::before,
.liste-produits .actions-declinaison .form-submit input[type="submit"]::before, .form-submit .liste-produits .actions-declinaison input[type="submit"]::before, .liste-produits .actions-declinaison .bouton-bleu::before, .liste-produits .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer::before, .TPL_ORCAB_FICHE_RETOUR .form-submit .liste-produits .actions-declinaison .btn-imprimer::before, .liste-produits .actions-declinaison .lignes-retour-wrap .form-submit .btn-imprimer::before, .lignes-retour-wrap .form-submit .liste-produits .actions-declinaison .btn-imprimer::before, .liste-produits .actions-declinaison .TPL_COMPARATEUR .action a.voir-produit::before, .TPL_COMPARATEUR .action .liste-produits .actions-declinaison a.voir-produit::before, .liste-produits .actions-declinaison .materiel-print-btn a::before, .materiel-print-btn .liste-produits .actions-declinaison a::before, .liste-produits .actions-declinaison .materiel-planning-pdf a::before, .materiel-planning-pdf .liste-produits .actions-declinaison a::before, .liste-produits .actions-declinaison .bouton-gris::before, .liste-produits .actions-declinaison .bouton-rouge::before, .liste-produits .actions-declinaison .bouton-retour::before, .liste-produits .actions-declinaison .bouton-rechercher::before, .liste-produits .actions-declinaison .btn-ajouter-au-panier::before,
.liste-produits .actions-declinaison .btn-liste-achat-activate::before, .liste-produits .actions-declinaison .ressources-associees li.lien-tous a::before, .ressources-associees li.lien-tous .liste-produits .actions-declinaison a::before, .liste-produits .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste::before, .liste-achat-plugin .ajouter-a-la-liste .liste-produits .actions-declinaison .btn-ajouter-liste::before, .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .btn-submit::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-submit::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-vert::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .form-submit button::before, .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison button::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .form-submit input[type="submit"]::before, .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison input[type="submit"]::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-bleu::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer::before, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-imprimer::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .lignes-retour-wrap .form-submit .btn-imprimer::before, .lignes-retour-wrap .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-imprimer::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .TPL_COMPARATEUR .action a.voir-produit::before, .TPL_COMPARATEUR .action .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a.voir-produit::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .materiel-print-btn a::before, .materiel-print-btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .materiel-planning-pdf a::before, .materiel-planning-pdf .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-gris::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-rouge::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-retour::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-rechercher::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-ajouter-au-panier::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-liste-achat-activate::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .ressources-associees li.lien-tous a::before, .ressources-associees li.lien-tous .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste::before, .liste-achat-plugin .ajouter-a-la-liste .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-ajouter-liste::before, .liste-produits .bouton-ajout-produit-liste:before,
.TPL_FICHE_PRODUIT .liste-produits .bouton-ajout-produit-liste:before, .liste-produits .delete-product:before,
.TPL_FICHE_PRODUIT .liste-produits .delete-product:before, .liste-achat-plugin .ajouter-a-la-liste .listes::before, .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .slick-arrow::before, .TPL_FICHE_PRODUIT .thumb li.video-produit:hover a::after, .TPL_FICHE_PRODUIT .thumb li.video-produit:active a::after, .TPL_FICHE_PRODUIT .thumb li.video-produit.selected a::after, .TPL_FICHE_PRODUIT .photos.bloc .bx-controls-direction a::before, .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .btnCaddie-List button.bouton-ajout-produit-liste::before, .TPL_FICHE_PRODUIT .btn-submit::before, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn:before, .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .ico:before, .TPL_LOCATION #navCommande .etapes-tunnel .done::after, .materiel-print-btn a::before, .materiel-planning-pdf a::before, .materiel-form-container .btn-search span:before, .form-recherche .form-submit button span::before, .liste-doc-plus a::before, .listes-de-courses .btn-nouvelle-liste::before, .listes-de-courses .liste-achat-table .liste-detail .libelle.pictogramme::before, .options-selectionnees .btnModifierOptionsPanier::before,
.options-selectionnees .btnModifierOptionsListeAchat::before,
.btnModifierOptionsDimensions::before, .fiche-commande-header .btn-petit-blanc::before, .fiche-commande-header #btnCommandeRapide::before, .table-actions [class*="bouton-"]::before, .panier-contenu-indisponible .bouton-rouge::before, .TPL_TUNNEL .adresse-form-container .bouton-bleu:before, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer:before, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer:before, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit:before, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit:before, .TPL_TUNNEL .adresse-form-container .materiel-print-btn a:before, .materiel-print-btn .TPL_TUNNEL .adresse-form-container a:before, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a:before, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a:before, .TPL_TUNNEL .adresse-form-container .bouton-vert:before, .TPL_TUNNEL .adresse-form-container .form-submit button:before, .form-submit .TPL_TUNNEL .adresse-form-container button:before,
.TPL_TUNNEL .adresse-form-container .form-submit input[type="submit"]:before, .form-submit .TPL_TUNNEL .adresse-form-container input[type="submit"]:before, .TPL_TUNNEL .adresse-form-container .bouton-gris:before, .TPL_TUNNEL .adresse-form-container .bouton-rouge:before, .TPL_TUNNEL .adresse-form-container .bouton-retour:before, .TPL_TUNNEL .adresse-form-container .bouton-rechercher:before, .TPL_TUNNEL .adresse-form-container .btn-ajouter-au-panier:before,
.TPL_TUNNEL .adresse-form-container .btn-liste-achat-activate:before, .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous a:before, .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container a:before, .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste:before, .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .btn-ajouter-liste:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .btn-submit:before, .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .btn-submit:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit button:before, .TPL_PANIER #panierLibelleForm::before, .liste-panier-commande-rapide .liste-produits-item .btn-icon-delete::before, .form-recherche-paniers-passes .form-submit button span:before, .paniers-table .row .nb-article::before, .commande-rapide-panier .encart-commande-rapide .bouton-fichier span::before, .commande-rapide-panier .results .quantite .btn-petit-vert::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer .btn-submit::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .btn-submit::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer #btn-supprimer-oui::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite #btn-supprimer-oui::before,
.commande-rapide-panier .results .quantite .frontModalBoxContainer .btn-valider::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .btn-valider::before, .commande-rapide-panier .results .quantite .s-editherm-info__form button[type="submit"]::before, .s-editherm-info__form .commande-rapide-panier .results .quantite button[type="submit"]::before,
.commande-rapide-panier .results .quantite .btn-petit-bleu::before, .commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .changeVue.active::before, .TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .changeVue.active::before,
.commande-rapide-panier .results .quantite .btn-petit-gris::before, .commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .changeVue::before, .TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .changeVue::before, .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator p::before,
.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .gm-style-iw p::before, .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .form-submit span::before, .fiche-adherent__coordonnes p:before, .TPL_ORCAB_CARTE_TOURNEE .carte-tournee p::before,
.TPL_ORCAB_CARTE_TOURNEE .gm-style-iw p::before, .TPL_ORCAB_CARTE_TOURNEE .form-submit span::before, .TPL_ORCAB_AGENDA .changeVue:before, .TPL_ORCAB_AGENDA .bouton-details:before, .TPL_LISTE_AGENDA_ACCUEIL .bloc-icone:before, .c-agenda__bloc:before, .TPL_ORCAB_MES_FAVORIS .liste-detail::before, #volet-compte .lien-picto::before, #volet-favoris .lien-picto::before, #volet-paniers .btnPanierActif::before, #volet-listes-achat .btnPanierActif::before, #volet-paniers .lien-picto::after, #volet-listes-achat .lien-picto::after, #volet-paniers .voletPanier__search div .btn-search::before, #volet-paniers .voletListeAchat__search div .btn-search::before, #volet-listes-achat .voletPanier__search div .btn-search::before, #volet-listes-achat .voletListeAchat__search div .btn-search::before, #volet-paniers a.voletPanier__locked::before, #volet-listes-achat a.voletPanier__locked::before, .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-date:before {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ===================================================================
 * MIXINS SASS
 * =================================================================*/
/*
 *   Calcul de la taille de police en em à partir de la taille en px
 *   ex : .fontSize(20px)
 */
/*
 *   Retire px de la valeur
 */
/*
 *   Effets graphiques simples :
 */
/*
 *   Alignement :
 *   Permet d'aligner en pourcentage un élément via absolute et tranform
 *   !! Attention !! Il faut que le bloc container soit en position relative ou absolute.
 *   => $x:  alignement sur l'axe x
 *   => $y:  alignement sur l'axe y
 */
/* Class utile pour responsive */
/*
 *  Formulaires :
 */
/*
 *   Checkbox :
 *   => $coche: motif à afficher pour la coche, code hexa ou image);
 *   => $fontsize: taille de la coche en pixels
 *   => $size: largeur et hauteur de la case
 *   => $left: position absolue left de la coche
 *   => $top: position absolue top de la coche
 *   => $color: couleur de la coche;
 *   => $borderColor: couleur du contour de la case;
 *   => $backgroundColor: couleur de fond de la case;
 *   => $hoverColor: couleur du contour de la case au survol;
 */
/*
 *   Checkbox parent, quand on ne peux pas mettre l'input AVANT le label
 */
/* ===================================================================
 * POLCES
 * =================================================================*/
@font-face {
  font-family: "Satoshi";
  src: url(/build/fonts/Satoshi-Regular.64d06401.eot);
  src: url(/build/fonts/Satoshi-Regular.64d06401.eot?#iefix) format("embedded-opentype"), url(/build/fonts/Satoshi-Regular.ca3da5fd.woff) format("woff"), url(/build/fonts/Satoshi-Regular.9ec05085.woff2) format("woff2"), url(/build/fonts/Satoshi-Regular.fe762acc.ttf) format("truetype");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: "Satoshi";
  src: url(/build/fonts/Satoshi-Medium.99d4044c.eot);
  src: url(/build/fonts/Satoshi-Medium.99d4044c.eot?#iefix) format("embedded-opentype"), url(/build/fonts/Satoshi-Medium.2419b46c.woff) format("woff"), url(/build/fonts/Satoshi-Medium.1ffe9682.woff2) format("woff2"), url(/build/fonts/Satoshi-Medium.75956208.ttf) format("truetype");
  font-weight: 600;
  font-style: normal;
}

@font-face {
  font-family: "Satoshi";
  src: url(/build/fonts/Satoshi-Bold.eff47212.eot);
  src: url(/build/fonts/Satoshi-Bold.eff47212.eot?#iefix) format("embedded-opentype"), url(/build/fonts/Satoshi-Bold.a875ff68.woff) format("woff"), url(/build/fonts/Satoshi-Bold.a0e6d255.woff2) format("woff2"), url(/build/fonts/Satoshi-Bold.137a52d9.ttf) format("truetype");
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: "Satoshi";
  src: url(/build/fonts/Satoshi-Black.97825051.eot);
  src: url(/build/fonts/Satoshi-Black.97825051.eot?#iefix) format("embedded-opentype"), url(/build/fonts/Satoshi-Black.4261d202.woff) format("woff"), url(/build/fonts/Satoshi-Black.b5013d85.woff2) format("woff2"), url(/build/fonts/Satoshi-Black.464354ba.ttf) format("truetype");
  font-weight: 800;
  font-style: normal;
}

@font-face {
  font-family: "FontAwesome";
  src: url(/build/fonts/fontawesome-webfont.8b43027f.eot);
  src: url(/build/fonts/fontawesome-webfont.8b43027f.eot?#iefix) format("embedded-opentype"), url(/build/fonts/fontawesome-webfont.f691f37e.woff) format("woff"), url(/build/fonts/fontawesome-webfont.20fd1704.woff2) format("woff2"), url(/build/fonts/fontawesome-webfont.1e59d233.ttf) format("truetype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'icomoon';
  src: url(/build/fonts/icomoon.a78351a0.eot);
  src: url(/build/fonts/icomoon.a78351a0.eot#iefix) format("embedded-opentype"), url(/build/fonts/icomoon.2dcbe38f.ttf) format("truetype"), url(/build/fonts/icomoon.e25bb2d8.woff) format("woff"), url(/build/images/icomoon.93538fab.svg#icomoon) format("svg");
  font-weight: normal;
  font-style: normal;
}

/*!
 * Bootstrap v3.3.7 (http://getbootstrap.com)
 * Copyright 2011-2016 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

@font-face {
  font-family: 'Glyphicons Halflings';
  src: url(/build/fonts/glyphicons-halflings-regular.5be1347c.eot);
  src: url(/build/fonts/glyphicons-halflings-regular.5be1347c.eot?#iefix) format("embedded-opentype"), url(/build/fonts/glyphicons-halflings-regular.be810be3.woff2) format("woff2"), url(/build/fonts/glyphicons-halflings-regular.82b1212e.woff) format("woff"), url(/build/fonts/glyphicons-halflings-regular.4692b9ec.ttf) format("truetype"), url(/build/images/glyphicons-halflings-regular.060b2710.svg#glyphicons_halflingsregular) format("svg");
}

.glyphicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: 'Glyphicons Halflings';
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.glyphicon-asterisk:before {
  content: "\002a";
}

.glyphicon-plus:before {
  content: "\002b";
}

.glyphicon-euro:before,
.glyphicon-eur:before {
  content: "\20ac";
}

.glyphicon-minus:before {
  content: "\2212";
}

.glyphicon-cloud:before {
  content: "\2601";
}

.glyphicon-envelope:before {
  content: "\2709";
}

.glyphicon-pencil:before {
  content: "\270f";
}

.glyphicon-glass:before {
  content: "\e001";
}

.glyphicon-music:before {
  content: "\e002";
}

.glyphicon-search:before {
  content: "\e003";
}

.glyphicon-heart:before {
  content: "\e005";
}

.glyphicon-star:before {
  content: "\e006";
}

.glyphicon-star-empty:before {
  content: "\e007";
}

.glyphicon-user:before {
  content: "\e008";
}

.glyphicon-film:before {
  content: "\e009";
}

.glyphicon-th-large:before {
  content: "\e010";
}

.glyphicon-th:before {
  content: "\e011";
}

.glyphicon-th-list:before {
  content: "\e012";
}

.glyphicon-ok:before {
  content: "\e013";
}

.glyphicon-remove:before {
  content: "\e014";
}

.glyphicon-zoom-in:before {
  content: "\e015";
}

.glyphicon-zoom-out:before {
  content: "\e016";
}

.glyphicon-off:before {
  content: "\e017";
}

.glyphicon-signal:before {
  content: "\e018";
}

.glyphicon-cog:before {
  content: "\e019";
}

.glyphicon-trash:before {
  content: "\e020";
}

.glyphicon-home:before {
  content: "\e021";
}

.glyphicon-file:before {
  content: "\e022";
}

.glyphicon-time:before {
  content: "\e023";
}

.glyphicon-road:before {
  content: "\e024";
}

.glyphicon-download-alt:before {
  content: "\e025";
}

.glyphicon-download:before {
  content: "\e026";
}

.glyphicon-upload:before {
  content: "\e027";
}

.glyphicon-inbox:before {
  content: "\e028";
}

.glyphicon-play-circle:before {
  content: "\e029";
}

.glyphicon-repeat:before {
  content: "\e030";
}

.glyphicon-refresh:before {
  content: "\e031";
}

.glyphicon-list-alt:before {
  content: "\e032";
}

.glyphicon-lock:before {
  content: "\e033";
}

.glyphicon-flag:before {
  content: "\e034";
}

.glyphicon-headphones:before {
  content: "\e035";
}

.glyphicon-volume-off:before {
  content: "\e036";
}

.glyphicon-volume-down:before {
  content: "\e037";
}

.glyphicon-volume-up:before {
  content: "\e038";
}

.glyphicon-qrcode:before {
  content: "\e039";
}

.glyphicon-barcode:before {
  content: "\e040";
}

.glyphicon-tag:before {
  content: "\e041";
}

.glyphicon-tags:before {
  content: "\e042";
}

.glyphicon-book:before {
  content: "\e043";
}

.glyphicon-bookmark:before {
  content: "\e044";
}

.glyphicon-print:before {
  content: "\e045";
}

.glyphicon-camera:before {
  content: "\e046";
}

.glyphicon-font:before {
  content: "\e047";
}

.glyphicon-bold:before {
  content: "\e048";
}

.glyphicon-italic:before {
  content: "\e049";
}

.glyphicon-text-height:before {
  content: "\e050";
}

.glyphicon-text-width:before {
  content: "\e051";
}

.glyphicon-align-left:before {
  content: "\e052";
}

.glyphicon-align-center:before {
  content: "\e053";
}

.glyphicon-align-right:before {
  content: "\e054";
}

.glyphicon-align-justify:before {
  content: "\e055";
}

.glyphicon-list:before {
  content: "\e056";
}

.glyphicon-indent-left:before {
  content: "\e057";
}

.glyphicon-indent-right:before {
  content: "\e058";
}

.glyphicon-facetime-video:before {
  content: "\e059";
}

.glyphicon-picture:before {
  content: "\e060";
}

.glyphicon-map-marker:before {
  content: "\e062";
}

.glyphicon-adjust:before {
  content: "\e063";
}

.glyphicon-tint:before {
  content: "\e064";
}

.glyphicon-edit:before {
  content: "\e065";
}

.glyphicon-share:before {
  content: "\e066";
}

.glyphicon-check:before {
  content: "\e067";
}

.glyphicon-move:before {
  content: "\e068";
}

.glyphicon-step-backward:before {
  content: "\e069";
}

.glyphicon-fast-backward:before {
  content: "\e070";
}

.glyphicon-backward:before {
  content: "\e071";
}

.glyphicon-play:before {
  content: "\e072";
}

.glyphicon-pause:before {
  content: "\e073";
}

.glyphicon-stop:before {
  content: "\e074";
}

.glyphicon-forward:before {
  content: "\e075";
}

.glyphicon-fast-forward:before {
  content: "\e076";
}

.glyphicon-step-forward:before {
  content: "\e077";
}

.glyphicon-eject:before {
  content: "\e078";
}

.glyphicon-chevron-left:before {
  content: "\e079";
}

.glyphicon-chevron-right:before {
  content: "\e080";
}

.glyphicon-plus-sign:before {
  content: "\e081";
}

.glyphicon-minus-sign:before {
  content: "\e082";
}

.glyphicon-remove-sign:before {
  content: "\e083";
}

.glyphicon-ok-sign:before {
  content: "\e084";
}

.glyphicon-question-sign:before {
  content: "\e085";
}

.glyphicon-info-sign:before {
  content: "\e086";
}

.glyphicon-screenshot:before {
  content: "\e087";
}

.glyphicon-remove-circle:before {
  content: "\e088";
}

.glyphicon-ok-circle:before {
  content: "\e089";
}

.glyphicon-ban-circle:before {
  content: "\e090";
}

.glyphicon-arrow-left:before {
  content: "\e091";
}

.glyphicon-arrow-right:before {
  content: "\e092";
}

.glyphicon-arrow-up:before {
  content: "\e093";
}

.glyphicon-arrow-down:before {
  content: "\e094";
}

.glyphicon-share-alt:before {
  content: "\e095";
}

.glyphicon-resize-full:before {
  content: "\e096";
}

.glyphicon-resize-small:before {
  content: "\e097";
}

.glyphicon-exclamation-sign:before {
  content: "\e101";
}

.glyphicon-gift:before {
  content: "\e102";
}

.glyphicon-leaf:before {
  content: "\e103";
}

.glyphicon-fire:before {
  content: "\e104";
}

.glyphicon-eye-open:before {
  content: "\e105";
}

.glyphicon-eye-close:before {
  content: "\e106";
}

.glyphicon-warning-sign:before {
  content: "\e107";
}

.glyphicon-plane:before {
  content: "\e108";
}

.glyphicon-calendar:before {
  content: "\e109";
}

.glyphicon-random:before {
  content: "\e110";
}

.glyphicon-comment:before {
  content: "\e111";
}

.glyphicon-magnet:before {
  content: "\e112";
}

.glyphicon-chevron-up:before {
  content: "\e113";
}

.glyphicon-chevron-down:before {
  content: "\e114";
}

.glyphicon-retweet:before {
  content: "\e115";
}

.glyphicon-shopping-cart:before {
  content: "\e116";
}

.glyphicon-folder-close:before {
  content: "\e117";
}

.glyphicon-folder-open:before {
  content: "\e118";
}

.glyphicon-resize-vertical:before {
  content: "\e119";
}

.glyphicon-resize-horizontal:before {
  content: "\e120";
}

.glyphicon-hdd:before {
  content: "\e121";
}

.glyphicon-bullhorn:before {
  content: "\e122";
}

.glyphicon-bell:before {
  content: "\e123";
}

.glyphicon-certificate:before {
  content: "\e124";
}

.glyphicon-thumbs-up:before {
  content: "\e125";
}

.glyphicon-thumbs-down:before {
  content: "\e126";
}

.glyphicon-hand-right:before {
  content: "\e127";
}

.glyphicon-hand-left:before {
  content: "\e128";
}

.glyphicon-hand-up:before {
  content: "\e129";
}

.glyphicon-hand-down:before {
  content: "\e130";
}

.glyphicon-circle-arrow-right:before {
  content: "\e131";
}

.glyphicon-circle-arrow-left:before {
  content: "\e132";
}

.glyphicon-circle-arrow-up:before {
  content: "\e133";
}

.glyphicon-circle-arrow-down:before {
  content: "\e134";
}

.glyphicon-globe:before {
  content: "\e135";
}

.glyphicon-wrench:before {
  content: "\e136";
}

.glyphicon-tasks:before {
  content: "\e137";
}

.glyphicon-filter:before {
  content: "\e138";
}

.glyphicon-briefcase:before {
  content: "\e139";
}

.glyphicon-fullscreen:before {
  content: "\e140";
}

.glyphicon-dashboard:before {
  content: "\e141";
}

.glyphicon-paperclip:before {
  content: "\e142";
}

.glyphicon-heart-empty:before {
  content: "\e143";
}

.glyphicon-link:before {
  content: "\e144";
}

.glyphicon-phone:before {
  content: "\e145";
}

.glyphicon-pushpin:before {
  content: "\e146";
}

.glyphicon-usd:before {
  content: "\e148";
}

.glyphicon-gbp:before {
  content: "\e149";
}

.glyphicon-sort:before {
  content: "\e150";
}

.glyphicon-sort-by-alphabet:before {
  content: "\e151";
}

.glyphicon-sort-by-alphabet-alt:before {
  content: "\e152";
}

.glyphicon-sort-by-order:before {
  content: "\e153";
}

.glyphicon-sort-by-order-alt:before {
  content: "\e154";
}

.glyphicon-sort-by-attributes:before {
  content: "\e155";
}

.glyphicon-sort-by-attributes-alt:before {
  content: "\e156";
}

.glyphicon-unchecked:before {
  content: "\e157";
}

.glyphicon-expand:before {
  content: "\e158";
}

.glyphicon-collapse-down:before {
  content: "\e159";
}

.glyphicon-collapse-up:before {
  content: "\e160";
}

.glyphicon-log-in:before {
  content: "\e161";
}

.glyphicon-flash:before {
  content: "\e162";
}

.glyphicon-log-out:before {
  content: "\e163";
}

.glyphicon-new-window:before {
  content: "\e164";
}

.glyphicon-record:before {
  content: "\e165";
}

.glyphicon-save:before {
  content: "\e166";
}

.glyphicon-open:before {
  content: "\e167";
}

.glyphicon-saved:before {
  content: "\e168";
}

.glyphicon-import:before {
  content: "\e169";
}

.glyphicon-export:before {
  content: "\e170";
}

.glyphicon-send:before {
  content: "\e171";
}

.glyphicon-floppy-disk:before {
  content: "\e172";
}

.glyphicon-floppy-saved:before {
  content: "\e173";
}

.glyphicon-floppy-remove:before {
  content: "\e174";
}

.glyphicon-floppy-save:before {
  content: "\e175";
}

.glyphicon-floppy-open:before {
  content: "\e176";
}

.glyphicon-credit-card:before {
  content: "\e177";
}

.glyphicon-transfer:before {
  content: "\e178";
}

.glyphicon-cutlery:before {
  content: "\e179";
}

.glyphicon-header:before {
  content: "\e180";
}

.glyphicon-compressed:before {
  content: "\e181";
}

.glyphicon-earphone:before {
  content: "\e182";
}

.glyphicon-phone-alt:before {
  content: "\e183";
}

.glyphicon-tower:before {
  content: "\e184";
}

.glyphicon-stats:before {
  content: "\e185";
}

.glyphicon-sd-video:before {
  content: "\e186";
}

.glyphicon-hd-video:before {
  content: "\e187";
}

.glyphicon-subtitles:before {
  content: "\e188";
}

.glyphicon-sound-stereo:before {
  content: "\e189";
}

.glyphicon-sound-dolby:before {
  content: "\e190";
}

.glyphicon-sound-5-1:before {
  content: "\e191";
}

.glyphicon-sound-6-1:before {
  content: "\e192";
}

.glyphicon-sound-7-1:before {
  content: "\e193";
}

.glyphicon-copyright-mark:before {
  content: "\e194";
}

.glyphicon-registration-mark:before {
  content: "\e195";
}

.glyphicon-cloud-download:before {
  content: "\e197";
}

.glyphicon-cloud-upload:before {
  content: "\e198";
}

.glyphicon-tree-conifer:before {
  content: "\e199";
}

.glyphicon-tree-deciduous:before {
  content: "\e200";
}

.glyphicon-cd:before {
  content: "\e201";
}

.glyphicon-save-file:before {
  content: "\e202";
}

.glyphicon-open-file:before {
  content: "\e203";
}

.glyphicon-level-up:before {
  content: "\e204";
}

.glyphicon-copy:before {
  content: "\e205";
}

.glyphicon-paste:before {
  content: "\e206";
}

.glyphicon-alert:before {
  content: "\e209";
}

.glyphicon-equalizer:before {
  content: "\e210";
}

.glyphicon-king:before {
  content: "\e211";
}

.glyphicon-queen:before {
  content: "\e212";
}

.glyphicon-pawn:before {
  content: "\e213";
}

.glyphicon-bishop:before {
  content: "\e214";
}

.glyphicon-knight:before {
  content: "\e215";
}

.glyphicon-baby-formula:before {
  content: "\e216";
}

.glyphicon-tent:before {
  content: "\26fa";
}

.glyphicon-blackboard:before {
  content: "\e218";
}

.glyphicon-bed:before {
  content: "\e219";
}

.glyphicon-apple:before {
  content: "\f8ff";
}

.glyphicon-erase:before {
  content: "\e221";
}

.glyphicon-hourglass:before {
  content: "\231b";
}

.glyphicon-lamp:before {
  content: "\e223";
}

.glyphicon-duplicate:before {
  content: "\e224";
}

.glyphicon-piggy-bank:before {
  content: "\e225";
}

.glyphicon-scissors:before {
  content: "\e226";
}

.glyphicon-bitcoin:before {
  content: "\e227";
}

.glyphicon-btc:before {
  content: "\e227";
}

.glyphicon-xbt:before {
  content: "\e227";
}

.glyphicon-yen:before {
  content: "\00a5";
}

.glyphicon-jpy:before {
  content: "\00a5";
}

.glyphicon-ruble:before {
  content: "\20bd";
}

.glyphicon-rub:before {
  content: "\20bd";
}

.glyphicon-scale:before {
  content: "\e230";
}

.glyphicon-ice-lolly:before {
  content: "\e231";
}

.glyphicon-ice-lolly-tasted:before {
  content: "\e232";
}

.glyphicon-education:before {
  content: "\e233";
}

.glyphicon-option-horizontal:before {
  content: "\e234";
}

.glyphicon-option-vertical:before {
  content: "\e235";
}

.glyphicon-menu-hamburger:before {
  content: "\e236";
}

.glyphicon-modal-window:before {
  content: "\e237";
}

.glyphicon-oil:before {
  content: "\e238";
}

.glyphicon-grain:before {
  content: "\e239";
}

.glyphicon-sunglasses:before {
  content: "\e240";
}

.glyphicon-text-size:before {
  content: "\e241";
}

.glyphicon-text-color:before {
  content: "\e242";
}

.glyphicon-text-background:before {
  content: "\e243";
}

.glyphicon-object-align-top:before {
  content: "\e244";
}

.glyphicon-object-align-bottom:before {
  content: "\e245";
}

.glyphicon-object-align-horizontal:before {
  content: "\e246";
}

.glyphicon-object-align-left:before {
  content: "\e247";
}

.glyphicon-object-align-vertical:before {
  content: "\e248";
}

.glyphicon-object-align-right:before {
  content: "\e249";
}

.glyphicon-triangle-right:before {
  content: "\e250";
}

.glyphicon-triangle-left:before {
  content: "\e251";
}

.glyphicon-triangle-bottom:before {
  content: "\e252";
}

.glyphicon-triangle-top:before {
  content: "\e253";
}

.glyphicon-console:before {
  content: "\e254";
}

.glyphicon-superscript:before {
  content: "\e255";
}

.glyphicon-subscript:before {
  content: "\e256";
}

.glyphicon-menu-left:before {
  content: "\e257";
}

.glyphicon-menu-right:before {
  content: "\e258";
}

.glyphicon-menu-down:before {
  content: "\e259";
}

.glyphicon-menu-up:before {
  content: "\e260";
}

/*@import "~bootstrap-sass/assets/stylesheets/bootstrap/scaffolding";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/type";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/code";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/grid";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/tables";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/forms";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/buttons";*/
/*@import "~bootstrap-sass/assets/stylesheets/bootstrap/component-animations";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/dropdowns";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/button-groups";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/input-groups";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/navbar";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/breadcrumbs";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/pagination";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/pager";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/labels";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/badges";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/jumbotron";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/thumbnails";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/alerts";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/progress-bars";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/media";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/list-group";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/panels";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/responsive-embed";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/wells";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/close";*/
/*@import "~bootstrap-sass/assets/stylesheets/bootstrap/modals";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/tooltip";
@import "~bootstrap-sass/assets/stylesheets/bootstrap/popovers";*/
.carousel {
  position: relative;
}

.carousel-inner {
  position: relative;
  width: 100%;
}

.carousel-inner > .item {
  display: none;
  position: relative;
  -webkit-transition: 0.6s ease-in-out left;
  -o-transition: 0.6s ease-in-out left;
  transition: 0.6s ease-in-out left;
}

.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  display: block;
  max-width: 100%;
  height: auto;
  line-height: 1;
}

@media all and (transform-3d), (-webkit-transform-3d) {
  .carousel-inner > .item {
    -webkit-transition: -webkit-transform 0.6s ease-in-out;
    -moz-transition: -moz-transform 0.6s ease-in-out;
    -o-transition: -o-transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-perspective: 1000px;
    -moz-perspective: 1000px;
    perspective: 1000px;
  }
  .carousel-inner > .item.next, .carousel-inner > .item.active.right {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    left: 0;
  }
  .carousel-inner > .item.prev, .carousel-inner > .item.active.left {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    left: 0;
  }
  .carousel-inner > .item.next.left, .carousel-inner > .item.prev.right, .carousel-inner > .item.active {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    left: 0;
  }
}

.carousel-inner > .active,
.carousel-inner > .next,
.carousel-inner > .prev {
  display: block;
}

.carousel-inner > .active {
  left: 0;
}

.carousel-inner > .next,
.carousel-inner > .prev {
  position: absolute;
  top: 0;
  width: 100%;
}

.carousel-inner > .next {
  left: 100%;
}

.carousel-inner > .prev {
  left: -100%;
}

.carousel-inner > .next.left,
.carousel-inner > .prev.right {
  left: 0;
}

.carousel-inner > .active.left {
  left: -100%;
}

.carousel-inner > .active.right {
  left: 100%;
}

@media screen and (min-width: 768px) {
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -10px;
    font-size: 30px;
  }
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .icon-prev {
    margin-left: -10px;
  }
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-next {
    margin-right: -10px;
  }
  .carousel-caption {
    left: 20%;
    right: 20%;
    padding-bottom: 30px;
  }
  .carousel-indicators {
    bottom: 20px;
  }
}

.nav {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav:before, .nav:after {
  display: table;
  content: " ";
}

.nav:after {
  clear: both;
}

.nav > li {
  position: relative;
  display: block;
}

.nav > li > a {
  position: relative;
  display: block;
  padding: 10px 15px;
}

.nav > li > a:hover, .nav > li > a:focus {
  text-decoration: none;
  background-color: #eeeeee;
}

.nav > li.disabled > a {
  color: #777777;
}

.nav > li.disabled > a:hover, .nav > li.disabled > a:focus {
  color: #777777;
  text-decoration: none;
  cursor: not-allowed;
  background-color: transparent;
}

.nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
  background-color: #eeeeee;
  border-color: #337ab7;
}

.nav .nav-divider {
  height: 1px;
  margin: 9px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}

.nav > li > a > img {
  max-width: none;
}

.nav-tabs {
  border-bottom: 1px solid #ddd;
}

.nav-tabs > li {
  float: left;
  margin-bottom: -1px;
}

.nav-tabs > li > a {
  margin-right: 2px;
  line-height: 1.42857;
  border: 1px solid transparent;
  border-radius: 4px 4px 0 0;
}

.nav-tabs > li > a:hover {
  border-color: #eeeeee #eeeeee #ddd;
}

.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
  color: #555555;
  cursor: default;
  background-color: #fff;
  border: 1px solid #ddd;
  border-bottom-color: transparent;
}

.nav-pills > li {
  float: left;
}

.nav-pills > li > a {
  border-radius: 4px;
}

.nav-pills > li + li {
  margin-left: 2px;
}

.nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus {
  color: #fff;
  background-color: #337ab7;
}

.nav-stacked > li {
  float: none;
}

.nav-stacked > li + li {
  margin-top: 2px;
  margin-left: 0;
}

.nav-justified, .nav-tabs.nav-justified {
  width: 100%;
}

.nav-justified > li, .nav-tabs.nav-justified > li {
  float: none;
}

.nav-justified > li > a, .nav-tabs.nav-justified > li > a {
  margin-bottom: 5px;
  text-align: center;
}

.nav-justified > .dropdown .dropdown-menu {
  top: auto;
  left: auto;
}

@media (min-width: 768px) {
  .nav-justified > li, .nav-tabs.nav-justified > li {
    display: table-cell;
    width: 1%;
  }
  .nav-justified > li > a, .nav-tabs.nav-justified > li > a {
    margin-bottom: 0;
  }
}

.nav-tabs-justified, .nav-tabs.nav-justified {
  border-bottom: 0;
}

.nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
  margin-right: 0;
  border-radius: 4px;
}

.nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
.nav-tabs-justified > .active > a:hover,
.nav-tabs.nav-justified > .active > a:hover,
.nav-tabs-justified > .active > a:focus,
.nav-tabs.nav-justified > .active > a:focus {
  border: 1px solid #ddd;
}

@media (min-width: 768px) {
  .nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
    border-bottom: 1px solid #ddd;
    border-radius: 4px 4px 0 0;
  }
  .nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
  .nav-tabs-justified > .active > a:hover,
  .nav-tabs.nav-justified > .active > a:hover,
  .nav-tabs-justified > .active > a:focus,
  .nav-tabs.nav-justified > .active > a:focus {
    border-bottom-color: #fff;
  }
}

.tab-content > .tab-pane {
  display: none;
}

.tab-content > .active {
  display: block;
}

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

/* ===================================================================
 * TOASTER
 * =================================================================*/
.toast-title {
  font-weight: 700;
}

.toast-message {
  -ms-word-wrap: break-word;
  word-wrap: break-word;
}

.toast-message a,
.toast-message label {
  color: #545454;
}

.toast-message a:hover {
  color: #003160;
  text-decoration: none;
}

.toast-time {
  color: #868686;
  font-size: 1.3rem;
  line-height: 1.7rem;
  font-weight: normal;
}

.toast-close-button {
  position: absolute;
  right: 2.4rem;
  top: 2.4rem;
  font-size: 2rem;
  font-weight: bold;
  color: #000;
  line-height: 13px;
}

.toast-close-button:hover, .toast-close-button:focus {
  color: #000000;
  text-decoration: none;
  cursor: pointer;
  opacity: 0.8;
}

.toast-top-center {
  top: 0;
  right: 0;
  width: 100%;
}

.toast-bottom-center {
  bottom: 0;
  right: 0;
  width: 100%;
}

.toast-top-full-width {
  top: 0;
  right: 0;
  width: 100%;
}

.toast-bottom-full-width {
  bottom: 0;
  right: 0;
  width: 100%;
}

.toast-top-left {
  top: 12px;
  left: 12px;
}

.toast-top-right {
  top: 12px;
  right: 12px;
}

.toast-bottom-right {
  right: 12px;
  bottom: 12px;
}

.toast-bottom-left {
  bottom: 12px;
  left: 12px;
}

.toast-progress {
  position: absolute;
  left: 0;
  bottom: 0;
  height: 4px;
  background-color: #000000;
  opacity: 0.4;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=40);
  filter: alpha(opacity=40);
}

/*Additional properties for button version
 iOS requires the button element instead of an anchor tag.
 If you want the anchor version, it requires `href="#"`.*/
button.toast-close-button {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
}

#toast-container {
  position: fixed;
  z-index: 999999;
}

#toast-container * {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

#toast-container > :hover {
  -moz-box-shadow: 0 0 12px #999999;
  -webkit-box-shadow: 0 0 12px #999999;
  box-shadow: 0 0 12px #999999;
  opacity: 1;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  filter: alpha(opacity=100);
  cursor: pointer;
}

#toast-container.toast-top-center > div > div,
#toast-container.toast-bottom-center > div > div {
  width: 300px;
  margin: auto;
}

#toast-container.toast-top-full-width > div, #toast-container.toast-bottom-full-width > div {
  width: 96%;
  margin: auto;
}

.toast {
  position: relative;
  animation: fadeinRight 0.5s;
  overflow: hidden;
  margin: 0 0 16px;
  padding: 16px 56px;
  width: 300px;
  -moz-border-radius: 3px 3px 3px 3px;
  -webkit-border-radius: 3px 3px 3px 3px;
  border-radius: 5px;
  box-shadow: 0 0 12px #cecece;
  color: #868686;
  border: 1px solid #cecece;
  background-color: #ffffff;
  font-size: 1.4rem;
  line-height: 1.9rem;
}

.toast:before {
  content: '';
  width: 24px;
  height: 24px;
  position: absolute;
  left: 16px;
  top: 16px;
  border-radius: 3px;
  background-color: #003160;
}

.toast.not-read {
  color: #545454;
  font-weight: 700;
}

.toast.not-read:after {
  content: '';
  width: 9px;
  height: 9px;
  border: 2px solid #ffffff;
  border-radius: 50%;
  position: absolute;
  left: 3.2rem;
  top: 1.2rem;
  background-color: #003160;
}

.toast-success:before, .toast-success.not-read:after {
  background-color: #82aa37;
}

.toast-error:before, .toast-error.not-read:after {
  background-color: #e05151;
}

.toast-info:before, .toast-info.not-read:after {
  background-color: #003160;
}

@-webkit-keyframes fadeinRight {
  from {
    right: -312px;
    opacity: 0;
  }
  to {
    right: 15px;
    opacity: 1;
  }
}

@keyframes fadeinRight {
  from {
    right: -312px;
    opacity: 0;
  }
  to {
    right: 15px;
    opacity: 1;
  }
}

#toast-container .toast-message::after {
  content: '\e950';
  position: absolute;
  top: 25%;
  right: 30px;
  font-size: 1.2rem;
  color: #000000;
}

#toast-container .js-closing:hover {
  opacity: 0;
}

.js-closing {
  opacity: 0;
  animation: opacity0 .5s ease-out;
}

@keyframes opacity0 {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

.toast-warning:before, .toast-warning.not-read:after {
  background-color: #e8cf23;
}

/* ===================================================================
 * INITIALISATION DE LA CHARTE GRAPHIQUE
 * =================================================================*/
html {
  font-size: 62.5%;
}

body {
  background: #f6f6f6;
  font-family: Satoshi, sans-serif;
  color: #545454;
  font-size: 1.6rem;
  /* 16px */
  line-height: 2.4rem;
  margin: 0;
  padding: 0;
}

body.noScroll {
  overflow: hidden;
}

body.pseudo .cms-slot-reorder-container {
  position: relative;
  z-index: 2;
}

a {
  color: #545454;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

ul, ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
  box-sizing: border-box;
}

img.align-right {
  margin: 0 0 30px 30px;
}

img.align-left {
  margin: 0 30px 30px 0;
}

iframe {
  max-width: 100%;
}

.table-responsive {
  overflow-x: auto;
}

.print-only {
  display: none;
}

/* ===================================================================
 * TITLES
 * =================================================================*/
h1 {
  color: #003160;
  font-size: 3.2rem;
  line-height: 3.5rem;
  font-weight: 900;
  margin: 0 0 10px;
}

@media (max-width: 374px) {
  h1 {
    font-size: 2.2rem;
    line-height: 2.4rem;
  }
}

h2, .TPL_FICHE_PRODUIT .titre-produit h1, .fiche-adherent h1 {
  color: #003160;
  font-size: 2.7rem;
  line-height: 3rem;
  font-weight: 700;
  margin: 0 0 10px;
}

@media (max-width: 374px) {
  h2, .TPL_FICHE_PRODUIT .titre-produit h1, .fiche-adherent h1 {
    font-size: 1.8rem;
    line-height: 2rem;
  }
}

h3 {
  color: #003160;
  font-size: 2.7rem;
  line-height: 2.9rem;
  font-weight: 600;
  margin: 0 0 10px;
}

@media (max-width: 374px) {
  h3 {
    font-size: 1.8rem;
    line-height: 2rem;
  }
}

h4 {
  color: #003160;
  font-size: 2.6rem;
  line-height: 2.9rem;
  font-weight: 400;
  margin: 0 0 10px;
}

@media (max-width: 374px) {
  h4 {
    font-size: 1.8rem;
    line-height: 2rem;
  }
}

h5 {
  color: #003160;
  font-size: 2rem;
  line-height: 2.6rem;
  font-weight: 400;
  margin: 0 0 10px;
}

@media (max-width: 374px) {
  h5 {
    font-size: 1.7rem;
    line-height: 1.9rem;
  }
}

h6 {
  color: #003160;
  font-size: 1.7rem;
  line-height: 2.2rem;
  font-weight: 400;
  margin: 0 0 10px;
}

@media (max-width: 374px) {
  h6 {
    font-size: 1.5rem;
    line-height: 1.8rem;
  }
}

/* ===================================================================
 * MODAL
 * =================================================================*/
.frontModalBoxContainer .modal, .frontModalBoxContainer .modal-orcab {
  border-radius: 10px;
  padding: 45px 0 20px 20px;
  padding-right: 20px !important;
  color: #868686;
  text-align: center;
}

.frontModalBoxContainer .title, .frontModalBoxContainer .field {
  text-align: left;
  color: #004462;
}

.frontModalBoxContainer .field {
  margin-bottom: 10px;
}

.frontModalBoxContainer .title {
  font-size: 2rem;
  line-height: 2.7rem;
  margin-bottom: 20px;
}

.frontModalBoxContainer .title h3 {
  font-size: 2rem;
  line-height: 2.7rem;
  margin-bottom: 0;
}

.frontModalBoxContainer input[type="text"], .frontModalBoxContainer .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .frontModalBoxContainer input[type="date"], .frontModalBoxContainer .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .frontModalBoxContainer input[type="date"], .frontModalBoxContainer .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .frontModalBoxContainer input[type="date"] {
  line-height: 1;
  margin-bottom: 20px;
  height: inherit;
}

.frontModalBoxContainer label {
  color: #004462;
}

.frontModalBoxContainer .message {
  font-size: 2rem;
  color: #004462;
}

.frontModalBoxContainer .content {
  text-align: left;
}

.frontModalBoxContainer .footer {
  margin-top: 20px;
}

.frontModalBoxContainer #btn-supprimer-oui,
.frontModalBoxContainer .btn-valider {
  float: right;
  width: 47%;
}

.frontModalBoxContainer .btn-annuler-panier {
  float: right;
  width: 47%;
}

.frontModalBoxContainer #btn-supprimer-non,
.frontModalBoxContainer .btn-annuler {
  float: left;
  width: 47%;
}

.frontModalBoxContainer .three-cols .btn-valider,
.frontModalBoxContainer .three-cols .btn-annuler {
  width: 200px;
  min-width: unset;
}

.frontModalBoxContainer .three-cols .btn-valider.centre,
.frontModalBoxContainer .three-cols .btn-annuler.centre {
  float: none;
}

.frontModalBoxContainer .btn-fermer, .frontModalBoxContainer .title a {
  color: #003160;
  position: absolute;
  top: 20px;
  right: 20px;
  font-size: 1.8rem;
  font-weight: 700;
  width: 24px;
  height: 24px;
  text-align: center;
}

.frontModalBoxContainer .btn-fermer:hover, .frontModalBoxContainer .btn-fermer:focus, .frontModalBoxContainer .btn-fermer:active, .frontModalBoxContainer .title a:hover, .frontModalBoxContainer .title a:focus, .frontModalBoxContainer .title a:active {
  text-decoration: none;
}

.frontModalBoxContainer .modal-orcab {
  position: fixed;
  background: #fff;
  margin: 0 0 0 -330px;
  overflow: auto;
  top: 25%;
  left: 50%;
  width: 660px;
  z-index: 1050;
}

.frontModalBoxContainer .modal-orcab--maxheight {
  max-height: 75dvh;
  width: 740px;
  transform: translate(-50%, -50%);
  top: 50%;
  left: calc(50% + 330px);
}

.frontModalBoxContainer .msgConfirmAddItemAgain {
  font-weight: 700;
  color: #e05151;
  margin: 0 0 10px;
}

.frontModalBoxContainer select {
  background: url(/build/images/fl-select.39dda136.png) no-repeat 97% 50% #fff;
}

.frontModalBoxContainer .select-wrap select {
  background: none;
}

#volet-actualite .frontModalBoxContainer:has(#favori-add:not(.hidden))::before {
  content: "";
  position: absolute;
  inset: -1000vw;
  background-color: rgba(0, 68, 98, 0.9);
  z-index: 1;
}

.frontModalBoxContainer .modal:has(.formAddListeAchat) {
  z-index: 10000000;
}

.frontModalBoxContainer body:has(.modal .formAddListeAchat) .modal-backdrop {
  z-index: 9999999;
}

.msg-panier-a-valider .frontModalBoxContainer .modal {
  display: none;
}

.msg-panier-a-valider .frontModalBoxContainer .content {
  margin: 20px 0 30px;
}

.msg-panier-a-valider .frontModalBoxContainer .content p {
  margin: 0;
}

.msg-panier-a-valider .frontModalBoxContainer .footer .bouton-vert, .msg-panier-a-valider .frontModalBoxContainer .footer .form-submit button, .form-submit .msg-panier-a-valider .frontModalBoxContainer .footer button,
.msg-panier-a-valider .frontModalBoxContainer .footer .form-submit input[type="submit"], .form-submit .msg-panier-a-valider .frontModalBoxContainer .footer input[type="submit"], .msg-panier-a-valider .frontModalBoxContainer .footer .bouton-bleu, .msg-panier-a-valider .frontModalBoxContainer .footer .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .msg-panier-a-valider .frontModalBoxContainer .footer .btn-imprimer, .msg-panier-a-valider .frontModalBoxContainer .footer .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .msg-panier-a-valider .frontModalBoxContainer .footer .btn-imprimer, .msg-panier-a-valider .frontModalBoxContainer .footer .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .msg-panier-a-valider .frontModalBoxContainer .footer a.voir-produit, .msg-panier-a-valider .frontModalBoxContainer .footer .materiel-print-btn a, .materiel-print-btn .msg-panier-a-valider .frontModalBoxContainer .footer a, .msg-panier-a-valider .frontModalBoxContainer .footer .materiel-planning-pdf a, .materiel-planning-pdf .msg-panier-a-valider .frontModalBoxContainer .footer a, .msg-panier-a-valider .frontModalBoxContainer .footer .bouton-gris, .msg-panier-a-valider .frontModalBoxContainer .footer .bouton-rouge, .msg-panier-a-valider .frontModalBoxContainer .footer .bouton-retour, .msg-panier-a-valider .frontModalBoxContainer .footer .bouton-rechercher, .msg-panier-a-valider .frontModalBoxContainer .footer .btn-ajouter-au-panier,
.msg-panier-a-valider .frontModalBoxContainer .footer .btn-liste-achat-activate, .msg-panier-a-valider .frontModalBoxContainer .footer .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .msg-panier-a-valider .frontModalBoxContainer .footer a, .msg-panier-a-valider .frontModalBoxContainer .footer .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .msg-panier-a-valider .frontModalBoxContainer .footer .btn-ajouter-liste, .msg-panier-a-valider .frontModalBoxContainer .footer .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .msg-panier-a-valider .frontModalBoxContainer .footer .btn-submit {
  float: right;
}

.msg-panier-a-valider .frontModalBoxContainer .footer .bouton-rouge {
  float: left;
  min-width: 20rem;
}

@media screen and (max-width: 767px) {
  .frontModalBoxContainer .modal, .frontModalBoxContainer .modal-orcab {
    max-width: 90%;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    margin: 0;
    box-sizing: border-box;
  }
  .frontModalBoxContainer .modal--maxheight, .frontModalBoxContainer .modal-orcab--maxheight {
    transform: translate(-50%, 0);
    top: 10%;
    left: 50%;
    max-height: 80dvh;
  }
  .frontModalBoxContainer #btn-supprimer-oui,
  .frontModalBoxContainer .btn-valider,
  .frontModalBoxContainer #btn-supprimer-non,
  .frontModalBoxContainer .btn-annuler,
  .frontModalBoxContainer .btn-submit {
    float: none;
    margin-bottom: 10px;
    min-width: 240px;
    width: 100%;
  }
  .frontModalBoxContainer .three-cols .btn-valider,
  .frontModalBoxContainer .three-cols .btn-annuler {
    min-width: 240px;
  }
  .msg-panier-a-valider .frontModalBoxContainer .footer .bouton-vert, .msg-panier-a-valider .frontModalBoxContainer .footer .form-submit button, .form-submit .msg-panier-a-valider .frontModalBoxContainer .footer button,
  .msg-panier-a-valider .frontModalBoxContainer .footer .form-submit input[type="submit"], .form-submit .msg-panier-a-valider .frontModalBoxContainer .footer input[type="submit"], .msg-panier-a-valider .frontModalBoxContainer .footer .bouton-bleu, .msg-panier-a-valider .frontModalBoxContainer .footer .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .msg-panier-a-valider .frontModalBoxContainer .footer .btn-imprimer, .msg-panier-a-valider .frontModalBoxContainer .footer .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .msg-panier-a-valider .frontModalBoxContainer .footer .btn-imprimer, .msg-panier-a-valider .frontModalBoxContainer .footer .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .msg-panier-a-valider .frontModalBoxContainer .footer a.voir-produit, .msg-panier-a-valider .frontModalBoxContainer .footer .materiel-print-btn a, .materiel-print-btn .msg-panier-a-valider .frontModalBoxContainer .footer a, .msg-panier-a-valider .frontModalBoxContainer .footer .materiel-planning-pdf a, .materiel-planning-pdf .msg-panier-a-valider .frontModalBoxContainer .footer a, .msg-panier-a-valider .frontModalBoxContainer .footer .bouton-gris, .msg-panier-a-valider .frontModalBoxContainer .footer .bouton-rouge, .msg-panier-a-valider .frontModalBoxContainer .footer .bouton-retour, .msg-panier-a-valider .frontModalBoxContainer .footer .bouton-rechercher, .msg-panier-a-valider .frontModalBoxContainer .footer .btn-ajouter-au-panier,
  .msg-panier-a-valider .frontModalBoxContainer .footer .btn-liste-achat-activate, .msg-panier-a-valider .frontModalBoxContainer .footer .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .msg-panier-a-valider .frontModalBoxContainer .footer a, .msg-panier-a-valider .frontModalBoxContainer .footer .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .msg-panier-a-valider .frontModalBoxContainer .footer .btn-ajouter-liste, .msg-panier-a-valider .frontModalBoxContainer .footer .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .msg-panier-a-valider .frontModalBoxContainer .footer .btn-submit {
    float: none;
    min-width: 24rem;
    margin: 0 0 10px;
  }
  .msg-panier-a-valider .frontModalBoxContainer .footer .bouton-rouge {
    max-width: 240px;
    box-sizing: border-box;
    min-width: inherit;
    float: none;
  }
}

@media screen and (max-width: 767px) {
  #formulaire-impression-rapport .enLigne label {
    margin-right: 30px;
  }
}

/* ===================================================================
 * LAYOUT
 * =================================================================*/
.inner-content {
  max-width: 1170px;
  padding: 0 10px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 1025px) {
  .inner-content {
    max-width: 100%;
    padding: 0 60px;
  }
  .inner-content.with-col-left {
    padding-left: 0;
  }
}

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

@media (min-width: 1025px) {
  main {
    max-width: 100%;
  }
}

main.page-recherche {
  overflow-x: hidden;
}

.col-left {
  float: left;
  width: 30%;
  max-width: 348px;
  padding: 0 3rem 0 0;
  overflow: hidden;
}

@media (max-width: 1440px) {
  .col-left {
    width: 25.5rem;
  }
}

.col-left:has(.c-tooltip.is-active) {
  overflow: visible;
}

#slot_left .paragraphe:not(.TPL_MENU_GAUCHE_CATEGORIE_LISTE) {
  padding-left: 3.5rem;
}

.text-only #slot_left .paragraphe:not(.TPL_MENU_GAUCHE_CATEGORIE_LISTE) {
  padding-left: 6rem;
}

.col-main {
  position: relative;
}

.with-col-left .col-main {
  float: left;
  width: calc(100% - 378px);
}

@media (max-width: 1440px) {
  .with-col-left .col-main {
    width: calc(100% - 285px);
  }
}

/*.with-col-left .titre-page { margin-left: 19.1%; }*/
.container970 {
  margin: 0 auto;
}

@media screen and (max-width: 1024px) {
  .inner-content {
    padding: 0 20px;
  }
  .with-col-left .col-main {
    width: 100% !important;
  }
  .with-col-left .titre-page {
    margin-left: 0;
  }
}

@media screen and (max-width: 767px) {
  .inner-content {
    padding: 0 15px;
  }
  .with-col-left .titre-page {
    margin: 20px 0;
  }
  main .inner-content {
    margin-top: 20px;
  }
}

/* ===================================================================
 * BANDEAU HAUT
 * =================================================================*/
#bandeau-haut {
  background: #fff;
  font-size: 1.4rem;
  position: relative;
  z-index: 11;
}

#bandeau-haut .top-header {
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  color: #868686;
  background-color: #f6f6f6;
  font-size: 1.3rem;
  line-height: 1.8rem;
}

@media (min-width: 1025px) {
  #bandeau-haut .top-header .inner-content {
    padding: 0 60px;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

#bandeau-haut .top-header ul {
  display: flex;
  flex-flow: row wrap;
  overflow: hidden;
}

#bandeau-haut .top-header li {
  margin-right: 10px;
}

#bandeau-haut .top-header a {
  color: inherit;
}

#bandeau-haut .top-header .right {
  display: flex;
  flex-flow: row wrap;
}

#bandeau-haut .top-header .right .btn {
  color: #545454;
  border: none;
  background-color: transparent;
  height: 39px;
  padding: 0 0 0 20px;
  border-radius: 0;
  font-size: 1.4rem;
  line-height: 1.9rem;
  font-weight: 600;
  position: relative;
}

#bandeau-haut .top-header .right .btn::before {
  font-size: 1.6rem;
  left: 0;
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
}

#bandeau-haut .options-affichage .affichage-prix::before {
  content: "\e973";
  color: #545454;
}

#bandeau-haut .show-tablet {
  display: none;
}

#bandeau-haut .show-tablet .btn {
  width: 40px;
  height: 40px;
  border: 1px solid #c4c4c4;
  border-radius: 4px;
  display: block;
  padding: 0;
  cursor: pointer;
  margin: 0;
  position: relative;
  background: transparent;
}

#bandeau-haut .show-tablet .btn:before {
  font-size: 2.4rem;
  left: 0;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
}

#bandeau-haut .btn-raccourcis {
  margin-right: 30px;
}

#bandeau-haut .btn-raccourcis::before {
  content: "\e972";
}

#bandeau-haut .btn-listes-achat {
  margin-right: 30px;
}

#bandeau-haut .btn-listes-achat::before {
  content: "\e967";
}

#bandeau-haut .header {
  background: #fff;
  position: relative;
}

#bandeau-haut .header > .inner-content {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  width: 100%;
  padding: 10px 20px;
  box-sizing: border-box;
  align-items: center;
  -webkit-transition: all 0.6s ease-in-out;
  -o-transition: all 0.6s ease-in-out;
  transition: all 0.6s ease-in-out;
}

@media (min-width: 1025px) {
  #bandeau-haut .header > .inner-content {
    padding: 28px 60px;
  }
}

#bandeau-haut #logo {
  width: 20%;
  padding-left: 0;
}

#bandeau-haut #logo img {
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  max-height: 68px;
}

#bandeau-haut .recherche-header {
  width: 35%;
  padding-left: 1%;
}

#bandeau-haut .recherche-header form {
  position: relative;
  z-index: 2;
}

#bandeau-haut .recherche-header input {
  color: #004462;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.9rem;
  height: 40px;
  border: 1px solid #868686;
  border-radius: 8px;
  padding: 10px 65px 10px 20px;
  box-sizing: border-box;
  width: 100%;
}

#bandeau-haut .recherche-header input::-webkit-input-placeholder {
  color: #004462;
}

#bandeau-haut .recherche-header input::-moz-placeholder {
  opacity: 1;
}

#bandeau-haut .recherche-header input:-ms-input-placeholder {
  color: #004462;
}

#bandeau-haut .recherche-header input:-moz-placeholder {
  color: #004462;
}

#bandeau-haut .recherche-header button {
  background: #82aa37;
  border: none;
  border-radius: 0 8px 8px 0;
  width: 54px;
  height: 40px;
  position: absolute;
  right: 0;
  top: 0;
}

#bandeau-haut .recherche-header button::before {
  content: "\e915";
  font-size: 2rem;
  color: #fff;
  line-height: 40px;
}

#bandeau-haut .recherche-header button span {
  display: none;
}

#bandeau-haut .recherche-header #btn-recherche-mobile {
  display: none;
}

#bandeau-haut .compte-panier {
  width: 43%;
  padding-left: 1%;
  display: flex;
  flex-flow: row wrap;
  align-items: flex-start;
  justify-content: flex-end;
}

@media screen and (min-width: 768px) {
  #bandeau-haut .compte-panier.mm-page {
    position: initial;
  }
}

#bandeau-haut .compte-panier .push {
  width: 100%;
  display: flex;
  justify-content: space-between;
  padding-left: 40px;
}

#bandeau-haut .button-header {
  background-color: transparent;
  border: none;
  color: #003160;
  font-size: 1.3rem;
  line-height: 1;
  padding: 0;
  margin: 0 5px;
  min-width: 7.5rem;
}

#bandeau-haut .button-header i {
  font-size: 2.4rem;
  margin-bottom: 6px;
  display: block;
  position: relative;
}

#bandeau-haut .button-header.not-read i:after {
  content: '';
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: #e8cf23;
  position: absolute;
  left: 39px;
  top: 0;
  border: 1px solid #ffffff;
}

#bandeau-haut .show-notif {
  margin-left: 0;
}

#bandeau-haut .show-notif.hasUnreadNotif {
  position: relative;
}

#bandeau-haut .show-notif.hasUnreadNotif::before {
  content: " ";
  width: 9px;
  height: 9px;
  display: block;
  position: absolute;
  right: 26px;
  border-radius: 20px;
  border: 1px solid #ffffff;
  z-index: 1;
}

#bandeau-haut .show-notif.hasUnreadNotif.error:before {
  background: #e05151;
}

#bandeau-haut .show-notif.hasUnreadNotif.warning:before {
  background: #e8cf23;
}

#bandeau-haut .show-notif.hasUnreadNotif.success:before {
  background: #82aa37;
}

#bandeau-haut .show-notif.hasUnreadNotif.info:before {
  background: #003160;
}

#bandeau-haut .show-panier-actif {
  background-color: #003160;
  padding: 0.8rem;
  border-radius: 8px;
  width: 19rem;
  color: #ffffff;
  margin-right: 0;
  position: relative;
  text-align: center;
}

#bandeau-haut .show-panier-actif.with-type {
  padding-bottom: 2rem;
}

#bandeau-haut .show-panier-actif .num {
  position: absolute;
  top: 1px;
  background-color: #003160;
  border-radius: 2px;
  padding: 2px;
  left: calc(50% + 1px);
  font-size: 1.1rem;
  line-height: 1.4rem;
}

#bandeau-haut .bloc-type-panier {
  position: relative;
  margin-top: -10px;
  text-align: center;
  width: 20.6rem;
  display: flex;
  justify-content: center;
}

#bandeau-haut .menu-mobile__temporary {
  display: none;
}

@media screen and (max-width: 1620px) {
  #bandeau-haut .recherche-header {
    width: 30%;
  }
  #bandeau-haut .compte-panier {
    flex: 1;
  }
}

@media screen and (max-width: 1440px) {
  #bandeau-haut .show-panier-actif {
    width: 10.4rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  #bandeau-haut .bloc-type-panier {
    width: 12rem;
  }
}

@media screen and (max-width: 1275px) {
  #bandeau-haut .header > .inner-content {
    justify-content: flex-start;
    align-items: center;
  }
  #bandeau-haut .recherche-header {
    width: 49.7787610619469%;
  }
  #bandeau-haut .compte-panier {
    flex-flow: row nowrap;
    width: 100%;
    padding-left: 0;
    flex: auto;
    margin-top: 10px;
    position: relative;
  }
  #bandeau-haut .compte-panier .push {
    padding-left: 0;
  }
  #bandeau-haut .bloc-type-panier {
    position: absolute;
    bottom: -0.8rem;
    right: 0;
    margin: 0;
  }
}

@media screen and (max-width: 1024px) {
  #bandeau-haut {
    border-bottom: 1px solid #c4c4c4;
  }
  #bandeau-haut .top-header {
    border: 0;
  }
  #bandeau-haut #bloc-panier {
    margin-left: 10px;
  }
  #bandeau-haut .header #menuMobile {
    display: none;
  }
  #bandeau-haut .header > .inner-content {
    justify-content: space-between;
  }
  #bandeau-haut .compte-panier {
    justify-content: space-between;
    align-items: center;
  }
  #bandeau-haut .compte-panier .push {
    width: 75%;
    display: flex;
    justify-content: space-between;
    padding-left: 0;
  }
  #bandeau-haut .show-tablet {
    display: flex;
    width: 95px;
    justify-content: space-between;
  }
  #bandeau-haut .show-tablet:has(.btn-listes-achat) {
    gap: 15px;
    width: auto;
  }
  #bandeau-haut .show-tablet #btn-raccourcis-mobile {
    display: none;
  }
  #bandeau-haut .header-twobuttons {
    display: flex;
    width: 95px;
    justify-content: space-between;
  }
  #bandeau-haut .bloc-type-panier {
    right: 20px;
    bottom: 0.5rem;
  }
}

@media screen and (max-width: 767px) {
  #bandeau-haut .recherche-header {
    width: calc(80% - 105px);
    position: relative;
  }
  #bandeau-haut .header > .inner-content {
    padding: 10px 20px 12px;
  }
  #bandeau-haut .button-header {
    min-width: auto;
  }
  #bandeau-haut .button-header i {
    margin-bottom: 0;
  }
  #bandeau-haut .button-header .header-libelle {
    display: none;
  }
  #bandeau-haut .button-header.show-notif,
  #bandeau-haut .button-header.show-favoris {
    display: none;
  }
  #bandeau-haut .menu-mobile__temporary,
  #bandeau-haut .menu.style-tablet {
    order: -1;
  }
  #bandeau-haut .compte-panier .menu.style-tablet {
    display: none;
  }
  #bandeau-haut .recherche-header #btn-recherche-mobile {
    display: inline-block;
    position: relative;
    background: #82aa37;
    border-radius: 4px;
    width: 40px;
  }
  #bandeau-haut .recherche-header form {
    display: none;
  }
  #bandeau-haut.search-mobile-open .header > .inner-content .recherche-header {
    width: auto;
  }
  #bandeau-haut.search-mobile-open .header > .inner-content .recherche-header form {
    position: absolute;
    right: 0;
    top: 40px;
    display: block;
    float: none;
    margin-right: 0;
    width: calc(100vw - 113px);
    min-width: auto;
  }
  #bandeau-haut.search-mobile-open .header > .inner-content .recherche-header button {
    border-radius: 0 8px 8px 0;
  }
  #bandeau-haut.search-mobile-open .header > .inner-content .recherche-header #search-suggester-results {
    width: calc(100vw - 40px);
    right: -80px;
    left: auto;
    top: 80px;
    height: calc(100vh - 120px);
  }
  #bandeau-haut .menu.style-tablet, #bandeau-haut .recherche-header, #bandeau-haut .show-tablet {
    width: 40px;
  }
  #bandeau-haut #logo {
    width: calc(100% - 160px);
  }
  #bandeau-haut .show-tablet .options-affichage, #bandeau-haut .show-tablet .show-tablet .btn-raccourcis {
    display: none;
  }
  #bandeau-haut .show-tablet .btn-listes-achat {
    display: none;
  }
  #bandeau-haut .show-tablet #btn-raccourcis-mobile {
    display: inline-block;
  }
  #bandeau-haut .show-tablet #btn-raccourcis-mobile::before {
    content: "...";
    color: #003160;
    top: 30%;
  }
  #bandeau-haut .show-tablet .header-twobuttons {
    display: none;
  }
  #bandeau-haut .show-tablet.raccourcis-mobile-open {
    position: relative;
  }
  #bandeau-haut .show-tablet.raccourcis-mobile-open .btn {
    background-color: #ffffff;
  }
  #bandeau-haut .show-tablet.raccourcis-mobile-open .options-affichage, #bandeau-haut .show-tablet.raccourcis-mobile-open .btn-raccourcis {
    display: inline-block;
  }
  #bandeau-haut .show-tablet.raccourcis-mobile-open .header-twobuttons {
    position: absolute;
    display: flex;
    right: 0;
    top: 40px;
    gap: 10px;
    z-index: 2;
  }
  #bandeau-haut .header.overlay-raccourcis::before, #bandeau-haut.search-mobile-open .header::before {
    content: '';
    background: rgba(0, 68, 98, 0.9);
    opacity: 1;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 2;
  }
  #bandeau-haut .header.overlay-raccourcis .raccourcis-mobile-open {
    z-index: 3;
  }
  #bandeau-haut.search-mobile-open .header #btn-recherche-mobile {
    z-index: 3;
  }
  #bandeau-haut .compte-panier .push {
    width: 100%;
    justify-content: space-between;
    padding: 0;
  }
  #bandeau-haut .compte-panier .button-header {
    width: 25px;
    overflow: visible;
  }
  #bandeau-haut .bloc-type-panier {
    right: -15px;
    width: auto;
    bottom: -5px;
  }
  #bandeau-haut .menu-mobile__temporary {
    display: block;
  }
  #bandeau-haut .menu-mobile__temporary:has(~ .menu.style-tablet) {
    display: none;
  }
}

#site-main.scrollfix #bandeau-haut {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 110;
}

#site-main.scrollfix header#bandeau-haut.header__going-up {
  position: fixed;
  left: 0;
  right: 0;
  z-index: 110;
}

#site-main.scrollfix header#bandeau-haut.header__going-up:not(.header-simplifie-avec-defilement) {
  animation: menuslideTop .5s;
}

#site-main.scrollfix header#bandeau-haut.header__going-down:not(.header-simplifie-avec-defilement) {
  top: -300px;
  top: var(--hauteur-header-negatif);
  position: fixed;
  transition: top .5s;
}

#site-main.scrollfix #bandeau-haut.header-complet-sans-defilement:not(.header__going-up):not(.header__going-down),
#site-main.scrollfix #bandeau-haut.header-complet-sans-defilement.not-affichage-top-header-defilement:not(.header__going-up):not(.header__going-down) {
  position: absolute;
}

@media screen and (max-width: 1440px) {
  #site-main.scrollfix.scrolled #bandeau-haut.header-simplifie-avec-defilement:not(.header__going-up) .menu-style-desktop ul.menu-niv1 > li:first-child {
    display: inline-block;
    width: 25.5rem;
  }
}

@media screen and (min-width: 1024px) {
  #site-main.scrollfix.scrolled {
    padding-top: 135px;
  }
  #site-main.scrollfix.scrolled.with-top-header {
    padding-top: 180px;
  }
  #site-main.scrollfix.scrolled .upper-price-header {
    z-index: 100;
    position: relative;
  }
  #site-main.scrollfix.scrolled header.not-affichage-top-header-defilement .upper-price-header {
    margin-bottom: 0.5rem;
  }
  #site-main.scrollfix.scrolled header.not-affichage-top-header-defilement:not(.header-complet-sans-defilement) .top-header {
    margin-top: -43px;
  }
  #site-main.scrollfix.scrolled #bandeau-haut.header-simplifie-avec-defilement:not(.header__going-up) {
    border-bottom: 1px solid #c4c4c4;
  }
  #site-main.scrollfix.scrolled #bandeau-haut.header-simplifie-avec-defilement:not(.header__going-up) .button-header {
    min-width: auto;
  }
  #site-main.scrollfix.scrolled #bandeau-haut.header-simplifie-avec-defilement:not(.header__going-up) .button-header .header-libelle {
    display: none;
  }
  #site-main.scrollfix.scrolled #bandeau-haut.header-simplifie-avec-defilement:not(.header__going-up) .compte-panier .push .button-header.show-panier-actif {
    width: auto;
  }
  #site-main.scrollfix.scrolled #bandeau-haut.header-simplifie-avec-defilement:not(.header__going-up) .compte-panier .push .button-header.show-panier-actif i {
    margin-bottom: 0;
  }
  #site-main.scrollfix.scrolled #bandeau-haut.header-simplifie-avec-defilement:not(.header__going-up) .show-notif.hasUnreadNotif::before {
    right: 0;
  }
  #site-main.scrollfix.scrolled #bandeau-haut.header-simplifie-avec-defilement:not(.header__going-up) .header > .inner-content {
    padding: 5px 60px 5px 25%;
  }
  #site-main.scrollfix.scrolled #bandeau-haut.header-simplifie-avec-defilement:not(.header__going-up) .header #logo img {
    vertical-align: top;
    max-height: 40px;
  }
  #site-main.scrollfix.scrolled #bandeau-haut.header-simplifie-avec-defilement:not(.header__going-up) .menu-style-desktop {
    margin-top: -47px;
    width: 24%;
  }
  #site-main.scrollfix.scrolled #bandeau-haut.header-simplifie-avec-defilement:not(.header__going-up) .menu-style-desktop #menu {
    background-color: transparent;
    border: none;
  }
  #site-main.scrollfix.scrolled #bandeau-haut.header-simplifie-avec-defilement:not(.header__going-up) .menu-style-desktop .inner-content {
    padding: 0;
  }
  #site-main.scrollfix.scrolled #bandeau-haut.header-simplifie-avec-defilement:not(.header__going-up) .menu-style-desktop ul.menu-niv1 > li {
    display: none;
    margin: 0;
    width: 100%;
  }
  #site-main.scrollfix.scrolled #bandeau-haut.header-simplifie-avec-defilement:not(.header__going-up) .menu-style-desktop ul.menu-niv1 > li:first-child {
    display: inline-block;
  }
  #site-main.scrollfix.scrolled #bandeau-haut.header-simplifie-avec-defilement:not(.header__going-up) .header > .inner-content {
    display: flex;
    align-items: center;
  }
  #site-main.scrollfix.scrolled .sticky-bandeau-haut .header {
    position: relative;
  }
  #site-main.scrollfix.scrolled .sticky-bandeau-haut .header > .inner-content {
    padding: 10px 10px 5px;
  }
  #site-main.scrollfix.scrolled .sticky-bandeau-haut .top-header {
    margin-top: 0;
  }
}

@keyframes menuslideTop {
  from {
    position: fixed;
    top: -300px;
    top: var(--hauteur-header-negatif);
  }
  to {
    position: fixed;
    top: 0;
  }
}

#overlay {
  position: fixed;
  background-color: rgba(0, 49, 96, 0.8);
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  -webkit-transition: opacity 0.3s;
  -o-transition: opacity 0.3s;
  transition: opacity 0.3s;
  opacity: 0;
  z-index: -1;
}

#overlay.visible {
  opacity: 1;
  z-index: 10;
}

/* ===================================================================
 * PANNEAU PANIER
 * =================================================================*/
#mini-panier .inner-content {
  padding: 3rem 6rem;
  font-size: 1.063em;
  overflow: hidden;
}

#mini-panier .infos-lib {
  display: inline-block;
  max-width: 46%;
  vertical-align: bottom;
}

#mini-panier .panier-libelle {
  color: #004462;
  font-size: 2rem;
  font-weight: bold;
  text-transform: uppercase;
}

#mini-panier .nb-articles {
  font-size: 1.6rem;
  color: #82aa37;
  margin-left: 10px;
}

#mini-panier .nb-articles.mobile {
  display: none;
}

#mini-panier .total-panier {
  display: inline-block;
  vertical-align: bottom;
  margin-left: 50px;
}

#mini-panier .total {
  font-size: 2.9rem;
  color: #004462;
  font-weight: bold;
  line-height: 15px;
}

#mini-panier .eco-taxe {
  font-size: 1.1rem;
  white-space: nowrap;
  display: block;
}

#mini-panier .derniers-produits {
  font-size: 1.6rem;
  color: #838383;
  padding-top: 15px;
}

#mini-panier .btn-commander {
  float: right;
  text-align: center;
  box-sizing: border-box;
}

#mini-panier .panier-detail-item {
  background: #fff;
  border-radius: 5px;
  margin-top: 30px;
  float: left;
  width: 48.7%;
  margin-left: 2.6%;
  padding: 10px;
  box-sizing: border-box;
  position: relative;
}

#mini-panier .panier-detail-item:nth-child(2n+1) {
  margin-left: 0;
  clear: left;
}

#mini-panier .panier-detail-item .encadre {
  width: 16.4%;
  float: left;
  text-align: center;
  padding-right: 10px;
  box-sizing: border-box;
}

#mini-panier .panier-detail-item .encadre + .caption {
  margin-left: 16.4%;
  width: 83.6%;
}

#mini-panier .panier-detail-item .caption {
  overflow: hidden;
}

#mini-panier .panier-detail-item .lib-produit {
  font-size: 2.1rem;
  text-transform: uppercase;
  padding-right: 0;
  margin-bottom: 10px;
  width: 75%;
}

#mini-panier .panier-detail-item .stock {
  position: absolute;
  top: 10px;
  right: 10px;
}

#mini-panier .panier-detail-item .infos {
  width: 60%;
  float: left;
}

#mini-panier .panier-detail-item .infos > div {
  float: left;
  width: 50%;
  padding-right: 10px;
  box-sizing: border-box;
}

#mini-panier .panier-detail-item .infos.mobile {
  display: none;
}

#mini-panier .panier-detail-item .prix-total {
  width: 40%;
  float: right;
}

#mini-panier .panier-detail-item .marque {
  font-size: 1.6rem;
  font-weight: bold;
  text-transform: uppercase;
}

#mini-panier .panier-detail-item .label {
  font-size: 1.3rem;
  color: #004462;
}

#mini-panier .panier-detail-item .info {
  font-size: 1.6rem;
}

#mini-panier .panier-detail-item .qte .info {
  color: #004462;
  font-weight: bold;
}

#mini-panier .panier-detail-item .prix {
  font-size: 2rem;
  color: #004462;
  font-weight: bold;
}

#mini-panier .panier-detail-item .prix.label-promo {
  color: #e05151;
}

#mini-panier .panier-detail-item .infos-types {
  clear: both;
  font-size: 1.3rem;
  padding-top: 10px;
}

#mini-panier .panier-detail-item .infos-types li {
  display: inline-block;
  margin-right: 0.7rem;
  vertical-align: middle;
}

#mini-panier .panier-detail-item .btn-icon-delete {
  text-indent: -9999px;
  display: inline-block;
  position: absolute;
  font-size: 2rem;
  color: #e05151;
  width: 20px;
  height: 20px;
  margin: 0 auto;
  bottom: 10px;
  right: 10px;
  outline: none;
}

#mini-panier .panier-detail-item .btn-icon-delete::before {
  content: "\e909";
  text-indent: 0;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
}

@media screen and (max-width: 1024px) {
  #mini-panier .inner-content {
    padding: 30px 10px;
  }
  #mini-panier .total-panier .eco-taxe {
    display: block;
    margin-left: 0;
  }
  #mini-panier .btn-commander {
    min-width: 165px;
  }
  #mini-panier .panier-detail-item {
    float: none;
    width: 100%;
    margin-top: 20px;
    margin-left: 0;
  }
  #mini-panier .panier-detail-item .encadre {
    width: 15%;
  }
  #mini-panier .panier-detail-item .encadre + .caption {
    margin-left: 15%;
    width: 85%;
  }
  #mini-panier .panier-detail-item:nth-child(n+3) {
    display: none;
  }
  #mini-panier .panier-detail-item .prix {
    word-wrap: break-word;
  }
}

@media screen and (max-width: 767px) {
  #bloc-panier .mon-panier {
    overflow-y: auto;
  }
  #mini-panier .inner-content {
    padding: 25px 10px;
  }
  #mini-panier .panier-libelle, #mini-panier .nb-articles {
    display: none;
  }
  #mini-panier .nb-articles.mobile {
    display: block;
    margin: 10px 0;
  }
  #mini-panier .btn-commander {
    min-width: 140px;
  }
  #mini-panier .total-panier {
    margin-left: 0;
  }
  #mini-panier .derniers-produits {
    clear: both;
  }
  #mini-panier .panier-detail-item {
    margin-top: 10px;
  }
  #mini-panier .panier-detail-item .encadre {
    width: 25%;
  }
  #mini-panier .panier-detail-item .encadre + .caption {
    margin-left: 25%;
    width: 75%;
  }
  #mini-panier .panier-detail-item .caption .infos {
    display: none;
  }
  #mini-panier .panier-detail-item .caption {
    margin-bottom: 10px;
  }
  #mini-panier .panier-detail-item .lib-produit {
    font-size: 1.8rem;
  }
  #mini-panier .panier-detail-item .prix-total {
    width: 50%;
  }
  #mini-panier .panier-detail-item .prix-total .label {
    display: none;
  }
  #mini-panier .panier-detail-item .prix-total .eco-taxe {
    display: block;
  }
  #mini-panier .panier-detail-item .infos-types {
    clear: none;
    float: left;
    width: 50%;
    padding: 0 10px 0 0;
    box-sizing: border-box;
  }
  #mini-panier .panier-detail-item .infos.mobile {
    display: block;
    width: 100%;
    float: none;
    border-top: 1px solid #c4c4c4;
    padding-top: 10px;
    clear: both;
  }
}

/* ===================================================================
 * MENU PRINCIPAL
 * =================================================================*/
.menu .menu-style-mobile,
.menu .mm-close, .mm-menu .menu-style-mobile,
.mm-menu .mm-close {
  width: 40px;
  height: 40px;
  border-radius: 4px;
  border: 1px solid #cecece;
  position: relative;
  cursor: pointer;
  box-sizing: border-box;
}

.menu .menu-style-mobile::before,
.menu .mm-close::before, .mm-menu .menu-style-mobile::before,
.mm-menu .mm-close::before {
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  content: "\e97a";
  color: #003160;
  font-size: 2rem;
}

.menu .mm-navbars-top .mm-title::before, .mm-menu .mm-navbars-top .mm-title::before {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  content: "\e951";
  height: 24px;
  line-height: 24px;
  width: 24px;
  text-align: center;
  font-size: 1rem;
  left: 1rem;
  margin-right: 1rem;
  color: #003160;
}

#menuMobile .menu-niv .link:after {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  content: "\e952";
  height: 24px;
  line-height: 24px;
  width: 24px;
  text-align: center;
  font-size: 1rem;
  right: 1rem;
}

#menu {
  background: #ffffff;
  border-bottom: 1px solid #c4c4c4;
  position: relative;
  font-size: 15px;
}

#menu .inner-content {
  height: 100%;
  padding-left: 0;
}

@media screen and (max-width: 1440px) and (min-width: 1025px) {
  #menu .inner-content {
    padding-right: 0;
    font-size: 13px;
  }
}

#menu a {
  color: #003160;
  font-weight: bold;
  text-decoration: none;
  display: block;
}

#menu a img {
  vertical-align: middle;
}

#menu a:hover {
  color: #82aa37;
}

#menu a:hover span::before {
  color: #82aa37;
}

#menu a:hover img {
  filter: invert(57%) sepia(61%) saturate(408%) hue-rotate(39deg) brightness(93%) contrast(95%);
}

#menu a span {
  margin-right: 10px;
}

#menu .menu-niv1 {
  display: flex;
  width: 100%;
  flex-flow: row wrap;
  margin: 0 !important;
}

#menu .nav1 {
  display: table-cell;
  margin: 0 6px;
  position: relative;
  /*&.active > a {
        background: #f6f6f6;
        color: $vert;
    }*/
}

@media screen and (max-width: 1440px) and (min-width: 1025px) {
  #menu .nav1 {
    max-width: 200px;
  }
}

#menu .nav1 > a {
  display: flex;
  align-items: center;
  height: 48px;
  text-transform: uppercase;
  padding: 0 20px;
  border-radius: 5px 5px 0 0;
  text-align: center;
}

@media screen and (max-width: 1440px) and (min-width: 1025px) {
  #menu .nav1 > a {
    padding: 0 10px;
    font-size: 13px;
    line-height: 1.5;
  }
}

#menu .nav1 .menu-picto {
  position: relative;
  line-height: 0;
  width: 24px;
  height: 24px;
  margin-right: 12px;
}

#menu .nav1 .menu-picto .menu-picto-color {
  width: 100%;
  height: 100%;
  -webkit-mask-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-mask-size: contain;
  background-color: #003160;
}

#menu .nav1 a:hover .menu-picto-color {
  background-color: #82aa37 !important;
}

#menu .nav1:not(.menu-produit) .inner-content {
  overflow-y: auto;
  height: 100%;
  white-space: normal;
  scrollbar-width: thin;
  box-sizing: border-box;
}

#menu .nav1:not(.menu-produit) .inner-content::-webkit-scrollbar {
  width: 9px;
  background: #F0F0F0;
}

#menu .nav1:not(.menu-produit) .inner-content::-webkit-scrollbar-thumb {
  background: #CDCDCD;
}

#menu .sous-menu {
  position: absolute;
  left: 20px;
  top: calc(100% + 1px);
  background: #ffffff;
  z-index: 10;
  overflow: hidden;
  visibility: hidden;
  box-sizing: border-box;
  -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.2);
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.2);
}

#menu .sous-menu > div {
  padding: 30px 25px 0;
  position: relative;
  box-sizing: border-box;
}

#menu .sous-menu.open, #menu .sous-menu .visible {
  visibility: visible;
}

#menu .sous-menu a:hover {
  color: #82aa37;
}

#menu .sous-menu.js-padding0 {
  padding-bottom: 0 !important;
}

#menu .menu-niv2 {
  height: auto;
  white-space: nowrap;
}

#menu .nav2 {
  margin-bottom: 35px;
}

#menu .nav2 > a {
  padding-right: 20px;
}

#menu .menu-niv3 {
  background: #ffffff;
  position: absolute;
  top: 0;
  left: 100%;
  width: 348px;
  height: 100%;
  max-height: calc(100% - 40px - 40px - 10px);
  padding: 20px 0;
  visibility: hidden;
  border-left: 1px solid #c4c4c4;
  box-sizing: border-box;
  font-size: 1.4rem;
  -webkit-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.2);
  box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.2);
}

#menu .menu-niv3 ul {
  padding: 0 20px;
  height: 100%;
  overflow-y: auto;
  scrollbar-width: thin;
}

#menu .menu-niv3 ul::-webkit-scrollbar {
  width: 9px;
  background: #F0F0F0;
}

#menu .menu-niv3 ul::-webkit-scrollbar-thumb {
  background: #CDCDCD;
}

#menu .menu-niv4 {
  background: #ffffff;
  position: absolute;
  left: 100%;
  top: 0;
  width: 348px;
  height: 100%;
  padding: 20px 0;
  visibility: hidden;
  border-left: 1px solid #c4c4c4;
  box-sizing: border-box;
  -webkit-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.2);
  box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.2);
}

#menu .menu-niv4 ul {
  padding: 0 20px;
  height: 100%;
  overflow-y: auto;
  scrollbar-width: thin;
}

#menu .menu-niv4 ul::-webkit-scrollbar {
  width: 9px;
  background: #F0F0F0;
}

#menu .menu-niv4 ul::-webkit-scrollbar-thumb {
  background: #CDCDCD;
}

#menu .img-categ {
  background: #f6f6f6;
  position: absolute;
  left: 66.6%;
  top: 0;
  width: 33.3%;
  visibility: hidden;
}

#menu .menu-produit {
  position: static;
  width: 30%;
  max-width: 348px;
  margin: 0 26px 0 0;
  background: #003160 !important;
  border-radius: 0 5px 0 0 !important;
}

@media (max-width: 1440px) {
  #menu .menu-produit {
    width: 25.5rem;
  }
}

@media screen and (max-width: 1440px) and (min-width: 1025px) {
  #menu .menu-produit {
    margin-right: 0;
  }
}

#menu .menu-produit > a {
  justify-content: center;
  color: #ffffff !important;
  background: none !important;
}

#menu .menu-produit > a .menu-picto .menu-picto-color {
  background-color: white;
}

#menu .menu-produit .active > a {
  color: #82aa37;
}

#menu .menu-produit .parent > a {
  padding-right: 6px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#menu .menu-produit .parent > a::after {
  font-family: 'FontAwesome', Arial, sans-serif;
  content: "\f054";
  font-size: 14px;
  margin-left: 25px;
}

#menu .menu-produit .sous-menu {
  left: 0;
  height: 100vh;
  width: inherit;
  max-width: inherit;
  overflow: visible;
  padding: 0;
  background: #f6f6f6;
}

#menu .menu-produit .sous-menu > div {
  padding: 0;
}

#menu .menu-produit .sous-menu li {
  margin-bottom: 10px;
}

#menu .menu-produit .sous-menu .titre {
  font-size: 2.7rem;
  line-height: 1.1;
  font-weight: 900;
  color: #003160;
  text-transform: uppercase;
  margin: 0;
  word-break: break-word;
}

#menu .menu-produit .sous-menu .all {
  margin-bottom: 30px;
}

#menu .menu-produit .sous-menu .all a {
  color: #545454;
  font-weight: normal;
  font-size: 1.4rem;
}

#menu .menu-produit .menu-niv2 {
  padding: 20px;
  overflow-y: auto;
  height: calc(100% - 40px - 28px);
  white-space: normal;
  scrollbar-width: thin;
  box-sizing: border-box;
}

#menu .menu-produit .menu-niv2::-webkit-scrollbar {
  width: 9px;
  background: #F0F0F0;
}

#menu .menu-produit .menu-niv2::-webkit-scrollbar-thumb {
  background: #CDCDCD;
}

#menu .menu-produit .nav2-link {
  text-transform: uppercase;
}

#menuMobile {
  display: none;
}

body.overflow-hidden {
  overflow: hidden;
}

@media screen and (min-width: 1025px) {
  body.accueil #menu .menu-produit .nav1-link {
    pointer-events: none;
  }
  body.accueil #menu .menu-produit > .sous-menu {
    visibility: visible;
  }
  body.accueil #menu .menu-produit > .sous-menu.overlay-opened:before {
    -webkit-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
    content: '' !important;
    background-color: rgba(0, 49, 96, 0.8);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
  }
  body.accueil #bandeau-bas {
    position: relative;
    z-index: 110;
  }
}

#overlay.menu-overlay {
  background-color: rgba(0, 49, 96, 0.8);
}

@media screen and (max-width: 1024px) {
  #menuMobile {
    display: block;
    background: #f8f8f8;
    padding: 10px 20px;
    top: 0;
    z-index: 10000;
    transition: 0.4s;
    transform: translate3d(0, 0, 0);
    left: -100%;
  }
  #menuMobile.mm-opened {
    transition: 0.4s;
    transform: translate3d(0, 0, 0);
    left: 0;
  }
  #menuMobile .mm-listview > li {
    margin-bottom: 1rem;
  }
  #menuMobile .menu-niv {
    padding: 0 20px 0;
    font-size: 1.5rem;
    line-height: 2.4rem;
    margin-top: 0;
  }
  #menuMobile .menu-niv li::after {
    border: 0;
  }
  #menuMobile .menu-niv .link {
    color: #003160;
    font-weight: bold;
    text-decoration: none;
    display: block;
    text-transform: uppercase;
    padding: 1rem 4.4rem 1rem 0;
    text-align: left;
    background: none;
    margin: 0;
    background-color: transparent;
    border-radius: 5px;
    position: relative;
  }
  #menuMobile .menu-niv .link:hover, #menuMobile .menu-niv .link:focus {
    background-color: #003160;
    color: #ffffff;
    padding-left: 1rem;
  }
  #menuMobile .niv-0 .link {
    outline: none;
  }
  #menuMobile .niv-0 .link .picto {
    margin-right: 15px;
  }
  #menuMobile .niv-2 .link {
    text-transform: none;
  }
  #menuMobile .top-header-second {
    border-top: 1px solid #c4c4c4;
    padding: 35px 70px;
    margin-top: 10px;
  }
  #menuMobile .top-header-second li {
    margin-bottom: 10px;
    display: block;
  }
  #menuMobile .top-header-second li.Selected a {
    color: #82aa37;
  }
  #menuMobile .top-header-second a {
    color: #838383;
    font-weight: normal;
    padding: 0;
    text-transform: none;
  }
  #menuMobile .top-header-second a:hover, #menuMobile .top-header-second a:focus {
    color: #82aa37;
  }
  #menuMobile .mm-close {
    display: block;
    margin-bottom: 20px;
    background-color: #ffffff;
  }
  #menuMobile .mm-close::before {
    content: '\e950';
    border: 0 none;
    top: 0;
    transform: translate(0px, 0px);
    width: 100%;
    height: 100%;
    font-size: 1.1rem;
    left: 0;
    line-height: 40px;
  }
  #menuMobile .mm-close::after {
    border: 0;
  }
  #menuMobile .mm-navbars-top .mm-title {
    display: block;
    font-weight: 700;
    font-size: 2rem;
    line-height: 2.2rem;
    text-transform: uppercase;
    text-align: left;
    padding: 1.1rem 1rem 1.1rem 4.4rem;
    color: #003160;
    position: relative;
  }
  #menuMobile .mm-navbars-top .mm-title:hover, #menuMobile .mm-navbars-top .mm-title:focus {
    text-decoration: none;
  }
  #menuMobile .mm-panels {
    top: 0;
  }
  #menuMobile .mm-panels .mm-navbar {
    display: none;
  }
  #menuMobile .mm-panels .mm-panel {
    top: 124px;
  }
  #menuMobile .mm-panels .mm-panel#mm-1 {
    top: 70px;
  }
  #menuMobile .mm-panels .mm-hasnavbar {
    padding-top: 0;
  }
  #menuMobile .mm-panels > .mm-panel::before, #menuMobile .mm-panels > .mm-panel::after {
    content: none;
  }
  #menuMobile .mm-navbar {
    border: 0;
  }
  #menuMobile .mm-navbar.mm-hasbtns {
    padding: 10px 20px 0;
    height: auto;
  }
  #menuMobile .mm-navbars-top {
    border: 0;
  }
  #menuMobile .mm-selected .link {
    background: none;
    color: #82aa37;
  }
  #menuMobile .mm-next::after,
  #menuMobile .mm-listview > li .mm-next {
    border: 0;
  }
}

/* ===================================================================
 * BANDEAU BAS
 * =================================================================*/
#bandeau-bas {
  background-color: #003160;
}

#bandeau-bas .footer1 {
  padding: 5rem 6rem;
  overflow: hidden;
  max-width: 147rem;
  margin: 0 auto;
}

#bandeau-bas .footer1 a {
  margin-bottom: 18px;
  display: inline-block;
  color: #ffffff;
}

#bandeau-bas .footer1 > ul {
  display: flex;
  flex-flow: row wrap;
}

#bandeau-bas .footer1 .niv1 {
  width: 18.36734693877551%;
  margin-right: 2.040816326530612%;
}

#bandeau-bas .footer1 .niv1 > a {
  font-size: 1.7rem;
  line-height: 2.3rem;
  text-transform: uppercase;
}

#bandeau-bas .footer1 .niv1 > a:hover {
  cursor: default;
  text-decoration: none;
}

#bandeau-bas .footer1 .niv1:last-child {
  margin-right: 0;
}

#bandeau-bas .footer1 .niv2 {
  font-size: 1.3rem;
  line-height: 1.7rem;
  display: flex;
  align-items: center;
  gap: 15px;
}

#bandeau-bas .footer1 .niv2 a {
  color: #e9e9e9;
}

#bandeau-bas .footer1 .niv2 img {
  margin-bottom: 18px;
  width: 20px;
  height: 20px;
  object-fit: contain;
}

#bandeau-bas .footer1 .footer-haspicto {
  display: flex;
  gap: 15px;
  width: 100%;
  align-items: center;
}

#bandeau-bas .footer1 .footer-picto {
  position: relative;
  line-height: 0;
  width: 20px;
  height: 20px;
  min-width: 20px;
}

#bandeau-bas .footer1 .footer-picto .footer-picto-color {
  width: 100%;
  height: 100%;
  -webkit-mask-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-mask-size: contain;
  background-color: #e9e9e9;
}

#bandeau-bas .footer1 .footer-picto .footer-picto-color:hover {
  background-color: #e9e9e9;
}

#bandeau-bas .footer2 {
  padding: 1.5rem 4rem;
  text-align: center;
  background-color: #021B33;
}

#bandeau-bas .footer2 li {
  display: inline-block;
  margin: 0 15px;
}

#bandeau-bas .footer2 a {
  color: #ffffff;
}

@media screen and (max-width: 1024px) {
  #bandeau-bas .footer1 .niv1 {
    width: 48%;
    margin-right: 2%;
  }
  #bandeau-bas .footer1 .niv1:not(:last-child) {
    margin-bottom: 6rem;
  }
}

@media screen and (max-width: 374px) {
  #bandeau-bas .footer1 .niv1 {
    clear: both;
    float: none;
    width: 100%;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* ===================================================================
 * PANNEAU PROPOSITIONS DE RECHERCHE
 * =================================================================*/
.header::before {
  opacity: 0;
  transition: opacity 0.3s;
}

.header.suggester-open::before {
  content: '';
  background: rgba(0, 68, 98, 0.9);
  opacity: 1;
  position: absolute;
  bottom: 0;
  top: -4.3rem;
  left: 0;
  right: 0;
  z-index: 3;
  height: calc(100% + 4.3rem);
}

.header.suggester-open .recherche-header > form {
  z-index: 3 !important;
}

#search-suggester-results {
  --border-color-gray: #cecece;
  background: #f6f6f6;
  position: absolute;
  left: 0;
  top: 100%;
  width: 97%;
  z-index: 11;
  margin-top: -49px;
  margin-left: 1.5%;
  margin-right: 1.5%;
  font-size: 1.6rem;
  display: flex;
  align-items: stretch;
}

#search-suggester-results > .titre {
  display: none;
}

#search-suggester-results .outer-left {
  width: 31.8rem;
  padding: 1.5rem 3rem 1.5rem 5rem;
  display: flex;
  align-items: center;
  background: #e9e9e9;
  color: #004462;
  box-sizing: border-box;
}

@media (max-width: 1440px) {
  #search-suggester-results .outer-left {
    width: 20%;
    padding: 1.5rem 3rem;
  }
}

#search-suggester-results .outer-right {
  flex: 1;
  padding: 5rem 3rem 3.4rem;
  box-sizing: border-box;
  max-height: calc(100vh - 148px);
  overflow-x: hidden;
  overflow-y: auto;
}

#search-suggester-results .search-all-results {
  display: inline-block;
  position: relative;
  padding-left: 2.3rem;
  text-transform: uppercase;
  color: inherit;
  font-weight: bold;
  cursor: pointer;
}

#search-suggester-results .search-all-results-list {
  width: 100%;
  overflow: hidden;
}

#search-suggester-results .search-all-results-list li {
  padding: 2rem 2.3rem;
}

#search-suggester-results .search-all-results-list li:not(:last-child) {
  border-bottom: 1px solid var(--border-color-gray);
}

#search-suggester-results .search-all-results::before {
  content: "\e954";
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  left: 0;
}

#search-suggester-results .cont-wrapper {
  display: flex;
  flex-wrap: wrap;
}

#search-suggester-results .left {
  margin-bottom: 3rem;
}

@media (max-width: 1440px) {
  #search-suggester-results .left {
    width: 48%;
  }
}

#search-suggester-results .list-categ {
  float: left;
  width: 26.8rem;
  margin-right: 3rem;
}

#search-suggester-results .list-categ li {
  padding: 1rem 0;
  border-top: 1px solid var(--border-color-gray);
}

#search-suggester-results .list-categ a {
  color: #004462;
}

@media (max-width: 1440px) {
  #search-suggester-results .list-categ {
    width: 46%;
    margin-right: 4%;
  }
}

#search-suggester-results .dans-categories {
  color: #545454;
  font-style: italic;
  font-size: 1.4rem;
}

#search-suggester-results .nom-categ {
  margin-bottom: 2.5rem;
  color: #004462;
  font-weight: bold;
  text-transform: uppercase;
}

#search-suggester-results .nom-categ span {
  font-weight: normal;
  color: #868686;
}

#search-suggester-results .right {
  flex: 1;
}

#search-suggester-results .search-suggester-results {
  margin: 0 -1.4rem;
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
}

#search-suggester-results .search-suggester-results li {
  width: 50%;
  padding: 0 1.4rem;
  margin: 0 0 3rem;
  box-sizing: border-box;
}

#search-suggester-results .search-suggester-results-item {
  height: 100%;
  padding: 10px;
  background: #ffffff;
  border-radius: .5rem;
  border: 1px solid var(--border-color-gray);
  box-sizing: border-box;
}

#search-suggester-results .search-suggester-results-item p {
  margin: 0 0 0 25.1%;
  line-height: 2rem;
}

#search-suggester-results .search-suggester-results-item-image {
  width: 25.1%;
  display: block;
  float: left;
  padding-right: 2rem;
  box-sizing: border-box;
}

#search-suggester-results .search-suggester-results-item-image img {
  max-height: 8.8rem;
}

#search-suggester-results .search-suggester-results-item-image + .search-suggester-results-item-description {
  margin-left: 25.1%;
}

#search-suggester-results .search-suggester-results-item-description {
  display: block;
}

#search-suggester-results .search-suggester-results-item-libelle {
  display: inline-block;
  margin-bottom: 7px;
  font-size: 1.7rem;
  line-height: 2.2rem;
  font-weight: 400;
  color: #004462;
}

#search-suggester-results .search-suggester-results-item .marque {
  font-size: 1.5rem;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 3px;
}

#search-suggester-results .search-suggester-results-item .label {
  font-size: 1.3rem;
  color: #004462;
}

#search-suggester-results .search-suggester-results-item .info {
  font-size: 1.4rem;
  line-height: 1em;
}

#search-suggester-results .search-suggester-results-item .message-promo-wrapper {
  margin: -1.1rem -1.1rem 1rem;
  border-radius: 5px 5px 0 0;
  overflow: hidden;
}

#search-suggester-results .search-suggester-results-item .message-promo {
  text-align: center;
}

#search-suggester-results .btn-wrapper {
  margin-top: 4rem;
  text-align: center;
}

#search-suggester-results .btn-search-all-results {
  min-width: unset;
  padding: 1.65rem 3.55rem;
  font-size: 1.8rem;
}

#search-suggester-results .link-close {
  min-width: unset;
  padding: 1.15rem 2.15rem;
  margin-top: .9rem;
  float: right;
}

#search-suggester-results .link-close::before {
  content: "\e909";
  margin-right: .95rem;
}

@media screen and (max-width: 1024px) {
  #search-suggester-results {
    width: calc(100% - 4rem);
    margin: 0 2rem;
  }
  #search-suggester-results .outer-left {
    padding-left: 3rem;
  }
  #search-suggester-results .search-all-results-list li {
    padding: 2rem 0.5rem;
  }
  #search-suggester-results .list-categ li:nth-child(n+3) {
    display: none;
  }
  #search-suggester-results .btn-wrapper {
    display: flex;
    justify-content: space-between;
  }
  #search-suggester-results .link-close {
    float: none;
  }
}

@media screen and (max-width: 768px) {
  #search-suggester-results {
    flex-direction: column;
    padding: 2.5rem 1.5rem;
    box-sizing: border-box;
    display: none;
  }
  #search-suggester-results > .titre {
    display: block;
    margin-bottom: 1.5rem;
    font-size: 2rem;
    font-weight: bold;
    text-transform: uppercase;
  }
  #search-suggester-results .outer-left {
    display: none;
  }
  #search-suggester-results .outer-right {
    padding: 0;
  }
  #search-suggester-results .left {
    display: none;
  }
  #search-suggester-results .nom-categ {
    display: none;
  }
  #search-suggester-results .search-suggester-results li {
    width: 100%;
    margin-bottom: 1.5rem;
  }
  #search-suggester-results .search-suggester-results li:nth-child(n+3) {
    display: none;
  }
  #search-suggester-results .search-suggester-results-item-libelle {
    font-size: 1.6rem;
  }
  #search-suggester-results .search-suggester-results-item .marque {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 480px) {
  #search-suggester-results .btn-wrapper {
    margin-top: 0;
    flex-direction: column;
  }
}

.header-simplifie-avec-defilement #search-suggester-results {
  margin-top: revert;
}

/*
    bloc alert "nbr panier a valider" orcab
    uniquement sur page d'accueil
*/
#toast-container-top.basket-validation {
  position: static;
  margin: 20px auto;
  width: 85%;
}

#toast-container-top.basket-validation > div {
  width: 100%;
  text-align: center;
  cursor: default;
}

#toast-container-top.basket-validation .toast-error {
  background-image: none !important;
  padding: 15px;
  border-radius: 3px 3px 3px 3px;
  box-shadow: 0 0 12px #999999;
  opacity: 0.8;
}

#toast-container-top.basket-validation .toast-error:hover {
  box-shadow: 0 0 12px #000000;
  opacity: 1;
}

#toast-container-top.basket-validation .toast-message {
  padding: 2px 0 2px 35px;
  color: #ffffff;
  text-decoration: underline;
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHOSURBVEhLrZa/SgNBEMZzh0WKCClSCKaIYOED+AAKeQQLG8HWztLCImBrYadgIdY+gIKNYkBFSwu7CAoqCgkkoGBI/E28PdbLZmeDLgzZzcx83/zZ2SSXC1j9fr+I1Hq93g2yxH4iwM1vkoBWAdxCmpzTxfkN2RcyZNaHFIkSo10+8kgxkXIURV5HGxTmFuc75B2RfQkpxHG8aAgaAFa0tAHqYFfQ7Iwe2yhODk8+J4C7yAoRTWI3w/4klGRgR4lO7Rpn9+gvMyWp+uxFh8+H+ARlgN1nJuJuQAYvNkEnwGFck18Er4q3egEc/oO+mhLdKgRyhdNFiacC0rlOCbhNVz4H9FnAYgDBvU3QIioZlJFLJtsoHYRDfiZoUyIxqCtRpVlANq0EU4dApjrtgezPFad5S19Wgjkc0hNVnuF4HjVA6C7QrSIbylB+oZe3aHgBsqlNqKYH48jXyJKMuAbiyVJ8KzaB3eRc0pg9VwQ4niFryI68qiOi3AbjwdsfnAtk0bCjTLJKr6mrD9g8iq/S/B81hguOMlQTnVyG40wAcjnmgsCNESDrjme7wfftP4P7SP4N3CJZdvzoNyGq2c/HWOXJGsvVg+RA/k2MC/wN6I2YA2Pt8GkAAAAASUVORK5CYII=) 0 0 no-repeat;
}

#toast-container-top.basket-validation .toast-message:hover {
  text-decoration: none;
}

@media screen and (max-width: 1024px) {
  #toast-container-top.basket-validation {
    width: 95%;
  }
}

@media screen and (max-width: 767px) {
  #toast-container-top.basket-validation {
    width: calc(100% - 40px);
    margin: 15px 20px;
  }
}

/*
    Message d'alerte sur toutes les pages
*/
.alertMsg .toast {
  width: 100%;
  box-sizing: border-box;
  box-shadow: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 25px;
  padding-right: 16px;
}

.alertMsg button {
  appearance: none;
  -webkit-appearance: none;
  border: none;
  background-color: #ffffff;
  color: #545454;
}

.accueil .alertMsg {
  margin: 25px;
}

/* ===================================================================
 * BOUTON HAUT DE PAGE
 * =================================================================*/
.back-to-top {
  cursor: pointer;
  position: fixed;
  right: 4%;
  bottom: 4%;
  margin-top: -20px;
}

.back-to-top .path1 {
  font-size: 4rem;
}

.back-to-top .path2, .back-to-top .path3 {
  position: absolute;
  top: 0;
  left: 0;
}

.back-to-top .path2:before, .back-to-top .path3:before {
  margin: 0;
}

/* ===================================================================
 * STYLES GENERIQUES
 * =================================================================*/
.titre-bloc-bullet, .accueil .TPL_REDACTIONEL h3, .accueil .TPL_PARTAGE h3, .TPL_COMMUNICATION .communication h2, .TPL_COMMUNICATION .communication .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_COMMUNICATION .communication h1, .TPL_COMMUNICATION .communication .fiche-adherent h1, .fiche-adherent .TPL_COMMUNICATION .communication h1, .bloc-titre-pag h2, .bloc-titre-pag .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .bloc-titre-pag h1, .bloc-titre-pag .fiche-adherent h1, .fiche-adherent .bloc-titre-pag h1,
.bloc-titre-pag .titre, .col-left .TPL_LISTE_DERNIERE_ACTUALITE h3, .ressources-associees h3, .TPL_PRODUITS_MIS_EN_AVANT > h2, .TPL_FICHE_PRODUIT .titre-produit .TPL_PRODUITS_MIS_EN_AVANT > h1, .fiche-adherent .TPL_PRODUITS_MIS_EN_AVANT > h1,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL > h2, .TPL_FICHE_PRODUIT .titre-produit .TPL_PRODUIT_CROSS_SELLING_CAROUSEL > h1, .fiche-adherent .TPL_PRODUIT_CROSS_SELLING_CAROUSEL > h1,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS > h2, .TPL_FICHE_PRODUIT .titre-produit .TPL_ORCAB_LISTE_PRODUITS_CHOISIS > h1, .fiche-adherent .TPL_ORCAB_LISTE_PRODUITS_CHOISIS > h1,
.TPL_TOP_VENTE_PRODUITS > h2, .TPL_FICHE_PRODUIT .titre-produit .TPL_TOP_VENTE_PRODUITS > h1, .fiche-adherent .TPL_TOP_VENTE_PRODUITS > h1,
.TPL_LISTE_PRODUITS_EN_PROMOTION > h2, .TPL_FICHE_PRODUIT .titre-produit .TPL_LISTE_PRODUITS_EN_PROMOTION > h1, .fiche-adherent .TPL_LISTE_PRODUITS_EN_PROMOTION > h1,
.TPL_NOUVEAUX_PRODUITS > h2, .TPL_FICHE_PRODUIT .titre-produit .TPL_NOUVEAUX_PRODUITS > h1, .fiche-adherent .TPL_NOUVEAUX_PRODUITS > h1, .TPL_BASE_DOC_ACCEUIL h2, .TPL_BASE_DOC_ACCEUIL .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_BASE_DOC_ACCEUIL h1, .TPL_BASE_DOC_ACCEUIL .fiche-adherent h1, .fiche-adherent .TPL_BASE_DOC_ACCEUIL h1, .TPL_STATISTIQUES h3, .TPL_ORCAB_FEED_ET_A_LA_UNE h2, .TPL_ORCAB_FEED_ET_A_LA_UNE .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_ORCAB_FEED_ET_A_LA_UNE h1, .TPL_ORCAB_FEED_ET_A_LA_UNE .fiche-adherent h1, .fiche-adherent .TPL_ORCAB_FEED_ET_A_LA_UNE h1 {
  color: #545454;
  font-size: 2.7rem;
  font-weight: bold;
  margin: 0 0 30px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .titre-bloc-bullet, .accueil .TPL_REDACTIONEL h3, .accueil .TPL_PARTAGE h3, .TPL_COMMUNICATION .communication h2, .TPL_COMMUNICATION .communication .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_COMMUNICATION .communication h1, .TPL_COMMUNICATION .communication .fiche-adherent h1, .fiche-adherent .TPL_COMMUNICATION .communication h1, .bloc-titre-pag h2, .bloc-titre-pag .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .bloc-titre-pag h1, .bloc-titre-pag .fiche-adherent h1, .fiche-adherent .bloc-titre-pag h1,
  .bloc-titre-pag .titre, .col-left .TPL_LISTE_DERNIERE_ACTUALITE h3, .ressources-associees h3, .TPL_PRODUITS_MIS_EN_AVANT > h2, .TPL_FICHE_PRODUIT .titre-produit .TPL_PRODUITS_MIS_EN_AVANT > h1, .fiche-adherent .TPL_PRODUITS_MIS_EN_AVANT > h1,
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL > h2, .TPL_FICHE_PRODUIT .titre-produit .TPL_PRODUIT_CROSS_SELLING_CAROUSEL > h1, .fiche-adherent .TPL_PRODUIT_CROSS_SELLING_CAROUSEL > h1,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS > h2, .TPL_FICHE_PRODUIT .titre-produit .TPL_ORCAB_LISTE_PRODUITS_CHOISIS > h1, .fiche-adherent .TPL_ORCAB_LISTE_PRODUITS_CHOISIS > h1,
  .TPL_TOP_VENTE_PRODUITS > h2, .TPL_FICHE_PRODUIT .titre-produit .TPL_TOP_VENTE_PRODUITS > h1, .fiche-adherent .TPL_TOP_VENTE_PRODUITS > h1,
  .TPL_LISTE_PRODUITS_EN_PROMOTION > h2, .TPL_FICHE_PRODUIT .titre-produit .TPL_LISTE_PRODUITS_EN_PROMOTION > h1, .fiche-adherent .TPL_LISTE_PRODUITS_EN_PROMOTION > h1,
  .TPL_NOUVEAUX_PRODUITS > h2, .TPL_FICHE_PRODUIT .titre-produit .TPL_NOUVEAUX_PRODUITS > h1, .fiche-adherent .TPL_NOUVEAUX_PRODUITS > h1, .TPL_BASE_DOC_ACCEUIL h2, .TPL_BASE_DOC_ACCEUIL .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_BASE_DOC_ACCEUIL h1, .TPL_BASE_DOC_ACCEUIL .fiche-adherent h1, .fiche-adherent .TPL_BASE_DOC_ACCEUIL h1, .TPL_STATISTIQUES h3, .TPL_ORCAB_FEED_ET_A_LA_UNE h2, .TPL_ORCAB_FEED_ET_A_LA_UNE .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_ORCAB_FEED_ET_A_LA_UNE h1, .TPL_ORCAB_FEED_ET_A_LA_UNE .fiche-adherent h1, .fiche-adherent .TPL_ORCAB_FEED_ET_A_LA_UNE h1 {
    font-size: 2rem;
    line-height: normal;
    margin: 0 0 20px;
  }
}

.titre-vert {
  color: #82aa37;
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 23px;
  text-transform: uppercase;
}

.link-edit {
  color: #82aa37;
  text-indent: -9999px;
  font-weight: normal;
  display: inline-block;
  position: relative;
}

.link-edit::before {
  content: '\f14b';
  text-indent: 0;
  position: absolute;
  top: 0;
  left: 0;
}

.link-edit:hover, .link-edit:focus, .link-edit:active {
  text-decoration: none;
}

.link-edit-bleu {
  color: #004462;
  font-weight: normal;
  display: inline-block;
  position: relative;
}

.link-edit-bleu::before {
  content: '\f040';
}

.link-edit-bleu:hover, .link-edit-bleu:focus, .link-edit-bleu:active {
  text-decoration: none;
}

.link-edit-bleu:hover span, .link-edit-bleu:focus span, .link-edit-bleu:active span {
  text-decoration: none;
}

.link-edit-bleu span {
  text-decoration: underline;
}

.date {
  color: #004462;
  font-size: 1.5rem;
}

.date span {
  color: #545454;
  font-weight: 300;
}

.quantite {
  text-align: center;
}

.quantite .qte-label {
  font-size: 1.4rem;
  color: #003160;
  margin-bottom: 4px;
  display: block;
  padding: 0;
  font-weight: normal;
}

.quantite .qte {
  border: 1px solid #c4c4c4;
  border-radius: 10px;
  height: 40px;
  line-height: 38px;
  margin-bottom: 10px;
  box-sizing: border-box;
}

.quantite .unit-only .amount {
  border: 0;
  width: 100%;
  background: #f6f6f6;
  border-radius: 10px;
}

.quantite a.minus, .quantite a.plus {
  float: left;
  width: 30%;
  position: relative;
  text-indent: -9999999px;
  outline: none;
}

.quantite a.minus.disabled, .quantite a.plus.disabled {
  visibility: hidden;
}

.quantite a.minus:hover, .quantite a.minus:active, .quantite a.plus:hover, .quantite a.plus:active {
  text-decoration: none;
}

.quantite a.minus::before, .quantite a.plus::before {
  font-size: 2rem;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  color: #82aa37;
  text-indent: 0;
}

.quantite a.minus::before {
  content: "\e919";
}

.quantite a.plus::before {
  content: "\e91a";
}

.quantite .amount {
  font-size: 1.7rem;
  color: #003160;
  font-weight: bold;
  border-width: 0 1px;
  border-radius: 0;
  border-color: #c4c4c4;
  border-style: solid;
  float: left;
  height: 38px;
  line-height: 38px;
  padding: 0;
  width: 40%;
  text-align: center;
}

.quantite .amount.non-editable {
  width: 100%;
}

.qte-etat {
  font-size: 1.4rem;
  color: #003160;
  position: relative;
  padding-left: 15px;
}

.qte-etat::before {
  content: '';
  width: 10px;
  height: 10px;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 5px;
}

.qte-etat.HAUTE::before {
  background: #82aa37;
}

.qte-etat.MOYENNE::before {
  background: #e8cf23;
}

.qte-etat.FAIBLE::before {
  background: #e05151;
}

.qte-etat .qty-stock,
.qte-etat .stock-terme {
  font-size: 1.3rem;
  margin-left: 3px;
}

.qte-etat .stock-terme {
  display: block;
}

.qte-etat .libelle {
  font-weight: 700;
  color: #545454;
}

.qte-etat--light {
  font-size: 1.3rem;
  line-height: 150%;
  font-weight: 400;
  color: #545454;
}

.pastille {
  font-size: 1.4rem;
  line-height: 1.9rem;
  font-weight: 700;
  color: #fff;
  text-align: center;
  text-transform: none;
  padding: 4px 10px;
  display: inline-block;
}

.pastille.nouvelle, .pastille.nouveau {
  background-color: #82aa37;
}

.pastille.recente, .pastille.recent {
  background-color: #e8cf23;
  color: #021B33;
}

.icon {
  display: inline-block;
  width: 24px;
  height: 24px;
  position: relative;
  font-size: 1.7rem;
  color: #004462;
  text-indent: -1000px;
  margin-right: 5px;
  margin-bottom: 5px;
  overflow: hidden;
  text-align: left;
}

.icon::before {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  left: 0;
  font-size: 20px;
  color: #868686;
  text-indent: 0;
}

.iconAUTRE::before {
  content: '\e930';
}

.iconEXCEL::before {
  content: '\e934';
}

.iconPDF::before {
  content: '\e922';
}

.iconWORD::before {
  content: '\e93c';
}

.iconPPT::before, .iconPPTX::before {
  content: '\e928';
}

.iconPNG::before {
  content: '\e90f';
}

.iconMP4::before {
  content: '\e910';
}

.titre-bouton:before, .titre-bouton:after {
  display: table;
  content: " ";
}

.titre-bouton:after {
  clear: both;
}

.titre-bouton .titre {
  float: left;
}

.titre-bouton .bouton {
  float: right;
  margin: 5px 0;
}

.btn-bloc {
  height: 50px;
  position: relative;
  margin: 5px 0 !important;
  border-radius: 5px;
}

.btn-bloc > span, .btn-bloc > a {
  font-weight: bold;
  display: inline-block;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  padding-left: 30px;
  position: relative;
}

.btn-bloc > span::before, .btn-bloc > a::before {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  left: 0;
  font-size: 25px;
}

.btn-bloc > a {
  text-decoration: none;
}

.text-intro {
  padding-bottom: 30px;
}

.hidden {
  display: none !important;
}

/* ===================================================================
 * UI RANGE SLIDER
 * =================================================================*/
.slider-prix {
  padding: 1.5rem 0;
  border-bottom: 1px solid var(--border-color-gray);
}

.slider-prix-label {
  margin-bottom: 1rem;
  color: #003160;
  font-weight: bold;
}

.slider-prix #prixRange {
  height: 4rem;
  margin-top: 1rem;
  text-align: center;
  color: #545454;
  background: #f6f6f6;
  border-color: var(--border-color-gray);
  border-radius: .8rem;
}

.flat-slider {
  border: 1px solid #868686;
  border-radius: 3px;
  width: calc(100% - 2rem);
  margin: 0 auto;
  position: relative;
  text-align: left;
  height: 0.8em;
}

.flat-slider .ui-slider-handle {
  width: 20px;
  height: 20px;
  background: #003160;
  border: none;
  cursor: pointer;
  top: 50%;
  margin-top: -10px;
  border-radius: 3px;
  margin-left: -.6em;
  position: absolute;
  z-index: 2;
  touch-action: none;
}

.flat-slider .ui-slider-handle:hover {
  opacity: .8;
}

.flat-slider .ui-slider-range {
  border: 0;
  border-radius: 7px;
  top: 0;
  background: #cecece;
  height: 100%;
  position: absolute;
  z-index: 1;
  font-size: 0.7em;
  display: block;
}

@media screen and (max-width: 1024px) {
  .slider-prix {
    padding: 0;
    border-bottom: 0;
  }
  .slider-prix-label {
    background: var(--border-color-gray);
    line-height: 1;
    padding: 1.5rem .5rem;
    text-align: left;
  }
  #prixRange {
    width: 90%;
  }
  .flat-slider {
    width: 80%;
  }
}

@media screen and (max-width: 767px) {
  .slider-prix-label {
    padding: 15px;
  }
}

.listeProduitPrixBarre,
.prixBarre {
  font-size: 1.3rem;
  text-decoration: line-through;
  margin-right: 3px;
}

.message-promo {
  color: #ffffff;
  font-size: 1.4rem;
  line-height: 1.8rem;
  font-weight: 700;
}

.message-promo .inner {
  background-color: #e05151;
  padding: 0.5rem 2rem;
}

.message-promo-fin-vie .inner {
  background-color: #545454;
}

.message-promo.DESTOCKAGE {
  color: #2B2B2B;
}

.message-promo.DESTOCKAGE .inner {
  background-color: #e8cf23;
}

.message-promo.NOUVEAUTE .inner {
  background-color: #82aa37;
}

.message-promo-recommande .inner {
  background-color: #003160;
}

.piece-jointe {
  margin-bottom: 45px;
}

.piece-jointe .titre {
  font-size: 2.2rem;
  color: #004462;
  font-weight: bold;
}

.piece-jointe .field-title,
.piece-jointe .titre {
  margin-bottom: 35px;
}

.piece-jointe .addFile {
  min-width: 200px;
  text-align: center;
  font-size: 1.4rem;
  font-weight: normal;
}

.piece-jointe .collection-plus {
  display: block;
  margin-top: 15px;
}

.piece-jointe .fichierJoints div {
  color: #004462;
  display: block;
  padding-bottom: 15px;
  border-bottom: 1px solid #c4c4c4;
  margin-bottom: 15px;
  width: 48%;
}

.piece-jointe .fichierJoints div:hover, .piece-jointe .fichierJoints div:active, .piece-jointe .fichierJoints div:focus {
  text-decoration: none;
}

.piece-jointe .fichierJoints div input {
  position: absolute;
  visibility: hidden;
}

.piece-jointe .fichierJoints div button.btn-delete-pj {
  color: #004462;
  background-color: #fff;
  border: 2px solid #004462;
  padding: 0 6px;
  font-weight: bold;
  float: right;
  width: 16px;
  height: 15px;
  position: relative;
  outline: 0 none;
}

.piece-jointe .fichierJoints div button.btn-delete-pj span {
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  height: 22px;
  font-size: 15px;
  outline: 0 none;
}

.piece-jointe .fichierJoints div label {
  display: inline-block;
  color: #004462;
}

.piece-jointe .fichierJoints div label::before {
  font-family: 'icomoon';
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  position: relative;
  bottom: -3px;
  margin-right: 10px;
  font-size: 20px;
  color: #757575;
}

.piece-jointe .fichierJoints div label.ext-doc::before, .piece-jointe .fichierJoints div label.ext-docx::before {
  content: '\e93c';
}

.piece-jointe .fichierJoints div label.ext-ppt::before, .piece-jointe .fichierJoints div label.ext-pptx::before {
  content: '\e928';
}

.piece-jointe .fichierJoints div label.ext-csv::before, .piece-jointe .fichierJoints div label.ext-xls::before, .piece-jointe .fichierJoints div label.ext-xlsx::before {
  content: '\e934';
}

.piece-jointe .fichierJoints div label.ext-pdf::before {
  content: '\e922';
}

.piece-jointe .fichierJoints div label.ext-png::before, .piece-jointe .fichierJoints div label.ext-jpg::before, .piece-jointe .fichierJoints div label.ext-jpeg::before {
  content: '\e90f';
}

.piece-jointe .fichierJoints div label.ext-txt::before {
  content: '\e936';
}

.box-type-panier {
  border: solid 1px #C3C3C3;
  border-radius: 30px;
  font-size: 13px;
  float: left;
  padding: 2px 10px 2px 30px;
  background-size: 20px auto;
  background-position: 7px center;
  background-repeat: no-repeat;
  box-sizing: border-box;
  background-color: #ffffff;
  color: #545454;
  font-weight: 400;
  line-height: 14px;
  min-height: 18px;
}

.box-type-panier--pwa {
  padding-left: 10px;
  border-color: #868686;
  background-color: #868686;
  color: #ffffff;
}

.box-tunnel-selection {
  background-color: #003160;
  font-size: 1.4rem;
  line-height: 1.8rem;
  font-weight: 700;
  color: #ffffff;
  padding: 4px 10px;
  border-radius: 30px;
}

/* ===================================================================
 * FIL ARIANE
 * =================================================================*/
.ariane {
  font-size: 1.4rem;
  color: #868686;
  margin: 1.5rem 0 1.5rem;
}

@media screen and (max-width: 767px) {
  .ariane {
    margin-top: 1rem;
  }
}

.ariane ul {
  display: flex;
  align-items: center;
}

@media (min-width: 1025px) {
  .ariane ul {
    padding: 0 60px;
  }
}

.ariane li {
  display: inline-flex;
  align-items: center;
}

.ariane li:not(:first-child)::before {
  content: "\e952";
  margin: 0 .4rem;
  font-size: .7rem;
  color: #003160;
  width: 1.4rem;
  text-align: center;
  line-height: 2.4rem;
}

.ariane li.first {
  font-size: 1.6rem;
  color: #003160;
  width: 2rem;
  justify-content: center;
}

.ariane li.first a {
  text-decoration: none;
}

.ariane li:last-child {
  color: #82aa37;
}

.ariane li:last-child a {
  text-decoration: none;
  pointer-events: none;
}

@media screen and (max-width: 767px) {
  .ariane li:last-child a {
    pointer-events: initial;
  }
}

.ariane a {
  color: inherit;
  text-decoration: underline;
}

@media screen and (max-width: 767px) {
  .ariane a {
    text-decoration: none;
  }
}

.ariane a:hover {
  text-decoration: none;
}

.ariane__btn {
  padding: 0;
  appearance: none;
  background: transparent;
  border: none;
  width: 30px;
  text-align: center;
  margin-left: -5px;
  margin-right: -2px;
  display: none;
  justify-content: center;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.84px;
}

@media screen and (max-width: 767px) {
  .ariane__btn {
    display: flex;
  }
}

.ariane__subitem {
  position: relative;
  margin-right: -3px;
}

@media screen and (max-width: 767px) {
  .ariane__list > li:not(.first) > a {
    border-bottom: 1px solid;
  }
  .ariane__list > li:not(.first) > a:hover {
    border-color: transparent;
  }
}

@media screen and (max-width: 767px) {
  .ariane .ariane__sublist {
    display: none;
    flex-direction: column;
    gap: 4px;
    align-items: flex-start;
    position: absolute;
    padding: 8px 0;
    top: 120%;
    left: 21px;
    width: 200px;
    border-radius: 4px;
    border: 1px solid #DCDDE0;
    background: #ffffff;
    box-shadow: 0 8px 24px -4px rgba(0, 0, 0, 0.12);
    z-index: 10;
  }
  .ariane .ariane__sublist.is-open {
    display: flex;
  }
  .ariane .ariane__sublist li::before {
    content: none;
  }
  .ariane .ariane__sublist a,
  .ariane .ariane__sublist li {
    width: 100%;
  }
  .ariane .ariane__sublist li a {
    padding: 6px 16px;
    text-decoration: underline;
    text-underline-offset: 6px;
  }
  .ariane .ariane__sublist li a:hover {
    text-decoration: none;
  }
  .ariane .ariane__sublist li:last-child {
    color: currentColor;
  }
}

@media screen and (max-width: 767px) {
  .ariane .inner-content > li:last-child {
    display: none;
  }
  .ariane .inner-content > li:nth-last-child(2) a {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: block;
    max-width: calc(100dvw - 265px);
  }
  .ariane .inner-content > li:nth-last-child(2) a.ariane__first-link {
    overflow: unset;
    white-space: normal;
    text-overflow: unset;
    max-width: unset;
    display: none;
    right: 0;
  }
  .ariane .inner-content > li:nth-last-child(2) a.ariane__first-link::after {
    left: 90%;
  }
  .ariane .inner-content > li:nth-last-child(2) a.ariane__first-link.is-open {
    display: block;
  }
  .ariane .inner-content > li:nth-last-child(2),
  .ariane .inner-content > li:nth-last-child(3) {
    position: relative;
  }
}

.ariane .ariane__first-link,
.ariane .ariane__second-link {
  display: none;
}

@media screen and (max-width: 767px) {
  .ariane .ariane__first-link,
  .ariane .ariane__second-link {
    position: absolute;
    top: -40px;
    width: max-content;
    max-width: 200px;
    padding: 10px;
    border-radius: 4px;
    background: #545454;
    box-shadow: 0 8px 24px -4px rgba(0, 0, 0, 0.12);
    color: #ffffff;
    font-size: 11px;
    line-height: 140%;
    z-index: 1000;
  }
  .ariane .ariane__first-link.is-open,
  .ariane .ariane__second-link.is-open {
    display: block;
  }
  .ariane .ariane__first-link::after,
  .ariane .ariane__second-link::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #545454 transparent transparent transparent;
  }
}

@media screen and (max-width: 767px) {
  .ariane .ariane__second-link {
    text-decoration: underline;
    text-underline-offset: 4px;
  }
  .ariane .ariane__second-link:hover {
    text-decoration: none;
  }
}

.ariane__first-btn, .ariane__second-btn {
  appearance: none;
  background-color: transparent;
  padding: 0;
  border: none;
  width: 100%;
  white-space: nowrap;
}

.ariane__second-btn {
  border-bottom: 1px solid;
  line-height: 24px;
}

.ariane__first-btn {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  display: block;
  max-width: calc(100dvw - 265px);
}

/* ===================================================================
 * PAGINATION
 * =================================================================*/
.paginator-nbre {
  margin: 0 0 40px;
  position: relative;
  min-height: 50px;
  clear: both;
}

.paginator-nbre .paginator {
  transform: translateX(-50%);
  left: 50%;
  position: absolute;
  padding: 8px 0;
}

@media screen and (max-width: 767px) {
  .paginator-nbre .paginator {
    width: 100%;
  }
}

.paginator-nbre .liste_produit_form_tri {
  padding: 0;
}

.paginator-nbre .liste_produit_form_tri select {
  padding: 9px 58px 9px 10px;
  min-width: 100px;
  font-size: 1.3rem;
  line-height: 1.8rem;
}

@media screen and (max-width: 767px) {
  .paginator-nbre .liste_produit_form_tri {
    padding: 60px 0 0;
    margin: 0 auto;
    text-align: center;
  }
}

.paginator {
  text-align: center;
  padding-bottom: 40px;
}

.paginator > span {
  display: inline-block;
  vertical-align: top;
}

.paginator .num a {
  color: #868686;
  font-size: 1.6rem;
  line-height: 31px;
  border-radius: 5px;
  display: block;
  width: 31px;
  height: 31px;
}

.paginator .num.active a {
  border: 1px solid #c4c4c4;
  background-color: #ffffff;
  color: #003160;
  font-weight: bold;
}

.paginator .prev a, .paginator .next a,
.paginator .first a, .paginator .last a {
  display: block;
  line-height: 30px;
  padding: 0 10px;
  position: relative;
  text-indent: -1000px;
  overflow: hidden;
  height: 30px;
}

.paginator .prev a::before, .paginator .next a::before,
.paginator .first a::before, .paginator .last a::before {
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  font-size: 16px;
  text-indent: 0;
  font-weight: bold;
  color: #003160;
}

.paginator .prev a::before {
  content: '\f104';
}

.paginator .next a::before {
  content: '\f105';
}

.paginator .first a::before {
  content: '\f100';
}

.paginator .last a::before {
  content: '\f101';
}

/* ===================================================================
 * DATEPICKER
 * =================================================================*/
.ui-datepicker {
  background-color: #ffffff;
  padding-left: 8px;
  padding-right: 8px;
  z-index: 111 !important;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  color: #ffffff;
  font-weight: bold;
  z-index: 1;
  cursor: pointer;
  text-decoration: none;
}

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  position: relative;
  top: 0;
  display: inline;
}

.ui-datepicker .ui-datepicker-prev {
  float: left;
  left: 10px;
}

.ui-datepicker .ui-datepicker-prev + .ui-datepicker-prev {
  left: 40px;
}

.ui-datepicker .ui-datepicker-next {
  float: right;
  right: 10px;
}

.ui-datepicker .ui-datepicker-next + .ui-datepicker-next {
  right: 40px;
}

.ui-datepicker table {
  box-sizing: border-box;
  table-layout: fixed;
}

.ui-datepicker-header {
  background-color: #82aa37;
  color: #ffffff;
  position: relative;
}

.ui-datepicker-title {
  position: relative;
  text-align: center;
  padding: 15px;
}

.ui-datepicker-trigger {
  width: 21px;
}

.ui-datepicker-trigger.disabled {
  pointer-events: none;
}

.ui-datepicker-calendar thead th {
  color: #004462;
  padding: 5px 10px;
}

.ui-datepicker-calendar tbody td {
  text-align: center;
}

.ui-datepicker-calendar tbody td a, .ui-datepicker-calendar tbody td span {
  display: block;
  border: 1px solid #c5c5c5;
  padding: 5px 10px;
}

.ui-datepicker-calendar tbody td a.ui-state-default, .ui-datepicker-calendar tbody td span.ui-state-default {
  background: #fff;
  color: #868686;
  text-align: center;
}

.ui-datepicker-calendar tbody td a.ui-state-highlight, .ui-datepicker-calendar tbody td a.ui-state-hover, .ui-datepicker-calendar tbody td a.ui-state-active, .ui-datepicker-calendar tbody td span.ui-state-highlight, .ui-datepicker-calendar tbody td span.ui-state-hover, .ui-datepicker-calendar tbody td span.ui-state-active {
  background: #004462;
  color: #fff;
  border-color: #c5c5c5;
}

.ui-datepicker-calendar tbody td.ui-state-disabled .ui-state-default {
  background: #ddd;
}

/* ===================================================================
 * LISTE GENERIQUE
 * =================================================================*/
.liste-generique:before, .TPL_LISTE_ACTUALITE .liste-actualite:before, .liste-generique:after, .TPL_LISTE_ACTUALITE .liste-actualite:after {
  display: table;
  content: " ";
}

.liste-generique:after, .TPL_LISTE_ACTUALITE .liste-actualite:after {
  clear: both;
}

.liste-generique .item, .TPL_LISTE_ACTUALITE .liste-actualite .item {
  min-height: 225px;
  margin-bottom: 20px;
  background-color: #ffffff;
  border-radius: 5px;
  position: relative;
}

.liste-generique .item:before, .TPL_LISTE_ACTUALITE .liste-actualite .item:before, .liste-generique .item:after, .TPL_LISTE_ACTUALITE .liste-actualite .item:after {
  display: table;
  content: " ";
}

.liste-generique .item:after, .TPL_LISTE_ACTUALITE .liste-actualite .item:after {
  clear: both;
}

.liste-generique .item .thumbnail .photos, .TPL_LISTE_ACTUALITE .liste-actualite .item .thumbnail .photos {
  width: 300px;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  border-radius: 10px 0 0 10px;
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
}

.liste-generique .item .thumbnail .photos img, .TPL_LISTE_ACTUALITE .liste-actualite .item .thumbnail .photos img {
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
}

.liste-generique .item .thumbnail .description, .TPL_LISTE_ACTUALITE .liste-actualite .item .thumbnail .description {
  width: calc(100% - 300px);
  float: right;
}

.liste-generique .item .description, .TPL_LISTE_ACTUALITE .liste-actualite .item .description {
  padding: 25px;
  box-sizing: border-box;
}

.liste-generique .item .description:before, .TPL_LISTE_ACTUALITE .liste-actualite .item .description:before, .liste-generique .item .description:after, .TPL_LISTE_ACTUALITE .liste-actualite .item .description:after {
  display: table;
  content: " ";
}

.liste-generique .item .description:after, .TPL_LISTE_ACTUALITE .liste-actualite .item .description:after {
  clear: both;
}

@media screen and (max-width: 767px) {
  .liste-generique .item .thumbnail .photos, .TPL_LISTE_ACTUALITE .liste-actualite .item .thumbnail .photos {
    width: 100%;
    height: auto;
    float: none;
    border-radius: 10px 10px 0 0;
    margin-right: 0;
    position: relative;
    text-align: center;
  }
  .liste-generique .item .thumbnail .photos img, .TPL_LISTE_ACTUALITE .liste-actualite .item .thumbnail .photos img {
    position: relative;
    top: 0;
    left: 0;
    transform: none;
  }
  .liste-generique .item .thumbnail .description, .TPL_LISTE_ACTUALITE .liste-actualite .item .thumbnail .description {
    width: 100%;
    float: none;
  }
  .liste-generique .item .thumbnail .description-mobile-nopadding, .TPL_LISTE_ACTUALITE .liste-actualite .item .thumbnail .description-mobile-nopadding {
    padding: 0 !important;
  }
}

.liste-generique .item .description h4, .TPL_LISTE_ACTUALITE .liste-actualite .item .description h4 {
  font-size: 2.1rem;
  font-weight: bold;
  margin-bottom: 0;
}

.liste-generique .item .description h4 a, .TPL_LISTE_ACTUALITE .liste-actualite .item .description h4 a {
  color: #82aa37;
  text-transform: uppercase;
}

.liste-generique .item .description .date, .TPL_LISTE_ACTUALITE .liste-actualite .item .description .date {
  margin: 0;
}

.liste-generique .item .description .resume, .TPL_LISTE_ACTUALITE .liste-actualite .item .description .resume {
  line-height: 25px;
}

.liste-generique .item .description .gauche, .TPL_LISTE_ACTUALITE .liste-actualite .item .description .gauche {
  width: 72%;
  float: left;
  box-sizing: border-box;
}

.liste-generique .item .description .droite, .TPL_LISTE_ACTUALITE .liste-actualite .item .description .droite {
  width: 28%;
  float: right;
  padding-left: 30px;
  box-sizing: border-box;
}

.liste-generique .item.repondu, .TPL_LISTE_ACTUALITE .liste-actualite .item.repondu {
  background: rgba(130, 170, 55, 0.1);
}

/* ===================================================================
 * COLONAGE
 * =================================================================*/
.cms-bloc {
  clear: both;
}

.cms-bloc.fl-l-50, .cms-bloc.fl-r-50 {
  width: 50%;
  box-sizing: border-box;
}

.cms-bloc.fl-l-33, .cms-bloc.fl-c-33, .cms-bloc.fl-r-33 {
  width: 32%;
}

.cms-bloc.fl-l-50 {
  float: left;
  clear: left;
}

.cms-bloc.fl-r-50 {
  float: right;
  clear: none;
}

.cms-bloc.fl-l {
  float: left;
  clear: none;
}

.cms-bloc.fl-r {
  float: right;
  clear: none;
}

.cms-bloc.fl-l-33 {
  float: left;
  clear: both;
  margin-right: 1%;
}

.cms-bloc.fl-c-33 {
  float: left;
  margin-right: 1%;
  margin-left: 1%;
  clear: none;
}

.cms-bloc.fl-r-33 {
  float: right;
  clear: right;
  margin-left: 1%;
}

/* ===================================================================
 * PARAGRAPHES
 * =================================================================*/
.paragraphe {
  overflow: hidden;
  position: relative;
}

.TPL_REDACTIONEL, .TPL_PARTAGE {
  margin-bottom: 90px;
}

.TPL_REDACTIONEL a, .TPL_PARTAGE a {
  color: #004462;
  text-decoration: underline;
}

.TPL_REDACTIONEL a:hover, .TPL_REDACTIONEL a:focus, .TPL_PARTAGE a:hover, .TPL_PARTAGE a:focus {
  text-decoration: none;
}

.TPL_REDACTIONEL p, .TPL_REDACTIONEL ul, .TPL_REDACTIONEL ol, .TPL_PARTAGE p, .TPL_PARTAGE ul, .TPL_PARTAGE ol {
  line-height: 25px;
  margin: 0 0 10px;
}

.TPL_REDACTIONEL ul li, .TPL_PARTAGE ul li {
  position: relative;
  list-style: none;
}

.TPL_REDACTIONEL ul li::before, .TPL_PARTAGE ul li::before {
  content: "\f111";
  font-size: 0.5rem;
  color: #82aa37;
  margin-right: 5px;
  position: relative;
  top: -3px;
}

.TPL_REDACTIONEL ul li ul, .TPL_REDACTIONEL ul li ol, .TPL_PARTAGE ul li ul, .TPL_PARTAGE ul li ol {
  margin-left: 28px;
}

.TPL_REDACTIONEL ol, .TPL_PARTAGE ol {
  counter-reset: i;
}

.TPL_REDACTIONEL ol li, .TPL_PARTAGE ol li {
  counter-increment: i;
  list-style: none;
}

.TPL_REDACTIONEL ol li::before, .TPL_PARTAGE ol li::before {
  content: counters(i, ".") ".";
  font-size: 1.1rem;
  color: #82aa37;
  margin-right: 10px;
}

.TPL_REDACTIONEL ol ol, .TPL_PARTAGE ol ol {
  margin-left: 28px;
}

.TPL_REDACTIONEL img.align-right, .TPL_PARTAGE img.align-right {
  margin: 0 0 30px 30px;
}

.TPL_REDACTIONEL img.align-left, .TPL_PARTAGE img.align-left {
  margin: 0 30px 30px 0;
}

.TPL_REDACTIONEL table, .TPL_PARTAGE table {
  border: none;
  text-align: left;
  width: 100%;
}

.TPL_REDACTIONEL table thead td, .TPL_REDACTIONEL table th, .TPL_PARTAGE table thead td, .TPL_PARTAGE table th {
  font-size: 2rem;
  color: #004462;
  font-weight: bold;
  padding: 5px 10px;
  height: 50px;
  box-sizing: border-box;
  position: relative;
  vertical-align: bottom;
}

.TPL_REDACTIONEL table thead td::after, .TPL_REDACTIONEL table th::after, .TPL_PARTAGE table thead td::after, .TPL_PARTAGE table th::after {
  content: "";
  background: #004462;
  width: 1px;
  height: 50px;
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
}

.TPL_REDACTIONEL table thead td:last-child::after, .TPL_REDACTIONEL table th:last-child::after, .TPL_PARTAGE table thead td:last-child::after, .TPL_PARTAGE table th:last-child::after {
  content: none;
}

.TPL_REDACTIONEL table td, .TPL_PARTAGE table td {
  border: none;
  font-size: 1.8rem;
  padding: 17px 10px;
  position: relative;
  vertical-align: bottom;
}

.TPL_REDACTIONEL table td::after, .TPL_PARTAGE table td::after {
  content: "";
  background: #c1c1c1;
  width: 1px;
  height: 20px;
  display: block;
  position: absolute;
  bottom: 17px;
  right: 0;
}

.TPL_REDACTIONEL table td:first-child, .TPL_PARTAGE table td:first-child {
  color: #82aa37;
}

.TPL_REDACTIONEL table td:first-child::before, .TPL_PARTAGE table td:first-child::before {
  content: "";
  background: #c1c1c1;
  width: 50px;
  height: 1px;
  display: block;
  position: absolute;
  left: 10px;
  bottom: 0;
}

.TPL_REDACTIONEL table td:last-child::after, .TPL_PARTAGE table td:last-child::after {
  content: none;
}

.TPL_REDACTIONEL table.no-border thead td::after, .TPL_REDACTIONEL table.no-border th::after, .TPL_PARTAGE table.no-border thead td::after, .TPL_PARTAGE table.no-border th::after {
  display: none;
}

.TPL_REDACTIONEL table.no-border td::after, .TPL_REDACTIONEL table.no-border td:before, .TPL_REDACTIONEL table.no-border td:first-child::before, .TPL_PARTAGE table.no-border td::after, .TPL_PARTAGE table.no-border td:before, .TPL_PARTAGE table.no-border td:first-child::before {
  display: none;
}

/* ===================================================================
 * FORMULAIRES
 * =================================================================*/
main form {
  padding-bottom: 40px;
}

label {
  color: #003160;
  padding-bottom: 5px;
  display: block;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.8rem;
}

label.required:after {
  content: '*';
  margin-left: 0.5rem;
  color: #e05151;
}

button,
input,
optgroup,
select,
textarea {
  font-family: Satoshi, sans-serif;
  font-size: inherit;
  line-height: normal;
}

button {
  cursor: pointer;
}

button:hover {
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

input[type="text"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"],
input[type="email"],
select,
textarea,
input[type="number"], input[type="text"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"] {
  box-sizing: border-box;
  border: 1px solid #868686;
  border-radius: 8px;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  font-size: 1.4rem;
  line-height: 1.7rem;
  color: #868686;
}

input[type="text"][readonly="readonly"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[readonly="readonly"][type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[readonly="readonly"][type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[readonly="readonly"][type="date"],
input[type="email"][readonly="readonly"],
select[readonly="readonly"],
textarea[readonly="readonly"],
input[type="number"][readonly="readonly"], input[type="text"][readonly="readonly"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[readonly="readonly"][type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[readonly="readonly"][type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[readonly="readonly"][type="date"] {
  color: #868686;
  opacity: 0.5;
}

input[type="text"][disabled="disabled"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[disabled="disabled"][type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[disabled="disabled"][type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[disabled="disabled"][type="date"],
input[type="email"][disabled="disabled"],
select[disabled="disabled"],
textarea[disabled="disabled"],
input[type="number"][disabled="disabled"], input[type="text"][disabled="disabled"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[disabled="disabled"][type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[disabled="disabled"][type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[disabled="disabled"][type="date"] {
  background-color: #fff;
  color: #868686;
  opacity: 0.5;
}

input[type="text"]::-moz-placeholder, .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"]::-moz-placeholder, .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"]::-moz-placeholder, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"]::-moz-placeholder,
input[type="email"]::-moz-placeholder,
select::-moz-placeholder,
textarea::-moz-placeholder,
input[type="number"]::-moz-placeholder, input[type="text"]::-moz-placeholder, .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"]::-moz-placeholder, .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"]::-moz-placeholder, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"]::-moz-placeholder {
  opacity: 1;
}

input[type="text"]:-ms-input-placeholder, .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input:-ms-input-placeholder[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input:-ms-input-placeholder[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input:-ms-input-placeholder[type="date"],
input[type="email"]:-ms-input-placeholder,
select:-ms-input-placeholder,
textarea:-ms-input-placeholder,
input[type="number"]:-ms-input-placeholder, input[type="text"]:-ms-input-placeholder, .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input:-ms-input-placeholder[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input:-ms-input-placeholder[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input:-ms-input-placeholder[type="date"] {
  color: #868686;
}

input[type="text"]:-moz-placeholder, .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input:-moz-placeholder[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input:-moz-placeholder[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input:-moz-placeholder[type="date"],
input[type="email"]:-moz-placeholder,
select:-moz-placeholder,
textarea:-moz-placeholder,
input[type="number"]:-moz-placeholder, input[type="text"]:-moz-placeholder, .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input:-moz-placeholder[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input:-moz-placeholder[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input:-moz-placeholder[type="date"] {
  color: #868686;
}

select {
  background-color: #fff;
}

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

input[type="text"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"],
input[type="email"] {
  padding: 9px 15px 9px 15px;
  font-size: 1.4rem;
  line-height: 1.7rem;
  color: #868686;
  height: 40px;
}

select, .select2-container .selection {
  text-overflow: ellipsis;
  cursor: pointer;
  font-size: 1.4rem;
  line-height: 1.7rem;
  color: #868686;
  padding: 9px 55px 9px 15px;
  height: 40px;
}

select::-ms-expand, .select2-container .selection::-ms-expand {
  display: none;
}

.select2-container .selection {
  display: block;
  box-sizing: border-box;
  background: #fff;
  border-radius: 5px;
  padding-right: 0;
}

.select2-container--default .select2-selection--single {
  border: 0;
}

.select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: #868686;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  display: none;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 32px;
  width: 225px;
}

.cms-bloc-conf select {
  width: auto;
}

textarea {
  padding: 9px 15px;
  font-size: 1.4rem;
  line-height: 1.7rem;
  color: #868686;
  height: 125px;
}

[type="checkbox"] + label {
  color: #868686;
  font-weight: normal;
}

/* Cachons la case à cocher */
[type="checkbox"]:not(:checked),
[type="checkbox"]:checked {
  position: absolute;
  visibility: hidden;
}

/* on prépare le label */
[type="checkbox"]:not(:checked) + label,
[type="checkbox"]:checked + label {
  position: relative;
  /* permet de positionner les pseudo-éléments */
  padding: 0 0 0 26px;
  /* fait un peu d'espace pour notre case à venir */
  cursor: pointer;
  /* affiche un curseur adapté */
  font-size: 15px;
  line-height: calc(12px + 4px);
  /* pour bien aligné le texte avec l'icone */
}

/* Aspect des checkboxes */
/* :before sert à créer la case à cocher */
[type="checkbox"]:not(:checked) + label:before,
[type="checkbox"]:checked + label:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 12px;
  height: 12px;
  /* dim. de la case */
  border: 2px solid #cecece;
  background: transparent;
  border-radius: 2px;
  /* angles arrondis */
}

[type="checkbox"]:checked + label:before {
  border-color: #82aa37;
}

/* Aspect général de la coche */
[type="checkbox"]:not(:checked) + label:after,
[type="checkbox"]:checked + label:after {
  content: "";
  position: absolute;
  top: -3px;
  left: -3px;
  font-size: 22px;
  color: #82aa37;
  transition: all .2s;
  /* on prévoit une animation */
}

/* Aspect si "pas cochée" */
[type="checkbox"]:not(:checked) + label:after {
  opacity: 0;
  /* coche invisible */
  transform: scale(0);
  /* mise à l'échelle à 0 */
}

/* Aspect si "cochée" */
[type="checkbox"]:checked + label:after {
  opacity: 1;
  /* coche opaque */
  transform: scale(1);
  /* mise à l'échelle 1:1 */
}

/* aspect désactivée */
[type="checkbox"]:disabled:not(:checked) + label:before,
[type="checkbox"]:disabled:checked + label:before {
  box-shadow: none;
  border-color: #bbb;
  background-color: #ddd;
}

/* styles de la coche (si cochée/désactivée) */
[type="checkbox"]:disabled:checked + label:after {
  color: #999;
}

/* on style aussi le label quand désactivé */
[type="checkbox"]:disabled + label {
  color: #aaa;
}

/* aspect au hover de l'élément */
/* Cachons la case à cocher */
.u-checkbox-parent [type="checkbox"]:not(:checked),
.u-checkbox-parent [type="checkbox"]:checked {
  position: absolute;
  visibility: hidden;
}

/* on prépare le label */
.u-checkbox-parent label:has(+ [type="checkbox"]) {
  color: #868686;
  font-weight: normal;
  position: relative;
  /* permet de positionner les pseudo-éléments */
  padding: 0 0 0 26px;
  /* fait un peu d'espace pour notre case à venir */
  cursor: pointer;
  /* affiche un curseur adapté */
  font-size: 15px;
  line-height: calc(12px + 4px);
  /* pour bien aligné le texte avec l'icone */
}

/* Aspect des checkboxes */
/* :before sert à créer la case à cocher */
.u-checkbox-parent label:has(+ [type="checkbox"]):before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 12px;
  height: 12px;
  /* dim. de la case */
  border: 2px solid #cecece;
  background: transparent;
  border-radius: 2px;
  /* angles arrondis */
}

.u-checkbox-parent label:has(+ [type="checkbox"]:checked):before {
  border-color: #82aa37;
}

/* Aspect général de la coche */
.u-checkbox-parent label:has(+ [type="checkbox"]):after {
  content: "";
  position: absolute;
  top: -3px;
  left: -3px;
  font-size: 22px;
  color: #82aa37;
  transition: all .2s;
  /* on prévoit une animation */
}

/* Aspect si "pas cochée" */
.u-checkbox-parent label:has(+ [type="checkbox"]:not(:checked)):after {
  opacity: 0;
  /* coche invisible */
  transform: scale(0);
  /* mise à l'échelle à 0 */
}

/* Aspect si "cochée" */
.u-checkbox-parent label:has(+ [type="checkbox"]:checked):after {
  opacity: 1;
  /* coche opaque */
  transform: scale(1);
  /* mise à l'échelle 1:1 */
}

/* aspect désactivée */
.u-checkbox-parent label:has(+ [type="checkbox"]:disabled:not(:checked)):before,
.u-checkbox-parent label:has(+ [type="checkbox"]:disabled:checked):before {
  box-shadow: none;
  border-color: #bbb;
  background-color: #ddd;
}

/* styles de la coche (si cochée/désactivée) */
.u-checkbox-parent label:has(+ [type="checkbox"]:disabled:checked):after {
  color: #999;
}

/* on style aussi le label quand désactivé */
.u-checkbox-parent label:has(+ [type="checkbox"]:disabled) {
  color: #aaa;
}

/* aspect au hover de l'élément */
.radio {
  margin: 0 20px 5px 0;
}

.radio .field-required, .radio .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .radio .field {
  display: inline-block;
}

.radio [type="radio"] {
  position: absolute;
  visibility: hidden;
}

.radio [type="radio"] + label {
  position: relative;
  padding: 0.9rem 1.7rem 0.9rem 3.6rem;
  background: #fff;
  border: 1px solid #868686;
  border-radius: 5px;
  font-size: 1.6rem;
  line-height: 2rem;
  font-weight: normal;
  color: #868686;
  margin: 0;
  cursor: pointer;
}

.radio [type="radio"] + label:before {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  content: '';
  position: absolute;
  left: 1rem;
  width: 1.1rem;
  height: 1.1rem;
  /* dim. de la case */
  border: 1px solid #82aa37;
  border-radius: 50%;
  /* angles arrondis */
}

.radio [type="radio"]:checked + label {
  border: 2px solid #82aa37;
  padding-top: 0.8rem;
  padding-bottom: 0.8rem;
}

.radio [type="radio"]:checked + label:before {
  background-color: #82aa37;
}

.radio [type="radio"]:disabled + label:before {
  border-color: #cecece;
}

.radio [type="radio"]:disabled:checked + label:before {
  background-color: #cecece;
}

fieldset {
  border: 0 none;
  padding: 0;
}

fieldset legend {
  font-size: 3rem;
  color: #003160;
  display: block;
  font-weight: bold;
  padding-bottom: 20px;
}

fieldset.message {
  margin-bottom: 25px;
}

.enLigne > div, .enLigne label {
  display: inline-block;
}

.enLigne label {
  margin-right: 30px;
}

.enLigne input[type="checkbox"], .enLigne input[type="radio"] {
  margin-right: 15px;
}

.enLigne label.required::after {
  content: none;
}

.enLigne .radio label {
  margin-right: 0;
}

.enLigne .radio input[type="radio"] {
  margin-right: 1rem;
}

.form-fields-wrapper.left87 {
  width: 87.95454545454545%;
  float: left;
}

@media screen and (max-width: 1024px) {
  .form-fields-wrapper.left87 {
    width: calc(75% - 15px);
  }
}

@media screen and (max-width: 767px) {
  .form-fields-wrapper.left87 {
    width: 100%;
    float: none;
  }
}

.form-field {
  padding-bottom: 25px;
}

.form-field.left50 {
  width: calc(50% - 15px);
  float: left;
}

.form-field.right50 {
  width: calc(50% - 15px);
  float: right;
}

.form-field.no-label label {
  display: none;
}

.form-field .select-wrap, .form-field .select2-container {
  display: block;
}

.form-field .select-wrap select, .form-field .select2-container select {
  width: 100%;
}

.form-field .field-required::after, .form-field .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field::after, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .form-field .field::after {
  right: 20px;
}

.form-field--light {
  padding-bottom: 0;
}

.form-check.left50 {
  width: 48%;
  float: left;
  line-height: 1rem;
}

.form-check.right50 {
  width: 48%;
  float: right;
  line-height: 1rem;
}

.form-check input[type="radio"] {
  margin-right: 15px;
}

.form-check label {
  padding-bottom: 5px;
  font-size: 1.6rem;
  display: inline-block;
}

.select-wrap, .select2-container {
  position: relative;
  display: inline-block;
}

.select-wrap::before, .select-wrap::after, .select2-container::before, .select2-container::after {
  color: #003160;
  font-size: 12px;
  text-align: center;
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  pointer-events: none;
}

.select-wrap::after, .select2-container::after {
  content: "\f078";
  right: 0;
  width: 42px;
  height: 30px;
  border-left: 1px solid #bababa;
  line-height: 30px;
}

.select-wrap select, .select2-container select {
  width: 100%;
}

.select-wrap .field-required::after, .select-wrap .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field::after, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .select-wrap .field::after, .select2-container .field-required::after, .select2-container .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field::after, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .select2-container .field::after {
  right: 70px;
}

.textarea-wrap {
  position: relative;
}

.textarea-wrap::before {
  font-size: 1.8rem;
  position: absolute;
  color: #545454;
  left: 20px;
  top: 20px;
  content: "\e923";
}

.textarea-wrap textarea {
  padding-left: 50px;
  padding-top: 12px;
}

.date-field .wrap-date {
  position: relative;
  display: block;
}

.date-field .wrap-date::after {
  border-right: 1px solid #bababa;
  display: block;
  width: 1px;
  height: 30px;
  position: absolute;
  right: 50px;
  top: 5px;
  content: '';
}

.date-field .wrap-date input {
  text-overflow: ellipsis;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
  border-radius: 5px;
  line-height: 28px;
  padding: 9px 48px 9px 15px;
  width: 100%;
  box-sizing: border-box;
}

.date-field .wrap-date img {
  position: absolute;
  right: 15px;
  top: 9px;
}

.date-field .field-required, .date-field .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .date-field .field {
  overflow: hidden;
  border-radius: 5px;
}

.date-field .field-required input, .date-field .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .date-field .field input {
  padding-right: 80px;
  border-radius: 0;
}

.date-field .field-required::after, .date-field .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field::after, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .date-field .field::after {
  right: 60px;
}

.date-field.rechercheFacetteProduit-optionGroup .rechercheFacetteProduit-optionGroup > label {
  border-bottom: 0 !important;
}

.date-field.rechercheFacetteProduit-optionGroup .ui-datepicker-trigger {
  top: inherit;
  bottom: 10px;
}

.date-field.rechercheFacetteProduit-optionGroup .wrap-date:after {
  top: inherit;
  bottom: 5px;
}

.form-submit {
  text-align: center;
  clear: both;
}

.form-submit.right10 {
  width: 10.90909090909091%;
  float: right;
}

@media screen and (max-width: 1024px) {
  .form-submit.right10 {
    width: calc(25% - 15px);
  }
}

@media screen and (max-width: 767px) {
  .form-submit.right10 {
    width: 100%;
    float: none;
  }
}

.form-notice {
  padding-bottom: 20px;
}

.form-notice span {
  color: #c33a27;
  font-weight: bold;
}

.no-label label {
  display: none;
}

.form-error {
  color: #e05151;
}

.form-success {
  color: #003160;
  font-weight: bold;
}

/*
    groupe de boutons multiples sur la meme ligne
    e.x : page creer panier
*/
.form-btn-group:before, .form-btn-group:after {
  display: table;
  content: " ";
}

.form-btn-group:after {
  clear: both;
}

.form-btn-group li {
  display: inline-block;
  margin-right: 15px;
  vertical-align: top;
}

.form-btn-group li:last-child {
  margin-right: 0;
}

.c-switch {
  position: relative;
  min-height: 24px;
  display: inline-flex;
  align-items: center;
}

.c-switch__input {
  opacity: 0;
  visibility: visible !important;
  z-index: 1;
  height: 100%;
}

.c-switch__label {
  padding-left: 58px;
  padding-bottom: 0;
  color: #868686;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: normal;
}

.c-switch__label::before, .c-switch__label::after {
  content: none !important;
}

.c-switch__slider, .c-switch__input {
  width: 48px;
}

.c-switch__slider {
  position: absolute;
  cursor: pointer;
  transform: translateY(-50%);
  top: 50%;
  left: 0;
  right: 0;
  background-color: #868686;
  -webkit-transition: .4s;
  transition: .4s;
  border-radius: 34px;
  height: 24px;
}

.c-switch__slider:before {
  position: absolute;
  content: "";
  height: 18px;
  width: 18px;
  left: 3px;
  bottom: 3px;
  background-color: #ffffff;
  -webkit-transition: .4s;
  transition: .4s;
  border-radius: 50%;
}

.c-switch__input:checked + .c-switch__slider {
  background-color: #82aa37;
}

.c-switch__input:checked + .c-switch__slider:before {
  -webkit-transform: translateX(24px);
  -ms-transform: translateX(24px);
  transform: translateX(24px);
}

@media screen and (max-width: 767px) {
  .c-switch--vertical-sm .c-switch__input {
    top: 0;
  }
  .c-switch--vertical-sm .c-switch__label {
    padding-top: 28px;
    padding-left: 0;
  }
  .c-switch--vertical-sm .c-switch__slider {
    transform: translateY(0);
    top: 0;
  }
}

@media screen and (max-width: 767px) {
  /* ===================================================================
    * FORMULAIRES
    * =================================================================*/
  .form-field.left50, .form-field.right50,
  .form-check.left50,
  .form-check.right50 {
    width: 100%;
    float: none;
  }
  .enLigne label {
    margin-right: 0;
  }
  .enLigne input[type="radio"] + label::after,
  .enLigne .field-required + label::after,
  .enLigne .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field + label::after,
  .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .enLigne .field + label::after {
    content: '';
    display: block;
  }
  .enLigne .radio {
    display: inline-block;
  }
}

/* ===================================================================
 * COLONNE GAUCHE
 * =================================================================*/
.col-left h3, .col-left .h3,
.TPL_RECHERCHE_FACETTE_PRODUIT h3,
.TPL_RECHERCHE_FACETTE_PRODUIT .h3,
.TPL_RECHERCHE_FACETTE_DOCUMENT h3,
.TPL_RECHERCHE_FACETTE_DOCUMENT .h3,
.TPL_RECHERCHE_ACTUALITE h3,
.TPL_RECHERCHE_ACTUALITE .h3,
.TPL_RECHERCHE_FACETTE_TYPEFORM h3,
.TPL_RECHERCHE_FACETTE_TYPEFORM .h3 {
  color: #003160;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 2rem;
  margin-bottom: 2rem;
  position: relative;
}

.col-left h3 a, .col-left .h3 a,
.TPL_RECHERCHE_FACETTE_PRODUIT h3 a,
.TPL_RECHERCHE_FACETTE_PRODUIT .h3 a,
.TPL_RECHERCHE_FACETTE_DOCUMENT h3 a,
.TPL_RECHERCHE_FACETTE_DOCUMENT .h3 a,
.TPL_RECHERCHE_ACTUALITE h3 a,
.TPL_RECHERCHE_ACTUALITE .h3 a,
.TPL_RECHERCHE_FACETTE_TYPEFORM h3 a,
.TPL_RECHERCHE_FACETTE_TYPEFORM .h3 a {
  color: #003160;
}

.col-left .menu-col,
.TPL_RECHERCHE_FACETTE_PRODUIT .menu-col,
.TPL_RECHERCHE_FACETTE_DOCUMENT .menu-col,
.TPL_RECHERCHE_ACTUALITE .menu-col,
.TPL_RECHERCHE_FACETTE_TYPEFORM .menu-col {
  padding: 3rem 3rem 3rem 3.5rem;
  background: #fff;
  border-radius: 0 5px 5px 0;
}

.col-left .menu-col a.current-parent,
.TPL_RECHERCHE_FACETTE_PRODUIT .menu-col a.current-parent,
.TPL_RECHERCHE_FACETTE_DOCUMENT .menu-col a.current-parent,
.TPL_RECHERCHE_ACTUALITE .menu-col a.current-parent,
.TPL_RECHERCHE_FACETTE_TYPEFORM .menu-col a.current-parent {
  position: relative;
  padding-left: 25px;
}

.col-left .menu-col a.current-parent::after,
.TPL_RECHERCHE_FACETTE_PRODUIT .menu-col a.current-parent::after,
.TPL_RECHERCHE_FACETTE_DOCUMENT .menu-col a.current-parent::after,
.TPL_RECHERCHE_ACTUALITE .menu-col a.current-parent::after,
.TPL_RECHERCHE_FACETTE_TYPEFORM .menu-col a.current-parent::after {
  content: "\e919";
  font-size: 2rem;
  color: #00b1ff;
  line-height: 21px;
  position: absolute;
  left: 0;
  top: 7px;
}

.col-left .menu-col a.current-parent.slideUp,
.TPL_RECHERCHE_FACETTE_PRODUIT .menu-col a.current-parent.slideUp,
.TPL_RECHERCHE_FACETTE_DOCUMENT .menu-col a.current-parent.slideUp,
.TPL_RECHERCHE_ACTUALITE .menu-col a.current-parent.slideUp,
.TPL_RECHERCHE_FACETTE_TYPEFORM .menu-col a.current-parent.slideUp {
  padding-left: 23px;
}

.col-left .menu-col a.current-parent.slideUp::after,
.TPL_RECHERCHE_FACETTE_PRODUIT .menu-col a.current-parent.slideUp::after,
.TPL_RECHERCHE_FACETTE_DOCUMENT .menu-col a.current-parent.slideUp::after,
.TPL_RECHERCHE_ACTUALITE .menu-col a.current-parent.slideUp::after,
.TPL_RECHERCHE_FACETTE_TYPEFORM .menu-col a.current-parent.slideUp::after {
  content: "\e91a";
}

@media screen and (max-width: 1024px) {
  .col-left .menu-col,
  .TPL_RECHERCHE_FACETTE_PRODUIT .menu-col,
  .TPL_RECHERCHE_FACETTE_DOCUMENT .menu-col,
  .TPL_RECHERCHE_ACTUALITE .menu-col,
  .TPL_RECHERCHE_FACETTE_TYPEFORM .menu-col {
    padding: 0;
    background: none;
    margin-bottom: 20px;
  }
}

.menu-secondaire {
  --border-color-gray: #e9e9e9;
  font-size: 1.6rem;
  margin-bottom: 35px;
}

.menu-secondaire a {
  display: block;
}

.menu-secondaire a:hover {
  text-decoration: none;
}

.menu-secondaire span.pageNonAccessible {
  display: block;
  cursor: initial;
}

.menu-secondaire .niv1 {
  font-size: 0.875em;
  border-top: 1px solid var(--border-color-gray);
  margin-bottom: 10px;
}

.menu-secondaire .niv1 li {
  position: relative;
}

.menu-secondaire .nav0 {
  color: #003160;
  font-weight: bold;
  font-size: 1em;
  text-transform: uppercase;
  position: relative;
  cursor: pointer;
}

.menu-secondaire .nav0 .hasChild {
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.menu-secondaire .nav0::after {
  content: none;
}

.menu-secondaire .nav0 .openChild {
  color: #00b1ff;
  line-height: 21px;
  position: absolute;
  left: 0;
  top: 2px;
  display: block;
}

.menu-secondaire .nav0 .openChild::after {
  content: "\e919";
  font-size: 2rem;
}

.menu-secondaire .nav0 .openChild.slideUp::after {
  content: "\e91a";
}

.menu-secondaire .nav1 {
  text-transform: none;
  font-weight: normal;
}

.menu-secondaire .nav1 > a {
  color: #003160;
  padding: 1rem 0;
  border-bottom: 1px solid var(--border-color-gray);
}

.menu-secondaire .nav1 > a:hover, .menu-secondaire .nav1 > a:focus {
  color: #82aa37;
}

.menu-secondaire .nav1 > span.pageNonAccessible {
  color: #003160;
  padding: 1rem 0;
  border-bottom: 1px solid var(--border-color-gray);
}

.menu-secondaire .nav1.selected > a,
.menu-secondaire .nav1.selected > span {
  padding: 1rem .5rem;
  background: #f6f6f6;
  font-weight: 700;
}

.menu-secondaire .nav1.selected > .openChild {
  top: 1px;
}

.menu-secondaire .nav1:not(.selected) > .openChild {
  top: 13px;
}

.menu-secondaire .nav1 .openChild {
  top: 7px;
  left: 1px;
  padding: 0 .5rem;
}

.menu-secondaire .nav2 > a {
  font-size: 0.938em;
  padding: 8px 0 8px 25px;
  border-bottom: 1px solid var(--border-color-gray);
}

.menu-secondaire .nav2 > a:hover, .menu-secondaire .nav2 > a:focus {
  color: #003160;
}

.menu-secondaire .nav2 > span.pageNonAccessible {
  font-size: 0.938em;
  padding: 8px 0 8px 25px;
  border-bottom: 1px solid var(--border-color-gray);
}

.menu-secondaire .nav2.selected > a,
.menu-secondaire .nav2.selected > span.pageNonAccessible {
  color: #003160;
  font-weight: 700;
}

.menu-secondaire .nav2:last-child {
  border-bottom: 0;
}

.menu-secondaire .nav3, .menu-secondaire .nav4, .menu-secondaire .nav5, .menu-secondaire .nav6 {
  margin-left: 8px;
}

.menu-secondaire .nav3 > a, .menu-secondaire .nav4 > a, .menu-secondaire .nav5 > a, .menu-secondaire .nav6 > a {
  font-size: 0.938em;
  padding: 8px 0 8px 31px;
  border-bottom: 1px solid var(--border-color-gray);
}

.menu-secondaire .nav3 > a:hover, .menu-secondaire .nav3 > a:focus, .menu-secondaire .nav4 > a:hover, .menu-secondaire .nav4 > a:focus, .menu-secondaire .nav5 > a:hover, .menu-secondaire .nav5 > a:focus, .menu-secondaire .nav6 > a:hover, .menu-secondaire .nav6 > a:focus {
  color: #003160;
}

.menu-secondaire .nav3 > span.pageNonAccessible, .menu-secondaire .nav4 > span.pageNonAccessible, .menu-secondaire .nav5 > span.pageNonAccessible, .menu-secondaire .nav6 > span.pageNonAccessible {
  font-size: 0.938em;
  padding: 8px 0 8px 31px;
  border-bottom: 1px solid var(--border-color-gray);
}

.menu-secondaire .nav3.selected > a,
.menu-secondaire .nav3.selected > span, .menu-secondaire .nav4.selected > a,
.menu-secondaire .nav4.selected > span, .menu-secondaire .nav5.selected > a,
.menu-secondaire .nav5.selected > span, .menu-secondaire .nav6.selected > a,
.menu-secondaire .nav6.selected > span {
  color: #003160;
  font-weight: 700;
}

.menu-secondaire.menu-compte .niveau {
  margin-bottom: 40px;
}

.menu-secondaire.menu-compte .niveau ul {
  display: none;
}

.menu-secondaire.menu-categorie-liste .nav0 ul {
  display: none;
}

.menu-secondaire.base-doc-side-menu .nav0 .niv1 ul {
  display: none;
}

.menu-secondaire.base-doc-side-menu .nav1.parent.selected > ul,
.menu-secondaire.base-doc-side-menu .nav2.parent.selected > ul,
.menu-secondaire.base-doc-side-menu .nav3.parent.selected > ul {
  display: block;
}

/** A enlever si permettre le filtre sur la date des actualites */
.TPL_RECHERCHE_ACTUALITE .recherche-facette-produit {
  display: none;
}

/* ===================================================================
 * MENU SECONDAIRE : LISTE DES CATEGORIE
 * =================================================================*/
.menu-category {
  --border-color-gray: #e9e9e9;
  margin-bottom: 3rem;
  padding: 3rem 3rem 3rem 3.5rem;
  background: #fff;
  border-radius: 0 5px 5px 0;
}

.menu-category h3 {
  margin-bottom: 1.4rem;
}

.menu-category h3 a {
  position: relative;
  padding-left: 2.7rem;
  text-decoration: none;
}

.menu-category h3 a::before {
  content: "\e951";
  font-size: .8rem;
  position: absolute;
  left: 0;
  top: .8rem;
}

.menu-category li {
  font-size: 1.4rem;
  border-top: 1px solid var(--border-color-gray);
}

.menu-category li a {
  display: block;
  padding: 1rem 2.7rem;
  color: #003160;
  text-decoration: none;
}

.menu-category li a span {
  color: #868686;
}

.menu-category li a:hover {
  color: #82aa37;
}

.menu-category li a.active {
  background: #f6f6f6;
  font-weight: 900;
}

.menu-category li a.active span {
  color: #003160;
}

.menu-category li.selected a {
  background: #f6f6f6;
  font-weight: 700;
}

.menu-category.niv1 h3 a {
  padding: 0;
  pointer-events: none;
}

.menu-category.niv1 h3 a::before {
  content: none;
}

.menu-category.niv1 li a {
  padding: 1rem 0;
}

.menu-category.niv1 li a.active {
  padding: 1rem .5rem;
}

@media screen and (max-width: 767px) {
  .menu-category.niv1 li a {
    padding: 1rem;
  }
  .menu-category.niv1 li a.active {
    padding: 1rem 1.5rem;
  }
}

.menu-category.niv1 li.selected a {
  padding: 1rem .5rem;
}

/* ===================================================================
 * FILTRES : FACETTES COL GAUCHE
 * =================================================================*/
.recherche-facette-produit {
  --border-color-gray: #e9e9e9;
  padding: 0;
}

@media (min-width: 1025px) {
  .recherche-facette-produit {
    margin-bottom: 35px;
  }
  .recherche-facette-produit .facette-wrapper {
    position: relative;
  }
  .recherche-facette-produit .facette-wrapper h3 {
    text-transform: none;
    margin-bottom: 1.5rem;
    padding: 0;
    pointer-events: none;
    line-height: 1.5;
  }
  .recherche-facette-produit .facette-wrapper h3::after {
    content: none;
  }
}

@media (min-width: 1500px) {
  .recherche-facette-produit .filtre-decocher {
    position: absolute;
    top: 0;
    right: 0;
  }
}

.recherche-facette-produit .facette {
  font-size: 1.4rem;
}

.recherche-facette-produit .facette .rechercheFacetteProduit-optionGroup > label,
.recherche-facette-produit .facette .rechercheFacetteProduit-optionGroup .rechercheFacetteProduit-option {
  border-bottom: 1px solid var(--border-color-gray);
  padding: 12px 0;
  display: flex;
  align-items: center;
}

.recherche-facette-produit .facette .rechercheFacetteProduit-optionGroup > label-nb-produit,
.recherche-facette-produit .facette .rechercheFacetteProduit-optionGroup .rechercheFacetteProduit-option-nb-produit {
  margin: 0 1rem 0 .5rem;
  color: #868686;
}

.recherche-facette-produit .facette .rechercheFacetteProduit-optionGroup > label:has(.recherche-facette-produit__img),
.recherche-facette-produit .facette .rechercheFacetteProduit-optionGroup .rechercheFacetteProduit-option:has(.recherche-facette-produit__img) {
  padding-top: 5px;
  padding-bottom: 5px;
  display: flex;
  align-items: center;
}

.recherche-facette-produit .facette .rechercheFacetteProduit-optionGroup > label {
  color: #003160;
  font-weight: 500;
  padding: 10px 0;
}

.recherche-facette-produit .recherche_facette_produit_form {
  padding-bottom: 0;
}

.recherche-facette-produit .recherche_facettes {
  max-height: 20rem;
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-width: thin;
}

.recherche-facette-produit .recherche_facettes::-webkit-scrollbar {
  width: 9px;
  height: 9px;
  background: #F0F0F0;
}

.recherche-facette-produit .recherche_facettes::-webkit-scrollbar-thumb {
  background: #CDCDCD;
}

.recherche-facette-produit .recherche_facettes:has(.c-switch) {
  padding-bottom: 12px;
  border-bottom: 1px solid var(--border-color-gray);
}

.recherche-facette-produit .recherche_facettes:has(.c-switch) .rechercheFacetteProduit-option {
  padding-bottom: 0;
  border: 0;
}

.recherche-facette-produit .recherche_facettes:has(.c-switch):has(.c-tooltip) {
  overflow: visible;
  max-height: initial;
}

.recherche-facette-produit .recherche_facettes:has(.c-switch):has(.c-tooltip) .rechercheFacetteProduit-option-nb-produit {
  display: flex;
  align-items: center;
}

.recherche-facette-produit__search input {
  border: 1px solid #cecece;
}

.recherche-facette-produit__img {
  position: absolute;
  width: 50px;
  aspect-ratio: 1;
  display: block;
  left: 0;
  object-fit: cover;
}

@media screen and (max-width: 767px) {
  .recherche-facette-produit__img {
    left: 15px;
  }
}

.recherche-facette-produit .rechercheFacetteProduit-option:has(.recherche-facette-produit__img) {
  position: relative;
}

.recherche-facette-produit .rechercheFacetteProduit-option:has(.recherche-facette-produit__img) label {
  padding-left: 60px;
  min-height: 50px;
  align-content: center;
}

.recherche-facette-produit .rechercheFacetteProduit-option:has(.recherche-facette-produit__img) input:not(:checked) + label::before {
  opacity: 0;
}

.recherche-facette-produit .rechercheFacetteProduit-option:has(.recherche-facette-produit__img) label::before {
  width: 50px;
  height: 50px;
  box-sizing: border-box;
}

.recherche-facette-produit .rechercheFacetteProduit-option:has(.recherche-facette-produit__img) label::after {
  font-size: 40px;
  top: 5px;
  left: 5px;
}

.recherche-facette-produit__search {
  padding-bottom: 5px;
  border-bottom: 1px solid var(--border-color-gray);
}

@media screen and (max-width: 767px) {
  .recherche-facette-produit__search {
    padding: 5px 15px;
  }
}

.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required, .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field {
  margin: 0 0 15px;
}

.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required::after, .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field::after, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field::after {
  right: 20%;
}

.recherche-facette-produit .rechercheFacetteProduit-option label {
  display: block;
}

.recherche-facette-produit input.datepickerField {
  border-color: #c4c4c4;
  border-radius: 5px;
}

.facette-wrapper h3.mobile-style.slideUp:after, .facette-wrapper h3.mobile-style:not(.slideUp):after {
  font-size: 0.882em;
  margin-left: 10px;
  display: none;
}

.facette-wrapper .filtre-decocher {
  color: #82aa37;
  margin-bottom: 15px;
  display: block;
  text-decoration: underline;
}

.facette-wrapper .rechercheFacetteProduit-optionGroup {
  position: relative;
}

.facette-wrapper .rechercheFacetteProduit-optionGroup > label,
.facette-wrapper .rechercheFacetteProduit-optionGroup .rechercheFacetteProduit-option {
  padding: 10px 0;
}

.facette-wrapper .rechercheFacetteProduit-optionGroup > label {
  color: #004462;
}

.recherche_facette_produit_form .rechercheFacetteProduit-optionGroup > label {
  position: relative;
  padding-right: 20px;
  color: #003160;
}

.recherche_facette_produit_form .rechercheFacetteProduit-optionGroup > label:hover {
  cursor: pointer;
}

.recherche_facette_produit_form .rechercheFacetteProduit-optionGroup > label::after {
  content: "\f107";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  color: inherit;
}

.recherche_facette_produit_form .rechercheFacetteProduit-optionGroup > label.slideDown::after {
  content: "\f106";
}

.recherche_facette_produit_form .rechercheFacetteProduit-optionGroup .recherche-facette-produit__search, .recherche_facette_produit_form .rechercheFacetteProduit-optionGroup .recherche_facettes {
  display: none;
}

.recherche_facette_produit_form .rechercheFacetteProduit-optionGroup:has(.recherche-facette-produit__search) > label {
  border: none;
}

.recherche-facette-gauche {
  position: relative;
  margin: 0 0 18px;
}

.recherche-facette-gauche input {
  color: #004462;
  font-weight: bold;
  padding: 10px 65px 10px 20px;
}

.recherche-facette-gauche button {
  background: #82aa37;
  border: none;
  border-radius: 0 8px 8px 0;
  width: 54px;
  height: 40px;
  position: absolute;
  right: 0;
  top: 0;
}

.recherche-facette-gauche button::before {
  content: "\e915";
  font-size: 2rem;
  color: #fff;
  line-height: 40px;
}

.recherche-facette-gauche button span {
  display: none;
}

.form-recherche .recherche-facette-gauche > div:nth-child(1) {
  width: 100%;
}

@media screen and (max-width: 1024px) {
  .recherche-facette-gauche,
  .recherche_facette_produit_form .wrap-date input {
    margin: 1rem 0.5rem 2rem;
    width: calc(100% - 1rem);
  }
}

@media screen and (max-width: 767px) {
  .recherche-facette-gauche,
  .recherche_facette_produit_form .wrap-date input {
    margin: 1rem 0 2rem;
  }
}

@media screen and (max-width: 1024px) {
  .facette-wrapper {
    border-radius: 5px;
    display: inline-block;
    margin-right: 5px;
  }
  .facette-wrapper > h3 {
    background: #82aa37;
    font-size: 1.7rem;
    color: #fff;
    min-height: 40px;
    width: 170px;
    text-align: center;
    margin: 0;
    line-height: 40px;
    border-radius: 5px;
    cursor: pointer;
  }
  .facette-wrapper > h3.mobile-style:not(.slideUp):after {
    content: '\f106';
    display: inline-block;
  }
  .facette-wrapper > h3.mobile-style.slideUp:after {
    display: inline-block;
    content: "\f107";
  }
  .facette-wrapper > h3.slideUp {
    border-radius: 5px;
  }
  .facette-wrapper h3 {
    padding: 0 1.5rem;
  }
  .facette-wrapper .filtre-decocher {
    margin: 1rem .5rem;
  }
  .facette-wrapper .facette {
    display: none;
    max-width: 168px;
    position: absolute;
    z-index: 3;
    border: 1px solid #82aa37;
    border-radius: 0 0 5px 5px;
    background: #fff;
    text-align: center;
    padding-bottom: 2rem;
  }
  .facette-wrapper .facette .rechercheFacetteProduit-optionGroup {
    text-align: left;
  }
  .facette-wrapper .facette .rechercheFacetteProduit-optionGroup > label {
    color: #333333;
    background: var(--border-color-gray);
    font-weight: 700;
    line-height: 1;
    padding-left: .5rem;
  }
  .facette-wrapper .facette .rechercheFacetteProduit-optionGroup > label::after {
    right: .8rem !important;
  }
  .facette-wrapper .facette .rechercheFacetteProduit-optionGroup .rechercheFacetteProduit-option {
    padding: 1rem .5rem;
    border: 0;
  }
  .facette-wrapper .facette .rechercheFacetteProduit-optionGroup .recherche_facettes {
    padding: 10px 0;
  }
}

@media screen and (max-width: 767px) {
  .facette-wrapper {
    width: 100%;
    border-radius: 0 0 5px 5px;
  }
  .facette-wrapper h3 {
    width: 100%;
    position: relative;
    box-sizing: border-box;
  }
  .facette-wrapper h3.mobile-style.slideUp:after, .facette-wrapper h3.mobile-style:not(.slideUp):after {
    font-size: 2rem;
    position: absolute;
    right: 15px;
  }
  .facette-wrapper .facette {
    border-width: 5px;
    box-sizing: border-box;
    max-width: inherit;
    width: calc(100% + 1.2rem);
  }
  .facette-wrapper .facette .rechercheFacetteProduit-optionGroup > label {
    padding: 15px;
  }
  .facette-wrapper .facette .rechercheFacetteProduit-optionGroup > label::after {
    right: 1.5rem !important;
  }
  .facette-wrapper .facette .rechercheFacetteProduit-optionGroup .rechercheFacetteProduit-option {
    padding: 1rem 1.5rem;
  }
  .recherche-facette-produit {
    width: 100%;
  }
  .recherche-facette-produit .recherche_facettes {
    max-height: 21rem;
  }
}

/* ===================================================================
 * FILTRES : LISTE DES FITRES SELECTIONNES
 * =================================================================*/
.filter-list-selected {
  --border-color-gray: #e9e9e9;
  display: flex;
  flex-wrap: wrap;
  margin: 1rem -.6rem 0 -.6rem;
  /*.filter-tooltip {
    position: relative;
    .filter-tooltip-text {
      visibility: hidden;
      width: auto;
      background-color: $bleuOrcab;
      color: $blanc;
      text-align: center;
      border-radius: 5px;
      padding: 1rem;
      font-size: 1.3rem;
      line-height: 1.5rem;
      top: 105%;

      position: absolute;
      z-index: 1;
    }
    &:hover {
      .filter-tooltip-text {
        visibility: visible;
      }
    }
  }*/
}

.filter-list-selected li {
  padding: 0 .6rem;
  margin-bottom: 1rem;
}

.filter-list-selected .btn {
  display: inline-flex;
  align-items: center;
  padding: 1rem 1.9rem;
  color: #868686;
  font-size: 1.3rem;
  line-height: 1.8rem;
  background: #ffffff;
  border: 1px solid #e9e9e9;
  border-radius: .5rem;
  pointer-events: none;
}

.filter-list-selected .btn:hover {
  background: #fbfbfb;
}

.filter-list-selected .btn .icomoon, .filter-list-selected .btn #toast-container .toast-message::after, #toast-container .filter-list-selected .btn .toast-message::after, .filter-list-selected .btn #bandeau-haut .top-header .right .btn::before, #bandeau-haut .top-header .right .filter-list-selected .btn .btn::before, .filter-list-selected .btn #bandeau-haut .show-tablet .btn:before, #bandeau-haut .show-tablet .filter-list-selected .btn .btn:before, .filter-list-selected .btn #bandeau-haut .recherche-header button::before, #bandeau-haut .recherche-header .filter-list-selected .btn button::before, .filter-list-selected .btn #mini-panier .panier-detail-item .btn-icon-delete::before, #mini-panier .panier-detail-item .filter-list-selected .btn .btn-icon-delete::before, .filter-list-selected .btn .menu .menu-style-mobile::before, .menu .filter-list-selected .btn .menu-style-mobile::before,
.filter-list-selected .btn .menu .mm-close::before, .menu .filter-list-selected .btn .mm-close::before, .filter-list-selected .btn .mm-menu .menu-style-mobile::before, .mm-menu .filter-list-selected .btn .menu-style-mobile::before,
.filter-list-selected .btn .mm-menu .mm-close::before, .mm-menu .filter-list-selected .btn .mm-close::before, .filter-list-selected .btn .menu .mm-navbars-top .mm-title::before, .menu .mm-navbars-top .filter-list-selected .btn .mm-title::before, .filter-list-selected .btn .mm-menu .mm-navbars-top .mm-title::before, .mm-menu .mm-navbars-top .filter-list-selected .btn .mm-title::before, .filter-list-selected .btn #menuMobile .menu-niv .link:after, #menuMobile .menu-niv .filter-list-selected .btn .link:after, .filter-list-selected .btn #search-suggester-results .search-all-results::before, #search-suggester-results .filter-list-selected .btn .search-all-results::before, .filter-list-selected .btn #search-suggester-results .link-close::before, #search-suggester-results .filter-list-selected .btn .link-close::before, .filter-list-selected .btn .quantite a.minus::before, .quantite .filter-list-selected .btn a.minus::before, .filter-list-selected .btn .quantite a.plus::before, .quantite .filter-list-selected .btn a.plus::before, .filter-list-selected .btn .icon::before, .filter-list-selected .btn .btn-bloc > span::before, .filter-list-selected .btn .btn-bloc > a::before, .filter-list-selected .btn .ariane li:not(:first-child)::before, .ariane .filter-list-selected .btn li:not(:first-child)::before, .filter-list-selected .btn [type="checkbox"]:not(:checked) + label:after,
.filter-list-selected .btn [type="checkbox"]:checked + label:after, .filter-list-selected .btn .u-checkbox-parent label:has(+ [type="checkbox"]):after, .u-checkbox-parent .filter-list-selected .btn label:has(+ [type="checkbox"]):after, .filter-list-selected .btn .textarea-wrap::before, .filter-list-selected .btn .col-left .menu-col a.current-parent::after, .col-left .menu-col .filter-list-selected .btn a.current-parent::after,
.filter-list-selected .btn .TPL_RECHERCHE_FACETTE_PRODUIT .menu-col a.current-parent::after, .TPL_RECHERCHE_FACETTE_PRODUIT .menu-col .filter-list-selected .btn a.current-parent::after,
.filter-list-selected .btn .TPL_RECHERCHE_FACETTE_DOCUMENT .menu-col a.current-parent::after, .TPL_RECHERCHE_FACETTE_DOCUMENT .menu-col .filter-list-selected .btn a.current-parent::after,
.filter-list-selected .btn .TPL_RECHERCHE_ACTUALITE .menu-col a.current-parent::after, .TPL_RECHERCHE_ACTUALITE .menu-col .filter-list-selected .btn a.current-parent::after,
.filter-list-selected .btn .TPL_RECHERCHE_FACETTE_TYPEFORM .menu-col a.current-parent::after, .TPL_RECHERCHE_FACETTE_TYPEFORM .menu-col .filter-list-selected .btn a.current-parent::after, .filter-list-selected .btn .menu-secondaire .nav0 .openChild::after, .menu-secondaire .nav0 .filter-list-selected .btn .openChild::after, .filter-list-selected .btn .menu-category h3 a::before, .menu-category h3 .filter-list-selected .btn a::before, .filter-list-selected .btn .recherche-facette-gauche button::before, .recherche-facette-gauche .filter-list-selected .btn button::before, .filter-list-selected .btn .bouton-rechercher span::before, .bouton-rechercher .filter-list-selected .btn span::before, .filter-list-selected .btn .btn-ajouter-au-panier::before,
.filter-list-selected .btn .btn-liste-achat-activate::before, .filter-list-selected .btn .btn-liste-achat-actif::before, .filter-list-selected .btn .btn-export::before, .filter-list-selected .btn .bouton-creer-panier a::after, .bouton-creer-panier .filter-list-selected .btn a::after, .filter-list-selected .btn .btn-panier-actif::before,
.filter-list-selected .btn .btn-definir-panier-actif::before,
.filter-list-selected .btn .btn-valider-panier::before,
.filter-list-selected .btn .btn-modifier-panier::before,
.filter-list-selected .btn .btn-refuser-panier::before,
.filter-list-selected .btn .btn-dupliquer-liste-achat::before,
.filter-list-selected .btn .btn-supprimer-liste-achat::before,
.filter-list-selected .btn .btn-generer-pdf::before,
.filter-list-selected .btn .btn-print-chifree::before,
.filter-list-selected .btn .btn-print-nonchifree::before, .filter-list-selected .btn .c-contacts__mail::before, .filter-list-selected .btn .c-contacts__tel::before, .filter-list-selected .btn .c-documents a::before, .c-documents .filter-list-selected .btn a::before, .filter-list-selected .btn .favoris-btn-container a:before, .favoris-btn-container .filter-list-selected .btn a:before, .filter-list-selected .btn .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie a:before, .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie .filter-list-selected .btn a:before, .filter-list-selected .btn .fiche-retour-header > dl::before, .filter-list-selected .btn .responsive-table .row.locked .libelle__title::before, .responsive-table .row.locked .filter-list-selected .btn .libelle__title::before, .filter-list-selected .btn .TPL_ORCAB_LISTE_ACHAT .item-commande[data-type="2"]:before, .TPL_ORCAB_LISTE_ACHAT .filter-list-selected .btn .item-commande[data-type="2"]:before, .filter-list-selected .btn .TPL_ORCAB_FICHE_DEVIS_BONS .btn-ajouter-panier::before, .TPL_ORCAB_FICHE_DEVIS_BONS .filter-list-selected .btn .btn-ajouter-panier::before, .filter-list-selected .btn .TPL_INFOS_COMPTE .table-roles .roleHeader .btn-retirer::before, .TPL_INFOS_COMPTE .table-roles .roleHeader .filter-list-selected .btn .btn-retirer::before, .filter-list-selected .btn .TPL_DIAPORAMA_ORCAB .carousel-action.play, .TPL_DIAPORAMA_ORCAB .filter-list-selected .btn .carousel-action.play, .filter-list-selected .btn .bloc-titre-pag .pag a::before, .bloc-titre-pag .pag .filter-list-selected .btn a::before, .filter-list-selected .btn .liste-actu-lienplus a::before, .liste-actu-lienplus .filter-list-selected .btn a::before, .filter-list-selected .btn .ressources-associees li a::before, .ressources-associees li .filter-list-selected .btn a::before, .filter-list-selected .btn .TPL_ACTUALITE_ZOOM_SUR .lien-plus::before, .TPL_ACTUALITE_ZOOM_SUR .filter-list-selected .btn .lien-plus::before, .filter-list-selected .btn .liste-produits .btn-ajouter::before, .liste-produits .filter-list-selected .btn .btn-ajouter::before,
.filter-list-selected .btn .TPL_FICHE_PRODUIT .btn-ajouter::before, .TPL_FICHE_PRODUIT .filter-list-selected .btn .btn-ajouter::before,
.filter-list-selected .btn .search-suggester-results-produits .btn-ajouter::before, .search-suggester-results-produits .filter-list-selected .btn .btn-ajouter::before, .filter-list-selected .btn .liste-produits .actions-declinaison .bouton-vert::before, .liste-produits .actions-declinaison .filter-list-selected .btn .bouton-vert::before, .filter-list-selected .btn .liste-produits .actions-declinaison .form-submit button::before, .liste-produits .actions-declinaison .form-submit .filter-list-selected .btn button::before, .filter-list-selected .btn .form-submit .liste-produits .actions-declinaison button::before, .form-submit .liste-produits .actions-declinaison .filter-list-selected .btn button::before,
.filter-list-selected .btn .liste-produits .actions-declinaison .form-submit input[type="submit"]::before, .liste-produits .actions-declinaison .form-submit .filter-list-selected .btn input[type="submit"]::before, .filter-list-selected .btn .form-submit .liste-produits .actions-declinaison input[type="submit"]::before, .form-submit .liste-produits .actions-declinaison .filter-list-selected .btn input[type="submit"]::before, .filter-list-selected .btn .liste-produits .actions-declinaison .bouton-bleu::before, .liste-produits .actions-declinaison .filter-list-selected .btn .bouton-bleu::before, .filter-list-selected .btn .liste-produits .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer::before, .liste-produits .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .filter-list-selected .btn .btn-imprimer::before, .filter-list-selected .btn .TPL_ORCAB_FICHE_RETOUR .form-submit .liste-produits .actions-declinaison .btn-imprimer::before, .TPL_ORCAB_FICHE_RETOUR .form-submit .liste-produits .actions-declinaison .filter-list-selected .btn .btn-imprimer::before, .filter-list-selected .btn .liste-produits .actions-declinaison .lignes-retour-wrap .form-submit .btn-imprimer::before, .liste-produits .actions-declinaison .lignes-retour-wrap .form-submit .filter-list-selected .btn .btn-imprimer::before, .filter-list-selected .btn .lignes-retour-wrap .form-submit .liste-produits .actions-declinaison .btn-imprimer::before, .lignes-retour-wrap .form-submit .liste-produits .actions-declinaison .filter-list-selected .btn .btn-imprimer::before, .filter-list-selected .btn .liste-produits .actions-declinaison .TPL_COMPARATEUR .action a.voir-produit::before, .liste-produits .actions-declinaison .TPL_COMPARATEUR .action .filter-list-selected .btn a.voir-produit::before, .filter-list-selected .btn .TPL_COMPARATEUR .action .liste-produits .actions-declinaison a.voir-produit::before, .TPL_COMPARATEUR .action .liste-produits .actions-declinaison .filter-list-selected .btn a.voir-produit::before, .filter-list-selected .btn .liste-produits .actions-declinaison .materiel-print-btn a::before, .liste-produits .actions-declinaison .materiel-print-btn .filter-list-selected .btn a::before, .filter-list-selected .btn .materiel-print-btn .liste-produits .actions-declinaison a::before, .materiel-print-btn .liste-produits .actions-declinaison .filter-list-selected .btn a::before, .filter-list-selected .btn .liste-produits .actions-declinaison .materiel-planning-pdf a::before, .liste-produits .actions-declinaison .materiel-planning-pdf .filter-list-selected .btn a::before, .filter-list-selected .btn .materiel-planning-pdf .liste-produits .actions-declinaison a::before, .materiel-planning-pdf .liste-produits .actions-declinaison .filter-list-selected .btn a::before, .filter-list-selected .btn .liste-produits .actions-declinaison .bouton-gris::before, .liste-produits .actions-declinaison .filter-list-selected .btn .bouton-gris::before, .filter-list-selected .btn .liste-produits .actions-declinaison .bouton-rouge::before, .liste-produits .actions-declinaison .filter-list-selected .btn .bouton-rouge::before, .filter-list-selected .btn .liste-produits .actions-declinaison .bouton-retour::before, .liste-produits .actions-declinaison .filter-list-selected .btn .bouton-retour::before, .filter-list-selected .btn .liste-produits .actions-declinaison .bouton-rechercher::before, .liste-produits .actions-declinaison .filter-list-selected .btn .bouton-rechercher::before, .filter-list-selected .btn .liste-produits .actions-declinaison .btn-ajouter-au-panier::before, .liste-produits .actions-declinaison .filter-list-selected .btn .btn-ajouter-au-panier::before,
.filter-list-selected .btn .liste-produits .actions-declinaison .btn-liste-achat-activate::before, .liste-produits .actions-declinaison .filter-list-selected .btn .btn-liste-achat-activate::before, .filter-list-selected .btn .liste-produits .actions-declinaison .ressources-associees li.lien-tous a::before, .liste-produits .actions-declinaison .ressources-associees li.lien-tous .filter-list-selected .btn a::before, .filter-list-selected .btn .ressources-associees li.lien-tous .liste-produits .actions-declinaison a::before, .ressources-associees li.lien-tous .liste-produits .actions-declinaison .filter-list-selected .btn a::before, .filter-list-selected .btn .liste-produits .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste::before, .liste-produits .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .filter-list-selected .btn .btn-ajouter-liste::before, .filter-list-selected .btn .liste-achat-plugin .ajouter-a-la-liste .liste-produits .actions-declinaison .btn-ajouter-liste::before, .liste-achat-plugin .ajouter-a-la-liste .liste-produits .actions-declinaison .filter-list-selected .btn .btn-ajouter-liste::before, .filter-list-selected .btn .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .btn-submit::before, .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .filter-list-selected .btn .btn-submit::before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-submit::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .filter-list-selected .btn .btn-submit::before,
.filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-vert::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .filter-list-selected .btn .bouton-vert::before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .form-submit button::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .form-submit .filter-list-selected .btn button::before, .filter-list-selected .btn .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison button::before, .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .filter-list-selected .btn button::before,
.filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .form-submit input[type="submit"]::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .form-submit .filter-list-selected .btn input[type="submit"]::before, .filter-list-selected .btn .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison input[type="submit"]::before, .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .filter-list-selected .btn input[type="submit"]::before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-bleu::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .filter-list-selected .btn .bouton-bleu::before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .filter-list-selected .btn .btn-imprimer::before, .filter-list-selected .btn .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-imprimer::before, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .filter-list-selected .btn .btn-imprimer::before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .lignes-retour-wrap .form-submit .btn-imprimer::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .lignes-retour-wrap .form-submit .filter-list-selected .btn .btn-imprimer::before, .filter-list-selected .btn .lignes-retour-wrap .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-imprimer::before, .lignes-retour-wrap .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .filter-list-selected .btn .btn-imprimer::before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .TPL_COMPARATEUR .action a.voir-produit::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .TPL_COMPARATEUR .action .filter-list-selected .btn a.voir-produit::before, .filter-list-selected .btn .TPL_COMPARATEUR .action .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a.voir-produit::before, .TPL_COMPARATEUR .action .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .filter-list-selected .btn a.voir-produit::before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .materiel-print-btn a::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .materiel-print-btn .filter-list-selected .btn a::before, .filter-list-selected .btn .materiel-print-btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a::before, .materiel-print-btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .filter-list-selected .btn a::before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .materiel-planning-pdf a::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .materiel-planning-pdf .filter-list-selected .btn a::before, .filter-list-selected .btn .materiel-planning-pdf .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a::before, .materiel-planning-pdf .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .filter-list-selected .btn a::before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-gris::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .filter-list-selected .btn .bouton-gris::before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-rouge::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .filter-list-selected .btn .bouton-rouge::before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-retour::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .filter-list-selected .btn .bouton-retour::before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-rechercher::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .filter-list-selected .btn .bouton-rechercher::before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-ajouter-au-panier::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .filter-list-selected .btn .btn-ajouter-au-panier::before,
.filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-liste-achat-activate::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .filter-list-selected .btn .btn-liste-achat-activate::before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .ressources-associees li.lien-tous a::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .ressources-associees li.lien-tous .filter-list-selected .btn a::before, .filter-list-selected .btn .ressources-associees li.lien-tous .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a::before, .ressources-associees li.lien-tous .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .filter-list-selected .btn a::before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .filter-list-selected .btn .btn-ajouter-liste::before, .filter-list-selected .btn .liste-achat-plugin .ajouter-a-la-liste .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-ajouter-liste::before, .liste-achat-plugin .ajouter-a-la-liste .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .filter-list-selected .btn .btn-ajouter-liste::before, .filter-list-selected .btn .liste-produits .bouton-ajout-produit-liste:before, .liste-produits .filter-list-selected .btn .bouton-ajout-produit-liste:before,
.filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .bouton-ajout-produit-liste:before, .TPL_FICHE_PRODUIT .liste-produits .filter-list-selected .btn .bouton-ajout-produit-liste:before, .filter-list-selected .btn .liste-produits .delete-product:before, .liste-produits .filter-list-selected .btn .delete-product:before,
.filter-list-selected .btn .TPL_FICHE_PRODUIT .liste-produits .delete-product:before, .TPL_FICHE_PRODUIT .liste-produits .filter-list-selected .btn .delete-product:before, .filter-list-selected .btn .liste-achat-plugin .ajouter-a-la-liste .listes::before, .liste-achat-plugin .ajouter-a-la-liste .filter-list-selected .btn .listes::before, .filter-list-selected .btn .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .slick-arrow::before, .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .filter-list-selected .btn .slick-arrow::before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .thumb li.video-produit:hover a::after, .TPL_FICHE_PRODUIT .thumb li.video-produit:hover .filter-list-selected .btn a::after, .filter-list-selected .btn .TPL_FICHE_PRODUIT .thumb li.video-produit:active a::after, .TPL_FICHE_PRODUIT .thumb li.video-produit:active .filter-list-selected .btn a::after, .filter-list-selected .btn .TPL_FICHE_PRODUIT .thumb li.video-produit.selected a::after, .TPL_FICHE_PRODUIT .thumb li.video-produit.selected .filter-list-selected .btn a::after, .filter-list-selected .btn .TPL_FICHE_PRODUIT .photos.bloc .bx-controls-direction a::before, .TPL_FICHE_PRODUIT .photos.bloc .bx-controls-direction .filter-list-selected .btn a::before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .btnCaddie-List button.bouton-ajout-produit-liste::before, .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .btnCaddie-List .filter-list-selected .btn button.bouton-ajout-produit-liste::before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .btn-submit::before, .TPL_FICHE_PRODUIT .filter-list-selected .btn .btn-submit::before, .filter-list-selected .btn .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn:before, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .filter-list-selected .btn .btn:before, .filter-list-selected .btn .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .ico:before, .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .filter-list-selected .btn .ico:before, .filter-list-selected .btn .TPL_LOCATION #navCommande .etapes-tunnel .done::after, .TPL_LOCATION #navCommande .etapes-tunnel .filter-list-selected .btn .done::after, .filter-list-selected .btn .materiel-print-btn a::before, .materiel-print-btn .filter-list-selected .btn a::before, .filter-list-selected .btn .materiel-planning-pdf a::before, .materiel-planning-pdf .filter-list-selected .btn a::before, .filter-list-selected .btn .materiel-form-container .btn-search span:before, .materiel-form-container .btn-search .filter-list-selected .btn span:before, .filter-list-selected .btn .form-recherche .form-submit button span::before, .form-recherche .form-submit button .filter-list-selected .btn span::before, .filter-list-selected .btn .liste-doc-plus a::before, .liste-doc-plus .filter-list-selected .btn a::before, .filter-list-selected .btn .listes-de-courses .btn-nouvelle-liste::before, .listes-de-courses .filter-list-selected .btn .btn-nouvelle-liste::before, .filter-list-selected .btn .listes-de-courses .liste-achat-table .liste-detail .libelle.pictogramme::before, .listes-de-courses .liste-achat-table .liste-detail .filter-list-selected .btn .libelle.pictogramme::before, .filter-list-selected .btn .options-selectionnees .btnModifierOptionsPanier::before, .options-selectionnees .filter-list-selected .btn .btnModifierOptionsPanier::before,
.filter-list-selected .btn .options-selectionnees .btnModifierOptionsListeAchat::before, .options-selectionnees .filter-list-selected .btn .btnModifierOptionsListeAchat::before,
.filter-list-selected .btn .btnModifierOptionsDimensions::before, .filter-list-selected .btn .fiche-commande-header .btn-petit-blanc::before, .fiche-commande-header .filter-list-selected .btn .btn-petit-blanc::before, .filter-list-selected .btn .fiche-commande-header #btnCommandeRapide::before, .fiche-commande-header .filter-list-selected .btn #btnCommandeRapide::before, .filter-list-selected .btn .table-actions [class*="bouton-"]::before, .table-actions .filter-list-selected .btn [class*="bouton-"]::before, .filter-list-selected .btn .panier-contenu-indisponible .bouton-rouge::before, .panier-contenu-indisponible .filter-list-selected .btn .bouton-rouge::before, .filter-list-selected .btn .TPL_TUNNEL .adresse-form-container .bouton-bleu:before, .TPL_TUNNEL .adresse-form-container .filter-list-selected .btn .bouton-bleu:before, .filter-list-selected .btn .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .filter-list-selected .btn .btn-imprimer:before, .filter-list-selected .btn .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .filter-list-selected .btn .btn-imprimer:before, .filter-list-selected .btn .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .filter-list-selected .btn .btn-imprimer:before, .filter-list-selected .btn .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .filter-list-selected .btn .btn-imprimer:before, .filter-list-selected .btn .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit:before, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action .filter-list-selected .btn a.voir-produit:before, .filter-list-selected .btn .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit:before, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container .filter-list-selected .btn a.voir-produit:before, .filter-list-selected .btn .TPL_TUNNEL .adresse-form-container .materiel-print-btn a:before, .TPL_TUNNEL .adresse-form-container .materiel-print-btn .filter-list-selected .btn a:before, .filter-list-selected .btn .materiel-print-btn .TPL_TUNNEL .adresse-form-container a:before, .materiel-print-btn .TPL_TUNNEL .adresse-form-container .filter-list-selected .btn a:before, .filter-list-selected .btn .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a:before, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf .filter-list-selected .btn a:before, .filter-list-selected .btn .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a:before, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container .filter-list-selected .btn a:before, .filter-list-selected .btn .TPL_TUNNEL .adresse-form-container .bouton-vert:before, .TPL_TUNNEL .adresse-form-container .filter-list-selected .btn .bouton-vert:before, .filter-list-selected .btn .TPL_TUNNEL .adresse-form-container .form-submit button:before, .TPL_TUNNEL .adresse-form-container .form-submit .filter-list-selected .btn button:before, .filter-list-selected .btn .form-submit .TPL_TUNNEL .adresse-form-container button:before, .form-submit .TPL_TUNNEL .adresse-form-container .filter-list-selected .btn button:before,
.filter-list-selected .btn .TPL_TUNNEL .adresse-form-container .form-submit input[type="submit"]:before, .TPL_TUNNEL .adresse-form-container .form-submit .filter-list-selected .btn input[type="submit"]:before, .filter-list-selected .btn .form-submit .TPL_TUNNEL .adresse-form-container input[type="submit"]:before, .form-submit .TPL_TUNNEL .adresse-form-container .filter-list-selected .btn input[type="submit"]:before, .filter-list-selected .btn .TPL_TUNNEL .adresse-form-container .bouton-gris:before, .TPL_TUNNEL .adresse-form-container .filter-list-selected .btn .bouton-gris:before, .filter-list-selected .btn .TPL_TUNNEL .adresse-form-container .bouton-rouge:before, .TPL_TUNNEL .adresse-form-container .filter-list-selected .btn .bouton-rouge:before, .filter-list-selected .btn .TPL_TUNNEL .adresse-form-container .bouton-retour:before, .TPL_TUNNEL .adresse-form-container .filter-list-selected .btn .bouton-retour:before, .filter-list-selected .btn .TPL_TUNNEL .adresse-form-container .bouton-rechercher:before, .TPL_TUNNEL .adresse-form-container .filter-list-selected .btn .bouton-rechercher:before, .filter-list-selected .btn .TPL_TUNNEL .adresse-form-container .btn-ajouter-au-panier:before, .TPL_TUNNEL .adresse-form-container .filter-list-selected .btn .btn-ajouter-au-panier:before,
.filter-list-selected .btn .TPL_TUNNEL .adresse-form-container .btn-liste-achat-activate:before, .TPL_TUNNEL .adresse-form-container .filter-list-selected .btn .btn-liste-achat-activate:before, .filter-list-selected .btn .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous a:before, .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous .filter-list-selected .btn a:before, .filter-list-selected .btn .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container a:before, .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container .filter-list-selected .btn a:before, .filter-list-selected .btn .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste:before, .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .filter-list-selected .btn .btn-ajouter-liste:before, .filter-list-selected .btn .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .btn-ajouter-liste:before, .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .filter-list-selected .btn .btn-ajouter-liste:before, .filter-list-selected .btn .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .btn-submit:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .filter-list-selected .btn .btn-submit:before, .filter-list-selected .btn .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .btn-submit:before, .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .filter-list-selected .btn .btn-submit:before, .filter-list-selected .btn .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir .filter-list-selected .btn a:before, .filter-list-selected .btn .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir .filter-list-selected .btn button:before, .filter-list-selected .btn .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit .filter-list-selected .btn a:before, .filter-list-selected .btn .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit .filter-list-selected .btn button:before, .filter-list-selected .btn .TPL_PANIER #panierLibelleForm::before, .TPL_PANIER .filter-list-selected .btn #panierLibelleForm::before, .filter-list-selected .btn .liste-panier-commande-rapide .liste-produits-item .btn-icon-delete::before, .liste-panier-commande-rapide .liste-produits-item .filter-list-selected .btn .btn-icon-delete::before, .filter-list-selected .btn .form-recherche-paniers-passes .form-submit button span:before, .form-recherche-paniers-passes .form-submit button .filter-list-selected .btn span:before, .filter-list-selected .btn .paniers-table .row .nb-article::before, .paniers-table .row .filter-list-selected .btn .nb-article::before, .filter-list-selected .btn .commande-rapide-panier .encart-commande-rapide .bouton-fichier span::before, .commande-rapide-panier .encart-commande-rapide .bouton-fichier .filter-list-selected .btn span::before, .filter-list-selected .btn .commande-rapide-panier .results .quantite .btn-petit-vert::before, .commande-rapide-panier .results .quantite .filter-list-selected .btn .btn-petit-vert::before, .filter-list-selected .btn .commande-rapide-panier .results .quantite .frontModalBoxContainer .btn-submit::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer .filter-list-selected .btn .btn-submit::before, .filter-list-selected .btn .frontModalBoxContainer .commande-rapide-panier .results .quantite .btn-submit::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .filter-list-selected .btn .btn-submit::before, .filter-list-selected .btn .commande-rapide-panier .results .quantite .frontModalBoxContainer #btn-supprimer-oui::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer .filter-list-selected .btn #btn-supprimer-oui::before, .filter-list-selected .btn .frontModalBoxContainer .commande-rapide-panier .results .quantite #btn-supprimer-oui::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .filter-list-selected .btn #btn-supprimer-oui::before,
.filter-list-selected .btn .commande-rapide-panier .results .quantite .frontModalBoxContainer .btn-valider::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer .filter-list-selected .btn .btn-valider::before, .filter-list-selected .btn .frontModalBoxContainer .commande-rapide-panier .results .quantite .btn-valider::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .filter-list-selected .btn .btn-valider::before, .filter-list-selected .btn .commande-rapide-panier .results .quantite .s-editherm-info__form button[type="submit"]::before, .commande-rapide-panier .results .quantite .s-editherm-info__form .filter-list-selected .btn button[type="submit"]::before, .filter-list-selected .btn .s-editherm-info__form .commande-rapide-panier .results .quantite button[type="submit"]::before, .s-editherm-info__form .commande-rapide-panier .results .quantite .filter-list-selected .btn button[type="submit"]::before,
.filter-list-selected .btn .commande-rapide-panier .results .quantite .btn-petit-bleu::before, .commande-rapide-panier .results .quantite .filter-list-selected .btn .btn-petit-bleu::before, .filter-list-selected .btn .commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .changeVue.active::before, .commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .filter-list-selected .btn .changeVue.active::before, .filter-list-selected .btn .TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .changeVue.active::before, .TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .filter-list-selected .btn .changeVue.active::before,
.filter-list-selected .btn .commande-rapide-panier .results .quantite .btn-petit-gris::before, .commande-rapide-panier .results .quantite .filter-list-selected .btn .btn-petit-gris::before, .filter-list-selected .btn .commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .changeVue::before, .commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .filter-list-selected .btn .changeVue::before, .filter-list-selected .btn .TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .changeVue::before, .TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .filter-list-selected .btn .changeVue::before, .filter-list-selected .btn .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator p::before, .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator .filter-list-selected .btn p::before,
.filter-list-selected .btn .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .gm-style-iw p::before, .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .gm-style-iw .filter-list-selected .btn p::before, .filter-list-selected .btn .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .form-submit span::before, .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .form-submit .filter-list-selected .btn span::before, .filter-list-selected .btn .fiche-adherent__coordonnes p:before, .fiche-adherent__coordonnes .filter-list-selected .btn p:before, .filter-list-selected .btn .TPL_ORCAB_CARTE_TOURNEE .carte-tournee p::before, .TPL_ORCAB_CARTE_TOURNEE .carte-tournee .filter-list-selected .btn p::before,
.filter-list-selected .btn .TPL_ORCAB_CARTE_TOURNEE .gm-style-iw p::before, .TPL_ORCAB_CARTE_TOURNEE .gm-style-iw .filter-list-selected .btn p::before, .filter-list-selected .btn .TPL_ORCAB_CARTE_TOURNEE .form-submit span::before, .TPL_ORCAB_CARTE_TOURNEE .form-submit .filter-list-selected .btn span::before, .filter-list-selected .btn .TPL_ORCAB_AGENDA .changeVue:before, .TPL_ORCAB_AGENDA .filter-list-selected .btn .changeVue:before, .filter-list-selected .btn .TPL_ORCAB_AGENDA .bouton-details:before, .TPL_ORCAB_AGENDA .filter-list-selected .btn .bouton-details:before, .filter-list-selected .btn .TPL_LISTE_AGENDA_ACCUEIL .bloc-icone:before, .TPL_LISTE_AGENDA_ACCUEIL .filter-list-selected .btn .bloc-icone:before, .filter-list-selected .btn .c-agenda__bloc:before, .filter-list-selected .btn .TPL_ORCAB_MES_FAVORIS .liste-detail::before, .TPL_ORCAB_MES_FAVORIS .filter-list-selected .btn .liste-detail::before, .filter-list-selected .btn #volet-compte .lien-picto::before, #volet-compte .filter-list-selected .btn .lien-picto::before, .filter-list-selected .btn #volet-favoris .lien-picto::before, #volet-favoris .filter-list-selected .btn .lien-picto::before, .filter-list-selected .btn #volet-paniers .btnPanierActif::before, #volet-paniers .filter-list-selected .btn .btnPanierActif::before, .filter-list-selected .btn #volet-listes-achat .btnPanierActif::before, #volet-listes-achat .filter-list-selected .btn .btnPanierActif::before, .filter-list-selected .btn #volet-paniers .lien-picto::after, #volet-paniers .filter-list-selected .btn .lien-picto::after, .filter-list-selected .btn #volet-listes-achat .lien-picto::after, #volet-listes-achat .filter-list-selected .btn .lien-picto::after, .filter-list-selected .btn #volet-paniers .voletPanier__search div .btn-search::before, #volet-paniers .voletPanier__search div .filter-list-selected .btn .btn-search::before, .filter-list-selected .btn #volet-paniers .voletListeAchat__search div .btn-search::before, #volet-paniers .voletListeAchat__search div .filter-list-selected .btn .btn-search::before, .filter-list-selected .btn #volet-listes-achat .voletPanier__search div .btn-search::before, #volet-listes-achat .voletPanier__search div .filter-list-selected .btn .btn-search::before, .filter-list-selected .btn #volet-listes-achat .voletListeAchat__search div .btn-search::before, #volet-listes-achat .voletListeAchat__search div .filter-list-selected .btn .btn-search::before, .filter-list-selected .btn #volet-paniers a.voletPanier__locked::before, #volet-paniers .filter-list-selected .btn a.voletPanier__locked::before, .filter-list-selected .btn #volet-listes-achat a.voletPanier__locked::before, #volet-listes-achat .filter-list-selected .btn a.voletPanier__locked::before, .filter-list-selected .btn .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-date:before, .TPL_ORCAB_FEED_ET_A_LA_UNE .filter-list-selected .btn .feed-date:before {
  font-size: 1.1rem;
  margin: 0 0 0 1.2rem;
  color: #000;
  pointer-events: initial;
}

.filter-list-selected .filter-type {
  color: #003160;
  margin-right: 5px;
}

@media screen and (max-width: 1024px) {
  .filter-list-selected {
    margin-bottom: 0;
  }
}

/* ===================================================================
 * BLOC TRI CATEGORIE
 * =================================================================*/
.tri-categorie {
  padding: 0 0 20px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.tri-categorie > div:last-child {
  text-align: right;
  max-width: 27.3037542662116%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.tri-categorie .nb {
  font-size: 2.7rem;
  line-height: 3rem;
  color: #003160;
  font-weight: 500;
  width: 55%;
  flex: 1;
}

@media screen and (max-width: 1024px) {
  .tri-categorie .nb {
    width: 33%;
  }
}

.tri-categorie form {
  padding: 0;
  flex: 1;
}

.tri-categorie .select-wrap {
  width: 100%;
}

.tri-categorie .en-stock {
  margin: 0 4rem;
}

@media screen and (max-width: 1024px) {
  .tri-categorie {
    padding: 0 0 14px 0;
  }
}

@media screen and (max-width: 767px) {
  .tri-categorie:has(.c-switch + .c-switch) {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 10px;
  }
  .tri-categorie:has(.c-switch + .c-switch) .nb {
    width: 100%;
    min-width: 100%;
  }
  .tri-categorie:has(.c-switch + .c-switch) .c-switch {
    margin: 0;
    width: auto;
  }
  .tri-categorie:has(.c-switch + .c-switch) .fl-l {
    width: 100%;
    max-width: 100%;
  }
  .tri-categorie .en-stock {
    width: 31%;
    margin-right: 2%;
    margin-top: 3px;
  }
  .tri-categorie .en-stock label {
    padding-right: 0;
  }
  .tri-categorie > div:last-child {
    width: 33%;
    justify-content: flex-end;
  }
  .tri-categorie .nb {
    font-size: 2.4rem;
  }
}

.liste_produit_form_tri .control-label,
.liste_document_form_tri .control-label {
  font-size: 1.4rem;
  color: #004462;
  display: inline-block;
  padding: 0;
  margin-right: 10px;
}

.liste_produit_form_tri select,
.liste_document_form_tri select {
  color: #868686;
  font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
  .liste_produit_form_tri,
  .liste_document_form_tri {
    /*.control-label { display: none; }
    .select-wrap {
      &::before {
        content: "\f077";
        top: 30%;
        right: 10px;
      }
      &::after {
        top: 55%;
        right: -5px;
      }
    }
    select {
      width: 70px;
      height: 40px;
      line-height: 40px;
      padding: 0 0 0 10px;
      margin-bottom: 10px;
    }*/
  }
}

/* ===================================================================
 * BLOC VUE LISTE/GRILLE CATEGORIE
 * =================================================================*/
.choix-affichage {
  display: flex;
  width: 8rem;
  height: 4rem;
  margin-left: 5rem;
}

@media (max-width: 1024px) {
  .choix-affichage {
    display: none;
  }
}

.choix-affichage .view {
  width: 50%;
  background: #ffffff;
  color: #003160;
  border: 1px solid #003160;
  display: flex;
  justify-content: center;
  align-items: center;
}

.choix-affichage .view i:before {
  font-size: 2.4rem;
}

.choix-affichage .view-list {
  border-radius: 5px 0 0 5px;
  border-right: 0;
}

.choix-affichage .view-grid {
  border-radius: 0 5px 5px 0;
}

.choix-affichage .view.active {
  background-color: #003160;
  color: #ffffff;
}

.c-tooltip {
  position: relative;
  display: inline-block;
  z-index: 1;
  overflow: visible !important;
  margin-left: 8px;
  margin-right: 15px;
}

.c-tooltip__button {
  appearance: none;
  border: none;
  background-color: transparent;
  padding: 0;
  margin: 0;
  font-size: 2.4rem;
  color: #003160;
  position: relative;
}

.c-tooltip__button-txt {
  position: absolute;
  width: 100%;
  text-align: center;
  font-size: 1rem;
  top: 8px;
  font-weight: bold;
}

.c-tooltip__inner {
  display: none;
  width: max-content;
  max-width: 120px;
  background: #003160;
  color: #ffffff;
  border-radius: 2px;
  padding: 10px;
  position: absolute;
  z-index: 1;
  margin: 0;
  transform: translateY(-50%);
  top: 50%;
  left: calc(100% + 17px);
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 100%;
}

.c-tooltip__inner p {
  margin: 0;
}

.c-tooltip__inner::after {
  content: "";
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
  right: 100%;
  border-width: 9px;
  border-style: solid;
  border-color: transparent #003160 transparent transparent;
}

.c-tooltip.is-active .c-tooltip__inner {
  display: block;
}

.c-tooltip--right .c-tooltip__inner {
  left: auto;
  right: calc(100% + 17px);
}

.c-tooltip--right .c-tooltip__inner::after {
  border-color: transparent transparent transparent #003160;
  left: 100%;
  right: auto;
}

/* ===================================================================
 * TABLEAU AVEC TRI
 * =================================================================*/
.intitules {
  border-bottom: 1px solid #c4c4c4;
  font-size: 1.3rem;
  line-height: 1.8rem;
}

.intitules > div {
  padding: 5px 20px 5px 0;
  color: #868686;
}

.intitules > div:first-child {
  padding-left: 20px;
}

.intitules a {
  color: #82aa37;
}

.intitules a:hover, .intitules a:focus {
  text-decoration: none;
}

.intitules .fl-down, .intitules .fl-up {
  font-size: 1rem;
  line-height: 1.4rem;
}

.intitules .fl-down img, .intitules .fl-up img {
  display: none;
}

.intitules .fl-down {
  margin-left: 5px;
  position: relative;
  padding-right: 16px;
}

.intitules .fl-down::before {
  content: "\f078";
}

.intitules .fl-down::after {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  content: "";
  background-color: #cecece;
  width: 1px;
  height: 14px;
  right: 8px;
}

.intitules .fl-up::before {
  content: "\f077";
}

@media screen and (max-width: 1752px) {
  .intitules .tri {
    display: block;
  }
}

/* ===================================================================
 * GENERALITES TABLEAU
 * =================================================================*/
.display-table {
  display: table;
  table-layout: fixed;
  width: 100%;
  position: relative;
}

.display-table > div {
  display: table-cell;
  box-sizing: border-box;
}

.persist-area .floatingHeader {
  position: sticky;
  background: #f6f6f6;
  z-index: 2;
  transition: all 0.3s;
  top: calc(var(--hauteur-padding-head));
}

body:has(.header-complet-sans-defilement) .persist-area .floatingHeader {
  top: 0;
}

.resultat {
  background: #fff;
  border-radius: 7px;
  overflow: hidden;
  margin-top: 20px;
}

.resultat .lib {
  display: none;
}

.resultat .display-table > div {
  padding: 10px 20px 10px 0;
}

.resultat .display-table > div:first-child {
  padding-left: 20px;
}

.resultat .type-num {
  font-weight: 600;
}

/* ===================================================================
 * TABLEAU GRIS RESPONSIVE
 * =================================================================*/
.tableau-gris-responsive .responsive-table {
  font-size: 1.6rem;
  line-height: 1.8rem;
  padding-bottom: 0;
  display: flex;
  flex-flow: row wrap;
  width: 100%;
}

.tableau-gris-responsive .responsive-table .head, .tableau-gris-responsive .responsive-table .row {
  padding: 0 15px;
}

.tableau-gris-responsive .responsive-table .head .cell, .tableau-gris-responsive .responsive-table .row .cell {
  border: none;
  vertical-align: top;
  padding: 20px 15px;
  box-sizing: border-box;
  flex: 1;
}

.tableau-gris-responsive .responsive-table .head {
  background-color: #003160;
}

.tableau-gris-responsive .responsive-table .head .cell {
  color: #fff;
  font-weight: 400;
  text-align: left;
}

.tableau-gris-responsive .responsive-table .head .commentaire-coop {
  background: #004462;
}

.tableau-gris-responsive .responsive-table .head--white {
  background-color: #ffffff;
}

.tableau-gris-responsive .responsive-table .head--white .cell {
  background-color: #ffffff;
  color: #004462;
}

.tableau-gris-responsive .responsive-table .row {
  margin-top: 0;
  border: 0 none;
  border-radius: 0;
}

.tableau-gris-responsive .responsive-table .row:nth-child(odd) {
  background-color: #ffffff;
}

.tableau-gris-responsive .responsive-table .row:nth-child(even) {
  background-color: #e7e7e7;
}

@media screen and (max-width: 767px) {
  .tableau-gris-responsive .responsive-table .head {
    display: none;
  }
  .tableau-gris-responsive .responsive-table .row .cell {
    position: relative;
    display: block;
    width: 100%;
    padding: 20px 15px;
  }
  .tableau-gris-responsive .responsive-table .row .cell:before, .tableau-gris-responsive .responsive-table .row .cell:after {
    display: table;
    content: " ";
  }
  .tableau-gris-responsive .responsive-table .row .cell:after {
    clear: both;
  }
  .tableau-gris-responsive .responsive-table .row .cell::before {
    content: attr(data-label);
    display: block;
    width: 50%;
    box-sizing: border-box;
    float: left;
    padding-right: 10px;
    color: #82aa37;
  }
  .tableau-gris-responsive .responsive-table .row .cell.commentaire-coop::before {
    color: #004462;
  }
  .tableau-gris-responsive .responsive-table .row .cell span {
    display: block;
    float: right;
    width: 50%;
  }
}

/* ===================================================================
 * STYLES BUTTONS
 * =================================================================*/
.bouton-vert, .form-submit button,
.form-submit input[type="submit"], .bouton-bleu, .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .btn-imprimer, .TPL_COMPARATEUR .action a.voir-produit, .materiel-print-btn a, .materiel-planning-pdf a, .bouton-gris, .bouton-rouge, .form-submit .bouton-rouge, .bouton-retour, .bouton-rechercher, .btn-ajouter-au-panier,
.btn-liste-achat-activate, .ressources-associees li.lien-tous a, .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .TPL_FICHE_PRODUIT .btn-submit {
  padding: 15px 19px;
  color: #ffffff;
  display: inline-block;
  min-width: 270px;
  background-color: #82aa37;
  border: 0 none;
  border-radius: 5px;
  -webkit-appearance: none;
  font-size: 1.8rem;
  line-height: 2.5rem;
  font-weight: bold;
}

.bouton-vert:hover, .form-submit button:hover,
.form-submit input:hover[type="submit"], .bouton-bleu:hover, .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer:hover, .lignes-retour-wrap .form-submit .btn-imprimer:hover, .TPL_COMPARATEUR .action a.voir-produit:hover, .materiel-print-btn a:hover, .materiel-planning-pdf a:hover, .bouton-gris:hover, .bouton-rouge:hover, .bouton-retour:hover, .bouton-rechercher:hover, .btn-ajouter-au-panier:hover,
.btn-liste-achat-activate:hover, .ressources-associees li.lien-tous a:hover, .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste:hover, .TPL_FICHE_PRODUIT .btn-submit:hover {
  text-decoration: none;
  background-color: #6b8d2c;
  -webkit-transition: background 0.3s;
  -o-transition: background 0.3s;
  transition: background 0.3s;
}

a.bouton-vert, a.bouton-bleu, .TPL_ORCAB_FICHE_RETOUR .form-submit a.btn-imprimer, .lignes-retour-wrap .form-submit a.btn-imprimer, .TPL_COMPARATEUR .action a.voir-produit, .materiel-print-btn a, .materiel-planning-pdf a, a.bouton-gris, a.bouton-rouge, .form-submit a.bouton-rouge, a.bouton-retour, a.bouton-rechercher, a.btn-ajouter-au-panier,
a.btn-liste-achat-activate, .ressources-associees li.lien-tous a, .liste-achat-plugin .ajouter-a-la-liste a.btn-ajouter-liste, .TPL_FICHE_PRODUIT a.btn-submit {
  text-decoration: none;
  color: #ffffff;
}

.bouton-medium, .form-submit button,
.form-submit input[type="submit"], .bouton-rechercher, .suivi-wrapper .btn-more-fields, .suivi-wrapper #eolas_ecommerce_orcab_suivi_factures_type_exporterCsv, .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement button {
  min-width: inherit;
  font-size: 1.4rem;
  line-height: 2rem;
  padding: 1rem 2rem;
  letter-spacing: 0.06em;
}

.bouton-bleu, .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .btn-imprimer, .TPL_COMPARATEUR .action a.voir-produit, .materiel-print-btn a, .materiel-planning-pdf a {
  background-color: #003160;
}

.bouton-bleu:hover, .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer:hover, .lignes-retour-wrap .form-submit .btn-imprimer:hover, .TPL_COMPARATEUR .action a.voir-produit:hover, .materiel-print-btn a:hover, .materiel-planning-pdf a:hover {
  background-color: rgba(0, 68, 98, 0.9);
}

.bouton-gris {
  background-color: #545454;
  text-align: center;
}

.bouton-gris:hover {
  background-color: #1c1c1c;
}

.bouton-rouge, .form-submit .bouton-rouge {
  background-color: #e05151;
  text-align: center;
  box-sizing: border-box;
}

.bouton-rouge:hover, .form-submit .bouton-rouge:hover {
  background-color: #bc4242;
}

.bouton-retour {
  font-size: 1.4rem;
  min-width: inherit;
  font-weight: normal;
  color: #fff;
  padding: 6px 10px;
}

.bouton-retour:hover {
  text-decoration: none;
}

.bouton-retour::before {
  content: "\f053";
  margin-right: 8px;
}

.bouton-rechercher span {
  position: relative;
}

.bouton-rechercher span::before {
  content: "\e915";
  font-size: 1.235em;
  margin-right: 8px;
}

.bouton-blanc, .mise-en-avant .contenu a, .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement button {
  background: #fff;
  border: 1px solid #c4c4c4;
  padding: 16px 15px;
  border-radius: 5px;
  font-weight: bold;
  color: #003160;
  display: inline-block;
}

.bouton-blanc:hover, .mise-en-avant .contenu a:hover, .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement button:hover {
  text-decoration: none;
  background-color: #f8f8f8;
  -webkit-transition: background 0.3s;
  -o-transition: background 0.3s;
  transition: background 0.3s;
}

.bouton-blanc.bouton-medium, .form-submit button.bouton-blanc,
.form-submit input.bouton-blanc[type="submit"], .bouton-blanc.bouton-rechercher, .mise-en-avant .contenu a.bouton-rechercher, .mise-en-avant .contenu a.bouton-medium, .mise-en-avant .contenu .suivi-wrapper a.btn-more-fields, .suivi-wrapper .mise-en-avant .contenu a.btn-more-fields, .mise-en-avant .contenu .suivi-wrapper a#eolas_ecommerce_orcab_suivi_factures_type_exporterCsv, .suivi-wrapper .mise-en-avant .contenu a#eolas_ecommerce_orcab_suivi_factures_type_exporterCsv, .suivi-wrapper .bouton-blanc.btn-more-fields, .suivi-wrapper .bouton-blanc#eolas_ecommerce_orcab_suivi_factures_type_exporterCsv, .suivi-wrapper .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement button#eolas_ecommerce_orcab_suivi_factures_type_exporterCsv, .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement .suivi-wrapper button#eolas_ecommerce_orcab_suivi_factures_type_exporterCsv, .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement button {
  padding: 1rem 2rem;
}

a.bouton-blanc, .mise-en-avant .contenu a {
  text-decoration: none;
}

.btn-petit-blanc {
  background: #fff;
  font-size: 1.4rem;
  line-height: 1;
  color: #868686;
  padding: 10px 20px;
  min-height: 40px;
  border-radius: 5px;
  box-sizing: border-box;
  display: inline-block;
  border: 1px solid #cecece;
}

.btn-petit-blanc:hover {
  text-decoration: none;
  background-color: #868686;
  color: #fff;
  -webkit-transition: background 0.3s;
  -o-transition: background 0.3s;
  transition: background 0.3s;
}

.btn-petit-rouge, .frontModalBoxContainer #btn-supprimer-non,
.frontModalBoxContainer .btn-annuler, .btn-petit-vert, .frontModalBoxContainer .btn-submit, .frontModalBoxContainer #btn-supprimer-oui,
.frontModalBoxContainer .btn-valider, .s-editherm-info__form button[type="submit"], .btn-petit-noir, .btn-petit-bleu, .TPL_ORCAB_AGENDA .changeVue.active, .btn-petit-gris, .TPL_ORCAB_AGENDA .changeVue, .btn-petit-gris-darker {
  background: #e05151;
  font-size: 1.4rem;
  line-height: 2rem;
  color: #fff;
  padding: 10px 20px;
  min-height: 40px;
  border-radius: 5px;
  box-sizing: border-box;
  display: inline-block;
  border: none;
}

.btn-petit-rouge:hover, .frontModalBoxContainer #btn-supprimer-non:hover,
.frontModalBoxContainer .btn-annuler:hover, .btn-petit-vert:hover, .frontModalBoxContainer .btn-submit:hover, .frontModalBoxContainer #btn-supprimer-oui:hover,
.frontModalBoxContainer .btn-valider:hover, .s-editherm-info__form button:hover[type="submit"], .btn-petit-noir:hover, .btn-petit-bleu:hover, .btn-petit-gris:hover, .TPL_ORCAB_AGENDA .changeVue:hover, .btn-petit-gris-darker:hover {
  text-decoration: none;
  background-color: #ba4242;
  color: #fff;
  -webkit-transition: background 0.3s;
  -o-transition: background 0.3s;
  transition: background 0.3s;
}

.btn-petit-vert, .frontModalBoxContainer .btn-submit, .frontModalBoxContainer #btn-supprimer-oui,
.frontModalBoxContainer .btn-valider, .s-editherm-info__form button[type="submit"] {
  background: #82aa37;
}

.btn-petit-vert:hover, .frontModalBoxContainer .btn-submit:hover, .frontModalBoxContainer #btn-supprimer-oui:hover,
.frontModalBoxContainer .btn-valider:hover, .s-editherm-info__form button:hover[type="submit"] {
  background-color: #6b8d2c;
}

.btn-petit-noir {
  background: #404040;
}

.btn-petit-noir:hover {
  background-color: rgba(64, 64, 64, 0.9);
}

.btn-petit-bleu, .TPL_ORCAB_AGENDA .changeVue.active {
  background: #003160;
}

.btn-petit-bleu:hover, .TPL_ORCAB_AGENDA .changeVue.active:hover {
  background-color: rgba(0, 68, 98, 0.9);
}

.btn-petit-gris, .TPL_ORCAB_AGENDA .changeVue {
  background: #c4c4c4;
}

.btn-petit-gris:hover, .TPL_ORCAB_AGENDA .changeVue:hover {
  background-color: rgba(212, 212, 212, 0.9);
}

.btn-petit-gris-darker {
  background-color: #545454;
}

.btn-petit-gris-darker:hover {
  background-color: #1c1c1c;
}

.btn--letterspacing {
  letter-spacing: 0.84px;
}

.btn--bold {
  font-weight: 700;
}

.btn-ajouter-au-panier,
.btn-liste-achat-activate {
  min-width: inherit;
  line-height: 1;
}

.btn-ajouter-au-panier::before,
.btn-liste-achat-activate::before {
  content: "\e964";
  font-size: 1.25em;
  font-weight: normal;
  line-height: 17px;
  margin-right: 8px;
  vertical-align: text-top;
}

.btn-ajouter-au-panier.quantiteAlreadyInPanier,
.btn-liste-achat-activate.quantiteAlreadyInPanier {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.11rem 0.5rem !important;
}

.btn-ajouter-au-panier.quantiteAlreadyInPanier::before,
.btn-liste-achat-activate.quantiteAlreadyInPanier::before {
  content: "\e94b";
  font-size: 1.2rem !important;
  position: static !important;
  transform: none !important;
  margin-right: 5px;
}

@media (min-width: 768px) {
  .btn-ajouter-au-panier.quantiteAlreadyInPanier span,
  .btn-liste-achat-activate.quantiteAlreadyInPanier span {
    text-indent: initial;
  }
}

.btn-ajouter-au-panier.quantiteAlreadyInPanier .num,
.btn-liste-achat-activate.quantiteAlreadyInPanier .num {
  font-size: 1.2rem;
  margin-left: 4px;
  line-height: 1.7rem;
  font-weight: normal;
}

.btn-ajouter-au-panier.quantiteAlreadyInPanier i,
.btn-liste-achat-activate.quantiteAlreadyInPanier i {
  font-style: normal;
  margin-right: 5px;
}

.btn-ajouter-au-panier--validate::before,
.btn-liste-achat-activate--validate::before {
  content: "\e97d";
}

.btn-liste-achat-actif {
  color: #82aa37;
  display: flex;
  align-items: center;
}

.btn-liste-achat-actif::before {
  content: "\e967";
  font-size: 2rem;
  font-weight: normal;
  line-height: 17px;
  margin-right: 8px;
  vertical-align: text-top;
}

.btn-liste-achat-actif:hover {
  background-color: #82aa37;
  color: #ffffff;
}

.btn-export::before, .btn-imprimer::before,
.btn-editer::before, .btn-ajouter-panier::before {
  color: #003160;
  margin-right: 5px;
  font-size: 1.071em;
}

.btn-export:hover::before, .btn-imprimer:hover::before,
.btn-editer:hover::before, .btn-ajouter-panier:hover::before {
  color: #fff;
}

.btn-export::before {
  content: "\e959";
}

.btn-imprimer::before {
  content: "\f02f";
}

.btn-editer::before {
  content: "\f044";
}

.btn-icon {
  margin-left: 20px;
  text-indent: -9999px;
  display: inline-block;
  position: relative;
  width: 20px;
  height: 20px;
  vertical-align: middle;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border: none;
  background: none;
}

.btn-icon::before {
  font-size: 2.2rem;
  text-indent: 0;
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  top: 50%;
  left: 0;
}

.btn-icon.btn-valider::before {
  content: "\f058";
}

.btn-icon.btn-annuler::before {
  content: "\f057";
  color: #e05151;
}

.bouton-creer-panier:before, .bouton-creer-panier:after {
  display: table;
  content: " ";
}

.bouton-creer-panier:after {
  clear: both;
}

.bouton-creer-panier a {
  color: #003160;
  text-decoration: none;
  position: relative;
  line-height: 40px;
}

.bouton-creer-panier a span {
  font-size: 1.7rem;
  font-weight: bold;
  padding-right: 10px;
  display: inline-block;
}

.bouton-creer-panier a::after {
  width: 40px;
  height: 40px;
  content: "\e97e";
  font-size: 2rem;
  color: #ffffff;
  background-color: #82aa37;
  border-radius: 5px;
  text-align: center;
  line-height: 40px;
  float: right;
}

.with-btn-favoris .bouton-creer-panier {
  margin-right: 235px;
}

@media screen and (max-width: 1024px) {
  .with-btn-favoris .bouton-creer-panier {
    margin-right: 50px;
  }
}

.btn-icon-first {
  display: flex;
  justify-content: center;
  align-items: center;
}

.btn-icon-first .icomoon:before, .btn-icon-first #bandeau-haut .show-tablet .btn:before, #bandeau-haut .show-tablet .btn-icon-first .btn:before, .btn-icon-first .favoris-btn-container a:before, .favoris-btn-container .btn-icon-first a:before, .btn-icon-first .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie a:before, .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie .btn-icon-first a:before, .btn-icon-first .TPL_ORCAB_LISTE_ACHAT .item-commande[data-type="2"]:before, .TPL_ORCAB_LISTE_ACHAT .btn-icon-first .item-commande[data-type="2"]:before, .btn-icon-first .TPL_DIAPORAMA_ORCAB .carousel-action.play:before, .TPL_DIAPORAMA_ORCAB .btn-icon-first .carousel-action.play:before, .btn-icon-first .liste-produits .bouton-ajout-produit-liste:before, .liste-produits .btn-icon-first .bouton-ajout-produit-liste:before, .btn-icon-first .liste-produits .delete-product:before, .liste-produits .btn-icon-first .delete-product:before, .btn-icon-first .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn:before, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn-icon-first .btn:before, .btn-icon-first .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .ico:before, .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .btn-icon-first .ico:before, .btn-icon-first .materiel-form-container .btn-search span:before, .materiel-form-container .btn-search .btn-icon-first span:before, .btn-icon-first .TPL_TUNNEL .adresse-form-container .bouton-bleu:before, .TPL_TUNNEL .adresse-form-container .btn-icon-first .bouton-bleu:before, .btn-icon-first .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-icon-first .btn-imprimer:before, .btn-icon-first .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-icon-first .btn-imprimer:before, .btn-icon-first .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-icon-first .btn-imprimer:before, .btn-icon-first .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-icon-first .btn-imprimer:before, .btn-icon-first .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit:before, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action .btn-icon-first a.voir-produit:before, .btn-icon-first .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit:before, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container .btn-icon-first a.voir-produit:before, .btn-icon-first .TPL_TUNNEL .adresse-form-container .materiel-print-btn a:before, .TPL_TUNNEL .adresse-form-container .materiel-print-btn .btn-icon-first a:before, .btn-icon-first .materiel-print-btn .TPL_TUNNEL .adresse-form-container a:before, .materiel-print-btn .TPL_TUNNEL .adresse-form-container .btn-icon-first a:before, .btn-icon-first .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a:before, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf .btn-icon-first a:before, .btn-icon-first .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a:before, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container .btn-icon-first a:before, .btn-icon-first .TPL_TUNNEL .adresse-form-container .bouton-vert:before, .TPL_TUNNEL .adresse-form-container .btn-icon-first .bouton-vert:before, .btn-icon-first .TPL_TUNNEL .adresse-form-container .form-submit button:before, .TPL_TUNNEL .adresse-form-container .form-submit .btn-icon-first button:before, .btn-icon-first .form-submit .TPL_TUNNEL .adresse-form-container button:before, .form-submit .TPL_TUNNEL .adresse-form-container .btn-icon-first button:before,
.btn-icon-first .TPL_TUNNEL .adresse-form-container .form-submit input[type="submit"]:before, .TPL_TUNNEL .adresse-form-container .form-submit .btn-icon-first input[type="submit"]:before, .btn-icon-first .form-submit .TPL_TUNNEL .adresse-form-container input[type="submit"]:before, .form-submit .TPL_TUNNEL .adresse-form-container .btn-icon-first input[type="submit"]:before, .btn-icon-first .TPL_TUNNEL .adresse-form-container .bouton-gris:before, .TPL_TUNNEL .adresse-form-container .btn-icon-first .bouton-gris:before, .btn-icon-first .TPL_TUNNEL .adresse-form-container .bouton-rouge:before, .TPL_TUNNEL .adresse-form-container .btn-icon-first .bouton-rouge:before, .btn-icon-first .TPL_TUNNEL .adresse-form-container .bouton-retour:before, .TPL_TUNNEL .adresse-form-container .btn-icon-first .bouton-retour:before, .btn-icon-first .TPL_TUNNEL .adresse-form-container .bouton-rechercher:before, .TPL_TUNNEL .adresse-form-container .btn-icon-first .bouton-rechercher:before, .btn-icon-first .TPL_TUNNEL .adresse-form-container .btn-ajouter-au-panier:before, .TPL_TUNNEL .adresse-form-container .btn-icon-first .btn-ajouter-au-panier:before,
.btn-icon-first .TPL_TUNNEL .adresse-form-container .btn-liste-achat-activate:before, .TPL_TUNNEL .adresse-form-container .btn-icon-first .btn-liste-achat-activate:before, .btn-icon-first .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous a:before, .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous .btn-icon-first a:before, .btn-icon-first .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container a:before, .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container .btn-icon-first a:before, .btn-icon-first .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste:before, .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .btn-icon-first .btn-ajouter-liste:before, .btn-icon-first .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .btn-ajouter-liste:before, .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .btn-icon-first .btn-ajouter-liste:before, .btn-icon-first .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .btn-submit:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .btn-icon-first .btn-submit:before, .btn-icon-first .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .btn-submit:before, .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .btn-icon-first .btn-submit:before, .btn-icon-first .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir .btn-icon-first a:before, .btn-icon-first .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir .btn-icon-first button:before, .btn-icon-first .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit .btn-icon-first a:before, .btn-icon-first .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit .btn-icon-first button:before, .btn-icon-first .form-recherche-paniers-passes .form-submit button span:before, .form-recherche-paniers-passes .form-submit button .btn-icon-first span:before, .btn-icon-first .fiche-adherent__coordonnes p:before, .fiche-adherent__coordonnes .btn-icon-first p:before, .btn-icon-first .TPL_ORCAB_AGENDA .changeVue:before, .TPL_ORCAB_AGENDA .btn-icon-first .changeVue:before, .btn-icon-first .TPL_ORCAB_AGENDA .bouton-details:before, .TPL_ORCAB_AGENDA .btn-icon-first .bouton-details:before, .btn-icon-first .TPL_LISTE_AGENDA_ACCUEIL .bloc-icone:before, .TPL_LISTE_AGENDA_ACCUEIL .btn-icon-first .bloc-icone:before, .btn-icon-first .c-agenda__bloc:before, .btn-icon-first .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-date:before, .TPL_ORCAB_FEED_ET_A_LA_UNE .btn-icon-first .feed-date:before {
  font-size: 2rem;
  margin-right: 0.8rem;
  font-weight: normal;
}

.btn-panier-actif,
.btn-definir-panier-actif,
.btn-valider-panier,
.btn-modifier-panier,
.btn-refuser-panier,
.btn-dupliquer-liste-achat,
.btn-supprimer-liste-achat,
.btn-generer-pdf,
.btn-print-chifree,
.btn-print-nonchifree {
  font-weight: 700;
  line-height: 1;
  display: flex;
  padding: 10px 30px;
  align-items: center;
}

.btn-panier-actif::before,
.btn-definir-panier-actif::before,
.btn-valider-panier::before,
.btn-modifier-panier::before,
.btn-refuser-panier::before,
.btn-dupliquer-liste-achat::before,
.btn-supprimer-liste-achat::before,
.btn-generer-pdf::before,
.btn-print-chifree::before,
.btn-print-nonchifree::before {
  margin-right: 8px;
  font-size: 2rem;
}

.btn-panier-actif > a,
.btn-definir-panier-actif > a,
.btn-valider-panier > a,
.btn-modifier-panier > a,
.btn-refuser-panier > a,
.btn-dupliquer-liste-achat > a,
.btn-supprimer-liste-achat > a,
.btn-generer-pdf > a,
.btn-print-chifree > a,
.btn-print-nonchifree > a {
  color: #ffffff;
  text-decoration: none;
}

.btn-panier-actif:hover a,
.btn-definir-panier-actif:hover a,
.btn-valider-panier:hover a,
.btn-modifier-panier:hover a,
.btn-refuser-panier:hover a,
.btn-dupliquer-liste-achat:hover a,
.btn-supprimer-liste-achat:hover a,
.btn-generer-pdf:hover a,
.btn-print-chifree:hover a,
.btn-print-nonchifree:hover a {
  color: #ffffff;
}

.btn-panier-actif {
  color: #82aa37;
}

.btn-panier-actif:before {
  color: #82aa37;
}

.btn-panier-actif:hover:before {
  color: #ffffff;
}

.btn-panier-actif:before,
.btn-definir-panier-actif:before,
.btn-valider-panier:before {
  content: "\e979";
}

.btn-modifier-panier:before {
  content: "\e96d";
}

.btn-refuser-panier:before {
  content: "\e97b";
}

.btn-dupliquer-liste-achat:before {
  content: "\e95a";
}

.btn-supprimer-liste-achat:before {
  content: "\e957";
}

.btn-generer-pdf:before {
  content: "\e938";
  font-size: 1.8rem;
}

.btn-print-chifree:before {
  content: "\e96e";
}

.btn-print-nonchifree:before {
  content: "\e96b";
}

.adresse-modifier-enregistrer:before {
  content: '\e961';
}

.adresse-modifier-auto-remplir-adr-fact:before {
  content: '\e960';
}

.adresse-afficher-map:before {
  content: '\e958';
}

.adresse-modifier-annuler:before {
  content: '\e957';
}

.addToPanierModal__title {
  font-weight: 500;
}

#addToPanierModalBody .addToPanierModal__dataProduct {
  text-align: left;
  margin-bottom: 1rem;
}

#addToPanierModalBody .addToPanierModal__dataProduct .addToPanierModal__title {
  color: #004462;
  font-weight: 700;
  margin-bottom: 0.3rem;
}

#addToPanierModalBody .addToPanierModal__dataProduct .addToPanierModal__content span {
  color: #004462;
}

#addToPanierModalBody .field label {
  font-weight: 700;
}

#addToPanierModalBody .field textarea {
  border: 1px solid #c4c4c4;
}

.addToPanierModal__footer {
  display: flex;
  gap: 20px;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .addToPanierModal__footer {
    flex-direction: column;
    gap: 10px;
  }
}

.addToPanierModal__footer .btn-valider,
.addToPanierModal__footer .btn-annuler {
  min-width: 210px;
}

/* ===================================================================
 * LIGHTBOX
 * =================================================================*/
.fancybox-overlay {
  background: url(/build/images/fancybox_overlay.f0eb3448.png);
}

.fancybox-overlay #fancybox-loading,
.fancybox-overlay .fancybox-close,
.fancybox-overlay .fancybox-prev span,
.fancybox-overlay .fancybox-next span {
  background-image: url(/build/images/fancybox_sprite.7b8e2ce6.png);
}

/* ===================================================================
 * bloc plaquette orcab
 * =================================================================*/
/*
    e.x : page d'accueil
*/
.plaquette-orcab {
  background-color: #f6f6f6;
  padding: 30px 30px 30px 115px;
}

.plaquette-orcab .inner {
  background: url(/build/images/plaquette-orcab.14810a20.png) no-repeat right bottom;
  padding: 70px 20px 70px 200px;
  position: relative;
}

.plaquette-orcab .inner img {
  position: absolute;
  left: 0;
  bottom: 0;
  border: 0 none;
  background: transparent;
  padding: 0;
}

.plaquette-orcab .inner h3 {
  font-size: 2.7rem;
  color: #82aa37;
}

/* ===================================================================
 * bloc contact
 * =================================================================*/
.TPL_CONTACT .piece-jointe .collection-plus {
  clear: both;
}

.TPL_CONTACT .piece-jointe .fichierJoints div {
  float: left;
}

.TPL_CONTACT .piece-jointe .fichierJoints div:nth-child(2n) {
  float: right;
}

/* ===================================================================
 * contact component (used in agenda)
 * =================================================================*/
.c-contacts__list {
  display: flex;
  flex-flow: row wrap;
  gap: 20px 30px;
}

@media screen and (max-width: 767px) {
  .c-contacts__list {
    flex-direction: column;
  }
}

.c-contacts__item {
  border-radius: 5px;
  border: 1px solid #cecece;
  background-color: #ffffff;
  padding: 24px 15px 3px;
  font-size: 1.4rem;
  line-height: 1.8rem;
  font-weight: 700;
  color: #003160;
  box-sizing: border-box;
}

@media screen and (min-width: 768px) {
  .c-contacts__item {
    width: calc(50% - 15px);
  }
}

.c-contacts__top {
  padding-bottom: 12px;
  margin-bottom: 12px;
}

.c-contacts__top--border {
  border-bottom: 1px solid #e9e9e9;
}

.c-contacts__heading {
  font-size: 1.6rem;
  line-height: 2.4rem;
  font-weight: 700;
  margin-bottom: 0;
}

.c-contacts__pole {
  color: #545454;
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 2.4rem;
}

.c-contacts__mail, .c-contacts__tel {
  padding-left: 40px;
  padding-bottom: 12px;
  text-decoration: none;
  position: relative;
}

.c-contacts__mail::before, .c-contacts__tel::before {
  position: absolute;
  top: 2px;
  left: 0;
  font-size: 20px;
  width: 24px;
  color: #868686;
}

.c-contacts__mail::before {
  content: '\e981';
}

.c-contacts__tel::before {
  content: '\e987';
}

.c-contacts__mail + .c-contacts__tel {
  margin-top: 12px;
  padding-top: 12px;
  padding-bottom: 12px;
}

.c-contacts__mail + .c-contacts__tel:before {
  top: 12px;
}

.c-contacts__mail + .c-contacts__tel:after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 50px;
  height: 1px;
  background-color: #e9e9e9;
}

.c-contacts a {
  color: #003160;
}

.c-contacts p {
  margin: 0;
}

/* ===================================================================
 * document component (used in agenda)
 * =================================================================*/
.c-documents__list {
  display: flex;
  flex-flow: row wrap;
  gap: 20px 30px;
}

@media screen and (max-width: 767px) {
  .c-documents__list {
    flex-direction: column;
  }
}

.c-documents__item {
  padding: 0 0 7px;
  border-bottom: 1px solid #cecece;
  font-size: 1.4rem;
  line-height: 1.8rem;
  color: #003160;
  position: relative;
}

@media screen and (min-width: 768px) {
  .c-documents__item {
    width: calc(50% - 15px);
  }
}

.c-documents a {
  color: #003160;
  text-decoration: none;
  padding-left: 30px;
}

.c-documents a::before {
  position: absolute;
  bottom: 7px;
  left: 0;
  font-size: 20px;
  width: 24px;
  color: #003160;
}

.c-documents a::before {
  content: '\e92e';
}

.c-documents a[href*=".txt"]::before {
  content: '\e936';
}

.c-documents a[href*=".pdf"]::before {
  content: '\e922';
}

.c-documents a[href*=".xls"]::before, .c-documents a[href*=".xlsx"]::before {
  content: '\e934';
}

.c-documents a[href*=".png"]::before {
  content: '\e90f';
}

.c-documents a[href*=".flv"]::before, .c-documents a[href*=".mp4"]::before {
  content: '\e910';
}

.c-documents a[href*=".ppt"]::before, .c-documents a[href*=".pptx"]::before {
  content: '\e928';
}

.c-documents a[href*=".doc"]::before, .c-documents a[href*=".docx"]::before {
  content: '\e93c';
}

.c-documents a:after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 2;
}

/* ===================================================================
 * Bouton Favoris
 * =================================================================*/
.titre-avec-favoris {
  padding-right: 235px;
  position: absolute;
  min-height: 48px;
  right: 0;
  z-index: 1;
}

@media screen and (max-width: 1024px) {
  .titre-avec-favoris {
    padding-right: 65px;
    top: inherit;
  }
}

@media screen and (min-width: 1024px) {
  .titre-avec-favoris.favorisListeProduit {
    top: -8px;
  }
}

.titre-avec-favoris.favorisPageCommande {
  top: -23px;
}

@media screen and (max-width: 1024px) {
  .titre-avec-favoris.favorisPageCommande {
    top: -18px;
  }
}

#volet-actualite .titre-avec-favoris {
  right: 60px;
}

@media screen and (max-width: 1024px) {
  #volet-actualite .titre-avec-favoris {
    top: auto;
  }
}

.favoris-btn-container {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  right: 0;
}

.favoris-btn-container a {
  font-size: 1.4rem;
  line-height: 1.7rem;
  border-color: #cecece;
  padding: 9px 20px;
  border-radius: 7px;
  font-weight: 700;
  background: #ffffff;
  text-decoration: none;
  float: right;
  color: #003160;
}

.favoris-btn-container a:before {
  content: "\e96a";
  margin-right: 5px;
  font-size: 2rem;
  display: inline-block;
  vertical-align: sub;
  color: #003160;
}

.favoris-btn-container a:hover {
  background-color: #003160;
  color: #ffffff;
}

.favoris-btn-container a:hover:before {
  color: #ffffff;
}

@media screen and (max-width: 1024px) {
  .favoris-btn-container a {
    width: 38px;
    height: 38px;
    text-indent: -9999px;
    padding: 0;
    line-height: normal;
    position: relative;
  }
  .favoris-btn-container a:before {
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    position: absolute;
    text-indent: 0;
    margin-right: 0;
    font-size: 20px;
  }
}

.favoris-btn-container .loader {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.col-main.inner-content > .titre-avec-favoris {
  right: 15px;
}

.with-btn-favoris #slot_main > .cms-bloc:first-child > .cms-tpl > .TPL_REDACTIONEL h3, .with-btn-favoris #slot_main > .cms-bloc:first-child > .cms-tpl > .TPL_REDACTIONEL h4 {
  margin-top: 7px;
}

/* ===================================================================
 * SERVICE EXTERNE
 * =================================================================*/
.TPL_SERVICE_EXTERNE iframe {
  min-height: 50vh;
}

/* ===================================================================
 * SURCHARGE SELECT2 PSEUDO
 * =================================================================*/
/* HEADER select2 */
#mhListeBoutique .select2-container:after {
  display: none;
}

/* ===================================================================
 * MEDIAQUERIES
 * =================================================================*/
@media screen and (max-width: 1024px) {
  /* ===================================================================
     * STRUCTURE
     * =================================================================*/
  .inner-content {
    padding: 0 20px;
  }
  .with-col-left .col-main {
    width: 100%;
  }
  .with-col-left .titre-page {
    margin-left: 0;
  }
  /* ===================================================================
     * STYLES GENERIQUES
     * =================================================================*/
  .bouton-retour {
    padding: 6px 0;
    text-indent: -99999px;
    width: 30px;
    position: relative;
  }
  .bouton-retour::before {
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    position: absolute;
    float: left;
    text-indent: 0;
  }
  /* ===================================================================
    * FORMULAIRE DE CONTACT
    * =================================================================*/
  .TPL_CONTACT .left50,
  .TPL_CONTACT .right50 {
    width: 100%;
    float: none;
  }
  .TPL_CONTACT .piece-jointe .fichierJoints div {
    float: none;
  }
  .TPL_CONTACT .piece-jointe .fichierJoints div:nth-child(2n) {
    float: none;
  }
  /* ===================================================================
    * ACCUEIL
    * =================================================================*/
  .accueil .cms-bloc.fl-l-50, .accueil .cms-bloc.fl-r-50, .accueil .cms-bloc.fl-l-33, .accueil .cms-bloc.fl-c-33, .accueil .cms-bloc.fl-r-33 {
    margin-bottom: 60px;
  }
  .form-btn-group li {
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 767px) {
  /* ===================================================================
    * STYLES GENERIQUES
    * =================================================================*/
  .liste-generique .item, .TPL_LISTE_ACTUALITE .liste-actualite .item {
    height: auto;
  }
  .liste-generique .item .description .gauche, .TPL_LISTE_ACTUALITE .liste-actualite .item .description .gauche, .liste-generique .item .description .droite, .TPL_LISTE_ACTUALITE .liste-actualite .item .description .droite {
    width: 100%;
    float: none;
    padding-left: 0;
  }
  .liste-generique .item .description .droite, .TPL_LISTE_ACTUALITE .liste-actualite .item .description .droite {
    height: 45px;
    position: relative;
    top: -45px;
    background-color: rgba(255, 255, 255, 0.8);
    border-radius: 5px 5px 0 0;
    padding: 10px 10px 0 10px;
    margin-bottom: -45px;
    text-align: right;
  }
  .liste-generique .item .description .gauche, .TPL_LISTE_ACTUALITE .liste-actualite .item .description .gauche {
    padding: 25px;
  }
  .liste-generique .item > div:not(.thumbnail) .description .droite, .TPL_LISTE_ACTUALITE .liste-actualite .item > div:not(.thumbnail) .description .droite {
    top: 0;
    margin-bottom: 0;
  }
  .bouton-creer-panier a span {
    display: none;
  }
  /*
    groupe de boutons multiples sur la meme ligne
    e.x : page creer panier
    */
  .form-btn-group li {
    display: block;
    margin-right: 0;
    margin-bottom: 15px;
  }
  /* ===================================================================
    * COLONAGE
    * =================================================================*/
  .cms-bloc.fl-l-50, .cms-bloc.fl-r-50, .cms-bloc.fl-l-33, .cms-bloc.fl-c-33, .cms-bloc.fl-r-33 {
    width: 100%;
    clear: both;
    float: none;
  }
  .cms-bloc.fl-l, .cms-bloc.fl-r {
    clear: both;
    float: none;
  }
  /* ===================================================================
     * plaquette-orcab
     * =================================================================*/
  .fl-l-50 .plaquette-orcab,
  .plaquette-orcab {
    padding: 30px 15px;
  }
  .fl-l-50 .plaquette-orcab .inner,
  .plaquette-orcab .inner {
    text-align: center;
    padding: 0 0 30px 0;
  }
  .fl-l-50 .plaquette-orcab .inner img,
  .plaquette-orcab .inner img {
    position: relative;
  }
  /* ===================================================================
     * DATEPICKER
     * =================================================================*/
  .ui-datepicker {
    width: 80.35%;
  }
}

/* ===================================================================
 * HOMEPAGE
 * =================================================================*/
.accueil {
  /* fix temporaire - col gauche */
}

.accueil .col-left {
  position: relative;
  z-index: 2;
}

.accueil main {
  margin-left: 378px;
  padding-right: 60px;
}

@media (max-width: 1440px) {
  .accueil main {
    margin-left: 25.5rem;
  }
}

@media (max-width: 1024px) {
  .accueil main {
    margin-left: 0;
    padding: 0 40px;
  }
}

@media (max-width: 767px) {
  .accueil main {
    padding: 0 20px;
  }
}

.accueil main .inner-content {
  max-width: none;
  padding: 0;
}

.accueil .TPL_CATEGORIE_LISTE_PRODUITS_REDAC {
  padding: 10px 15px;
}

@media (min-width: 1025px) {
  .accueil .TPL_CATEGORIE_LISTE_PRODUITS_REDAC {
    padding: 10px 30px;
  }
}

.accueil .TPL_CATEGORIE_LISTE_PRODUITS_REDAC h2, .accueil .TPL_CATEGORIE_LISTE_PRODUITS_REDAC .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .accueil .TPL_CATEGORIE_LISTE_PRODUITS_REDAC h1, .accueil .TPL_CATEGORIE_LISTE_PRODUITS_REDAC .fiche-adherent h1, .fiche-adherent .accueil .TPL_CATEGORIE_LISTE_PRODUITS_REDAC h1,
.accueil .TPL_CATEGORIE_LISTE_PRODUITS_REDAC .tri-categorie,
.accueil .TPL_CATEGORIE_LISTE_PRODUITS_REDAC .liste-produits-wrapper {
  margin: 0 auto;
}

.accueil .TPL_CATEGORIE_LISTE_PRODUITS_REDAC .titre-avec-favoris {
  margin-bottom: 10px;
}

.accueil .fl-l-50 {
  padding-right: 15px;
}

.accueil .fl-r-50 {
  padding-left: 15px;
}

/*
    bloc mise en avant
    e.x : Solutions COLLABORATIVES sur la page d'accueil
*/
.mise-en-avant {
  position: relative;
  background-color: #004462;
  border-right: 30px solid #ffffff;
}

.mise-en-avant .contenu {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  width: 100%;
  box-sizing: border-box;
  padding: 0 70px;
  color: #ffffff;
}

.mise-en-avant .contenu h3 {
  font-size: 3.5rem;
  color: #ffffff;
}

.mise-en-avant .contenu a {
  padding: 15px 30px;
  text-decoration: none;
}

.mise-en-avant .inner > p {
  margin-bottom: 0;
}

.mise-en-avant .TPL_REDACTIONEL {
  margin-bottom: 0;
  min-height: 300px;
}

.mise-en-avant .TPL_REDACTIONEL img {
  border: 0 none;
  padding: 0;
  width: 100%;
  display: block;
}

.bloc-fond-gris {
  background-color: #f6f6f6;
}

@media screen and (max-width: 1024px) {
  /* ===================================================================
    * ACCUEIL
    * =================================================================*/
  .accueil .cms-bloc.fl-l-50, .accueil .cms-bloc.fl-r-50 {
    margin-bottom: 60px;
  }
}

@media screen and (max-width: 767px) {
  /* ===================================================================
     * PAGE ACCUEIL
     * =================================================================*/
  .mise-en-avant .contenu {
    padding: 0 30px;
  }
  .mise-en-avant .contenu h3 {
    font-size: 2.5rem;
  }
  .accueil .TPL_REDACTIONEL, .accueil .TPL_PARTAGE {
    margin-bottom: 60px;
    padding: 0 15px;
  }
  .accueil .cms-bloc.fl-l-50, .accueil .cms-bloc.fl-r-50 {
    width: 100%;
    clear: both;
    padding: 0;
    margin-bottom: 50px;
  }
  .mise-en-avant {
    border-right: 0 none;
  }
}

/* ===================================================================
 * TPL_ORCAB_LISTE_FORMULAIRE_ACCUEIL_TEMPLATE
 * =================================================================*/
.TPL_ORCAB_LISTE_FORMULAIRE_ACCUEIL_TEMPLATE {
  background-color: #ffffff;
  padding: 10px 0;
}

.TPL_ORCAB_LISTE_FORMULAIRE_ACCUEIL_TEMPLATE .inner {
  margin: 0 auto;
  padding: 3rem;
}

.TPL_ORCAB_LISTE_FORMULAIRE_ACCUEIL_TEMPLATE .pag.hide {
  display: none;
}

.TPL_ORCAB_LISTE_FORMULAIRE_ACCUEIL_TEMPLATE .info-stats {
  margin-top: 0.75em;
  float: left;
  margin-left: 15px;
}

/* ===================================================================
 * TPL_COMMUNICATION
 * =================================================================*/
/*
    bloc communication orcab
    e.x : page d'accueil
*/
.TPL_COMMUNICATION {
  padding: 60px;
  background-color: #ffffff;
  margin-bottom: 90px;
}

.TPL_COMMUNICATION .communication h2, .TPL_COMMUNICATION .communication .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_COMMUNICATION .communication h1, .TPL_COMMUNICATION .communication .fiche-adherent h1, .fiche-adherent .TPL_COMMUNICATION .communication h1 {
  padding-right: 60px;
}

.TPL_COMMUNICATION .communication h3 {
  font-weight: 700;
  margin-bottom: 2rem;
}

.TPL_COMMUNICATION p {
  font-size: 1.3rem;
  line-height: 1.8rem;
  margin: 0 0 2rem;
}

.fl-l-50 .TPL_COMMUNICATION,
.fl-r-50 .TPL_COMMUNICATION {
  padding: 30px;
}

@media screen and (max-width: 1024px) {
  /* ===================================================================
       * TPL COMMUNICATION ACCUEIL
       * =================================================================*/
  .TPL_COMMUNICATION {
    padding: 40px;
  }
}

@media screen and (max-width: 767px) {
  /* ===================================================================
        * TPL COMMUNICATION ACCUEIL
        * =================================================================*/
  .TPL_COMMUNICATION {
    padding: 60px 20px 102px;
  }
  .TPL_COMMUNICATION .bloc-titre-pag .pag {
    transform: translateX(-50%);
    left: 50%;
    position: absolute;
    bottom: 60px;
    margin: 0;
  }
}

/* ===================================================================
 * SUIVI
 * =================================================================*/
/* ===================================================================
 * TEMPLATE CONNEXION
 * =================================================================*/
body.pseudo .TPL_LOGIN {
  top: inherit;
}

.TPL_LOGIN {
  background: #004462;
  color: #fff;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  z-index: 20;
}

.TPL_LOGIN > .inner {
  overflow: auto;
  height: 100%;
}

.TPL_LOGIN .login-error {
  color: #e05151;
}

.TPL_LOGIN .bloc-client-login {
  max-width: 1170px;
  margin: 11% auto 3%;
  display: table;
  width: 100%;
  table-layout: fixed;
}

.TPL_LOGIN .bloc-client-login > div {
  display: table-cell;
  vertical-align: top;
}

.TPL_LOGIN .bloc-client-login > div .inner {
  position: relative;
  margin: 0 auto;
}

.TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie {
  margin-top: 20px;
}

.TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie a {
  color: #ffffff;
  text-decoration: underline;
  position: relative;
  padding-left: 20px;
  display: inline-block;
}

.TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie a:before {
  content: "\e907";
  position: absolute;
  top: 4px;
  left: 0;
  font-size: 12px;
}

.TPL_LOGIN .bloc-client-login h5 {
  color: #ffffff;
}

.TPL_LOGIN .gauche {
  border-radius: 10px 0 0 10px;
  background: url(/build/images/fond-login.e7eae164.png) no-repeat;
  width: auto;
  background-size: cover;
}

.TPL_LOGIN .gauche .inner {
  width: 64.9%;
  padding: 11% 0 0;
}

.TPL_LOGIN .droite {
  width: 41.24%;
  background: #01374f;
  border-radius: 0 10px 10px 0;
}

.TPL_LOGIN .droite .inner {
  width: 67.5%;
  padding: 11% 0 0;
}

.TPL_LOGIN p {
  margin: 0;
}

.TPL_LOGIN .txt1 img {
  display: block;
  margin-top: 13px;
}

.TPL_LOGIN .txt2 {
  font-size: 1.8rem;
  margin: 50px 0 20px;
}

.TPL_LOGIN .txt2 span {
  font-size: 1.333em;
  font-weight: bold;
  display: block;
  margin-bottom: 8px;
}

.TPL_LOGIN .field {
  margin: 30px 0;
  position: relative;
}

.TPL_LOGIN label.ico {
  width: 50px;
  line-height: 50px;
  text-align: center;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}

.TPL_LOGIN label.ico::after {
  content: "";
  background: #c4c4c4;
  display: block;
  width: 1px;
  height: 30px;
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  right: 0;
}

.TPL_LOGIN label.ico.mdp::after {
  font-size: 1.188em;
}

.TPL_LOGIN input {
  font-size: 1.6rem;
  color: #004462;
  font-weight: bold;
  width: 100%;
  padding: 5px 15px 5px 65px;
  height: 50px;
  border: none;
  border-radius: 5px;
  box-sizing: border-box;
}

.TPL_LOGIN input::-moz-placeholder {
  opacity: 1;
}

.TPL_LOGIN input:-ms-input-placeholder {
  color: #004462;
}

.TPL_LOGIN input:-moz-placeholder {
  color: #004462;
}

.TPL_LOGIN .btn-submit {
  font-size: 1.7rem;
  background: #82aa37;
  color: #fff;
  font-weight: bold;
  border-radius: 5px;
  border: none;
  padding: 14px 20px;
  width: 100%;
}

.TPL_LOGIN .btn-submit:hover {
  filter: alpha(opacity=90);
  opacity: 0.9;
}

.TPL_LOGIN .txt-mdp {
  font-size: 1.4rem;
  margin-top: 41%;
}

@media screen and (max-width: 1024px) {
  .TPL_LOGIN .bloc-client-login {
    width: 95%;
  }
  .TPL_LOGIN .droite {
    width: 48.63%;
  }
  .TPL_LOGIN .droite .inner {
    width: 80%;
  }
}

@media screen and (max-width: 767px) {
  .TPL_LOGIN .bloc-client-login {
    width: 90%;
  }
  .TPL_LOGIN .bloc-client-login > div {
    width: 100%;
    display: inline-block;
  }
  .TPL_LOGIN .gauche {
    border-radius: 10px 10px 0 0;
    height: auto;
    padding-bottom: 10px;
  }
  .TPL_LOGIN .gauche .inner {
    padding-top: 15px;
    text-align: center;
    width: 80%;
  }
  .TPL_LOGIN .droite {
    border-radius: 0 0 10px 10px;
    background: transparent;
  }
  .TPL_LOGIN .droite .inner {
    box-sizing: border-box;
    padding: 0 10px 25px;
    width: 100%;
    background: #01374f;
    border-radius: 0 0 10px 10px;
    display: inline-block;
  }
  .TPL_LOGIN .droite .login-error {
    padding: 10px 0;
  }
  .TPL_LOGIN .txt1 img {
    width: 320px;
    margin: 13px auto 0;
  }
  .TPL_LOGIN .txt2 {
    margin-top: 15px;
  }
  .TPL_LOGIN .field {
    margin: 10px 0;
  }
  .TPL_LOGIN .txt-mdp {
    margin-top: 15%;
  }
}

/* ===================================================================
 * GENERALITES COMPTE / SUIVI
 * =================================================================*/
.table-entete-grise {
  font-size: 1.6rem;
  line-height: 2.4rem;
  color: #868686;
  border: none;
  width: 100%;
  box-sizing: border-box;
}

.table-entete-grise td {
  padding: 25px 20px;
  box-sizing: border-box;
}

.table-entete-grise th {
  color: #fff;
  font-weight: 400;
  background-color: #003160;
  text-align: left;
  padding: 20px;
  font-size: 1.4rem;
  line-height: 1.9rem;
}

.table-entete-grise > tbody > tr:nth-child(even), .table-entete-grise > tr:nth-child(even) {
  background-color: #f8f8f8;
}

.table-entete-grise > tbody > tr:nth-child(odd), .table-entete-grise > tr:nth-child(odd) {
  background-color: #fff;
}

.table-entete-grise tfoot tr {
  background: #fff;
  font-weight: bold;
  color: #404040;
  font-size: 1.8rem;
}

.table-entete-grise .article {
  font-size: 1.3rem;
  line-height: 1.8rem;
}

.table-entete-grise .article .libelle-code-webservice {
  color: #004462;
}

a.cmd-contact-btn {
  color: #004462;
  text-decoration: none;
}

a.cmd-contact-btn__txt {
  display: none;
}

.bouton-deplier-liste span {
  display: none;
}

.bouton-deplier-liste:hover {
  cursor: pointer;
}

.bouton-deplier-liste::after {
  content: "\f107";
  font-size: 1.8rem;
  position: relative;
  background: #545454;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  border-radius: 50%;
}

.bouton-deplier-liste.active::after {
  transform: rotate(180deg);
}

.fiche-retour-produit-toggle {
  display: none !important;
  clear: both;
  text-align: right;
}

.fiche-retour-produit-toggle a {
  text-decoration: none;
  font-weight: bold;
  display: flex;
}

.fiche-retour-produit-toggle a::after {
  font-weight: normal;
  content: "\f107";
  font-size: 1.8rem;
  position: relative;
  background: #545454;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  border-radius: 50%;
  margin-left: 10px;
}

.fiche-retour-produit-toggle a:hover {
  text-decoration: none;
}

.fiche-retour-produit-toggle.active a::after {
  transform: rotate(180deg);
}

.fiche-retour-produit-toggle-content {
  display: none;
  opacity: 0;
}

.fiche-retour-produit-toggle-content.active {
  display: block;
  opacity: 1;
  transition: opacity .25s ease-in-out;
  -moz-transition: opacity .25s ease-in-out;
  -webkit-transition: opacity .25s ease-in-out;
}

.fiche-retour-header {
  background-color: #ffffff;
  border-radius: 5px;
  padding: 30px;
  margin-bottom: 20px;
}

.fiche-retour-header:before, .fiche-retour-header:after {
  display: table;
  content: " ";
}

.fiche-retour-header:after {
  clear: both;
}

.fiche-retour-header > dl {
  margin: 0 30px 0 0;
  position: relative;
  border-right: 1px solid #e8e8e8;
  padding: 0 30px;
  box-sizing: border-box;
  display: inline-block;
  vertical-align: top;
}

.fiche-retour-header > dl:last-child {
  border-right: 0 none;
  margin-right: 0;
  padding-right: 0;
}

.fiche-retour-header > dl::before {
  display: block;
  position: absolute;
  font-size: 24px;
  color: #868686;
  left: 0;
  top: 0;
}

.fiche-retour-header > dl dt, .fiche-retour-header > dl dd {
  padding: 0;
  margin: 0;
}

.fiche-retour-header > dl dt {
  color: #82aa37;
  font-weight: 400;
}

.fiche-retour-header > dl dd {
  position: relative;
}

.fiche-retour-header .num-internet::before {
  content: "\e9c9";
  top: 3px;
}

.fiche-retour-header .date-co::before {
  content: '\e95f';
}

.fiche-retour-header .ref::before {
  content: '\e95b';
}

.fiche-retour-header .statut::before {
  content: '\e985';
}

.fiche-retour-header .interlocuteur::before {
  content: '\e926';
}

.fiche-retour-header .pull-right {
  float: right;
}

.fiche-retour-header .btn-edit {
  background: #82aa37;
  border: 0;
  color: #ffffff;
  padding: 0;
  font-size: 10px;
  width: 17px;
  height: 17px;
  border-radius: 2px;
  margin-left: 5px;
  transform: translateY(-2px);
}

.fiche-retour-header .btn-edit .icomoon:before, .fiche-retour-header .btn-edit #bandeau-haut .show-tablet .btn:before, #bandeau-haut .show-tablet .fiche-retour-header .btn-edit .btn:before, .fiche-retour-header .btn-edit .favoris-btn-container a:before, .favoris-btn-container .fiche-retour-header .btn-edit a:before, .fiche-retour-header .btn-edit .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie a:before, .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie .fiche-retour-header .btn-edit a:before, .fiche-retour-header .btn-edit .TPL_ORCAB_LISTE_ACHAT .item-commande[data-type="2"]:before, .TPL_ORCAB_LISTE_ACHAT .fiche-retour-header .btn-edit .item-commande[data-type="2"]:before, .fiche-retour-header .btn-edit .TPL_DIAPORAMA_ORCAB .carousel-action.play:before, .TPL_DIAPORAMA_ORCAB .fiche-retour-header .btn-edit .carousel-action.play:before, .fiche-retour-header .btn-edit .liste-produits .bouton-ajout-produit-liste:before, .liste-produits .fiche-retour-header .btn-edit .bouton-ajout-produit-liste:before, .fiche-retour-header .btn-edit .liste-produits .delete-product:before, .liste-produits .fiche-retour-header .btn-edit .delete-product:before, .fiche-retour-header .btn-edit .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn:before, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .fiche-retour-header .btn-edit .btn:before, .fiche-retour-header .btn-edit .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .ico:before, .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .fiche-retour-header .btn-edit .ico:before, .fiche-retour-header .btn-edit .materiel-form-container .btn-search span:before, .materiel-form-container .btn-search .fiche-retour-header .btn-edit span:before, .fiche-retour-header .btn-edit .TPL_TUNNEL .adresse-form-container .bouton-bleu:before, .TPL_TUNNEL .adresse-form-container .fiche-retour-header .btn-edit .bouton-bleu:before, .fiche-retour-header .btn-edit .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .fiche-retour-header .btn-edit .btn-imprimer:before, .fiche-retour-header .btn-edit .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .fiche-retour-header .btn-edit .btn-imprimer:before, .fiche-retour-header .btn-edit .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .fiche-retour-header .btn-edit .btn-imprimer:before, .fiche-retour-header .btn-edit .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .fiche-retour-header .btn-edit .btn-imprimer:before, .fiche-retour-header .btn-edit .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit:before, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action .fiche-retour-header .btn-edit a.voir-produit:before, .fiche-retour-header .btn-edit .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit:before, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container .fiche-retour-header .btn-edit a.voir-produit:before, .fiche-retour-header .btn-edit .TPL_TUNNEL .adresse-form-container .materiel-print-btn a:before, .TPL_TUNNEL .adresse-form-container .materiel-print-btn .fiche-retour-header .btn-edit a:before, .fiche-retour-header .btn-edit .materiel-print-btn .TPL_TUNNEL .adresse-form-container a:before, .materiel-print-btn .TPL_TUNNEL .adresse-form-container .fiche-retour-header .btn-edit a:before, .fiche-retour-header .btn-edit .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a:before, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf .fiche-retour-header .btn-edit a:before, .fiche-retour-header .btn-edit .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a:before, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container .fiche-retour-header .btn-edit a:before, .fiche-retour-header .btn-edit .TPL_TUNNEL .adresse-form-container .bouton-vert:before, .TPL_TUNNEL .adresse-form-container .fiche-retour-header .btn-edit .bouton-vert:before, .fiche-retour-header .btn-edit .TPL_TUNNEL .adresse-form-container .form-submit button:before, .TPL_TUNNEL .adresse-form-container .form-submit .fiche-retour-header .btn-edit button:before, .fiche-retour-header .btn-edit .form-submit .TPL_TUNNEL .adresse-form-container button:before, .form-submit .TPL_TUNNEL .adresse-form-container .fiche-retour-header .btn-edit button:before,
.fiche-retour-header .btn-edit .TPL_TUNNEL .adresse-form-container .form-submit input[type="submit"]:before, .TPL_TUNNEL .adresse-form-container .form-submit .fiche-retour-header .btn-edit input[type="submit"]:before, .fiche-retour-header .btn-edit .form-submit .TPL_TUNNEL .adresse-form-container input[type="submit"]:before, .form-submit .TPL_TUNNEL .adresse-form-container .fiche-retour-header .btn-edit input[type="submit"]:before, .fiche-retour-header .btn-edit .TPL_TUNNEL .adresse-form-container .bouton-gris:before, .TPL_TUNNEL .adresse-form-container .fiche-retour-header .btn-edit .bouton-gris:before, .fiche-retour-header .btn-edit .TPL_TUNNEL .adresse-form-container .bouton-rouge:before, .TPL_TUNNEL .adresse-form-container .fiche-retour-header .btn-edit .bouton-rouge:before, .fiche-retour-header .btn-edit .TPL_TUNNEL .adresse-form-container .bouton-retour:before, .TPL_TUNNEL .adresse-form-container .fiche-retour-header .btn-edit .bouton-retour:before, .fiche-retour-header .btn-edit .TPL_TUNNEL .adresse-form-container .bouton-rechercher:before, .TPL_TUNNEL .adresse-form-container .fiche-retour-header .btn-edit .bouton-rechercher:before, .fiche-retour-header .btn-edit .TPL_TUNNEL .adresse-form-container .btn-ajouter-au-panier:before, .TPL_TUNNEL .adresse-form-container .fiche-retour-header .btn-edit .btn-ajouter-au-panier:before,
.fiche-retour-header .btn-edit .TPL_TUNNEL .adresse-form-container .btn-liste-achat-activate:before, .TPL_TUNNEL .adresse-form-container .fiche-retour-header .btn-edit .btn-liste-achat-activate:before, .fiche-retour-header .btn-edit .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous a:before, .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous .fiche-retour-header .btn-edit a:before, .fiche-retour-header .btn-edit .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container a:before, .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container .fiche-retour-header .btn-edit a:before, .fiche-retour-header .btn-edit .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste:before, .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .fiche-retour-header .btn-edit .btn-ajouter-liste:before, .fiche-retour-header .btn-edit .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .btn-ajouter-liste:before, .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .fiche-retour-header .btn-edit .btn-ajouter-liste:before, .fiche-retour-header .btn-edit .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .btn-submit:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .fiche-retour-header .btn-edit .btn-submit:before, .fiche-retour-header .btn-edit .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .btn-submit:before, .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .fiche-retour-header .btn-edit .btn-submit:before, .fiche-retour-header .btn-edit .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir .fiche-retour-header .btn-edit a:before, .fiche-retour-header .btn-edit .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir .fiche-retour-header .btn-edit button:before, .fiche-retour-header .btn-edit .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit .fiche-retour-header .btn-edit a:before, .fiche-retour-header .btn-edit .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit .fiche-retour-header .btn-edit button:before, .fiche-retour-header .btn-edit .form-recherche-paniers-passes .form-submit button span:before, .form-recherche-paniers-passes .form-submit button .fiche-retour-header .btn-edit span:before, .fiche-retour-header .btn-edit .fiche-adherent__coordonnes p:before, .fiche-adherent__coordonnes .fiche-retour-header .btn-edit p:before, .fiche-retour-header .btn-edit .TPL_ORCAB_AGENDA .changeVue:before, .TPL_ORCAB_AGENDA .fiche-retour-header .btn-edit .changeVue:before, .fiche-retour-header .btn-edit .TPL_ORCAB_AGENDA .bouton-details:before, .TPL_ORCAB_AGENDA .fiche-retour-header .btn-edit .bouton-details:before, .fiche-retour-header .btn-edit .TPL_LISTE_AGENDA_ACCUEIL .bloc-icone:before, .TPL_LISTE_AGENDA_ACCUEIL .fiche-retour-header .btn-edit .bloc-icone:before, .fiche-retour-header .btn-edit .c-agenda__bloc:before, .fiche-retour-header .btn-edit .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-date:before, .TPL_ORCAB_FEED_ET_A_LA_UNE .fiche-retour-header .btn-edit .feed-date:before {
  color: inherit;
}

.fiche-retour-header .retours-edit-fieldset {
  position: absolute;
  top: 0;
  left: 0;
  width: 280px;
  background: #ffffff;
  z-index: 1;
  border-radius: 5px;
  box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.2);
  padding: 5px 15px 5px 5px;
  box-sizing: border-box;
}

.fiche-retour-header .retours-edit-fieldset .input-field {
  position: relative;
  width: 175px;
  float: left;
}

.fiche-retour-header .retours-edit-fieldset .ui-datepicker-trigger {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  right: 15px;
}

.fiche-retour-header .retours-edit-fieldset .btn-icon {
  margin-top: 15px;
}

@media screen and (max-width: 374px) {
  .fiche-retour-header .retours-edit-fieldset {
    left: -55px;
  }
}

.fiche-retour-header-title {
  border-bottom: 1px solid #c4c4c4;
  margin-bottom: 20px;
  padding-bottom: 10px;
  font-size: 0.875em;
}

.fiche-retour-header-title span {
  display: inline-block;
  box-sizing: border-box;
}

.fiche-retour-header-title span:nth-child(1) {
  width: 202px;
}

.fiche-retour-header-title span:nth-child(2) {
  width: 207px;
  padding-left: 20px;
}

.fiche-retour-header-title span:nth-child(3) {
  width: 228px;
  padding-left: 20px;
}

@media screen and (max-width: 1024px) {
  .fiche-retour-header-title {
    display: none;
  }
}

.retour-fiche-toggle {
  display: none;
}

img.article-thumb {
  max-height: 70px;
  max-width: 120px;
}

/* ===================================================================
 * TEMPLATES SUIVI
 * =================================================================*/
.suivi-wrapper {
  margin-bottom: 40px;
}

.suivi-wrapper .col {
  width: 47.21461187214612%;
  float: left;
}

.suivi-wrapper .col:not(:first-child) {
  margin-left: 5.570776255707763%;
}

.suivi-wrapper .form-fields-wrapper > label {
  font-size: 1.6rem;
}

.suivi-wrapper .enLigne {
  display: inline;
}

.suivi-wrapper .enLigne > div > label {
  font-size: 2rem;
  font-weight: normal;
  color: #868686;
  display: inline-block;
}

.suivi-wrapper .enLigne label {
  display: inline-block;
}

.suivi-wrapper .tri-2col {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 1024px) {
  .suivi-wrapper .tri-2col {
    flex-direction: column;
  }
}

.suivi-wrapper .radio [type="radio"] + label {
  font-size: 1.6rem;
}

.suivi-wrapper .bouton-rechercher {
  margin-bottom: 55px;
  min-width: 190px;
}

.suivi-wrapper .suivi {
  margin-bottom: 20px;
}

.suivi-wrapper .ecopart {
  font-size: 1.2rem;
  font-weight: normal;
}

.suivi-wrapper .display-table {
  font-size: 1.6rem;
  line-height: 2.4rem;
}

.suivi-wrapper .display-table > div {
  vertical-align: middle;
  /*text-overflow: ellipsis;
            overflow: hidden;*/
  word-break: break-word;
}

.suivi-wrapper .display-table .action {
  text-align: right;
  width: 44px;
  box-sizing: border-box;
}

.suivi-wrapper .display-table.facture {
  background: #82aa37;
  color: #fff;
}

.suivi-wrapper .display-table.facture .lib {
  color: #fff;
}

@media screen and (min-width: 1025px) {
  .suivi-wrapper .display-table {
    display: flex;
    flex-flow: row wrap;
  }
  .suivi-wrapper .display-table > div:not(.action) {
    width: 10.52631578947368%;
    margin-right: 2.105263157894737%;
  }
  .suivi-wrapper .display-table .libelle {
    flex: 1;
  }
}

@media screen and (max-width: 1024px) {
  .suivi-wrapper .display-table .action {
    position: absolute;
    top: 20px;
    right: 0;
    width: auto !important;
  }
}

.suivi-wrapper .intitules {
  font-size: 1.3rem;
  line-height: 1.8rem;
}

.suivi-wrapper .ligne-suivi {
  display: none;
}

.suivi-wrapper .ligne-suivi img {
  text-align: center;
}

.suivi-wrapper .ligne-suivi .responsive-table {
  padding-top: 0;
  margin-top: 30px;
  border: 2px solid #404040;
  box-sizing: border-box;
}

.suivi-wrapper .btn-more-fields {
  display: none;
}

.suivi-wrapper .resultat .display-table {
  padding: 20px 0;
}

.suivi-wrapper .resultat .display-table > div {
  padding-top: 0;
  padding-bottom: 0;
}

.suivi-wrapper .resultat .display-table .libelle {
  font-size: 1.8rem;
  line-height: 2.4rem;
  font-weight: 700;
  color: #82aa37;
  text-decoration: underline;
}

.suivi-wrapper .resultat .display-table .libelle a {
  color: #82aa37;
  text-decoration: underline;
}

.suivi-wrapper .resultat .display-table .libelle.with-commande {
  text-decoration: none;
}

.suivi-wrapper .resultat .display-table .numb-commande {
  display: block;
  margin-top: 10px;
  color: #545454;
  font-weight: normal;
  font-size: 1.6rem;
}

.suivi-wrapper .dates-livraison {
  display: none;
}

.suivi-wrapper h1 {
  margin-bottom: 2rem;
}

.suivi-wrapper h3 {
  font-size: 2rem;
  line-height: 2.7rem;
  font-weight: 400;
  margin-bottom: 20px;
}

.suivi-wrapper .titre-bouton .titre {
  float: none;
}

.suivi-wrapper h4 {
  margin-bottom: 2rem;
}

.suivi-wrapper #eolas_ecommerce_orcab_suivi_factures_type_exporterCsv {
  min-width: 160px;
}

/* ===================================================================
 * GENERALITES TABLEAU RESPONSIVE
 * =================================================================*/
.responsive-table {
  padding: 30px 0;
}

.responsive-table .head {
  border-bottom: 1px solid #c4c4c4;
}

.responsive-table .head,
.responsive-table .row {
  display: flex;
  width: 100%;
  box-sizing: border-box;
}

.responsive-table .row {
  background-color: #ffffff;
  border: 2px solid #ffffff;
  margin-top: 20px;
  border-radius: 5px;
  padding: 20px;
}

.responsive-table .row:hover {
  border: 2px solid #82aa37;
}

.responsive-table .row.panier-refuser {
  background-color: #c4c4c4;
  border-color: #c4c4c4;
}

.responsive-table .row.panier-refuser:hover {
  border: 2px solid #82aa37;
}

.responsive-table .row .cell {
  overflow-wrap: break-word;
}

.responsive-table .row .cell p {
  margin: 0;
}

.responsive-table .row .libelle {
  font-size: 2rem;
  line-height: 2.4rem;
  font-weight: 700;
  color: #82aa37;
}

.responsive-table .row .libelle a {
  color: #82aa37;
  text-decoration: underline;
}

.responsive-table .row .libelle .libelleCheckbox {
  height: 20px;
  float: left;
  margin-top: 4px;
}

.responsive-table .row p.note-edited {
  color: #545454;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 150%;
  margin: 10px 0;
}

@media screen and (max-width: 1024px) {
  .responsive-table .row p.note-edited {
    margin-bottom: 0;
  }
}

.responsive-table .row.locked .libelle__title::before {
  font-size: 2rem;
  color: #cecece;
  margin-right: 3px;
  content: '\e98b';
}

/* ===================================================================
 * MEDIAQUERIES
 * =================================================================*/
@media screen and (max-width: 1024px) {
  /* ===================================================================
    * GENERALITES COMPTE / SUIVI
    * =================================================================*/
  .resultat .lib {
    display: inline-block;
    padding-right: 10px;
    color: #82aa37;
  }
  .resultat .display-table > div {
    font-size: inherit;
    display: block;
    float: left;
    font-weight: bold;
    width: 50% !important;
    padding: 10px 20px;
    margin-bottom: 10px;
    box-sizing: border-box;
  }
  .resultat .display-table > div.table-row::before {
    content: attr(data-label);
    display: block;
    width: 50%;
    box-sizing: border-box;
    float: left;
    padding-right: 10px;
    color: #82aa37;
  }
  .resultat .display-table > div.table-row span {
    display: block;
    float: right;
    width: 50%;
  }
  .resultat .display-table > div > div {
    display: inline-block;
    position: relative;
  }
  .resultat .display-table > div > div:not(:last-child)::after {
    content: " / ";
  }
  .resultat .display-table > div.roleHeader > div.lib::after {
    content: none;
  }
  .resultat .display-table > div.action {
    float: right;
    clear: right;
    text-align: right;
  }
  .bouton-deplier-liste::after {
    left: auto;
  }
  .menu-secondaire.menu-compte {
    background: #fff;
    border-radius: 5px;
    padding: 15px;
    margin: 30px 0 10px;
  }
  .menu-secondaire.menu-compte h3 {
    color: #004462;
    font-weight: bold;
    font-size: 0.94118em;
    text-transform: uppercase;
    padding-left: 25px;
    margin-bottom: 15px;
    position: relative;
    cursor: pointer;
  }
  .menu-secondaire.menu-compte h3 a {
    color: #004462;
  }
  .menu-secondaire.menu-compte h3::after {
    content: "\e919";
    font-size: 1.2em;
    font-family: icomoon;
    font-weight: normal;
    color: #00b1ff;
    line-height: 21px;
    position: absolute;
    left: 0;
    top: 0;
  }
  .menu-secondaire.menu-compte h3.slideUp::after {
    content: "\e91a";
  }
  .menu-secondaire.menu-compte .niveau {
    margin-bottom: 20px;
  }
  /* ===================================================================
    * TEMPLATES SUIVI
    * =================================================================*/
  .suivi-wrapper .suivi {
    font-size: 100%;
  }
  .suivi-wrapper .col {
    width: 100%;
    float: none;
  }
  .suivi-wrapper .col:not(:first-child) {
    margin-left: 0;
  }
  .suivi-wrapper .aligncenter {
    display: flex;
    justify-content: center;
    gap: 20px;
    align-content: center;
    align-items: flex-start;
  }
  .suivi-wrapper .btn-more-fields {
    display: inline-block;
    vertical-align: baseline;
    box-sizing: border-box;
    margin-right: 0;
    padding: 0.9rem 2rem;
  }
  .suivi-wrapper .bouton-rechercher {
    margin-right: 0;
  }
  .suivi-wrapper #eolas_ecommerce_orcab_suivi_factures_type_exporterCsv {
    min-width: 190px;
  }
  .suivi-wrapper #more-fields {
    display: none;
  }
  .responsive-table {
    padding: 20px 0;
  }
  .responsive-table .head .cell,
  .responsive-table .row .cell {
    padding-right: 20px;
  }
  .responsive-table .row .cell {
    padding-top: 15px;
    padding-bottom: 15px;
  }
  .responsive-table .row .cell:first-child {
    padding-left: 20px;
  }
  .fiche-retour-header dl {
    width: 50%;
    float: left;
    margin: 20px 0 0 0;
    border: 0 none;
  }
  .fiche-retour-header dl:nth-child(odd) {
    clear: left;
  }
  .fiche-retour-header dl:nth-child(1) {
    margin-top: 0;
  }
  .fiche-retour-header dl:nth-child(2) {
    margin-top: 0;
  }
  .fiche-retour-header .pull-right {
    float: none;
    margin-top: 20px;
  }
}

@media screen and (max-width: 767px) {
  /* ===================================================================
     * GENERALITES COMPTE / SUIVI
     * =================================================================*/
  .resultat .display-table > div {
    float: none;
    width: 100% !important;
  }
  /* ===================================================================
     * TEMPLATES SUIVI
     * =================================================================*/
  .suivi-wrapper .enLigne {
    display: inline-block;
    margin-top: 15px;
    padding-bottom: 0;
  }
  .suivi-wrapper .enLigne label {
    margin-right: 15px;
  }
  .suivi-wrapper .resultat .display-table {
    font-size: inherit;
    padding: 10px 0;
  }
  .suivi-wrapper .bouton-vert, .suivi-wrapper .form-submit button, .form-submit .suivi-wrapper button,
  .suivi-wrapper .form-submit input[type="submit"], .form-submit .suivi-wrapper input[type="submit"], .suivi-wrapper .bouton-bleu, .suivi-wrapper .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .suivi-wrapper .btn-imprimer, .suivi-wrapper .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .suivi-wrapper .btn-imprimer, .suivi-wrapper .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .suivi-wrapper a.voir-produit, .suivi-wrapper .materiel-print-btn a, .materiel-print-btn .suivi-wrapper a, .suivi-wrapper .materiel-planning-pdf a, .materiel-planning-pdf .suivi-wrapper a, .suivi-wrapper .bouton-gris, .suivi-wrapper .bouton-rouge, .suivi-wrapper .bouton-retour, .suivi-wrapper .bouton-rechercher, .suivi-wrapper .btn-ajouter-au-panier,
  .suivi-wrapper .btn-liste-achat-activate, .suivi-wrapper .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .suivi-wrapper a, .suivi-wrapper .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .suivi-wrapper .btn-ajouter-liste, .suivi-wrapper .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .suivi-wrapper .btn-submit {
    margin-bottom: 0;
  }
  .suivi-wrapper .btn-more-fields {
    min-width: 190px;
  }
  .suivi-wrapper .aligncenter {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
  }
  .suivi-wrapper #eolas_ecommerce_orcab_suivi_factures_type_exporterCsv {
    margin-top: 0;
  }
  .responsive-table {
    padding: 20px 0;
  }
  .responsive-table .head,
  .responsive-table .row {
    display: block;
  }
  .responsive-table .head:before, .responsive-table .head:after,
  .responsive-table .row:before,
  .responsive-table .row:after {
    display: table;
    content: " ";
  }
  .responsive-table .head:after,
  .responsive-table .row:after {
    clear: both;
  }
  .responsive-table .head .cell,
  .responsive-table .row .cell {
    display: block;
    float: left;
    box-sizing: border-box;
    padding: 10px 20px;
  }
  .responsive-table .row {
    padding: 10px 0;
  }
  .fiche-retour-produit-toggle {
    display: block !important;
    padding: 10px;
  }
  /* ===================================================================
    * TEMPLATE FICHE RETOUR
    * =================================================================*/
  .fiche-retour-header dl {
    width: 100%;
    float: none;
    margin: 0 0 10px 0;
    clear: both;
  }
  .fiche-retour-header dl:last-child {
    margin-bottom: 0;
  }
  .fiche-retour-header .pull-right {
    margin-top: 0;
  }
}

/* ===================================================================
 * TEMPLATE PERSONNALISATION
 * =================================================================*/
.TPL_PERSONNALISATION .liste {
  border-top: 1px solid #c4c4c4;
  margin: 30px 0;
}

.TPL_PERSONNALISATION .resultat {
  background: transparent;
  border-radius: 0;
  border-bottom: 1px solid #c4c4c4;
  margin-top: 0;
}

.TPL_PERSONNALISATION .resultat .display-table > div {
  padding-top: 15px;
  padding-bottom: 15px;
}

.TPL_PERSONNALISATION .resultat .display-table > div:first-child {
  padding-left: 0;
  font-weight: 700;
}

.TPL_PERSONNALISATION .resultat .display-table > div:last-child {
  padding-right: 0;
  text-align: right;
}

.TPL_PERSONNALISATION .resultat .display-table .select-wrap {
  width: 100%;
}

.TPL_PERSONNALISATION .mode {
  font-size: 1.6rem;
}

.TPL_PERSONNALISATION .buttons .bouton-gris,
.TPL_PERSONNALISATION .buttons .bouton-vert,
.TPL_PERSONNALISATION .buttons .form-submit button,
.form-submit .TPL_PERSONNALISATION .buttons button,
.TPL_PERSONNALISATION .buttons .form-submit input[type="submit"],
.form-submit .TPL_PERSONNALISATION .buttons input[type="submit"],
.TPL_PERSONNALISATION .buttons .bouton-bleu,
.TPL_PERSONNALISATION .buttons .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer,
.TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_PERSONNALISATION .buttons .btn-imprimer,
.TPL_PERSONNALISATION .buttons .lignes-retour-wrap .form-submit .btn-imprimer,
.lignes-retour-wrap .form-submit .TPL_PERSONNALISATION .buttons .btn-imprimer,
.TPL_PERSONNALISATION .buttons .TPL_COMPARATEUR .action a.voir-produit,
.TPL_COMPARATEUR .action .TPL_PERSONNALISATION .buttons a.voir-produit,
.TPL_PERSONNALISATION .buttons .materiel-print-btn a,
.materiel-print-btn .TPL_PERSONNALISATION .buttons a,
.TPL_PERSONNALISATION .buttons .materiel-planning-pdf a,
.materiel-planning-pdf .TPL_PERSONNALISATION .buttons a,
.TPL_PERSONNALISATION .buttons .bouton-gris,
.TPL_PERSONNALISATION .buttons .bouton-rouge,
.TPL_PERSONNALISATION .buttons .bouton-retour,
.TPL_PERSONNALISATION .buttons .bouton-rechercher,
.TPL_PERSONNALISATION .buttons .btn-ajouter-au-panier,
.TPL_PERSONNALISATION .buttons .btn-liste-achat-activate,
.TPL_PERSONNALISATION .buttons .ressources-associees li.lien-tous a,
.ressources-associees li.lien-tous .TPL_PERSONNALISATION .buttons a,
.TPL_PERSONNALISATION .buttons .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste,
.liste-achat-plugin .ajouter-a-la-liste .TPL_PERSONNALISATION .buttons .btn-ajouter-liste,
.TPL_PERSONNALISATION .buttons .TPL_FICHE_PRODUIT .btn-submit,
.TPL_FICHE_PRODUIT .TPL_PERSONNALISATION .buttons .btn-submit {
  padding: 15px 45px;
  min-width: inherit;
  margin: 0 10px;
}

@media screen and (max-width: 1024px) {
  .TPL_PERSONNALISATION .resultat .display-table > div {
    width: 33% !important;
    font-weight: normal;
    vertical-align: middle;
    float: none;
    display: table-cell;
  }
}

@media screen and (max-width: 767px) {
  .TPL_PERSONNALISATION .resultat .display-table > div {
    width: 100% !important;
    display: block;
    padding: 10px 0;
  }
  .TPL_PERSONNALISATION .resultat .display-table > div.mode {
    padding: 0;
  }
  .TPL_PERSONNALISATION .buttons .bouton-gris,
  .TPL_PERSONNALISATION .buttons .bouton-vert,
  .TPL_PERSONNALISATION .buttons .form-submit button,
  .form-submit .TPL_PERSONNALISATION .buttons button,
  .TPL_PERSONNALISATION .buttons .form-submit input[type="submit"],
  .form-submit .TPL_PERSONNALISATION .buttons input[type="submit"],
  .TPL_PERSONNALISATION .buttons .bouton-bleu,
  .TPL_PERSONNALISATION .buttons .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer,
  .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_PERSONNALISATION .buttons .btn-imprimer,
  .TPL_PERSONNALISATION .buttons .lignes-retour-wrap .form-submit .btn-imprimer,
  .lignes-retour-wrap .form-submit .TPL_PERSONNALISATION .buttons .btn-imprimer,
  .TPL_PERSONNALISATION .buttons .TPL_COMPARATEUR .action a.voir-produit,
  .TPL_COMPARATEUR .action .TPL_PERSONNALISATION .buttons a.voir-produit,
  .TPL_PERSONNALISATION .buttons .materiel-print-btn a,
  .materiel-print-btn .TPL_PERSONNALISATION .buttons a,
  .TPL_PERSONNALISATION .buttons .materiel-planning-pdf a,
  .materiel-planning-pdf .TPL_PERSONNALISATION .buttons a,
  .TPL_PERSONNALISATION .buttons .bouton-gris,
  .TPL_PERSONNALISATION .buttons .bouton-rouge,
  .TPL_PERSONNALISATION .buttons .bouton-retour,
  .TPL_PERSONNALISATION .buttons .bouton-rechercher,
  .TPL_PERSONNALISATION .buttons .btn-ajouter-au-panier,
  .TPL_PERSONNALISATION .buttons .btn-liste-achat-activate,
  .TPL_PERSONNALISATION .buttons .ressources-associees li.lien-tous a,
  .ressources-associees li.lien-tous .TPL_PERSONNALISATION .buttons a,
  .TPL_PERSONNALISATION .buttons .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste,
  .liste-achat-plugin .ajouter-a-la-liste .TPL_PERSONNALISATION .buttons .btn-ajouter-liste,
  .TPL_PERSONNALISATION .buttons .TPL_FICHE_PRODUIT .btn-submit,
  .TPL_FICHE_PRODUIT .TPL_PERSONNALISATION .buttons .btn-submit {
    display: block;
    margin: 0 auto;
    min-width: 270px;
  }
  .TPL_PERSONNALISATION .buttons .bouton-gris {
    margin-bottom: 10px;
  }
}

/* ===================================================================
 * TEMPLATE LISTE ACHAT
 * =================================================================*/
.TPL_ORCAB_LISTE_ACHAT .titre-bouton,
.TPL_ORCAB_LISTES_ACHAT_PARTAGEES .titre-bouton {
  display: flex;
  flex-direction: column;
}

.TPL_ORCAB_LISTE_ACHAT .bouton-creer-liste-achat,
.TPL_ORCAB_LISTES_ACHAT_PARTAGEES .bouton-creer-liste-achat {
  margin-bottom: 20px;
}

.TPL_ORCAB_LISTE_ACHAT .btn-nouvelle-liste,
.TPL_ORCAB_LISTES_ACHAT_PARTAGEES .btn-nouvelle-liste {
  box-sizing: border-box;
}

.TPL_ORCAB_LISTE_ACHAT .btn-nouvelle-liste i,
.TPL_ORCAB_LISTES_ACHAT_PARTAGEES .btn-nouvelle-liste i {
  font-size: 2rem;
  margin-right: 1rem;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_LISTE_ACHAT .table-actions,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .table-actions {
    padding: 30px 15px;
  }
}

.TPL_ORCAB_LISTE_ACHAT .table-actions .table-buttons,
.TPL_ORCAB_LISTES_ACHAT_PARTAGEES .table-actions .table-buttons {
  display: flex;
  gap: 10px 0;
  flex-wrap: wrap;
  align-items: stretch;
  margin-top: 10px;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_LISTE_ACHAT .table-actions .table-buttons,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .table-actions .table-buttons {
    gap: 0;
    margin-top: 0;
  }
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_LISTE_ACHAT .table-actions .tri,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .table-actions .tri {
    margin-bottom: 0;
  }
}

.TPL_ORCAB_LISTE_ACHAT .table-actions .tri .select-wrap::before,
.TPL_ORCAB_LISTES_ACHAT_PARTAGEES .table-actions .tri .select-wrap::before {
  content: none;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_LISTE_ACHAT .table-actions .tri,
  .TPL_ORCAB_LISTE_ACHAT .table-actions .tri form,
  .TPL_ORCAB_LISTE_ACHAT .table-actions .tri .select-wrap,
  .TPL_ORCAB_LISTE_ACHAT .table-actions .tri .select-wrap select,
  .TPL_ORCAB_LISTE_ACHAT .table-actions .table-buttons > button,
  .TPL_ORCAB_LISTE_ACHAT .table-actions .table-buttons > a,
  .TPL_ORCAB_LISTE_ACHAT .table-actions.bottom > button,
  .TPL_ORCAB_LISTE_ACHAT .table-actions.bottom > a,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .table-actions .tri,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .table-actions .tri form,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .table-actions .tri .select-wrap,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .table-actions .tri .select-wrap select,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .table-actions .table-buttons > button,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .table-actions .table-buttons > a,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .table-actions.bottom > button,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .table-actions.bottom > a {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_LISTE_ACHAT .table-actions .selection,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .table-actions .selection {
    align-self: flex-start;
    margin: 20px 0;
  }
}

@media (max-width: 767px) {
  .TPL_ORCAB_LISTE_ACHAT #commandeLibelleForm.edit-libelle,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES #commandeLibelleForm.edit-libelle {
    box-sizing: border-box;
    margin-top: 4px;
    padding-right: 10px;
  }
}

@media (max-width: 767px) {
  .TPL_ORCAB_LISTE_ACHAT .edit-libelle .field-required, .TPL_ORCAB_LISTE_ACHAT .edit-libelle .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_ORCAB_LISTE_ACHAT .edit-libelle .field,
  .TPL_ORCAB_LISTE_ACHAT .edit-libelle .field-required #commande_informations_form_orcabPanierLibelle,
  .TPL_ORCAB_LISTE_ACHAT .edit-libelle .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field #commande_informations_form_orcabPanierLibelle,
  .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_ORCAB_LISTE_ACHAT .edit-libelle .field #commande_informations_form_orcabPanierLibelle,
  .TPL_ORCAB_LISTE_ACHAT .edit-libelle #btnValidateEditCommandeLibelle,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .edit-libelle .field-required,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .edit-libelle .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field,
  .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .edit-libelle .field,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .edit-libelle .field-required #commande_informations_form_orcabPanierLibelle,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .edit-libelle .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field #commande_informations_form_orcabPanierLibelle,
  .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .edit-libelle .field #commande_informations_form_orcabPanierLibelle,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .edit-libelle #btnValidateEditCommandeLibelle {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .TPL_ORCAB_LISTE_ACHAT .edit-libelle #btnCancelEditCommandeLibelle,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .edit-libelle #btnCancelEditCommandeLibelle {
    width: 100%;
    margin: 10px 0 0;
    text-align: center;
  }
}

@media (max-width: 767px) {
  .TPL_ORCAB_LISTE_ACHAT .edit-libelle .btn-valider,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .edit-libelle .btn-valider {
    width: calc(100% - 98px);
  }
}

@media (max-width: 1024px) {
  .TPL_ORCAB_LISTE_ACHAT .liste-vide,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .liste-vide {
    margin-bottom: 20px;
  }
}

@media (max-width: 1024px) {
  .TPL_ORCAB_LISTE_ACHAT .total-paniers .total-price,
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .total-paniers .total-price {
    padding: 1.5rem 2.5rem;
  }
}

.TPL_ORCAB_LISTE_ACHAT {
  overflow: visible;
}

.TPL_ORCAB_LISTE_ACHAT .filter-top {
  display: flex;
  align-items: center;
  margin: 0 0 20px;
}

.TPL_ORCAB_LISTE_ACHAT .filter-top .select-wrap {
  max-width: 36rem;
  width: 100%;
}

.TPL_ORCAB_LISTE_ACHAT .item-commande[data-type="2"] {
  position: relative;
  overflow: hidden;
}

.TPL_ORCAB_LISTE_ACHAT .item-commande[data-type="2"]:before {
  content: '\e945';
  position: absolute;
  bottom: -159px;
  left: -87px;
  height: 253px;
  color: #82aa37;
  transform: matrix(-1, 0, 0, 1, 0, 0);
  z-index: 2;
  font-size: 253px;
  line-height: 253px;
  opacity: 0.2;
}

.TPL_ORCAB_LISTE_ACHAT .ui-sortable .liste-produit-item:hover {
  box-shadow: 5px 5px 25px gray;
  border-color: #003160;
}

.TPL_ORCAB_LISTE_ACHAT .ui-sortable .liste-produit-item:hover .item-handle {
  display: block;
}

.TPL_ORCAB_LISTE_ACHAT .ui-sortable-placeholder {
  background-color: transparent;
  border: 2px dashed #003160;
  min-height: 20rem;
}

.TPL_ORCAB_LISTE_ACHAT .item-handle {
  display: none;
}

.TPL_ORCAB_LISTE_ACHAT .item-handle:before {
  content: '';
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  position: absolute;
  z-index: 1;
}

.TPL_ORCAB_LISTE_ACHAT .item-handle span {
  transform: translateX(-50%);
  left: 50%;
  position: absolute;
  top: 0;
  width: 22px;
  height: 22px;
  background-color: #003160;
  border-radius: 0 0 5px 5px;
  text-align: center;
  line-height: 24px;
}

.TPL_ORCAB_LISTE_ACHAT .item-handle:hover {
  cursor: grab;
}

.TPL_ORCAB_LISTE_ACHAT .item-handle-icon {
  margin-top: 2px;
  line-height: 0;
}

.TPL_ORCAB_LISTE_ACHAT .liste-produit-item h2 a, .TPL_ORCAB_LISTE_ACHAT .liste-produit-item .TPL_FICHE_PRODUIT .titre-produit h1 a, .TPL_FICHE_PRODUIT .titre-produit .TPL_ORCAB_LISTE_ACHAT .liste-produit-item h1 a, .TPL_ORCAB_LISTE_ACHAT .liste-produit-item .fiche-adherent h1 a, .fiche-adherent .TPL_ORCAB_LISTE_ACHAT .liste-produit-item h1 a,
.TPL_ORCAB_LISTE_ACHAT .liste-produit-item .image a,
.TPL_ORCAB_LISTE_ACHAT .liste-produit-item .produit-code > *,
.TPL_ORCAB_LISTE_ACHAT .liste-produit-item .produit-stock > *,
.TPL_ORCAB_LISTE_ACHAT .liste-produit-item .produit-prix > *,
.TPL_ORCAB_LISTE_ACHAT .liste-produit-item .ajouter-produit-au-panier > *,
.TPL_ORCAB_LISTE_ACHAT .liste-produit-item .comment,
.TPL_ORCAB_LISTE_ACHAT .liste-produit-item .liste-produit__dimensions-variables-form {
  position: relative;
  z-index: 2;
}

.TPL_ORCAB_LISTE_ACHAT .liste-produit-item [type="checkbox"] + label:before, .TPL_ORCAB_LISTE_ACHAT .liste-produit-item [type="checkbox"] + label:after {
  z-index: 2;
}

@media (max-width: 767px) {
  .TPL_ORCAB_LISTE_ACHAT .filter-top {
    flex-direction: column;
    align-items: normal;
  }
  .TPL_ORCAB_LISTE_ACHAT .filter-top .select-wrap {
    max-width: inherit;
  }
}

main.with-btn-favoris .TPL_ORCAB_LISTE_ACHAT .fiche-commande-header .panier-actif .name {
  padding-right: 235px;
  min-height: 48px;
}

@media (max-width: 1024px) {
  main.with-btn-favoris .TPL_ORCAB_LISTE_ACHAT .fiche-commande-header .panier-actif .name {
    padding-right: 65px;
  }
}

@media (max-width: 767px) {
  main.with-btn-favoris .TPL_ORCAB_LISTE_ACHAT .fiche-commande-header .panier-actif .name {
    padding-right: 40px;
  }
}

@media (max-width: 767px) {
  .TPL_ORCAB_LISTE_ACHAT .fiche-commande-header .panier-actif .btn-petit-blanc {
    margin-right: 15px;
  }
}

.TPL_ORCAB_LISTE_ACHAT .fiche-commande-header .panier-actif .action {
  flex: inherit;
  align-items: flex-start;
}

@media (max-width: 767px) {
  .TPL_ORCAB_LISTE_ACHAT .fiche-commande-header .panier-actif #btnModifierCommandeLibelle {
    position: absolute;
    top: 2px;
    right: 45px;
  }
}

.TPL_ORCAB_LISTE_ACHAT .fiche-commande-header .panier-actif .btn-supprimer-liste-achat {
  margin-top: 5px;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_LISTE_ACHAT .fiche-commande-header .panier-actif .btn-supprimer-liste-achat {
    width: 100%;
    justify-content: center;
  }
  main.with-btn-favoris .TPL_ORCAB_LISTE_ACHAT .fiche-commande-header .panier-actif .btn-supprimer-liste-achat {
    width: calc(100% + 40px);
    margin-right: -40px;
  }
}

.TPL_ORCAB_LISTE_ACHAT .fiche-commande-header .panier-actif .actions-droit {
  justify-content: flex-end;
  align-self: center;
  flex: 1;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_LISTE_ACHAT .fiche-commande-header .panier-actif .actions-droit {
    justify-content: flex-start;
    margin-bottom: 10px;
  }
}

.TPL_ORCAB_LISTES_ACHAT_PARTAGEES .form-recherche {
  display: flex;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .form-recherche {
    flex-direction: column;
    align-items: center;
  }
}

.TPL_ORCAB_LISTES_ACHAT_PARTAGEES .form-recherche #recherche_listes_achat_form,
.TPL_ORCAB_LISTES_ACHAT_PARTAGEES .form-recherche .field {
  width: 100%;
}

.TPL_ORCAB_LISTES_ACHAT_PARTAGEES .form-recherche .field {
  padding-right: 3rem;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_LISTES_ACHAT_PARTAGEES .form-recherche .field {
    padding-right: 0;
    margin-bottom: 1rem;
  }
}

.TPL_ORCAB_LISTES_ACHAT_PARTAGEES .form-recherche .form-submit {
  margin: auto 0 0;
}

.formAddListeAchat .field:has([type="checkbox"]) label {
  font-size: 1.4rem;
  font-weight: 700;
}

.formAddListeAchat .field {
  margin-bottom: 20px;
}

.formAddListeAchat input[type="text"], .formAddListeAchat .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .formAddListeAchat input[type="date"], .formAddListeAchat .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .formAddListeAchat input[type="date"], .formAddListeAchat .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .formAddListeAchat input[type="date"] {
  margin-bottom: 0;
}

/* ===================================================================
 * TEMPLATE DEVIS ET BONS
 * =================================================================*/
.TPL_ORCAB_SUIVI_DEVIS_BONS .display-table .select-all-produit {
  width: 2.5%;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .display-table .num {
  width: 11%;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .display-table .date-devis {
  width: 11%;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .display-table .particulier, .TPL_ORCAB_SUIVI_DEVIS_BONS .display-table .realise-par {
  width: 12.5%;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .display-table .ref-externe {
  width: 15%;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .display-table .prix-total {
  width: 12.5%;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .display-table .url-pdf {
  width: 12.5%;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .display-table .ajout-panier {
  width: 14.5%;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .display-table .action {
  width: 5%;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .display-table.bons .particulier, .TPL_ORCAB_SUIVI_DEVIS_BONS .display-table.bons .realise-par {
  width: 11%;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .display-table.bons .url-pdf {
  width: 9%;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .display-table.bons .ajout-panier {
  width: 14%;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .display-table.bons .action {
  width: 4.5%;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .display-table.bons .ref-externe {
  width: 11%;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .has-select-panier .num {
  width: 7%;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .has-select-panier .date-devis {
  width: 8%;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .resultat .select-all-produit {
  width: 5%;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .top .cell:last-child {
  padding-right: 25px;
  box-sizing: border-box;
}

/* ===================================================================
 * TEMPLATE DEVIS ET BON DE CHOIX : commun surcharge template fiche  et liste
 * =================================================================*/
.TPL_ORCAB_SUIVI_DEVIS_BONS .display-table > div,
.TPL_ORCAB_FICHE_DEVIS_BONS .display-table > div {
  padding-right: 10px;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .display-table > div:first-child,
.TPL_ORCAB_FICHE_DEVIS_BONS .display-table > div:first-child {
  padding-left: 10px;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .display-table > div:first-child [type="checkbox"]:not(:checked) + label,
.TPL_ORCAB_SUIVI_DEVIS_BONS .display-table > div:first-child [type="checkbox"]:checked + label,
.TPL_ORCAB_FICHE_DEVIS_BONS .display-table > div:first-child [type="checkbox"]:not(:checked) + label,
.TPL_ORCAB_FICHE_DEVIS_BONS .display-table > div:first-child [type="checkbox"]:checked + label {
  margin-top: -11px;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .suivi form, .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche form,
.TPL_ORCAB_FICHE_DEVIS_BONS .suivi form,
.TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche form {
  padding: 0;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .ajout-panier .btn-panier, .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche .ajout-panier .btn-panier,
.TPL_ORCAB_FICHE_DEVIS_BONS .suivi .ajout-panier .btn-panier,
.TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche .ajout-panier .btn-panier {
  color: #004462;
  font-size: 1.3rem;
  font-weight: bold;
  border: 0;
  background: transparent;
  text-transform: uppercase;
  padding: 0;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .suivi [type="checkbox"]:not(:checked) + label::before,
.TPL_ORCAB_SUIVI_DEVIS_BONS .suivi [type="checkbox"]:checked + label::before, .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche [type="checkbox"]:not(:checked) + label::before,
.TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche [type="checkbox"]:checked + label::before,
.TPL_ORCAB_FICHE_DEVIS_BONS .suivi [type="checkbox"]:not(:checked) + label::before,
.TPL_ORCAB_FICHE_DEVIS_BONS .suivi [type="checkbox"]:checked + label::before,
.TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche [type="checkbox"]:not(:checked) + label::before,
.TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche [type="checkbox"]:checked + label::before {
  width: 24px;
  height: 24px;
  border-radius: 5px;
  top: 0;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .suivi [type="checkbox"]:not(:checked) + label::after,
.TPL_ORCAB_SUIVI_DEVIS_BONS .suivi [type="checkbox"]:checked + label::after, .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche [type="checkbox"]:not(:checked) + label::after,
.TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche [type="checkbox"]:checked + label::after,
.TPL_ORCAB_FICHE_DEVIS_BONS .suivi [type="checkbox"]:not(:checked) + label::after,
.TPL_ORCAB_FICHE_DEVIS_BONS .suivi [type="checkbox"]:checked + label::after,
.TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche [type="checkbox"]:not(:checked) + label::after,
.TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche [type="checkbox"]:checked + label::after {
  top: -2px;
  left: 5px;
  color: #8CB53E;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .suivi input[type="text"], .TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_ORCAB_SUIVI_DEVIS_BONS .suivi input[type="date"], .TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_ORCAB_SUIVI_DEVIS_BONS .suivi input[type="date"], .TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_ORCAB_SUIVI_DEVIS_BONS .suivi input[type="date"], .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche input[type="text"], .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche input[type="date"], .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche input[type="date"], .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche input[type="date"],
.TPL_ORCAB_FICHE_DEVIS_BONS .suivi input[type="text"],
.TPL_ORCAB_FICHE_DEVIS_BONS .suivi .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_ORCAB_FICHE_DEVIS_BONS .suivi input[type="date"],
.TPL_ORCAB_FICHE_DEVIS_BONS .suivi .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_ORCAB_FICHE_DEVIS_BONS .suivi input[type="date"],
.TPL_ORCAB_FICHE_DEVIS_BONS .suivi .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"],
.liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_ORCAB_FICHE_DEVIS_BONS .suivi input[type="date"],
.TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche input[type="text"],
.TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche input[type="date"],
.TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche input[type="date"],
.TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"],
.liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche input[type="date"] {
  border: 1px solid #404040;
  width: 60px;
  height: 36px;
  color: #545454;
  font-weight: normal;
  padding: 5px 7px;
  background: transparent;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .table-entete-grise > tbody > tr:nth-child(2n+1) input[type="text"], .TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .table-entete-grise > tbody > tr:nth-child(2n+1) .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .table-entete-grise > tbody > tr:nth-child(2n+1) input[type="date"], .TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .table-entete-grise > tbody > tr:nth-child(2n+1) .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .table-entete-grise > tbody > tr:nth-child(2n+1) input[type="date"], .TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .table-entete-grise > tbody > tr:nth-child(2n+1) .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .table-entete-grise > tbody > tr:nth-child(2n+1) input[type="date"],
.TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .table-entete-grise > tr:nth-child(2n+1) input[type="text"],
.TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .table-entete-grise > tr:nth-child(2n+1) .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .table-entete-grise > tr:nth-child(2n+1) input[type="date"],
.TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .table-entete-grise > tr:nth-child(2n+1) .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .table-entete-grise > tr:nth-child(2n+1) input[type="date"],
.TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .table-entete-grise > tr:nth-child(2n+1) .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"],
.liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .table-entete-grise > tr:nth-child(2n+1) input[type="date"], .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche .table-entete-grise > tbody > tr:nth-child(2n+1) input[type="text"], .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche .table-entete-grise > tbody > tr:nth-child(2n+1) .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche .table-entete-grise > tbody > tr:nth-child(2n+1) input[type="date"], .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche .table-entete-grise > tbody > tr:nth-child(2n+1) .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche .table-entete-grise > tbody > tr:nth-child(2n+1) input[type="date"], .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche .table-entete-grise > tbody > tr:nth-child(2n+1) .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche .table-entete-grise > tbody > tr:nth-child(2n+1) input[type="date"],
.TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche .table-entete-grise > tr:nth-child(2n+1) input[type="text"],
.TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche .table-entete-grise > tr:nth-child(2n+1) .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche .table-entete-grise > tr:nth-child(2n+1) input[type="date"],
.TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche .table-entete-grise > tr:nth-child(2n+1) .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche .table-entete-grise > tr:nth-child(2n+1) input[type="date"],
.TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche .table-entete-grise > tr:nth-child(2n+1) .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"],
.liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_ORCAB_SUIVI_DEVIS_BONS .resultat-fiche .table-entete-grise > tr:nth-child(2n+1) input[type="date"],
.TPL_ORCAB_FICHE_DEVIS_BONS .suivi .table-entete-grise > tbody > tr:nth-child(2n+1) input[type="text"],
.TPL_ORCAB_FICHE_DEVIS_BONS .suivi .table-entete-grise > tbody > tr:nth-child(2n+1) .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_ORCAB_FICHE_DEVIS_BONS .suivi .table-entete-grise > tbody > tr:nth-child(2n+1) input[type="date"],
.TPL_ORCAB_FICHE_DEVIS_BONS .suivi .table-entete-grise > tbody > tr:nth-child(2n+1) .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_ORCAB_FICHE_DEVIS_BONS .suivi .table-entete-grise > tbody > tr:nth-child(2n+1) input[type="date"],
.TPL_ORCAB_FICHE_DEVIS_BONS .suivi .table-entete-grise > tbody > tr:nth-child(2n+1) .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"],
.liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_ORCAB_FICHE_DEVIS_BONS .suivi .table-entete-grise > tbody > tr:nth-child(2n+1) input[type="date"],
.TPL_ORCAB_FICHE_DEVIS_BONS .suivi .table-entete-grise > tr:nth-child(2n+1) input[type="text"],
.TPL_ORCAB_FICHE_DEVIS_BONS .suivi .table-entete-grise > tr:nth-child(2n+1) .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_ORCAB_FICHE_DEVIS_BONS .suivi .table-entete-grise > tr:nth-child(2n+1) input[type="date"],
.TPL_ORCAB_FICHE_DEVIS_BONS .suivi .table-entete-grise > tr:nth-child(2n+1) .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_ORCAB_FICHE_DEVIS_BONS .suivi .table-entete-grise > tr:nth-child(2n+1) input[type="date"],
.TPL_ORCAB_FICHE_DEVIS_BONS .suivi .table-entete-grise > tr:nth-child(2n+1) .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"],
.liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_ORCAB_FICHE_DEVIS_BONS .suivi .table-entete-grise > tr:nth-child(2n+1) input[type="date"],
.TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche .table-entete-grise > tbody > tr:nth-child(2n+1) input[type="text"],
.TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche .table-entete-grise > tbody > tr:nth-child(2n+1) .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche .table-entete-grise > tbody > tr:nth-child(2n+1) input[type="date"],
.TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche .table-entete-grise > tbody > tr:nth-child(2n+1) .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche .table-entete-grise > tbody > tr:nth-child(2n+1) input[type="date"],
.TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche .table-entete-grise > tbody > tr:nth-child(2n+1) .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"],
.liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche .table-entete-grise > tbody > tr:nth-child(2n+1) input[type="date"],
.TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche .table-entete-grise > tr:nth-child(2n+1) input[type="text"],
.TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche .table-entete-grise > tr:nth-child(2n+1) .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche .table-entete-grise > tr:nth-child(2n+1) input[type="date"],
.TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche .table-entete-grise > tr:nth-child(2n+1) .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche .table-entete-grise > tr:nth-child(2n+1) input[type="date"],
.TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche .table-entete-grise > tr:nth-child(2n+1) .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"],
.liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_ORCAB_FICHE_DEVIS_BONS .resultat-fiche .table-entete-grise > tr:nth-child(2n+1) input[type="date"] {
  border-color: rgba(64, 64, 64, 0.5);
}

/* ===================================================================
 * TEMPLATE FICHE DEVIS ET BON DE CHOIX
 * =================================================================*/
.TPL_ORCAB_FICHE_DEVIS_BONS {
  margin-bottom: 40px;
}

.TPL_ORCAB_FICHE_DEVIS_BONS .top-fiche {
  overflow: hidden;
}

.TPL_ORCAB_FICHE_DEVIS_BONS .top-fiche .float-left {
  width: 46%;
  float: left;
}

.TPL_ORCAB_FICHE_DEVIS_BONS .top-fiche .float-right {
  float: right;
  line-height: 50px;
  text-align: right;
  width: 54%;
}

.TPL_ORCAB_FICHE_DEVIS_BONS .resultat .display-table {
  font-size: 1.6rem;
}

.TPL_ORCAB_FICHE_DEVIS_BONS .lib {
  color: #82aa37;
  display: inline-block;
  padding-right: 10px;
}

.TPL_ORCAB_FICHE_DEVIS_BONS .resultat {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.TPL_ORCAB_FICHE_DEVIS_BONS .resultat .select-all-produit {
  width: 7.5%;
}

.TPL_ORCAB_FICHE_DEVIS_BONS .btn-petit-blanc {
  margin: 0 0 10px 1%;
  line-height: 20px;
}

.TPL_ORCAB_FICHE_DEVIS_BONS .btn-petit-blanc:hover::before {
  color: #fff;
}

.TPL_ORCAB_FICHE_DEVIS_BONS .btn-petit-blanc.btn-ajouter-panier {
  line-height: normal;
  box-sizing: border-box;
}

.TPL_ORCAB_FICHE_DEVIS_BONS .btn-ajouter-panier::before {
  content: "\e91f";
}

.TPL_ORCAB_FICHE_DEVIS_BONS .bouton-deplier-liste {
  display: none;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .notAddToPanier, .TPL_ORCAB_FICHE_DEVIS_BONS .notAddToPanier {
  position: relative;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .notAddToPanier:before, .TPL_ORCAB_FICHE_DEVIS_BONS .notAddToPanier:before {
  font-size: 1.9rem;
  color: #000;
}

.TPL_ORCAB_SUIVI_DEVIS_BONS .notAddToPanier:after, .TPL_ORCAB_FICHE_DEVIS_BONS .notAddToPanier:after {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  content: '';
  width: 2px;
  background: #e05151;
  height: 25px;
  position: absolute;
  left: 8px;
  top: -4px;
}

.TPL_ORCAB_FICHE_DEVIS_BONS .fiche-commande-header .panier-actif h2, .TPL_ORCAB_FICHE_DEVIS_BONS .fiche-commande-header .panier-actif .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_ORCAB_FICHE_DEVIS_BONS .fiche-commande-header .panier-actif h1, .TPL_ORCAB_FICHE_DEVIS_BONS .fiche-commande-header .panier-actif .fiche-adherent h1, .fiche-adherent .TPL_ORCAB_FICHE_DEVIS_BONS .fiche-commande-header .panier-actif h1 {
  margin-bottom: 1rem;
}

.TPL_ORCAB_FICHE_DEVIS_BONS .fiche-commande-header .panier-actif h3 {
  font-size: 2rem;
  margin-bottom: 1.8rem;
}

.TPL_ORCAB_FICHE_DEVIS_BONS .fiche-commande-header .panier-actif .devis-bon-non-commendable-info {
  font-weight: 700;
}

@media screen and (max-width: 1024px) {
  /* ===================================================================
     * TEMPLATE DEVIS ET BONS
     * =================================================================*/
  .TPL_ORCAB_SUIVI_DEVIS_BONS .display-table .select-all-produit {
    width: 100% !important;
    float: none;
    padding: 20px !important;
  }
  .TPL_ORCAB_SUIVI_DEVIS_BONS .table-entete-grise [type="checkbox"]:not(:checked) + label,
  .TPL_ORCAB_SUIVI_DEVIS_BONS .table-entete-grise [type="checkbox"]:checked + label {
    padding: 12px 0;
    margin: 20px 0 0;
  }
  .TPL_ORCAB_SUIVI_DEVIS_BONS .suivi .ajout-panier .btn-panier {
    font-size: 1.6rem;
  }
  /* ===================================================================
     * TEMPLATE FICHE DEVIS ET BON DE CHOIX
     * =================================================================*/
  .TPL_ORCAB_FICHE_DEVIS_BONS table .fournisseur,
  .TPL_ORCAB_FICHE_DEVIS_BONS table .prixHT {
    display: none;
  }
  .TPL_ORCAB_FICHE_DEVIS_BONS .top-fiche .float-right,
  .TPL_ORCAB_FICHE_DEVIS_BONS .top-fiche .float-left {
    float: none;
    width: 100%;
  }
  .TPL_ORCAB_FICHE_DEVIS_BONS .top-fiche .float-right {
    height: inherit;
    line-height: inherit;
  }
  .TPL_ORCAB_FICHE_DEVIS_BONS .display-table > div.action {
    display: none;
  }
}

/* ===================================================================
 * TEMPLATE FACTURESS
 * =================================================================*/
.TPL_ORCAB_SUIVI_FACTURES form .aligncenter > div {
  display: inline-block;
}

@media (min-width: 1025px) {
  .TPL_ORCAB_SUIVI_FACTURES form .aligncenter > div {
    margin: 0 10px;
  }
}

.TPL_ORCAB_SUIVI_FACTURES .display-table div.libelle, .TPL_ORCAB_FICHE_FACTURE .display-table div.libelle, .TPL_ORCAB_SUIVI_COMMANDES .display-table div.libelle {
  width: 18.03%;
  margin-right: 2.11118930330753%;
  flex: none;
}

.TPL_ORCAB_SUIVI_FACTURES .display-table div.right, .TPL_ORCAB_FICHE_FACTURE .display-table div.right, .TPL_ORCAB_SUIVI_COMMANDES .display-table div.right {
  flex: 1;
  width: 72.06192821956369%;
  margin: 0;
}

.TPL_ORCAB_SUIVI_FACTURES .display-table .options, .TPL_ORCAB_FICHE_FACTURE .display-table .options, .TPL_ORCAB_SUIVI_COMMANDES .display-table .options {
  border-top: 1px solid #c4c4c4;
  padding-top: 20px;
  display: flex;
  justify-content: flex-end;
}

.TPL_ORCAB_SUIVI_FACTURES .display-table .options > *, .TPL_ORCAB_FICHE_FACTURE .display-table .options > *, .TPL_ORCAB_SUIVI_COMMANDES .display-table .options > * {
  margin-left: 30px;
  font-weight: 700;
}

.TPL_ORCAB_SUIVI_FACTURES .display-table .options .btn-export:before, .TPL_ORCAB_FICHE_FACTURE .display-table .options .btn-export:before, .TPL_ORCAB_SUIVI_COMMANDES .display-table .options .btn-export:before {
  color: #ffffff;
  font-size: 1.8rem;
  vertical-align: middle;
}

.TPL_ORCAB_SUIVI_FACTURES .display-table .top, .TPL_ORCAB_FICHE_FACTURE .display-table .top, .TPL_ORCAB_SUIVI_COMMANDES .display-table .top {
  display: flex;
  align-items: flex-start;
  position: relative;
}

.TPL_ORCAB_SUIVI_FACTURES .display-table .top .cell, .TPL_ORCAB_FICHE_FACTURE .display-table .top .cell, .TPL_ORCAB_SUIVI_COMMANDES .display-table .top .cell {
  width: 14.95327102803738%;
  margin-right: 3.504672897196262%;
  margin-bottom: 20px;
}

.TPL_ORCAB_SUIVI_FACTURES .display-table .bouton-deplier-liste, .TPL_ORCAB_FICHE_FACTURE .display-table .bouton-deplier-liste, .TPL_ORCAB_SUIVI_COMMANDES .display-table .bouton-deplier-liste {
  position: absolute;
  right: 0;
  top: 20px;
  width: auto;
}

.TPL_ORCAB_SUIVI_FACTURES .suivi-wrapper .resultat .line-contact, .TPL_ORCAB_FICHE_FACTURE .suivi-wrapper .resultat .line-contact, .TPL_ORCAB_SUIVI_COMMANDES .suivi-wrapper .resultat .line-contact {
  width: 100%;
  border-top: 1px solid #cecece;
  padding-top: 20px;
  margin-right: 56px;
  margin-top: 20px;
  margin-left: calc(19% + 20px);
  text-align: right;
}

.TPL_ORCAB_SUIVI_FACTURES .bouton-contact, .TPL_ORCAB_FICHE_FACTURE .bouton-contact, .TPL_ORCAB_SUIVI_COMMANDES .bouton-contact {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #ffffff;
}

.TPL_ORCAB_SUIVI_FACTURES .bouton-contact__txt, .TPL_ORCAB_FICHE_FACTURE .bouton-contact__txt, .TPL_ORCAB_SUIVI_COMMANDES .bouton-contact__txt {
  display: block;
}

.TPL_ORCAB_SUIVI_FACTURES .bouton-contact .icomoon-mail::before, .TPL_ORCAB_FICHE_FACTURE .bouton-contact .icomoon-mail::before, .TPL_ORCAB_SUIVI_COMMANDES .bouton-contact .icomoon-mail::before {
  color: #ffffff;
}

@media screen and (max-width: 1024px) {
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise > tbody > tr > td:not(.fiche-retour-produit-toggle), .TPL_ORCAB_FICHE_FACTURE .table-entete-grise > tbody > tr > td:not(.fiche-retour-produit-toggle), .TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise > tbody > tr > td:not(.fiche-retour-produit-toggle) {
    padding-top: 5px;
    padding-bottom: 5px;
  }
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise > tbody > tr > td:first-child, .TPL_ORCAB_FICHE_FACTURE .table-entete-grise > tbody > tr > td:first-child, .TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise > tbody > tr > td:first-child {
    padding-top: 20px;
  }
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise > tbody > tr > td:nth-last-child(3), .TPL_ORCAB_FICHE_FACTURE .table-entete-grise > tbody > tr > td:nth-last-child(3), .TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise > tbody > tr > td:nth-last-child(3) {
    padding-bottom: 20px;
  }
}

.TPL_ORCAB_SUIVI_FACTURES .table-entete-grise:not(.table-lignes) th, .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise:not(.table-lignes) td, .TPL_ORCAB_FICHE_FACTURE .table-entete-grise:not(.table-lignes) th, .TPL_ORCAB_FICHE_FACTURE .table-entete-grise:not(.table-lignes) td, .TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise:not(.table-lignes) th, .TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise:not(.table-lignes) td {
  width: 10%;
}

@media screen and (max-width: 1024px) {
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise:not(.table-lignes) th, .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise:not(.table-lignes) td, .TPL_ORCAB_FICHE_FACTURE .table-entete-grise:not(.table-lignes) th, .TPL_ORCAB_FICHE_FACTURE .table-entete-grise:not(.table-lignes) td, .TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise:not(.table-lignes) th, .TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise:not(.table-lignes) td {
    width: 100%;
  }
}

@media screen and (max-width: 1024px) {
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise:not(.table-lignes) tr tr, .TPL_ORCAB_FICHE_FACTURE .table-entete-grise:not(.table-lignes) tr tr, .TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise:not(.table-lignes) tr tr {
    padding-top: 15px;
    padding-bottom: 15px;
  }
}

@media screen and (max-width: 1024px) {
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise:not(.table-lignes) td td, .TPL_ORCAB_FICHE_FACTURE .table-entete-grise:not(.table-lignes) td td, .TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise:not(.table-lignes) td td {
    padding-top: 5px;
    padding-bottom: 5px;
  }
}

@media screen and (max-width: 1024px) {
  .TPL_ORCAB_SUIVI_FACTURES .lib, .TPL_ORCAB_FICHE_FACTURE .lib, .TPL_ORCAB_SUIVI_COMMANDES .lib {
    font-size: 14px;
    color: #868686;
    padding-right: 20px;
  }
}

@media screen and (max-width: 1024px) {
  .TPL_ORCAB_SUIVI_FACTURES .table-responsive, .TPL_ORCAB_FICHE_FACTURE .table-responsive, .TPL_ORCAB_SUIVI_COMMANDES .table-responsive {
    overflow-x: initial;
  }
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_SUIVI_FACTURES .table-responsive, .TPL_ORCAB_FICHE_FACTURE .table-responsive, .TPL_ORCAB_SUIVI_COMMANDES .table-responsive {
    overflow-x: auto;
  }
}

.TPL_ORCAB_SUIVI_FACTURES .ligne-suivi .resultat, .TPL_ORCAB_FICHE_FACTURE .ligne-suivi .resultat, .TPL_ORCAB_SUIVI_COMMANDES .ligne-suivi .resultat {
  border-radius: 0;
  margin-top: 10px;
}

.TPL_ORCAB_SUIVI_FACTURES .ligne-suivi .lib, .TPL_ORCAB_FICHE_FACTURE .ligne-suivi .lib, .TPL_ORCAB_SUIVI_COMMANDES .ligne-suivi .lib {
  color: #82aa37;
  display: inline-block;
  padding-right: 10px;
}

.TPL_ORCAB_SUIVI_FACTURES .ligne-suivi .article-thumb, .TPL_ORCAB_FICHE_FACTURE .ligne-suivi .article-thumb, .TPL_ORCAB_SUIVI_COMMANDES .ligne-suivi .article-thumb {
  max-width: 67px;
  margin-bottom: 10px;
  display: block;
}

@media screen and (max-width: 1440px) {
  .TPL_ORCAB_SUIVI_FACTURES .row, .TPL_ORCAB_FICHE_FACTURE .row, .TPL_ORCAB_SUIVI_COMMANDES .row {
    flex-direction: column;
  }
  .TPL_ORCAB_SUIVI_FACTURES div.libelle, .TPL_ORCAB_FICHE_FACTURE div.libelle, .TPL_ORCAB_SUIVI_COMMANDES div.libelle {
    margin: 0 0 20px;
    width: 100%;
  }
  .TPL_ORCAB_SUIVI_FACTURES div.right, .TPL_ORCAB_FICHE_FACTURE div.right, .TPL_ORCAB_SUIVI_COMMANDES div.right {
    width: 100%;
  }
}

@media screen and (max-width: 1024px) {
  .TPL_ORCAB_SUIVI_FACTURES .display-table .libelle,
  .TPL_ORCAB_SUIVI_FACTURES .display-table .right, .TPL_ORCAB_FICHE_FACTURE .display-table .libelle,
  .TPL_ORCAB_FICHE_FACTURE .display-table .right, .TPL_ORCAB_SUIVI_COMMANDES .display-table .libelle,
  .TPL_ORCAB_SUIVI_COMMANDES .display-table .right {
    padding: 0 20px;
    width: 100% !important;
    box-sizing: border-box;
  }
  .TPL_ORCAB_SUIVI_FACTURES .display-table .libelle, .TPL_ORCAB_FICHE_FACTURE .display-table .libelle, .TPL_ORCAB_SUIVI_COMMANDES .display-table .libelle {
    margin: 0 0 10px !important;
  }
  .TPL_ORCAB_SUIVI_FACTURES .display-table .top, .TPL_ORCAB_FICHE_FACTURE .display-table .top, .TPL_ORCAB_SUIVI_COMMANDES .display-table .top {
    flex-flow: row wrap;
  }
  .TPL_ORCAB_SUIVI_FACTURES .display-table .top .cell, .TPL_ORCAB_FICHE_FACTURE .display-table .top .cell, .TPL_ORCAB_SUIVI_COMMANDES .display-table .top .cell {
    width: 50% !important;
    margin: 0 0 10px;
    box-sizing: border-box;
  }
  .TPL_ORCAB_SUIVI_FACTURES .display-table .options, .TPL_ORCAB_FICHE_FACTURE .display-table .options, .TPL_ORCAB_SUIVI_COMMANDES .display-table .options {
    justify-content: center;
  }
  .TPL_ORCAB_SUIVI_FACTURES .resultat .display-table > div > div:not(:last-child)::after, .TPL_ORCAB_FICHE_FACTURE .resultat .display-table > div > div:not(:last-child)::after, .TPL_ORCAB_SUIVI_COMMANDES .resultat .display-table > div > div:not(:last-child)::after {
    display: none;
  }
  .TPL_ORCAB_SUIVI_FACTURES .suivi-wrapper .resultat .line-contact, .TPL_ORCAB_FICHE_FACTURE .suivi-wrapper .resultat .line-contact, .TPL_ORCAB_SUIVI_COMMANDES .suivi-wrapper .resultat .line-contact {
    width: calc(100% - 50px) !important;
    margin-left: 25px;
    margin-right: 25px;
  }
}

/* ===================================================================
 * TEMPLATE FICHE FACTURE
 * =================================================================*/
.TPL_ORCAB_FICHE_FACTURE {
  margin-bottom: 40px;
}

.TPL_ORCAB_FICHE_FACTURE h1 {
  width: 46%;
  float: left;
}

.TPL_ORCAB_FICHE_FACTURE .btn-actions {
  display: flex;
  flex-flow: row wrap;
  width: 100%;
  margin-bottom: 20px;
}

.TPL_ORCAB_FICHE_FACTURE .btn-petit-blanc {
  margin: 0 20px 10px 0;
}

.TPL_ORCAB_FICHE_FACTURE .resultat {
  clear: both;
}

.TPL_ORCAB_FICHE_FACTURE .suivi-wrapper .ligne-suivi {
  display: block;
}

@media screen and (max-width: 767px) {
  /* ===================================================================
        * TEMPLATE SUIVI - FICHE FACTURES
        * =================================================================*/
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise:not(.table-lignes) td, .TPL_ORCAB_FICHE_FACTURE .table-entete-grise:not(.table-lignes) td {
    width: 100%;
    display: block;
  }
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise:not(.table-lignes) td:before, .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise:not(.table-lignes) td:after, .TPL_ORCAB_FICHE_FACTURE .table-entete-grise:not(.table-lignes) td:before, .TPL_ORCAB_FICHE_FACTURE .table-entete-grise:not(.table-lignes) td:after {
    display: table;
    content: " ";
  }
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise:not(.table-lignes) td:after, .TPL_ORCAB_FICHE_FACTURE .table-entete-grise:not(.table-lignes) td:after {
    clear: both;
  }
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise:not(.table-lignes) td::before, .TPL_ORCAB_FICHE_FACTURE .table-entete-grise:not(.table-lignes) td::before {
    content: attr(data-label);
    display: block;
    width: 35%;
    box-sizing: border-box;
    float: left;
    padding-right: 10px;
    font-weight: 600;
  }
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise:not(.table-lignes) td.fiche-retour-produit-toggle-content, .TPL_ORCAB_FICHE_FACTURE .table-entete-grise:not(.table-lignes) td.fiche-retour-produit-toggle-content {
    display: none;
  }
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise:not(.table-lignes) td.fiche-retour-produit-toggle-content.active, .TPL_ORCAB_FICHE_FACTURE .table-entete-grise:not(.table-lignes) td.fiche-retour-produit-toggle-content.active {
    display: block;
  }
  .TPL_ORCAB_SUIVI_FACTURES .display-table .top .cell, .TPL_ORCAB_FICHE_FACTURE .display-table .top .cell {
    width: 100% !important;
  }
  .TPL_ORCAB_FICHE_FACTURE .table-entete-grise:not(.table-lignes) th, .TPL_ORCAB_FICHE_FACTURE .table-entete-grise:not(.table-lignes) td {
    padding: 18px 10px;
  }
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_FICHE_FACTURE .table-entete-grise .uneLigne,
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise .uneLigne,
  .TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise .uneLigne {
    box-sizing: border-box;
  }
  .TPL_ORCAB_FICHE_FACTURE .table-entete-grise .uneLigne td:before,
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise .uneLigne td:before,
  .TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise .uneLigne td:before {
    font-size: 1.4rem;
  }
  .TPL_ORCAB_FICHE_FACTURE .table-entete-grise .uneLigne > td:first-child,
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise .uneLigne > td:first-child,
  .TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise .uneLigne > td:first-child {
    padding-right: 135px;
  }
  .TPL_ORCAB_FICHE_FACTURE .table-entete-grise .uneLigne > td:first-child::before,
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise .uneLigne > td:first-child::before,
  .TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise .uneLigne > td:first-child::before {
    width: calc(35% + 77px / 2);
  }
  .TPL_ORCAB_FICHE_FACTURE .table-entete-grise .uneLigne > td:first-child > span,
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise .uneLigne > td:first-child > span,
  .TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise .uneLigne > td:first-child > span {
    width: calc(65% - 77px / 2);
  }
  .TPL_ORCAB_FICHE_FACTURE .table-entete-grise .uneLigne .fiche-retour-produit-toggle,
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise .uneLigne .fiche-retour-produit-toggle,
  .TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise .uneLigne .fiche-retour-produit-toggle {
    position: absolute;
    right: 0;
    top: 0;
    width: 125px;
  }
  .TPL_ORCAB_FICHE_FACTURE .table-entete-grise .uneLigne:first-child,
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise .uneLigne:first-child,
  .TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise .uneLigne:first-child {
    border-top-width: 2px;
  }
  .TPL_ORCAB_FICHE_FACTURE .table-entete-grise .uneLigne tr,
  .TPL_ORCAB_SUIVI_FACTURES .table-entete-grise .uneLigne tr,
  .TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise .uneLigne tr {
    border-width: 1px;
    border-bottom: 0;
    border-left: 0;
  }
}

/* ===================================================================
 * TEMPLATE GESTION RETOUR
 * =================================================================*/
.TPL_ORCAB_GESTION_RETOURS .top-liste {
  margin-bottom: 20px;
  display: flex;
  flex-flow: row wrap;
}

.TPL_ORCAB_GESTION_RETOURS .btn-actions-retours {
  min-width: inherit;
  display: flex;
  align-items: center;
}

.TPL_ORCAB_GESTION_RETOURS .btn-actions-retours i {
  font-size: 2rem;
  margin-right: 1rem;
}

.TPL_ORCAB_GESTION_RETOURS .btn-actions-retours + .btn-actions-retours {
  margin-left: 20px;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_GESTION_RETOURS .btn-actions-retours {
    justify-content: center;
    width: 100%;
  }
}

.TPL_ORCAB_GESTION_RETOURS .titre-avec-favoris {
  width: 59%;
  float: left;
}

@media screen and (max-width: 1024px) {
  .TPL_ORCAB_GESTION_RETOURS .titre-avec-favoris {
    width: calc(100% - 205px);
  }
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_GESTION_RETOURS .titre-avec-favoris {
    width: calc(100% - 210px);
  }
}

/* ===================================================================
 * TEMPLATE FICHE RETOUR
 * =================================================================*/
.TPL_ORCAB_FICHE_RETOUR {
  padding-bottom: 30px;
}

.TPL_ORCAB_FICHE_RETOUR .form-submit {
  padding-top: 20px;
}

.TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer::before {
  color: #ffffff;
}

.TPL_ORCAB_FICHE_RETOUR .print {
  display: none;
}

/* ===================================================================
 * TEMPLATE NOUVEAU RETOUR
 * =================================================================*/
.TPL_ORCAB_NOUVEAU_RETOUR,
.TPL_ORCAB_RETOUR_A_VALIDER {
  /*.tableau-gris-responsive .responsive-table .head .cell { // Imho 369242
        padding-top: 12px;
        padding-bottom: 12px;
    }*/
}

.TPL_ORCAB_NOUVEAU_RETOUR .form-recherche.form-nouveau-retour > div > div,
.TPL_ORCAB_RETOUR_A_VALIDER .form-recherche.form-nouveau-retour > div > div {
  padding-bottom: 0;
}

.TPL_ORCAB_NOUVEAU_RETOUR .form-recherche.form-nouveau-retour > div > div:nth-child(1),
.TPL_ORCAB_RETOUR_A_VALIDER .form-recherche.form-nouveau-retour > div > div:nth-child(1) {
  width: 35%;
}

.TPL_ORCAB_NOUVEAU_RETOUR .form-recherche.form-nouveau-retour > div > div:nth-child(2),
.TPL_ORCAB_RETOUR_A_VALIDER .form-recherche.form-nouveau-retour > div > div:nth-child(2) {
  width: 65%;
}

.TPL_ORCAB_NOUVEAU_RETOUR .form-recherche.form-nouveau-retour .form-submit button,
.TPL_ORCAB_RETOUR_A_VALIDER .form-recherche.form-nouveau-retour .form-submit button {
  margin-bottom: 0;
}

.TPL_ORCAB_NOUVEAU_RETOUR .form-recherche.form-nouveau-retour .form-submit button span::before,
.TPL_ORCAB_RETOUR_A_VALIDER .form-recherche.form-nouveau-retour .form-submit button span::before {
  content: '\e948';
}

.TPL_ORCAB_NOUVEAU_RETOUR .form-recherche.form-nouveau-retour .date-field > div::after,
.TPL_ORCAB_RETOUR_A_VALIDER .form-recherche.form-nouveau-retour .date-field > div::after {
  top: 28px;
}

.TPL_ORCAB_NOUVEAU_RETOUR .form-recherche.form-nouveau-retour .date-field .field > div,
.TPL_ORCAB_RETOUR_A_VALIDER .form-recherche.form-nouveau-retour .date-field .field > div {
  position: relative;
}

.TPL_ORCAB_NOUVEAU_RETOUR .form-recherche.form-nouveau-retour .date-field img,
.TPL_ORCAB_RETOUR_A_VALIDER .form-recherche.form-nouveau-retour .date-field img {
  top: 8px;
}

.TPL_ORCAB_NOUVEAU_RETOUR .form-recherche.form-nouveau-retour .date-field input,
.TPL_ORCAB_RETOUR_A_VALIDER .form-recherche.form-nouveau-retour .date-field input {
  border-radius: 8px;
}

.TPL_ORCAB_NOUVEAU_RETOUR .tableau-gris-responsive.historique-table .responsive-table .row,
.TPL_ORCAB_RETOUR_A_VALIDER .tableau-gris-responsive.historique-table .responsive-table .row {
  position: relative;
}

.TPL_ORCAB_NOUVEAU_RETOUR .tableau-gris-responsive.historique-table .responsive-table .row .cell,
.TPL_ORCAB_NOUVEAU_RETOUR .tableau-gris-responsive.historique-table .responsive-table .row .nouveau-retour-num-commande,
.TPL_ORCAB_RETOUR_A_VALIDER .tableau-gris-responsive.historique-table .responsive-table .row .cell,
.TPL_ORCAB_RETOUR_A_VALIDER .tableau-gris-responsive.historique-table .responsive-table .row .nouveau-retour-num-commande {
  color: #868686;
}

.TPL_ORCAB_NOUVEAU_RETOUR .tableau-gris-responsive.historique-table .responsive-table .row .cell .unite-commandee,
.TPL_ORCAB_NOUVEAU_RETOUR .tableau-gris-responsive.historique-table .responsive-table .row .nouveau-retour-num-commande .unite-commandee,
.TPL_ORCAB_RETOUR_A_VALIDER .tableau-gris-responsive.historique-table .responsive-table .row .cell .unite-commandee,
.TPL_ORCAB_RETOUR_A_VALIDER .tableau-gris-responsive.historique-table .responsive-table .row .nouveau-retour-num-commande .unite-commandee {
  display: none;
}

.TPL_ORCAB_NOUVEAU_RETOUR .tableau-gris-responsive.historique-table .responsive-table .row .cell.avec-unite-commandee .unite-commandee,
.TPL_ORCAB_NOUVEAU_RETOUR .tableau-gris-responsive.historique-table .responsive-table .row .cell.avec-unite-commandee .unite-calculateur,
.TPL_ORCAB_RETOUR_A_VALIDER .tableau-gris-responsive.historique-table .responsive-table .row .cell.avec-unite-commandee .unite-commandee,
.TPL_ORCAB_RETOUR_A_VALIDER .tableau-gris-responsive.historique-table .responsive-table .row .cell.avec-unite-commandee .unite-calculateur {
  display: block;
  padding: 4px 0 0;
  text-align: center;
}

.TPL_ORCAB_NOUVEAU_RETOUR .tableau-gris-responsive.historique-table .nouveau-retour-num-commande::before,
.TPL_ORCAB_RETOUR_A_VALIDER .tableau-gris-responsive.historique-table .nouveau-retour-num-commande::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table--saisie,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table--saisie {
  display: flex;
  flex-flow: row wrap;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table--saisie .select-wrap:after,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table--saisie .select-wrap:after {
  font-weight: normal;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table--saisie .form-field,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table--saisie .form-field {
  display: block;
  padding: 0;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table--saisie .row,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table--saisie .row {
  padding: 0;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table--saisie .row:hover,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table--saisie .row:hover {
  border: 0;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table--saisie .row .cell,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table--saisie .row .cell {
  padding-top: 0;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table--saisie .row .cell:first-child,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table--saisie .row .cell:first-child {
  padding-left: 0;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table--saisie .row .cell:last-child,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table--saisie .row .cell:last-child {
  padding-right: 0;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table__code.cell, .TPL_ORCAB_NOUVEAU_RETOUR .historique-table__numcommande.cell,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table__code.cell,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table__numcommande.cell {
  min-width: 180px;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table__designation.cell,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table__designation.cell {
  flex: 1 !important;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table__cell,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table__cell {
  flex: initial !important;
  width: 14.21800947867299%;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table__qty--inner,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table__qty--inner {
  margin-bottom: 10px;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table__motif, .TPL_ORCAB_NOUVEAU_RETOUR .historique-table__comment,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table__motif,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table__comment {
  width: 31.56398104265403%;
  flex: 1 !important;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table__prixunit,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table__prixunit {
  width: 35.25530569219958%;
}

.TPL_ORCAB_NOUVEAU_RETOUR .responsive-table .bouton-supprimer a,
.TPL_ORCAB_RETOUR_A_VALIDER .responsive-table .bouton-supprimer a {
  text-indent: -1000px;
  overflow: hidden;
  width: 40px;
  height: 40px;
  display: inline-block;
  text-decoration: none;
}

.TPL_ORCAB_NOUVEAU_RETOUR .responsive-table .bouton-supprimer a::before,
.TPL_ORCAB_RETOUR_A_VALIDER .responsive-table .bouton-supprimer a::before {
  text-indent: 0;
  content: '\f014';
  color: #e05151;
  height: 40px;
  font-size: 25px;
  line-height: 40px;
  display: block;
}

.TPL_ORCAB_NOUVEAU_RETOUR #saisi_historique .form-left-fields-right-button .form-field,
.TPL_ORCAB_RETOUR_A_VALIDER #saisi_historique .form-left-fields-right-button .form-field {
  padding: 0;
}

.TPL_ORCAB_NOUVEAU_RETOUR #saisi_historique .form-left-fields-right-button .form-field label,
.TPL_ORCAB_RETOUR_A_VALIDER #saisi_historique .form-left-fields-right-button .form-field label {
  min-height: inherit;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_NOUVEAU_RETOUR #saisi_historique .form-left-fields-right-button .form-field label,
  .TPL_ORCAB_RETOUR_A_VALIDER #saisi_historique .form-left-fields-right-button .form-field label {
    display: block;
    width: auto;
    position: relative;
    transform: none;
    top: 0;
  }
}

.TPL_ORCAB_NOUVEAU_RETOUR #bouton-rechercher-code-article,
.TPL_ORCAB_RETOUR_A_VALIDER #bouton-rechercher-code-article {
  margin-top: 10px;
}

.TPL_ORCAB_NOUVEAU_RETOUR .nouveau-retour.pas-termine .active-si-termine,
.TPL_ORCAB_RETOUR_A_VALIDER .nouveau-retour.pas-termine .active-si-termine {
  display: none;
}

.TPL_ORCAB_NOUVEAU_RETOUR .nouveau-retour.termine .desactive-si-termine,
.TPL_ORCAB_RETOUR_A_VALIDER .nouveau-retour.termine .desactive-si-termine {
  display: none;
}

.TPL_ORCAB_NOUVEAU_RETOUR .print,
.TPL_ORCAB_RETOUR_A_VALIDER .print {
  display: none;
}

.TPL_ORCAB_NOUVEAU_RETOUR .fiche-retour-header > dl:last-child,
.TPL_ORCAB_RETOUR_A_VALIDER .fiche-retour-header > dl:last-child {
  width: 28%;
  overflow-wrap: break-word;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table--liste,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table--liste {
  padding-top: 30px;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table--liste .head,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table--liste .head {
  background: #FFFFFF;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table--liste .head .cell,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table--liste .head .cell {
  color: #003160;
  font-size: 1.4rem;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table--liste .row,
.TPL_ORCAB_NOUVEAU_RETOUR .historique-table--liste .head,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table--liste .row,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table--liste .head {
  padding: 0;
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table--liste .row .cell,
.TPL_ORCAB_NOUVEAU_RETOUR .historique-table--liste .head .cell,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table--liste .row .cell,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table--liste .head .cell {
  padding: 20px 10px;
  word-wrap: anywhere;
}

@media screen and (min-width: 1025px) {
  .TPL_ORCAB_NOUVEAU_RETOUR .historique-table--liste .row .cell.designation,
  .TPL_ORCAB_NOUVEAU_RETOUR .historique-table--liste .head .cell.designation,
  .TPL_ORCAB_RETOUR_A_VALIDER .historique-table--liste .row .cell.designation,
  .TPL_ORCAB_RETOUR_A_VALIDER .historique-table--liste .head .cell.designation {
    width: 220px;
    flex: inherit;
  }
  .TPL_ORCAB_NOUVEAU_RETOUR .historique-table--liste .row .cell.num-ligne,
  .TPL_ORCAB_NOUVEAU_RETOUR .historique-table--liste .head .cell.num-ligne,
  .TPL_ORCAB_RETOUR_A_VALIDER .historique-table--liste .row .cell.num-ligne,
  .TPL_ORCAB_RETOUR_A_VALIDER .historique-table--liste .head .cell.num-ligne {
    width: 75px;
    flex: inherit;
  }
}

.TPL_ORCAB_NOUVEAU_RETOUR .historique-table--liste .responsive-table .row .cell,
.TPL_ORCAB_RETOUR_A_VALIDER .historique-table--liste .responsive-table .row .cell {
  position: initial;
  font-size: 1.4rem;
}

.TPL_ORCAB_NOUVEAU_RETOUR .paginator-nbre,
.TPL_ORCAB_RETOUR_A_VALIDER .paginator-nbre {
  margin-bottom: 0;
}

.TPL_ORCAB_NOUVEAU_RETOUR #nouveau-retour-saisie-historique-form,
.TPL_ORCAB_RETOUR_A_VALIDER #nouveau-retour-saisie-historique-form {
  padding-bottom: 0;
}

.TPL_ORCAB_NOUVEAU_RETOUR #nouveau-retour-resultat-saisie-historique .suivi,
.TPL_ORCAB_RETOUR_A_VALIDER #nouveau-retour-resultat-saisie-historique .suivi {
  margin-bottom: 0;
}

.orcab-tabs-wrapper .orcab-tabs-wrapper--item {
  top: 5px;
}

.orcab-tabs-wrapper .orcab-tabs-wrapper--item.active {
  top: 0;
}

.orcab-tabs-wrapper .orcab-tabs-wrapper--item.active .orcab-tabs-wrapper--link {
  color: #ffffff;
  padding-bottom: 20px;
  border-bottom: 1px solid #003160;
  background-color: #003160;
}

.orcab-tabs-wrapper .orcab-tabs-wrapper--link {
  font-size: 1.5rem;
  line-height: 2rem;
  font-weight: 700;
  color: #003160;
  padding: 15px;
  border: 1px solid #cecece;
  border-bottom: 1px solid #cecece;
  margin: 0 -1px 0 0;
  text-transform: uppercase;
  border-radius: 8px 8px 0 0;
}

@media screen and (max-width: 767px) {
  .orcab-tabs-wrapper .orcab-tabs-wrapper--link {
    text-align: center;
    margin-right: 1px;
  }
}

.orcab-tabs-wrapper .tab-content {
  padding: 20px;
  border: 1px solid #cecece;
  border-top: 0;
}

.form-6fields-wrapper {
  margin: 0 -15px;
}

.form-6fields-wrapper:before, .form-6fields-wrapper:after {
  display: table;
  content: " ";
}

.form-6fields-wrapper:after {
  clear: both;
}

.form-6fields-wrapper > .form-field,
.form-6fields-wrapper__row > .form-field {
  width: calc(16.66667% - 30px);
  margin: 0 15px;
  float: left;
}

.form-6fields-wrapper > .form-field:last-child,
.form-6fields-wrapper__row > .form-field:last-child {
  margin-right: 0;
}

.form-6fields-wrapper__row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
}

.form-6fields-wrapper .form-left-fields-right-button {
  margin: 0 15px;
}

.form-6fields-wrapper .form-left-fields-right-button:before, .form-6fields-wrapper .form-left-fields-right-button:after {
  display: table;
  content: " ";
}

.form-6fields-wrapper .form-left-fields-right-button:after {
  clear: both;
}

.form-left-fields-right-button {
  clear: both;
  position: relative;
}

.form-left-fields-right-button:before, .form-left-fields-right-button:after {
  display: table;
  content: " ";
}

.form-left-fields-right-button:after {
  clear: both;
}

.form-left-fields-right-button .form-fields-wrapper {
  float: left;
  width: calc(50% - 16px);
}

.form-left-fields-right-button .form-fields-wrapper .form-field {
  padding-bottom: 0;
}

.form-left-fields-right-button .form-submit {
  clear: none;
  transform: translateY(-50%);
  top: 100%;
  position: absolute;
  transform: translateY(-100%);
  margin: 0;
  right: 0;
}

.form-left-fields-right-button .form-submit button {
  margin-bottom: 0;
}

.form-nouveau-retour-saisie {
  padding-bottom: 0;
}

#nouveau-retour-produit-a-ajouter .form-nouveau-retour-saisie {
  background-color: #ffffff;
  border-radius: 10px;
  padding: 20px;
  margin-top: 30px;
}

#nouveau-retour-produit-a-ajouter .form-nouveau-retour-saisie .historique-table__qty {
  display: flex;
  width: 30%;
  flex-wrap: wrap;
  gap: 0 20px;
  align-content: flex-start;
}

@media screen and (max-width: 767px) {
  #nouveau-retour-produit-a-ajouter .form-nouveau-retour-saisie .historique-table__qty {
    width: 100%;
  }
}

#nouveau-retour-produit-a-ajouter .form-nouveau-retour-saisie .historique-table__qty .label {
  width: 100%;
}

#nouveau-retour-produit-a-ajouter .form-nouveau-retour-saisie .historique-table__qty .historique-table__qty--inner {
  flex-basis: calc(50% - 10px);
  flex-grow: 1;
}

@media screen and (max-width: 767px) {
  #nouveau-retour-produit-a-ajouter .form-nouveau-retour-saisie .historique-table__qty .historique-table__qty--inner {
    margin: 0 0 20px;
    flex-basis: 100%;
  }
}

@media screen and (min-width: 1025px) {
  #nouveau-retour-produit-a-ajouter .form-nouveau-retour-saisie .historique-table__designation.cell {
    padding-left: 38px !important;
  }
}

@media screen and (min-width: 768px) {
  #nouveau-retour-produit-a-ajouter .form-nouveau-retour-saisie .historique-table__prixunit {
    width: 20.25614035087719%;
  }
}

.form-nouveau-retour-saisie .tableau-gris-responsive.historique-table .responsive-table {
  padding-top: 10px;
}

.form-nouveau-retour-saisie .tableau-gris-responsive.historique-table .responsive-table .cell input[type="text"], .form-nouveau-retour-saisie .tableau-gris-responsive.historique-table .responsive-table .cell .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .form-nouveau-retour-saisie .tableau-gris-responsive.historique-table .responsive-table .cell input[type="date"], .form-nouveau-retour-saisie .tableau-gris-responsive.historique-table .responsive-table .cell .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .form-nouveau-retour-saisie .tableau-gris-responsive.historique-table .responsive-table .cell input[type="date"], .form-nouveau-retour-saisie .tableau-gris-responsive.historique-table .responsive-table .cell .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .form-nouveau-retour-saisie .tableau-gris-responsive.historique-table .responsive-table .cell input[type="date"],
.form-nouveau-retour-saisie .tableau-gris-responsive.historique-table .responsive-table .cell textarea,
.form-nouveau-retour-saisie .tableau-gris-responsive.historique-table .responsive-table .cell select {
  border-color: #d1d1d1;
}

.form-nouveau-retour-saisie .tableau-gris-responsive.historique-table .responsive-table .head .cell:last-child, .form-nouveau-retour-saisie .tableau-gris-responsive.historique-table .responsive-table .row .cell:last-child {
  border-right: 0 none;
}

.form-nouveau-retour-saisie .tableau-gris-responsive.historique-table .responsive-table .row:nth-child(even), .form-nouveau-retour-saisie .tableau-gris-responsive.historique-table .responsive-table .row:nth-child(odd) {
  background-color: transparent;
}

.form-nouveau-retour-saisie .tableau-gris-responsive.historique-table .responsive-table .label {
  font-weight: normal;
  font-size: 1.4rem;
  margin-bottom: 1rem;
}

.form-nouveau-retour-saisie .form-submit button {
  margin: 0 15px;
}

.form-nouveau-retour-saisie .form-submit .btn-cancel,
.form-nouveau-retour-saisie .form-submit .btn-complete {
  background-color: #e05151;
}

.form-nouveau-retour-saisie .form-submit .btn-cancel:hover,
.form-nouveau-retour-saisie .form-submit .btn-complete:hover {
  background-color: #bc4242;
}

.form-nouveau-retour-saisie .form-submit .bouton-bleu, .form-nouveau-retour-saisie .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-nouveau-retour-saisie .form-submit .btn-imprimer, .form-nouveau-retour-saisie .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-nouveau-retour-saisie .form-submit .btn-imprimer, .form-nouveau-retour-saisie .form-submit .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .form-nouveau-retour-saisie .form-submit a.voir-produit, .form-nouveau-retour-saisie .form-submit .materiel-print-btn a, .materiel-print-btn .form-nouveau-retour-saisie .form-submit a, .form-nouveau-retour-saisie .form-submit .materiel-planning-pdf a, .materiel-planning-pdf .form-nouveau-retour-saisie .form-submit a,
.form-nouveau-retour-saisie .form-submit .btn-add {
  background-color: #003160;
  min-width: auto;
  padding: 13px 20px;
  font-size: 1.4rem;
  line-height: 100%;
}

.form-nouveau-retour-saisie .form-submit .bouton-bleu:hover, .form-nouveau-retour-saisie .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer:hover, .TPL_ORCAB_FICHE_RETOUR .form-nouveau-retour-saisie .form-submit .btn-imprimer:hover, .form-nouveau-retour-saisie .lignes-retour-wrap .form-submit .btn-imprimer:hover, .lignes-retour-wrap .form-nouveau-retour-saisie .form-submit .btn-imprimer:hover, .form-nouveau-retour-saisie .form-submit .TPL_COMPARATEUR .action a.voir-produit:hover, .TPL_COMPARATEUR .action .form-nouveau-retour-saisie .form-submit a.voir-produit:hover, .form-nouveau-retour-saisie .form-submit .materiel-print-btn a:hover, .materiel-print-btn .form-nouveau-retour-saisie .form-submit a:hover, .form-nouveau-retour-saisie .form-submit .materiel-planning-pdf a:hover, .materiel-planning-pdf .form-nouveau-retour-saisie .form-submit a:hover,
.form-nouveau-retour-saisie .form-submit .btn-add:hover {
  background-color: rgba(0, 68, 98, 0.9);
}

.form-nouveau-retour-saisie #bouton-rechercher-code-article {
  margin: 10px auto 0;
  min-width: 100%;
}

@media screen and (max-width: 767px) {
  .form-nouveau-retour-saisie #bouton-rechercher-code-article {
    min-width: auto;
  }
}

#nouveau-retour-liste-produits .form-submit .btn-complete {
  background-color: #e05151;
}

#nouveau-retour-liste-produits .form-submit .btn-complete:hover {
  background-color: #bc4242;
}

#nouveau-retour-liste-produits .fiche-retour-produit-toggle {
  display: none !important;
}

#nouveau-retour-liste-produits h2, #nouveau-retour-liste-produits .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit #nouveau-retour-liste-produits h1, #nouveau-retour-liste-produits .fiche-adherent h1, .fiche-adherent #nouveau-retour-liste-produits h1 {
  margin-bottom: 20px;
}

#nouveau-retour-liste-produits .cell.action {
  text-align: right;
}

.lignes-retour-wrap .form-submit {
  padding-top: 20px;
}

.lignes-retour-wrap .form-submit button {
  margin: 0 15px;
}

.lignes-retour-wrap .form-submit .btn-imprimer::before {
  color: #ffffff;
}

@media screen and (max-width: 1024px) {
  /* ===================================================================
   * TEMPLATE NOUVEAU RETOUR
   * =================================================================*/
  .form-6fields-wrapper > .form-field,
  .form-6fields-wrapper__row > .form-field {
    width: calc(25% - 30px);
  }
  .form-6fields-wrapper__row {
    display: block;
  }
  .form-6fields-wrapper .form-left-fields-right-button {
    width: calc(50% - 30px);
    float: left;
    clear: none;
    margin-left: 30px;
  }
  .form-6fields-wrapper .form-left-fields-right-button:before, .form-6fields-wrapper .form-left-fields-right-button:after {
    display: table;
    content: " ";
  }
  .form-6fields-wrapper .form-left-fields-right-button:after {
    clear: both;
  }
  .form-left-fields-right-button .form-fields-wrapper {
    float: none;
    width: 100%;
  }
  .form-left-fields-right-button .form-fields-wrapper .date-field .field {
    padding-left: 30px;
    position: relative;
  }
  .form-left-fields-right-button .form-fields-wrapper .date-field .field label {
    width: 30px;
    transform: translateY(-50%);
    top: 50%;
    position: absolute;
    left: 0;
  }
  .form-left-fields-right-button .form-submit {
    clear: none;
    position: relative;
    transform: none;
    top: 0;
    right: 0;
    margin-top: 25px;
    float: right;
  }
  .TPL_ORCAB_NOUVEAU_RETOUR #saisi_historique .form-field label, .TPL_ORCAB_RETOUR_A_VALIDER #saisi_historique .form-field label {
    min-height: inherit;
  }
  .TPL_ORCAB_NOUVEAU_RETOUR .fiche-retour-header > dl:last-child,
  .TPL_ORCAB_RETOUR_A_VALIDER .fiche-retour-header > dl:last-child {
    padding: 0 30px;
    width: auto;
  }
}

@media screen and (max-width: 767px) {
  /* ===================================================================
    * TEMPLATE GESTION RETOUR
    * =================================================================*/
  .TPL_ORCAB_FICHE_RETOUR h1,
  .TPL_ORCAB_GESTION_RETOURS h1,
  .TPL_ORCAB_NOUVEAU_RETOUR h1,
  .TPL_ORCAB_RETOUR_A_VALIDER h1 {
    padding-right: 50px;
  }
  .TPL_ORCAB_FICHE_RETOUR .responsive-table .head,
  .TPL_ORCAB_GESTION_RETOURS .responsive-table .head,
  .TPL_ORCAB_NOUVEAU_RETOUR .responsive-table .head,
  .TPL_ORCAB_RETOUR_A_VALIDER .responsive-table .head {
    display: none;
  }
  .TPL_ORCAB_FICHE_RETOUR .responsive-table .row .cell,
  .TPL_ORCAB_GESTION_RETOURS .responsive-table .row .cell,
  .TPL_ORCAB_NOUVEAU_RETOUR .responsive-table .row .cell,
  .TPL_ORCAB_RETOUR_A_VALIDER .responsive-table .row .cell {
    position: relative;
    display: block;
    width: 100%;
    padding: 10px;
  }
  .TPL_ORCAB_FICHE_RETOUR .responsive-table .row .cell:before, .TPL_ORCAB_FICHE_RETOUR .responsive-table .row .cell:after,
  .TPL_ORCAB_GESTION_RETOURS .responsive-table .row .cell:before,
  .TPL_ORCAB_GESTION_RETOURS .responsive-table .row .cell:after,
  .TPL_ORCAB_NOUVEAU_RETOUR .responsive-table .row .cell:before,
  .TPL_ORCAB_NOUVEAU_RETOUR .responsive-table .row .cell:after,
  .TPL_ORCAB_RETOUR_A_VALIDER .responsive-table .row .cell:before,
  .TPL_ORCAB_RETOUR_A_VALIDER .responsive-table .row .cell:after {
    display: table;
    content: " ";
  }
  .TPL_ORCAB_FICHE_RETOUR .responsive-table .row .cell:after,
  .TPL_ORCAB_GESTION_RETOURS .responsive-table .row .cell:after,
  .TPL_ORCAB_NOUVEAU_RETOUR .responsive-table .row .cell:after,
  .TPL_ORCAB_RETOUR_A_VALIDER .responsive-table .row .cell:after {
    clear: both;
  }
  .TPL_ORCAB_FICHE_RETOUR .responsive-table .row .cell::before,
  .TPL_ORCAB_GESTION_RETOURS .responsive-table .row .cell::before,
  .TPL_ORCAB_NOUVEAU_RETOUR .responsive-table .row .cell::before,
  .TPL_ORCAB_RETOUR_A_VALIDER .responsive-table .row .cell::before {
    content: attr(data-label);
    display: block;
    width: 50%;
    box-sizing: border-box;
    float: left;
    padding-right: 10px;
    color: #82aa37;
  }
  .TPL_ORCAB_FICHE_RETOUR .responsive-table .row .cell.commentaire-coop::before,
  .TPL_ORCAB_GESTION_RETOURS .responsive-table .row .cell.commentaire-coop::before,
  .TPL_ORCAB_NOUVEAU_RETOUR .responsive-table .row .cell.commentaire-coop::before,
  .TPL_ORCAB_RETOUR_A_VALIDER .responsive-table .row .cell.commentaire-coop::before {
    color: #004462;
  }
  .TPL_ORCAB_FICHE_RETOUR .responsive-table .row .cell span,
  .TPL_ORCAB_GESTION_RETOURS .responsive-table .row .cell span,
  .TPL_ORCAB_NOUVEAU_RETOUR .responsive-table .row .cell span,
  .TPL_ORCAB_RETOUR_A_VALIDER .responsive-table .row .cell span {
    display: block;
    float: right;
    width: 50%;
  }
  /* ===================================================================
    * TEMPLATE NOUVEAU RETOUR
    * =================================================================*/
  .form-6fields-wrapper {
    display: flex;
    flex-flow: row wrap;
    align-items: flex-end;
  }
  .form-6fields-wrapper > .form-field,
  .form-6fields-wrapper__row > .form-field {
    width: calc(50% - 30px);
  }
  .form-6fields-wrapper .form-left-fields-right-button {
    width: calc(100% - 30px);
    float: none;
    clear: both;
    margin-left: calc(30px / 2);
  }
  .form-6fields-wrapper .form-left-fields-right-button:before, .form-6fields-wrapper .form-left-fields-right-button:after {
    display: table;
    content: " ";
  }
  .form-6fields-wrapper .form-left-fields-right-button:after {
    clear: both;
  }
  .form-6fields-wrapper .form-left-fields-right-button .form-fields-wrapper .date-field .field {
    padding-left: 0;
  }
  .form-6fields-wrapper .form-left-fields-right-button .form-submit {
    float: initial;
  }
  .form-left-fields-right-button .form-fields-wrapper {
    float: none;
    width: 100%;
  }
  .form-left-fields-right-button .form-fields-wrapper .form-field.left50, .form-left-fields-right-button .form-fields-wrapper .form-field.right50 {
    width: 48%;
  }
  .form-left-fields-right-button .form-fields-wrapper .form-field.left50 {
    float: left;
  }
  .form-left-fields-right-button .form-fields-wrapper .form-field.right50 {
    float: right;
  }
  .lignes-retour-wrap .tableau-gris-responsive .responsive-table .row .fiche-retour-produit-toggle {
    float: left;
  }
  .lignes-retour-wrap .tableau-gris-responsive .responsive-table .row .bouton-supprimer {
    float: right;
    width: auto;
    padding: 0;
  }
  .form-nouveau-retour-saisie .form-submit button,
  .lignes-retour-wrap .form-submit button {
    margin: 15px !important;
  }
  .TPL_ORCAB_NOUVEAU_RETOUR .form-nouveau-retour-saisie .responsive-table .row .cell, .TPL_ORCAB_RETOUR_A_VALIDER .form-nouveau-retour-saisie .responsive-table .row .cell {
    padding: 0 0 20px;
  }
  .TPL_ORCAB_NOUVEAU_RETOUR .form-nouveau-retour-saisie .responsive-table .row .cell::before, .TPL_ORCAB_RETOUR_A_VALIDER .form-nouveau-retour-saisie .responsive-table .row .cell::before {
    content: none;
  }
  .TPL_ORCAB_NOUVEAU_RETOUR .form-nouveau-retour-saisie .responsive-table .row .cell span, .TPL_ORCAB_RETOUR_A_VALIDER .form-nouveau-retour-saisie .responsive-table .row .cell span {
    width: 100%;
  }
  .TPL_ORCAB_NOUVEAU_RETOUR .form-nouveau-retour-saisie .responsive-table .row .cell button span, .TPL_ORCAB_RETOUR_A_VALIDER .form-nouveau-retour-saisie .responsive-table .row .cell button span {
    float: none;
    width: auto;
  }
  .TPL_ORCAB_NOUVEAU_RETOUR .form-nouveau-retour-saisie .responsive-table .row .avec-unite-commandee .historique-table__qty--inner, .TPL_ORCAB_RETOUR_A_VALIDER .form-nouveau-retour-saisie .responsive-table .row .avec-unite-commandee .historique-table__qty--inner {
    width: calc(50% - 10px);
    float: left;
    margin-left: 10px;
    margin-bottom: 0;
  }
  .TPL_ORCAB_NOUVEAU_RETOUR .form-nouveau-retour-saisie .responsive-table .row .avec-unite-commandee > div:nth-child(2), .TPL_ORCAB_RETOUR_A_VALIDER .form-nouveau-retour-saisie .responsive-table .row .avec-unite-commandee > div:nth-child(2) {
    margin-right: 10px;
    margin-left: 0;
  }
  .TPL_ORCAB_NOUVEAU_RETOUR .form-nouveau-retour-saisie .responsive-table .row .select-wrap::after, .TPL_ORCAB_RETOUR_A_VALIDER .form-nouveau-retour-saisie .responsive-table .row .select-wrap::after {
    transform: translateY(-81%);
    top: 81%;
    font-weight: normal;
  }
  .TPL_ORCAB_NOUVEAU_RETOUR .historique-table--liste .row, .TPL_ORCAB_RETOUR_A_VALIDER .historique-table--liste .row {
    padding: 10px;
  }
  .TPL_ORCAB_NOUVEAU_RETOUR .historique-table--liste .row .cell, .TPL_ORCAB_RETOUR_A_VALIDER .historique-table--liste .row .cell {
    display: flex;
  }
  .TPL_ORCAB_NOUVEAU_RETOUR .historique-table--liste .row .cell::before, .TPL_ORCAB_RETOUR_A_VALIDER .historique-table--liste .row .cell::before {
    font-weight: 400;
    font-size: 1.4rem;
    color: #003160;
    min-width: 50%;
  }
  .orcab-tabs-wrapper .nav li {
    top: 0;
    float: none;
  }
  #nouveau-retour-liste-produits .row {
    position: relative;
    padding: 10px;
  }
  #nouveau-retour-liste-produits .row .cell::before {
    font-weight: 400;
    font-size: 14px;
    color: #545454;
  }
  #nouveau-retour-liste-produits .row .cell.action {
    text-align: left;
  }
  #nouveau-retour-liste-produits .row > .cell:first-child span {
    padding-right: 55px;
    box-sizing: border-box;
  }
  #nouveau-retour-liste-produits .bouton-supprimer {
    position: absolute;
    top: 5px;
    right: 5px;
  }
  #nouveau-retour-liste-produits .bouton-supprimer a {
    width: 20px;
  }
  #nouveau-retour-liste-produits .bouton-supprimer a::before {
    font-size: 2rem;
  }
}

/* ===================================================================
 * TEMPLATE COMMANDE EN COURS
 * =================================================================*/
.TPL_ORCAB_SUIVI_COMMANDES,
.TPL_ORCAB_SUIVI_LIVRAISONS,
.TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS {
  /*.display-table {
        // Width pas applicable car le nombre de colonne depend de ce que le webservice de la cooperative nous renvoi
        .date-co {
            width: 12.3%;
        }
        .type-num {
            width: 14.6%;
        }
        .interlocuteur {
            width: 13.5%;
        }
        .ref {
            width: 8.9%;
        }
        .etat {
            width: 11.7%;
        }
        .livraison {
            width: 13.5%;
        }
        .prix-ht {
            width: 10.4%;
        }
        .utilisateur {
            width: 11%;
        }
        .action {
            width: 4.2%;
        }
    }*/
}

.TPL_ORCAB_SUIVI_COMMANDES .resultat .coop, .TPL_ORCAB_SUIVI_COMMANDES .resultat .type,
.TPL_ORCAB_SUIVI_LIVRAISONS .resultat .coop,
.TPL_ORCAB_SUIVI_LIVRAISONS .resultat .type,
.TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS .resultat .coop,
.TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS .resultat .type {
  font-weight: bold;
}

.TPL_ORCAB_SUIVI_COMMANDES .float-right,
.TPL_ORCAB_SUIVI_LIVRAISONS .float-right,
.TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS .float-right {
  float: right;
  text-align: right;
}

.TPL_ORCAB_SUIVI_COMMANDES .btn-petit-blanc,
.TPL_ORCAB_SUIVI_LIVRAISONS .btn-petit-blanc,
.TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS .btn-petit-blanc {
  margin: 0 0 10px 1%;
  line-height: 20px;
}

.TPL_ORCAB_SUIVI_COMMANDES .btn-petit-blanc:hover::before,
.TPL_ORCAB_SUIVI_LIVRAISONS .btn-petit-blanc:hover::before,
.TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS .btn-petit-blanc:hover::before {
  color: #fff;
}

.TPL_ORCAB_SUIVI_COMMANDES .btn-petit-blanc.toggle-all,
.TPL_ORCAB_SUIVI_LIVRAISONS .btn-petit-blanc.toggle-all,
.TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS .btn-petit-blanc.toggle-all {
  width: 120px;
  margin-right: 1px;
}

.TPL_ORCAB_SUIVI_COMMANDES .btn-petit-blanc.toggle-all span,
.TPL_ORCAB_SUIVI_LIVRAISONS .btn-petit-blanc.toggle-all span,
.TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS .btn-petit-blanc.toggle-all span {
  display: none;
}

.TPL_ORCAB_SUIVI_COMMANDES .btn-petit-blanc.toggle-all.etat-plier .deplier,
.TPL_ORCAB_SUIVI_LIVRAISONS .btn-petit-blanc.toggle-all.etat-plier .deplier,
.TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS .btn-petit-blanc.toggle-all.etat-plier .deplier {
  display: inline-block;
}

.TPL_ORCAB_SUIVI_COMMANDES .btn-petit-blanc.toggle-all:not(.etat-plier) .replier,
.TPL_ORCAB_SUIVI_LIVRAISONS .btn-petit-blanc.toggle-all:not(.etat-plier) .replier,
.TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS .btn-petit-blanc.toggle-all:not(.etat-plier) .replier {
  display: inline-block;
}

.TPL_ORCAB_SUIVI_COMMANDES .dates-commande,
.TPL_ORCAB_SUIVI_LIVRAISONS .dates-commande,
.TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS .dates-commande {
  clear: both;
}

.TPL_ORCAB_SUIVI_COMMANDES {
  overflow: visible;
}

.TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise .fixed-header {
  position: fixed;
  z-index: 3;
}

.TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise .absolute-header {
  position: absolute;
  z-index: 3;
}

.TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise .reset-header {
  position: relative;
  /* or default */
  z-index: auto;
}

/* ===================================================================
 * TEMPLATE FICHE COMMANDE ET PANIER A VALIDER
 * =================================================================*/
.TPL_ORCAB_FICHE_COMMANDE,
.TPL_ORCAB_FICHE_LIVRAISON,
.TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT {
  margin-bottom: 40px;
}

.TPL_ORCAB_FICHE_COMMANDE .resultat,
.TPL_ORCAB_FICHE_LIVRAISON .resultat,
.TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .resultat {
  background: #f6f6f6;
  margin-bottom: 30px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.TPL_ORCAB_FICHE_COMMANDE .resultat > .display-table,
.TPL_ORCAB_FICHE_LIVRAISON .resultat > .display-table,
.TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .resultat > .display-table {
  background: #fff;
  font-size: 1.6rem;
}

.TPL_ORCAB_FICHE_COMMANDE .lignes-co,
.TPL_ORCAB_FICHE_LIVRAISON .lignes-co,
.TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .lignes-co {
  border-radius: 0 0 7px 7px;
  overflow: hidden;
}

.TPL_ORCAB_FICHE_COMMANDE .infos-co,
.TPL_ORCAB_FICHE_LIVRAISON .infos-co,
.TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .infos-co {
  background: #e7e7e7;
  display: table;
  width: 100%;
  table-layout: fixed;
}

.TPL_ORCAB_FICHE_COMMANDE .infos-co > div,
.TPL_ORCAB_FICHE_LIVRAISON .infos-co > div,
.TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .infos-co > div {
  display: table-cell;
  vertical-align: top;
  padding: 20px;
  box-sizing: border-box;
}

.TPL_ORCAB_FICHE_COMMANDE .infos-co .libelle,
.TPL_ORCAB_FICHE_LIVRAISON .infos-co .libelle,
.TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .infos-co .libelle {
  font-size: 1.6rem;
}

.TPL_ORCAB_FICHE_COMMANDE .infos-co .adresse,
.TPL_ORCAB_FICHE_LIVRAISON .infos-co .adresse,
.TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .infos-co .adresse {
  width: 27.8%;
}

.TPL_ORCAB_FICHE_COMMANDE .infos-co .adresse .libelle,
.TPL_ORCAB_FICHE_LIVRAISON .infos-co .adresse .libelle,
.TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .infos-co .adresse .libelle {
  color: #004462;
  font-weight: bold;
  margin-bottom: 5px;
}

.TPL_ORCAB_FICHE_COMMANDE .infos-co .adresse p,
.TPL_ORCAB_FICHE_LIVRAISON .infos-co .adresse p,
.TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .infos-co .adresse p {
  margin: 0;
  padding: 13px 0;
  border-top: 1px solid #b9c6cc;
}

.TPL_ORCAB_FICHE_COMMANDE .infos-co .adresse p:first-child,
.TPL_ORCAB_FICHE_LIVRAISON .infos-co .adresse p:first-child,
.TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .infos-co .adresse p:first-child {
  padding-top: 0;
  border: 0;
}

.TPL_ORCAB_FICHE_COMMANDE .infos-co .adresse p:last-child,
.TPL_ORCAB_FICHE_LIVRAISON .infos-co .adresse p:last-child,
.TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .infos-co .adresse p:last-child {
  padding-bottom: 0;
}

.TPL_ORCAB_FICHE_COMMANDE .infos-co .adresse + #commentaire,
.TPL_ORCAB_FICHE_LIVRAISON .infos-co .adresse + #commentaire,
.TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .infos-co .adresse + #commentaire {
  padding-left: 7.5%;
}

.TPL_ORCAB_FICHE_COMMANDE .infos-co #commentaire .libelle,
.TPL_ORCAB_FICHE_LIVRAISON .infos-co #commentaire .libelle,
.TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .infos-co #commentaire .libelle {
  margin-bottom: 10px;
  font-weight: bold;
}

.TPL_ORCAB_FICHE_COMMANDE .infos-co #commentaire p,
.TPL_ORCAB_FICHE_LIVRAISON .infos-co #commentaire p,
.TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .infos-co #commentaire p {
  margin: 0;
}

.TPL_ORCAB_FICHE_COMMANDE .pdf div.boutons,
.TPL_ORCAB_FICHE_LIVRAISON .pdf div.boutons,
.TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .pdf div.boutons {
  float: left;
  padding-left: 3px;
}

.select2-results__option .liste_references {
  font-size: 16px;
}

.select2-results__option .liste_references:before {
  font-family: 'FontAwesome', Arial, sans-serif;
  color: #999;
  content: "\f096";
  width: 25px;
  height: 25px;
  padding-right: 10px;
  padding-left: 5px;
}

.select2-results__option[aria-selected=true] .liste_references:before {
  content: "\f14a";
}

.TPL_ORCAB_SUIVI_FACTURES .form-panier-reference .select-wrap::after,
.TPL_ORCAB_SUIVI_LIVRAISONS .form-panier-reference .select-wrap::after,
.TPL_ORCAB_SUIVI_COMMANDES .form-panier-reference .select-wrap::after {
  display: none;
  content: '';
}

.TPL_ORCAB_SUIVI_FACTURES .table-entete-grise,
.TPL_ORCAB_SUIVI_LIVRAISONS .table-entete-grise,
.TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise {
  overflow: hidden;
}

.TPL_ORCAB_SUIVI_FACTURES .table-entete-grise tbody tr,
.TPL_ORCAB_SUIVI_LIVRAISONS .table-entete-grise tbody tr,
.TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise tbody tr {
  border: solid #cecece;
  border-width: 1px 2px;
}

.TPL_ORCAB_SUIVI_FACTURES .table-entete-grise tbody tr .article,
.TPL_ORCAB_SUIVI_LIVRAISONS .table-entete-grise tbody tr .article,
.TPL_ORCAB_SUIVI_COMMANDES .table-entete-grise tbody tr .article {
  line-height: 1.81rem;
}

/* ===================================================================
 * TEMPLATE SUIVI COMMANDES TOUS ADHERENTS
 * =================================================================*/
.TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS .form-field.adherent {
  position: relative;
}

.TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS .adherents-disponibles-container {
  position: absolute;
  top: 75px;
  width: 100%;
  left: 0;
  box-sizing: border-box;
  z-index: 3;
  border-radius: 5px;
  overflow-y: auto;
  max-height: 250px;
}

.TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS .adherents-disponibles-container li {
  font-size: 1.6rem;
  background: #e7e7e7;
  border-bottom: 1px solid #fff;
}

.TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS .adherents-disponibles-container li:hover {
  background: #bcc5ca;
}

.TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS .adherents-disponibles-container li a {
  display: block;
  text-decoration: none;
  padding: 10px;
}

.TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS .ligne-suivi-commandes-par-adherent .intitules {
  background-color: #f1f1f1;
}

.TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS .ligne-suivi-commandes-par-adherent .commande-par-adherent {
  border-top: 1px solid #545454;
}

.TPL_ORCAB_SUIVI_COMMANDES .form-search form {
  padding-bottom: 0;
}

@media screen and (max-width: 1024px) {
  .TPL_ORCAB_SUIVI_COMMANDES .resultat .display-table .type-num {
    padding-right: 55px;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

@media screen and (max-width: 1024px) {
  .TPL_ORCAB_SUIVI_COMMANDES .resultat .display-table .type-num .lib {
    display: none;
  }
}

/* ===================================================================
 * MEDIAQUERIES
 * =================================================================*/
@media screen and (max-width: 1024px) {
  /* ===================================================================
    * TEMPLATE COMMANDES EN COURS
    * =================================================================*/
  .TPL_ORCAB_SUIVI_COMMANDES .interlocateur > div,
  .TPL_ORCAB_SUIVI_LIVRAISONS .interlocateur > div,
  .TPL_ORCAB_SUIVI_COMMANDES_TOUS_ADHERENTS .interlocateur > div {
    display: inline-block;
    width: 100% !important;
  }
  /* ===================================================================
    * TEMPLATE FICHE COMMANDE
    * =================================================================*/
  .TPL_ORCAB_FICHE_COMMANDE .infos-co > div,
  .TPL_ORCAB_FICHE_LIVRAISON .infos-co > div,
  .TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .infos-co > div {
    padding-left: 10px;
    padding-right: 10px;
    vertical-align: top;
  }
  .TPL_ORCAB_FICHE_COMMANDE .infos-co .adresse,
  .TPL_ORCAB_FICHE_LIVRAISON .infos-co .adresse,
  .TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .infos-co .adresse {
    width: 36%;
  }
  .TPL_ORCAB_FICHE_COMMANDE .infos-co .adresse + #commentaire,
  .TPL_ORCAB_FICHE_LIVRAISON .infos-co .adresse + #commentaire,
  .TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .infos-co .adresse + #commentaire {
    padding-left: 5.5%;
  }
  /* ===================================================================
     * TEMPLATE FICHE FACTURE
     * =================================================================*/
  .TPL_ORCAB_FICHE_FACTURE h1, .TPL_ORCAB_FICHE_FACTURE .float-right {
    float: none;
    width: 100%;
  }
  .TPL_ORCAB_FICHE_FACTURE .table-entete-grise:not(.table-lignes) th, .TPL_ORCAB_FICHE_FACTURE .table-entete-grise:not(.table-lignes) td {
    padding: 8px 10px;
  }
  /* ===================================================================
    * TEMPLATE FICHE RETOUR
    * =================================================================*/
}

@media screen and (max-width: 767px) {
  /* ===================================================================
    * TEMPLATE FICHE COMMANDE
    * =================================================================*/
  .TPL_ORCAB_FICHE_COMMANDE .resultat .display-table,
  .TPL_ORCAB_FICHE_LIVRAISON .resultat .display-table,
  .TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .resultat .display-table {
    font-size: inherit;
    padding: 10px 0 20px;
  }
  .TPL_ORCAB_FICHE_COMMANDE .infos-co > div,
  .TPL_ORCAB_FICHE_LIVRAISON .infos-co > div,
  .TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .infos-co > div {
    display: block;
  }
  .TPL_ORCAB_FICHE_COMMANDE .infos-co .adresse,
  .TPL_ORCAB_FICHE_LIVRAISON .infos-co .adresse,
  .TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .infos-co .adresse {
    width: 100%;
  }
  .TPL_ORCAB_FICHE_COMMANDE .infos-co .adresse + #commentaire,
  .TPL_ORCAB_FICHE_LIVRAISON .infos-co .adresse + #commentaire,
  .TPL_ORCAB_FICHE_COMMANDE_PAR_ADHERENT .infos-co .adresse + #commentaire {
    padding-left: 10px;
  }
  /* ===================================================================
     * TEMPLATE FICHE DEVIS ET BON DE CHOIX
     * =================================================================*/
  .TPL_ORCAB_FICHE_DEVIS_BONS .display-table > div.action {
    display: block;
  }
  .TPL_ORCAB_FICHE_DEVIS_BONS .resultat {
    border-radius: 7px;
  }
  .table-entete-grise thead {
    display: none;
  }
  .table-entete-grise tbody tr {
    width: 100%;
    display: block;
  }
  .table-entete-grise tbody tr:before, .table-entete-grise tbody tr:after {
    display: table;
    content: " ";
  }
  .table-entete-grise tbody tr:after {
    clear: both;
  }
  .table-entete-grise tbody tr.uneLigne {
    position: relative;
  }
  .table-entete-grise tbody td {
    width: 100%;
    display: block;
  }
  .table-entete-grise tbody td:before, .table-entete-grise tbody td:after {
    display: table;
    content: " ";
  }
  .table-entete-grise tbody td:after {
    clear: both;
  }
  .table-entete-grise tbody td::before {
    content: attr(data-label);
    display: block;
    width: 35%;
    box-sizing: border-box;
    float: left;
    padding-right: 10px;
    font-weight: 600;
  }
  .table-entete-grise tbody td > span {
    display: block;
    float: right;
    width: 65%;
  }
  .table-entete-grise tbody td.fiche-retour-produit-toggle-content {
    padding: 0;
    display: none;
  }
  .table-entete-grise tbody td.fiche-retour-produit-toggle-content.active {
    display: block;
  }
  .table-entete-grise tbody td.fiche-retour-produit-toggle-content table {
    width: 100%;
  }
}

.with-btn-favoris .TPL_ORCAB_GESTION_RETOURS .float-right, .with-btn-favoris .TPL_ORCAB_FICHE_DEVIS_BONS .float-right, .with-btn-favoris .TPL_ORCAB_FICHE_FACTURE .float-right {
  width: calc(100% - 200px);
}

@media screen and (max-width: 1024px) {
  .with-btn-favoris .TPL_ORCAB_GESTION_RETOURS .float-right, .with-btn-favoris .TPL_ORCAB_FICHE_DEVIS_BONS .float-right, .with-btn-favoris .TPL_ORCAB_FICHE_FACTURE .float-right {
    width: calc(100% - 60px);
  }
}

.form-field__tri {
  display: flex;
}

@media screen and (max-width: 1024px) {
  .form-field__tri {
    flex-wrap: wrap;
  }
}

.form-field__tri-txt {
  font-weight: 700;
  font-size: 14px;
  color: #003160;
  margin: 8px 10px 0 0;
}

@media screen and (max-width: 1024px) {
  .form-field__tri-txt {
    margin: 10px 0;
    width: 100%;
  }
}

@media screen and (max-width: 1024px) {
  .form-field__tri .field select {
    margin-top: 0;
  }
}

@media screen and (max-width: 1024px) {
  .form-field__tri .field:first-of-type {
    width: calc(100% - 44px);
  }
}

.form-field__tri .field:first-of-type select {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

@media screen and (max-width: 1024px) {
  .form-field__tri .field:first-of-type select {
    padding-top: 0;
  }
}

.form-field__tri .field:nth-of-type(2) .select-wrap::after {
  content: none;
}

.form-field__tri-order {
  border-radius: 0px 8px 8px 0px;
  border: 1px solid #868686;
  border-left: none;
  background-image: url(/build/images/tri-down.34f3bdc7.svg);
  background-size: 20px;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #ffffff;
  width: 44px;
  padding: 10px;
  height: 40px;
  color: transparent;
}

.form-field__tri-order.descendant {
  background-image: url(/build/images/tri-up.65ae0154.svg);
  -moz-transform: scaleY(-1);
  -o-transform: scaleY(-1);
  -webkit-transform: scaleY(-1);
  transform: scaleY(-1);
}

/* ===================================================================
 * COMPTE
 * =================================================================*/
/* ===================================================================
 * TEMPLATE INFOS COMPTE
 * =================================================================*/
.TPL_INFOS_COMPTE h2, .TPL_INFOS_COMPTE .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_INFOS_COMPTE h1, .TPL_INFOS_COMPTE .fiche-adherent h1, .fiche-adherent .TPL_INFOS_COMPTE h1 {
  margin-bottom: 30px;
}

.TPL_INFOS_COMPTE .col {
  overflow: hidden;
}

.TPL_INFOS_COMPTE .col .field {
  width: 49%;
  float: left;
}

.TPL_INFOS_COMPTE .col .field:not(:first-child) {
  margin-left: 2%;
}

.TPL_INFOS_COMPTE form {
  padding-bottom: 10px;
}

.TPL_INFOS_COMPTE .field {
  margin-bottom: 30px;
}

.TPL_INFOS_COMPTE .field-required::after, .TPL_INFOS_COMPTE .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field::after, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_INFOS_COMPTE .field::after {
  right: 20px;
}

.TPL_INFOS_COMPTE .field > label .required {
  display: none;
}

.TPL_INFOS_COMPTE .coeffiecient-prix input[type="text"], .TPL_INFOS_COMPTE .coeffiecient-prix .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_INFOS_COMPTE .coeffiecient-prix input[type="date"], .TPL_INFOS_COMPTE .coeffiecient-prix .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_INFOS_COMPTE .coeffiecient-prix input[type="date"], .TPL_INFOS_COMPTE .coeffiecient-prix .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_INFOS_COMPTE .coeffiecient-prix input[type="date"] {
  width: 28.53242320%;
  margin-right: 30px;
}

.TPL_INFOS_COMPTE .coeffiecient-prix .bouton-vert, .TPL_INFOS_COMPTE .coeffiecient-prix .form-submit button, .form-submit .TPL_INFOS_COMPTE .coeffiecient-prix button,
.TPL_INFOS_COMPTE .coeffiecient-prix .form-submit input[type="submit"], .form-submit .TPL_INFOS_COMPTE .coeffiecient-prix input[type="submit"], .TPL_INFOS_COMPTE .coeffiecient-prix .bouton-bleu, .TPL_INFOS_COMPTE .coeffiecient-prix .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_INFOS_COMPTE .coeffiecient-prix .btn-imprimer, .TPL_INFOS_COMPTE .coeffiecient-prix .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .TPL_INFOS_COMPTE .coeffiecient-prix .btn-imprimer, .TPL_INFOS_COMPTE .coeffiecient-prix .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .TPL_INFOS_COMPTE .coeffiecient-prix a.voir-produit, .TPL_INFOS_COMPTE .coeffiecient-prix .materiel-print-btn a, .materiel-print-btn .TPL_INFOS_COMPTE .coeffiecient-prix a, .TPL_INFOS_COMPTE .coeffiecient-prix .materiel-planning-pdf a, .materiel-planning-pdf .TPL_INFOS_COMPTE .coeffiecient-prix a, .TPL_INFOS_COMPTE .coeffiecient-prix .bouton-gris, .TPL_INFOS_COMPTE .coeffiecient-prix .bouton-rouge, .TPL_INFOS_COMPTE .coeffiecient-prix .bouton-retour, .TPL_INFOS_COMPTE .coeffiecient-prix .bouton-rechercher, .TPL_INFOS_COMPTE .coeffiecient-prix .btn-ajouter-au-panier,
.TPL_INFOS_COMPTE .coeffiecient-prix .btn-liste-achat-activate, .TPL_INFOS_COMPTE .coeffiecient-prix .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .TPL_INFOS_COMPTE .coeffiecient-prix a, .TPL_INFOS_COMPTE .coeffiecient-prix .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .TPL_INFOS_COMPTE .coeffiecient-prix .btn-ajouter-liste, .TPL_INFOS_COMPTE .coeffiecient-prix .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .TPL_INFOS_COMPTE .coeffiecient-prix .btn-submit {
  min-width: 16.7rem;
}

.TPL_INFOS_COMPTE #coefficient_form {
  margin-bottom: 3rem;
}

.TPL_INFOS_COMPTE #coefficient_form > div {
  display: inline;
}

.TPL_INFOS_COMPTE .bouton-vert, .TPL_INFOS_COMPTE .form-submit button, .form-submit .TPL_INFOS_COMPTE button,
.TPL_INFOS_COMPTE .form-submit input[type="submit"], .form-submit .TPL_INFOS_COMPTE input[type="submit"], .TPL_INFOS_COMPTE .bouton-bleu, .TPL_INFOS_COMPTE .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_INFOS_COMPTE .btn-imprimer, .TPL_INFOS_COMPTE .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .TPL_INFOS_COMPTE .btn-imprimer, .TPL_INFOS_COMPTE .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .TPL_INFOS_COMPTE a.voir-produit, .TPL_INFOS_COMPTE .materiel-print-btn a, .materiel-print-btn .TPL_INFOS_COMPTE a, .TPL_INFOS_COMPTE .materiel-planning-pdf a, .materiel-planning-pdf .TPL_INFOS_COMPTE a, .TPL_INFOS_COMPTE .bouton-gris, .TPL_INFOS_COMPTE .bouton-rouge, .TPL_INFOS_COMPTE .bouton-retour, .TPL_INFOS_COMPTE .bouton-rechercher, .TPL_INFOS_COMPTE .btn-ajouter-au-panier,
.TPL_INFOS_COMPTE .btn-liste-achat-activate, .TPL_INFOS_COMPTE .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .TPL_INFOS_COMPTE a, .TPL_INFOS_COMPTE .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .TPL_INFOS_COMPTE .btn-ajouter-liste, .TPL_INFOS_COMPTE .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .TPL_INFOS_COMPTE .btn-submit {
  min-width: 19.7rem;
}

.TPL_INFOS_COMPTE .btn-gerer-connexions {
  min-width: inherit;
}

.TPL_INFOS_COMPTE .display-table > div {
  vertical-align: middle;
  width: 17%;
}

.TPL_INFOS_COMPTE .display-table > div.roleHeader {
  width: 30%;
}

.TPL_INFOS_COMPTE .display-table > div.roleHeader .btn + .btn {
  margin-left: 20px;
}

@media (min-width: 1025px) {
  .TPL_INFOS_COMPTE .display-table > div.roleHeaderLast {
    width: 14%;
    vertical-align: initial;
  }
}

.TPL_INFOS_COMPTE .resultat .nom {
  text-transform: uppercase;
}

.TPL_INFOS_COMPTE .resultat .nom, .TPL_INFOS_COMPTE .resultat .prenom {
  font-weight: bold;
  word-break: break-all;
}

.TPL_INFOS_COMPTE .table-adherent-utilisateurs {
  margin-bottom: 40px;
}

.TPL_INFOS_COMPTE .table-roles .nom {
  width: 50%;
}

.TPL_INFOS_COMPTE .table-roles .roleHeader {
  text-align: right;
}

.TPL_INFOS_COMPTE .table-roles .roleHeader .btn {
  min-width: 41%;
  box-sizing: border-box;
}

.TPL_INFOS_COMPTE .table-roles .roleHeader .btn-retirer::before {
  content: "\e95e";
  margin-right: 5px;
  font-size: 2rem;
  vertical-align: sub;
  display: inline-block;
}

@media screen and (max-width: 1600px) and (min-width: 1025px) {
  .TPL_INFOS_COMPTE .table-roles .roleHeader {
    width: 50% !important;
  }
}

@media screen and (max-width: 1024px) {
  .TPL_INFOS_COMPTE .table-roles .roleHeader {
    width: 50%;
  }
  .TPL_INFOS_COMPTE .table-roles .roleHeader .btn {
    min-width: inherit;
    width: 50%;
  }
}

.TPL_INFOS_COMPTE .form-utilisateur-modifier {
  padding: 0;
}

.TPL_INFOS_COMPTE .form-utilisateur-modifier .role {
  width: 48%;
  padding-right: 2%;
  display: inline-block;
  box-sizing: border-box;
}

.TPL_INFOS_COMPTE .form-utilisateur-modifier #eolas_ecommerce_orcab_utilisateurtype {
  width: 70%;
  float: left;
}

.TPL_INFOS_COMPTE .form-utilisateur-modifier #eolas_ecommerce_orcab_utilisateurtype select {
  background: url(/build/images/fl-select.39dda136.png) no-repeat 91% 50% #fff;
}

.TPL_INFOS_COMPTE .form-utilisateur-modifier .btn-actions {
  width: 30%;
  display: inline-block;
  line-height: 50px;
}

.TPL_INFOS_COMPTE .form-utilisateur-modifier .bouton-vert, .TPL_INFOS_COMPTE .form-utilisateur-modifier .form-submit button, .form-submit .TPL_INFOS_COMPTE .form-utilisateur-modifier button,
.TPL_INFOS_COMPTE .form-utilisateur-modifier .form-submit input[type="submit"], .form-submit .TPL_INFOS_COMPTE .form-utilisateur-modifier input[type="submit"], .TPL_INFOS_COMPTE .form-utilisateur-modifier .bouton-bleu, .TPL_INFOS_COMPTE .form-utilisateur-modifier .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_INFOS_COMPTE .form-utilisateur-modifier .btn-imprimer, .TPL_INFOS_COMPTE .form-utilisateur-modifier .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .TPL_INFOS_COMPTE .form-utilisateur-modifier .btn-imprimer, .TPL_INFOS_COMPTE .form-utilisateur-modifier .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .TPL_INFOS_COMPTE .form-utilisateur-modifier a.voir-produit, .TPL_INFOS_COMPTE .form-utilisateur-modifier .materiel-print-btn a, .materiel-print-btn .TPL_INFOS_COMPTE .form-utilisateur-modifier a, .TPL_INFOS_COMPTE .form-utilisateur-modifier .materiel-planning-pdf a, .materiel-planning-pdf .TPL_INFOS_COMPTE .form-utilisateur-modifier a, .TPL_INFOS_COMPTE .form-utilisateur-modifier .bouton-gris, .TPL_INFOS_COMPTE .form-utilisateur-modifier .bouton-rouge, .TPL_INFOS_COMPTE .form-utilisateur-modifier .bouton-retour, .TPL_INFOS_COMPTE .form-utilisateur-modifier .bouton-rechercher, .TPL_INFOS_COMPTE .form-utilisateur-modifier .btn-ajouter-au-panier,
.TPL_INFOS_COMPTE .form-utilisateur-modifier .btn-liste-achat-activate, .TPL_INFOS_COMPTE .form-utilisateur-modifier .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .TPL_INFOS_COMPTE .form-utilisateur-modifier a, .TPL_INFOS_COMPTE .form-utilisateur-modifier .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .TPL_INFOS_COMPTE .form-utilisateur-modifier .btn-ajouter-liste, .TPL_INFOS_COMPTE .form-utilisateur-modifier .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .TPL_INFOS_COMPTE .form-utilisateur-modifier .btn-submit {
  min-width: inherit;
  width: 50%;
}

.TPL_INFOS_COMPTE .pop-up-info-client {
  display: none;
  position: fixed;
  height: 100%;
  width: 100%;
  left: 0;
  top: 0;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 1060;
}

.TPL_INFOS_COMPTE .pop-up-info-client .pop-up-content {
  background-color: #fff;
  padding: 10px;
  position: absolute;
  left: 50%;
  top: 60%;
  transform: translate(-50%, -50%);
  overflow-y: auto;
}

@media screen and (max-width: 1024px) {
  .TPL_INFOS_COMPTE .pop-up-info-client .pop-up-content {
    top: 50%;
  }
}

.TPL_INFOS_COMPTE .pop-up-configuration-utilisateur {
  overflow-x: auto;
  max-height: calc(100vh - 15%);
}

.TPL_INFOS_COMPTE .form-config-utilisateur {
  max-width: 100%;
  width: 700px;
  margin: 0 auto;
  padding: 15px 10px;
  box-sizing: border-box;
}

.TPL_INFOS_COMPTE .form-config-utilisateur .field {
  overflow: hidden;
}

.TPL_INFOS_COMPTE .form-config-utilisateur label {
  float: left;
  width: 40%;
  margin-top: 15px;
}

.TPL_INFOS_COMPTE .form-config-utilisateur select {
  float: left;
  width: 60%;
  background: url(/build/images/fl-select.39dda136.png) no-repeat 96% 50% #fff;
}

.TPL_INFOS_COMPTE .form-config-utilisateur .buttons {
  text-align: center;
}

.TPL_INFOS_COMPTE .form-config-utilisateur .buttons button {
  margin: 0 7px;
}

@media screen and (max-width: 1024px) {
  .TPL_INFOS_COMPTE .form-config-utilisateur label, .TPL_INFOS_COMPTE .form-config-utilisateur select {
    width: 100%;
    margin: 0;
  }
}

@media screen and (max-width: 767px) {
  .TPL_INFOS_COMPTE .form-config-utilisateur .buttons button {
    margin: 15px 0 0;
  }
}

.TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que {
  display: none;
  position: fixed;
  height: 100%;
  width: 100%;
  left: 0;
  top: 0;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 100;
}

.TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .pop-up-gestion-connexions .fa-chevron-right::before {
  content: "\f105";
}

.TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .pop-up-gestion-connexions .fa-chevron-double-right::before {
  content: "\f101";
}

.TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .pop-up-gestion-connexions .fa-chevron-left::before {
  content: "\f104";
}

.TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .pop-up-gestion-connexions .fa-chevron-double-left::before {
  content: "\f100";
}

.TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .pop-up-gestion-connexions #utilisateursAutorisesASeConnecter {
  margin: 20px 0;
}

.TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .pop-up-gestion-connexions .buttons {
  text-align: center;
}

.TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .pop-up-gestion-connexions .buttons button {
  margin: 0 20px;
}

.TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .clientsConnexionAQuiOnSeConnecteMulti div, .TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .clientsConnexionAQuiOnSeConnecteMulti select {
  display: inline-block;
}

.TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .clientsConnexionAQuiOnSeConnecteMulti select {
  width: 47%;
  height: 119px;
  border: 1px solid #999;
  border-radius: 0;
  outline: 0 none;
}

.TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .clientsConnexionAQuiOnSeConnecteMulti .btns {
  position: relative;
  top: -3px;
}

.TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .clientsConnexionAQuiOnSeConnecteMulti .btns button {
  display: block;
  background-color: #fff;
  border: 1px solid #999;
  margin: 1px;
  height: 29px;
  width: 29px;
  font-weight: 800;
  font-size: 18px;
}

.TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .clientsConnexionAQuiOnSeConnecteMulti .clientsConnexionAQuiOnSeConnecteMultiSearch {
  display: block;
  position: absolute;
  margin-left: 42%;
  margin-top: 8px;
}

.TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .clientsConnexionAQuiOnSeConnecteMulti .clientsConnexionAQuiOnSeConnecteMultiSearch::after {
  content: "\f002";
  font-size: 20px;
}

.TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .clientsConnexionAQuiOnSeConnecteMulti input.clientsConnexionAQuiOnSeConnecteMultiSearchInput {
  display: block;
  width: 42%;
  border: 1px solid #999;
  border-radius: 0;
  height: 35px;
  margin-bottom: 1em;
}

.TPL_INFOS_COMPTE #pop-up-connexion-en-tant-que .clientsConnexionAQuiOnSeConnecteMulti #clientsConnexionAQuiOnSeConnecteMulti {
  padding-right: 1px;
}

@media screen and (max-width: 1024px) {
  .TPL_INFOS_COMPTE .col .field {
    width: 100%;
    float: none;
  }
  .TPL_INFOS_COMPTE .col .field:not(:first-child) {
    margin-left: 0;
  }
  .with-btn-favoris .TPL_INFOS_COMPTE h2, .with-btn-favoris .TPL_INFOS_COMPTE .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .with-btn-favoris .TPL_INFOS_COMPTE h1, .with-btn-favoris .TPL_INFOS_COMPTE .fiche-adherent h1, .fiche-adherent .with-btn-favoris .TPL_INFOS_COMPTE h1 {
    padding-right: 50px;
  }
  .TPL_INFOS_COMPTE .form-utilisateur-modifier {
    display: block !important;
    margin-top: 10px;
  }
  .TPL_INFOS_COMPTE .form-utilisateur-modifier select {
    border: 1px solid #c4c4c4;
  }
  .TPL_INFOS_COMPTE .form-utilisateur-modifier .btn-icon {
    width: 35px;
    height: 35px;
    margin-left: 10px;
  }
  .TPL_INFOS_COMPTE .form-utilisateur-modifier .btn-icon::before {
    font-size: 3.5rem;
  }
  .TPL_INFOS_COMPTE .display-table > div.roleHeader:last-child {
    text-align: left;
  }
  .TPL_INFOS_COMPTE .display-table > div.roleHeader:last-child .btn {
    float: right;
  }
  .TPL_INFOS_COMPTE .display-table > div.roleHeader .bouton-rouge {
    margin-top: 10px;
  }
}

@media screen and (max-width: 767px) {
  .TPL_INFOS_COMPTE .coeffiecient-prix input[type="text"], .TPL_INFOS_COMPTE .coeffiecient-prix .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_INFOS_COMPTE .coeffiecient-prix input[type="date"], .TPL_INFOS_COMPTE .coeffiecient-prix .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_INFOS_COMPTE .coeffiecient-prix input[type="date"], .TPL_INFOS_COMPTE .coeffiecient-prix .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_INFOS_COMPTE .coeffiecient-prix input[type="date"] {
    width: 38%;
  }
  .TPL_INFOS_COMPTE .table-adherent-utilisateurs .intitules {
    display: none;
  }
  .TPL_INFOS_COMPTE .table-adherent-utilisateurs .display-table .lib {
    display: block;
    float: left;
    width: 40%;
    padding-right: 10px;
    box-sizing: border-box;
  }
  .TPL_INFOS_COMPTE .table-adherent-utilisateurs .display-table > div {
    display: block;
    width: 100%;
    padding: 10px 20px;
  }
  .TPL_INFOS_COMPTE .table-adherent-utilisateurs .display-table > div.nom, .TPL_INFOS_COMPTE .table-adherent-utilisateurs .display-table > div.roleHeader {
    width: 100%;
  }
  .TPL_INFOS_COMPTE .table-adherent-utilisateurs .display-table > div.roleHeader .lib {
    width: 100%;
    float: none;
  }
  .TPL_INFOS_COMPTE .table-adherent-utilisateurs .display-table > div.roleHeader:last-child {
    text-align: left;
  }
  .TPL_INFOS_COMPTE .table-adherent-utilisateurs .display-table > div.roleHeader:last-child .btn {
    float: none;
    display: block;
    margin-left: 0;
    width: 100%;
    min-width: inherit;
  }
  .TPL_INFOS_COMPTE .table-adherent-utilisateurs .btn-gerer-connexions {
    width: 100%;
  }
  .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier {
    display: block;
    margin-top: 20px;
  }
  .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .role {
    padding-right: 0;
    width: 100%;
    display: block;
  }
  .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .bouton-vert, .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .form-submit button, .form-submit .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier button,
  .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .form-submit input[type="submit"], .form-submit .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier input[type="submit"], .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .bouton-bleu, .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .btn-imprimer, .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .btn-imprimer, .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier a.voir-produit, .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .materiel-print-btn a, .materiel-print-btn .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier a, .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .materiel-planning-pdf a, .materiel-planning-pdf .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier a, .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .bouton-gris, .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .bouton-rouge, .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .bouton-retour, .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .bouton-rechercher, .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .btn-ajouter-au-panier,
  .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .btn-liste-achat-activate, .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier a, .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .btn-ajouter-liste, .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .btn-submit {
    width: 100%;
  }
  .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier #eolas_ecommerce_orcab_utilisateurtype {
    float: none;
    width: 100%;
  }
  .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .btn-actions {
    display: block;
    width: 100%;
    text-align: center;
    margin: 10px 0 0;
    line-height: normal;
  }
  .TPL_INFOS_COMPTE .table-adherent-utilisateurs .form-utilisateur-modifier .btn-actions button:first-child {
    margin-left: 0;
  }
}

/* ===================================================================
 * TEMPLATE NOUVEAU ROLE
 * =================================================================*/
.TPL_GESTION_ROLE_UTILISATEUR {
  margin-bottom: 40px;
}

.TPL_GESTION_ROLE_UTILISATEUR h2, .TPL_GESTION_ROLE_UTILISATEUR .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_GESTION_ROLE_UTILISATEUR h1, .TPL_GESTION_ROLE_UTILISATEUR .fiche-adherent h1, .fiche-adherent .TPL_GESTION_ROLE_UTILISATEUR h1 {
  margin-bottom: 20px;
}

.TPL_GESTION_ROLE_UTILISATEUR .col {
  overflow: hidden;
}

.TPL_GESTION_ROLE_UTILISATEUR .col .field {
  width: 49%;
  float: left;
}

.TPL_GESTION_ROLE_UTILISATEUR .col .field:not(:first-child) {
  margin-left: 2%;
}

.TPL_GESTION_ROLE_UTILISATEUR form {
  padding-bottom: 10px;
}

.TPL_GESTION_ROLE_UTILISATEUR .field {
  margin-bottom: 30px;
}

.TPL_GESTION_ROLE_UTILISATEUR .select-wrap {
  width: 100%;
}

.TPL_GESTION_ROLE_UTILISATEUR [type="checkbox"] + label {
  margin: 0.6rem 0 1.8rem;
}

.TPL_GESTION_ROLE_UTILISATEUR .bouton-vert, .TPL_GESTION_ROLE_UTILISATEUR .form-submit button, .form-submit .TPL_GESTION_ROLE_UTILISATEUR button,
.TPL_GESTION_ROLE_UTILISATEUR .form-submit input[type="submit"], .form-submit .TPL_GESTION_ROLE_UTILISATEUR input[type="submit"], .TPL_GESTION_ROLE_UTILISATEUR .bouton-bleu, .TPL_GESTION_ROLE_UTILISATEUR .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_GESTION_ROLE_UTILISATEUR .btn-imprimer, .TPL_GESTION_ROLE_UTILISATEUR .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .TPL_GESTION_ROLE_UTILISATEUR .btn-imprimer, .TPL_GESTION_ROLE_UTILISATEUR .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .TPL_GESTION_ROLE_UTILISATEUR a.voir-produit, .TPL_GESTION_ROLE_UTILISATEUR .materiel-print-btn a, .materiel-print-btn .TPL_GESTION_ROLE_UTILISATEUR a, .TPL_GESTION_ROLE_UTILISATEUR .materiel-planning-pdf a, .materiel-planning-pdf .TPL_GESTION_ROLE_UTILISATEUR a, .TPL_GESTION_ROLE_UTILISATEUR .bouton-gris, .TPL_GESTION_ROLE_UTILISATEUR .bouton-rouge, .TPL_GESTION_ROLE_UTILISATEUR .bouton-retour, .TPL_GESTION_ROLE_UTILISATEUR .bouton-rechercher, .TPL_GESTION_ROLE_UTILISATEUR .btn-ajouter-au-panier,
.TPL_GESTION_ROLE_UTILISATEUR .btn-liste-achat-activate, .TPL_GESTION_ROLE_UTILISATEUR .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .TPL_GESTION_ROLE_UTILISATEUR a, .TPL_GESTION_ROLE_UTILISATEUR .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .TPL_GESTION_ROLE_UTILISATEUR .btn-ajouter-liste, .TPL_GESTION_ROLE_UTILISATEUR .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .TPL_GESTION_ROLE_UTILISATEUR .btn-submit {
  min-width: 19.7rem;
}

@media screen and (max-width: 1024px) {
  .TPL_GESTION_ROLE_UTILISATEUR .col .field {
    width: 100%;
    float: none;
  }
  .TPL_GESTION_ROLE_UTILISATEUR .col .field:not(:first-child) {
    margin-left: 0;
  }
}

/* ===================================================================
 * TEMPLATE ADRESSES DE LIVRAISON
 * =================================================================*/
.TPL_COMPTE_ADRESSE_LIVRAISON {
  margin-bottom: 20px;
}

.TPL_COMPTE_ADRESSE_LIVRAISON .jour-tournee {
  overflow: hidden;
  margin-bottom: 25px;
}

.TPL_COMPTE_ADRESSE_LIVRAISON .jour-tournee h2, .TPL_COMPTE_ADRESSE_LIVRAISON .jour-tournee .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_COMPTE_ADRESSE_LIVRAISON .jour-tournee h1, .TPL_COMPTE_ADRESSE_LIVRAISON .jour-tournee .fiche-adherent h1, .fiche-adherent .TPL_COMPTE_ADRESSE_LIVRAISON .jour-tournee h1 {
  margin-bottom: 25px;
  line-height: 4.3rem;
}

.TPL_COMPTE_ADRESSE_LIVRAISON .ajouterAdresse {
  margin: 25px 0;
}

.TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .bouton-vert, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .form-submit button, .form-submit .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list button,
.TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .form-submit input[type="submit"], .form-submit .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list input[type="submit"], .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .bouton-bleu, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .btn-imprimer, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .btn-imprimer, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list a.voir-produit, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .materiel-print-btn a, .materiel-print-btn .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list a, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .materiel-planning-pdf a, .materiel-planning-pdf .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list a, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .bouton-gris, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .bouton-rouge, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .bouton-retour, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .bouton-rechercher, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .btn-ajouter-au-panier,
.TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .btn-liste-achat-activate, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list a, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .btn-ajouter-liste, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .btn-submit {
  max-width: 27.5rem;
}

.TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .bouton-vert i:before, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .form-submit button i:before, .form-submit .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list button i:before, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .form-submit input[type="submit"] i:before, .form-submit .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list input[type="submit"] i:before, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .bouton-bleu i:before, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer i:before, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .btn-imprimer i:before, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .lignes-retour-wrap .form-submit .btn-imprimer i:before, .lignes-retour-wrap .form-submit .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .btn-imprimer i:before, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .TPL_COMPARATEUR .action a.voir-produit i:before, .TPL_COMPARATEUR .action .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list a.voir-produit i:before, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .materiel-print-btn a i:before, .materiel-print-btn .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list a i:before, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .materiel-planning-pdf a i:before, .materiel-planning-pdf .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list a i:before, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .bouton-gris i:before, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .bouton-rouge i:before, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .bouton-retour i:before, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .bouton-rechercher i:before, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .btn-ajouter-au-panier i:before, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .btn-liste-achat-activate i:before, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .ressources-associees li.lien-tous a i:before, .ressources-associees li.lien-tous .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list a i:before, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste i:before, .liste-achat-plugin .ajouter-a-la-liste .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .btn-ajouter-liste i:before, .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .TPL_FICHE_PRODUIT .btn-submit i:before, .TPL_FICHE_PRODUIT .TPL_COMPTE_ADRESSE_LIVRAISON .adresses-list .btn-submit i:before {
  color: #ffffff;
}

@media screen and (max-width: 1024px) {
  .TPL_COMPTE_ADRESSE_LIVRAISON .ajouterAdresse {
    margin-top: -55px;
    text-align: right;
  }
}

@media screen and (max-width: 767px) {
  .TPL_COMPTE_ADRESSE_LIVRAISON .ajouterAdresse {
    text-align: center;
    margin-top: 0;
  }
}

/* ===================================================================
 * BLOCS TOURNEES ET ADRESSES
 * =================================================================*/
/* Bloc pour les tournées et adresses */
.bloc-panel .intitule {
  background: #e9e9e9;
  font-size: 1.5rem;
  font-weight: bold;
  color: #004462;
  padding: 15px;
  text-align: center;
}

.bloc-panel .content {
  background: #fff;
  padding: 20px;
  color: #868686;
}

/* Jours des tournées */
.bloc-tournee-explications {
  display: none;
}

.bloc-tournee {
  float: left;
  width: 18.50813236118901%;
  margin-left: 1.682557487380819%;
  margin-bottom: 20px;
  text-align: center;
  border-radius: 5px;
  overflow: hidden;
  border: 2px solid transparent;
  box-sizing: border-box;
}

.bloc-tournee:nth-child(5n+1) {
  clear: left;
  margin-left: 0;
}

.bloc-tournee.selected {
  border-color: #82aa37;
}

.bloc-tournee.selected .intitule {
  background-color: #82aa37;
  color: #fff;
}

.bloc-tournee .content {
  line-height: 40px;
}

.bloc-tournee .content span {
  vertical-align: middle;
  line-height: normal;
  display: inline-block;
}

/* Adresses de livraison */
.blocs-adresses > div {
  float: left;
  width: 31.96814562002275%;
  margin-left: 2.04778156996587%;
  border-radius: 5px;
  overflow: hidden;
  margin-bottom: 30px;
}

.blocs-adresses > div:nth-child(3n+1) {
  margin-left: 0;
  clear: left;
}

.blocs-adresses > div p {
  margin: 0;
  padding: 13px 0;
  border-top: 1px solid #e7e7e7;
}

.blocs-adresses > div p:first-child {
  padding-top: 0;
  border: 0;
}

.blocs-adresses > div p:last-child {
  padding-bottom: 0;
}

@media screen and (max-width: 1024px) {
  .bloc-tournee, .blocs-adresses > div {
    width: 31.6%;
    margin-left: 2.6%;
  }
  .bloc-tournee:nth-child(5n+1), .blocs-adresses > div:nth-child(5n+1) {
    clear: none;
    margin-left: 2.6%;
  }
  .bloc-tournee:nth-child(3n+1), .blocs-adresses > div:nth-child(3n+1) {
    clear: left;
    margin-left: 0;
  }
}

@media screen and (max-width: 767px) {
  /* ===================================================================
     * BLOCS TOURNEES ET ADRESSES
     * =================================================================*/
  .bloc-tournee, .blocs-adresses > div {
    width: 100%;
    float: none;
    margin-left: 0;
  }
  .bloc-tournee {
    display: table;
    table-layout: fixed;
    width: 100%;
    margin-left: 0;
  }
  .bloc-tournee > div {
    display: table-cell;
    width: 50%;
  }
  .bloc-tournee > div .content {
    line-height: normal;
  }
  .bloc-tournee:nth-child(5n+1) {
    margin-left: 0;
  }
}

/* ===================================================================
 * COMPTE/SUIVI - Liste des utilisateurs
 * =================================================================*/
.TPL_CONNEXION_EN_TANT_QUE {
  margin-bottom: 5.5rem;
}

.TPL_CONNEXION_EN_TANT_QUE h2, .TPL_CONNEXION_EN_TANT_QUE .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_CONNEXION_EN_TANT_QUE h1, .TPL_CONNEXION_EN_TANT_QUE .fiche-adherent h1, .fiche-adherent .TPL_CONNEXION_EN_TANT_QUE h1 {
  font-size: 3.5rem;
  line-height: 1.25;
  padding-bottom: 2.3rem;
  margin-bottom: 2.5rem;
  border-bottom: 1px solid #c4c4c4;
}

@media screen and (max-width: 767px) {
  .TPL_CONNEXION_EN_TANT_QUE h2, .TPL_CONNEXION_EN_TANT_QUE .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_CONNEXION_EN_TANT_QUE h1, .TPL_CONNEXION_EN_TANT_QUE .fiche-adherent h1, .fiche-adherent .TPL_CONNEXION_EN_TANT_QUE h1 {
    padding-right: 50px;
  }
}

.TPL_CONNEXION_EN_TANT_QUE h3 {
  font-size: 3rem;
  font-weight: 700;
  margin-bottom: 1.6rem;
}

.TPL_CONNEXION_EN_TANT_QUE .nb {
  margin-bottom: 4rem;
}

.TPL_CONNEXION_EN_TANT_QUE table {
  width: 100%;
}

.TPL_CONNEXION_EN_TANT_QUE table th {
  padding: 0 2rem 2rem;
  width: 25%;
  text-align: left;
  font-weight: 400;
  color: #868686;
}

.TPL_CONNEXION_EN_TANT_QUE tr.data td {
  padding: 1rem 2rem;
  background: #ffffff;
}

.TPL_CONNEXION_EN_TANT_QUE tr.data td:first-child {
  border-radius: .8rem 0 0 .8rem;
}

.TPL_CONNEXION_EN_TANT_QUE tr.data td:last-child {
  border-radius: 0 .8rem .8rem 0;
}

.TPL_CONNEXION_EN_TANT_QUE tr.data .bouton-vert, .TPL_CONNEXION_EN_TANT_QUE tr.data .form-submit button, .form-submit .TPL_CONNEXION_EN_TANT_QUE tr.data button,
.TPL_CONNEXION_EN_TANT_QUE tr.data .form-submit input[type="submit"], .form-submit .TPL_CONNEXION_EN_TANT_QUE tr.data input[type="submit"], .TPL_CONNEXION_EN_TANT_QUE tr.data .bouton-bleu, .TPL_CONNEXION_EN_TANT_QUE tr.data .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_CONNEXION_EN_TANT_QUE tr.data .btn-imprimer, .TPL_CONNEXION_EN_TANT_QUE tr.data .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .TPL_CONNEXION_EN_TANT_QUE tr.data .btn-imprimer, .TPL_CONNEXION_EN_TANT_QUE tr.data .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .TPL_CONNEXION_EN_TANT_QUE tr.data a.voir-produit, .TPL_CONNEXION_EN_TANT_QUE tr.data .materiel-print-btn a, .materiel-print-btn .TPL_CONNEXION_EN_TANT_QUE tr.data a, .TPL_CONNEXION_EN_TANT_QUE tr.data .materiel-planning-pdf a, .materiel-planning-pdf .TPL_CONNEXION_EN_TANT_QUE tr.data a, .TPL_CONNEXION_EN_TANT_QUE tr.data .bouton-gris, .TPL_CONNEXION_EN_TANT_QUE tr.data .bouton-rouge, .TPL_CONNEXION_EN_TANT_QUE tr.data .bouton-retour, .TPL_CONNEXION_EN_TANT_QUE tr.data .bouton-rechercher, .TPL_CONNEXION_EN_TANT_QUE tr.data .btn-ajouter-au-panier,
.TPL_CONNEXION_EN_TANT_QUE tr.data .btn-liste-achat-activate, .TPL_CONNEXION_EN_TANT_QUE tr.data .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .TPL_CONNEXION_EN_TANT_QUE tr.data a, .TPL_CONNEXION_EN_TANT_QUE tr.data .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .TPL_CONNEXION_EN_TANT_QUE tr.data .btn-ajouter-liste, .TPL_CONNEXION_EN_TANT_QUE tr.data .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .TPL_CONNEXION_EN_TANT_QUE tr.data .btn-submit {
  min-width: 170px;
  float: right;
  padding: 1rem 2rem;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .TPL_CONNEXION_EN_TANT_QUE table th {
    padding: 0 .75rem .5rem;
    width: 23.333333%;
  }
  .TPL_CONNEXION_EN_TANT_QUE table th:last-child {
    width: 30%;
  }
  .TPL_CONNEXION_EN_TANT_QUE table .tri {
    display: block;
  }
  .TPL_CONNEXION_EN_TANT_QUE table .fl-down {
    margin: 0;
  }
  .TPL_CONNEXION_EN_TANT_QUE tr.data {
    padding: 1rem;
  }
}

.TPL_CONNEXION_EN_TANT_QUE .table-responsive {
  padding-bottom: 20px;
}

/* ===================================================================
 * TEMPLATE DIAPORAMA ACCUEIL
 * =================================================================*/
.TPL_DIAPORAMA_ACCUEIL {
  padding-bottom: 30px;
  margin-bottom: -30px;
}

.TPL_DIAPORAMA_ACCUEIL .carousel .bg {
  background-size: 100%;
  background-repeat: no-repeat;
}

.TPL_DIAPORAMA_ACCUEIL .carousel .content {
  position: relative;
}

.TPL_DIAPORAMA_ACCUEIL .count {
  color: #95c92d;
  font-size: 1.3rem;
  font-weight: 800;
}

.TPL_DIAPORAMA_ACCUEIL .carousel-caption {
  background-image: -moz-linear-gradient(50deg, #5a8433 0%, #99cd2d 100%);
  background-image: -webkit-linear-gradient(50deg, #5a8433 0%, #99cd2d 100%);
  background-image: -ms-linear-gradient(50deg, #5a8433 0%, #99cd2d 100%);
  background-image: linear-gradient(50deg, #5a8433 0%, #99cd2d 100%);
  width: 45%;
  border-radius: 10px 0 10px 10px;
  box-sizing: border-box;
  padding: 40px;
  color: #ffffff;
  position: absolute;
  left: 110px;
  bottom: -30px;
}

.TPL_DIAPORAMA_ACCUEIL .carousel-caption .titre {
  font-size: 4rem;
  font-weight: 800;
  line-height: 40px;
  border-bottom: 1px solid #88b445;
  padding: 35px 0;
  display: block;
}

.TPL_DIAPORAMA_ACCUEIL .carousel-caption p {
  padding: 35px 0;
  font-size: 1.7rem;
  line-height: 21px;
  margin: 0;
}

.TPL_DIAPORAMA_ACCUEIL .carousel-caption a {
  color: #ffffff;
}

.TPL_DIAPORAMA_ACCUEIL .carousel-caption a:hover {
  text-decoration: none;
}

.TPL_DIAPORAMA_ACCUEIL .carousel-nav {
  position: absolute;
  width: 80px;
  right: -80px;
  top: 0;
}

.TPL_DIAPORAMA_ACCUEIL .carousel-nav .carousel-control {
  width: 100%;
  height: 50px;
  background-color: #82aa37;
  display: block;
  font-size: 20px;
  color: #ffffff;
  text-align: center;
  line-height: 50px;
}

.TPL_DIAPORAMA_ACCUEIL .carousel-nav .carousel-control:hover {
  text-decoration: none;
}

.TPL_DIAPORAMA_ACCUEIL .carousel-nav .carousel-control.left {
  border-radius: 0 0 3px 0;
}

.TPL_DIAPORAMA_ACCUEIL .carousel-nav .carousel-control.right {
  border-radius: 0 3px 0 0;
  border-bottom: 1px solid #8fb34b;
}

.TPL_DIAPORAMA_ACCUEIL .carousel-control-pager {
  display: none;
}

/* ===================================================================
 * MEDIAQUERIES
 * =================================================================*/
@media screen and (min-width: 1440px) {
  /* ===================================================================
     * TEMPLATE DIAPORAMA ACCUEIL
     * =================================================================*/
  .TPL_DIAPORAMA_ACCUEIL .bg {
    height: 540px;
  }
}

@media screen and (max-width: 1440px) {
  /* ===================================================================
     * TEMPLATE DIAPORAMA ACCUEIL
     * =================================================================*/
  .TPL_DIAPORAMA_ACCUEIL .bg {
    height: 540px;
  }
}

@media screen and (max-width: 1024px) {
  /* ===================================================================
     * TEMPLATE DIAPORAMA ACCUEIL
     * =================================================================*/
  .TPL_DIAPORAMA_ACCUEIL .carousel .content {
    padding: 0 20px;
  }
  .TPL_DIAPORAMA_ACCUEIL .bg {
    height: auto;
    padding-top: 45%;
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
  }
  .TPL_DIAPORAMA_ACCUEIL .carousel-caption {
    position: relative;
    bottom: 0;
    left: 0;
    width: 60%;
    height: 450px;
  }
}

@media screen and (max-width: 767px) {
  /* ===================================================================
     * TEMPLATE DIAPORAMA ACCUEIL
     * =================================================================*/
  .TPL_DIAPORAMA_ACCUEIL .carousel .content {
    padding: 0;
  }
  .TPL_DIAPORAMA_ACCUEIL .bg {
    height: 123px;
    padding: 0;
    position: relative;
  }
  .TPL_DIAPORAMA_ACCUEIL .carousel-caption {
    width: 100%;
    border-radius: 0 0 10px 10px;
    padding: 20px 20px 40px;
    height: 380px;
  }
  .TPL_DIAPORAMA_ACCUEIL .carousel-caption .titre {
    font-size: 3.6rem;
    padding: 10px 0 20px;
  }
  .TPL_DIAPORAMA_ACCUEIL .carousel-caption p {
    padding: 20px 0;
  }
  .TPL_DIAPORAMA_ACCUEIL .carousel-nav {
    display: none;
  }
  .TPL_DIAPORAMA_ACCUEIL .carousel-indicators {
    display: block;
    position: absolute;
    transform: translateX(-50%);
    left: 50%;
    position: absolute;
    bottom: 15px;
    text-align: center;
  }
  .TPL_DIAPORAMA_ACCUEIL .carousel-indicators li {
    display: inline-block;
    margin: 0 2px;
  }
  .TPL_DIAPORAMA_ACCUEIL .carousel-indicators li a {
    width: 25px;
    height: 25px;
    display: block;
    box-sizing: border-box;
    background-color: #ffffff;
    border-radius: 50%;
  }
  .TPL_DIAPORAMA_ACCUEIL .carousel-indicators li.active a {
    border: 3px solid #ffffff;
    background-color: #82aa37;
  }
}

/* ===================================================================
 * TEMPLATE DIAPORAMA ORCAB
 * =================================================================*/
.TPL_DIAPORAMA_ORCAB {
  margin: 0 0 50px;
}

.TPL_DIAPORAMA_ORCAB .carousel-inner {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  padding-bottom: 15px;
}

.TPL_DIAPORAMA_ORCAB .carousel-inner > .item > img,
.TPL_DIAPORAMA_ORCAB .carousel-inner > .item > a > img {
  display: inline-block;
}

.TPL_DIAPORAMA_ORCAB .img-mobile {
  display: none;
}

.TPL_DIAPORAMA_ORCAB .item {
  position: relative;
}

.TPL_DIAPORAMA_ORCAB .item a {
  display: block;
  width: 100%;
  height: 100%;
  line-height: 0;
}

.TPL_DIAPORAMA_ORCAB .item.active {
  width: 100%;
  flex: 1;
}

.TPL_DIAPORAMA_ORCAB .item:not(.slick-initialized) + .carousel-nav {
  display: none;
}

.TPL_DIAPORAMA_ORCAB .carousel-nav {
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
}

.TPL_DIAPORAMA_ORCAB .carousel-nav ul {
  display: flex;
}

.TPL_DIAPORAMA_ORCAB .carousel-nav.with-desc {
  bottom: 25px;
}

.TPL_DIAPORAMA_ORCAB .carousel-button {
  font-size: 20px;
  color: #ffffff;
  text-decoration: none;
}

.TPL_DIAPORAMA_ORCAB .carousel-button:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
}

.TPL_DIAPORAMA_ORCAB .carousel-action {
  background-color: transparent;
  padding: 0;
  border: 0;
}

.TPL_DIAPORAMA_ORCAB .carousel-action.pause {
  font-size: 1.5rem;
}

.TPL_DIAPORAMA_ORCAB .carousel-action.play {
  display: none;
}

.TPL_DIAPORAMA_ORCAB .carousel-resume {
  margin: 8px 0 0;
}

.TPL_DIAPORAMA_ORCAB .diapo-action {
  width: 47px;
  height: 40px;
  background: #82aa37;
  border: 1px solid #6C951F;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 1.9rem;
  color: #ffffff;
  position: relative;
}

.TPL_DIAPORAMA_ORCAB .diapo-action.count {
  width: 60px;
}

.TPL_DIAPORAMA_ORCAB .diapo-action:hover, .TPL_DIAPORAMA_ORCAB .diapo-action:focus, .TPL_DIAPORAMA_ORCAB .diapo-action:active {
  background: #6C951F;
}

@media screen and (max-width: 1440px) {
  /* ===================================================================
     * TEMPLATE DIAPORAMA ORCAB
     * =================================================================*/
  .TPL_DIAPORAMA_ORCAB {
    margin-bottom: 50px;
  }
  .TPL_DIAPORAMA_ORCAB .carousel-resume {
    display: none;
  }
  .TPL_DIAPORAMA_ORCAB .carousel-nav {
    bottom: 0;
  }
  .TPL_DIAPORAMA_ORCAB .carousel-nav.with-desc {
    bottom: 0;
  }
}

@media screen and (max-width: 767px) {
  /* ===================================================================
     * TEMPLATE DIAPORAMA ORCAB
     * =================================================================*/
  .TPL_DIAPORAMA_ORCAB {
    margin: 0 -20px 50px;
  }
  .TPL_DIAPORAMA_ORCAB .carousel-inner > .item > a {
    display: inline-block;
    width: 100%;
    height: 100%;
  }
  .TPL_DIAPORAMA_ORCAB .item {
    width: 100%;
  }
  .TPL_DIAPORAMA_ORCAB .item img {
    margin: 0 auto;
  }
  .TPL_DIAPORAMA_ORCAB .img-mobile {
    display: block;
  }
}

@media screen and (max-width: 374px) {
  .TPL_DIAPORAMA_ORCAB .item {
    aspect-ratio: 360 / 213;
  }
}

/* ===================================================================
 * GENERALITES DIAPORAMA
 * =================================================================*/
/* CSS pour le carousel multiple */
.diaporama-multiple.diaporama-sans-defilement .carousel-inner .item {
  display: flex;
}

.diaporama-multiple .carousel-inner .item .sub-item {
  position: relative;
  display: inline-block;
  vertical-align: top;
}

.diaporama-multiple-2 .carousel-inner .item .sub-item {
  width: 50%;
}

.diaporama-multiple-3 .carousel-inner .item .sub-item {
  width: 33.333%;
}

@media screen and (max-width: 767px) {
  .diaporama-multiple-3 .carousel-inner .item .sub-item {
    width: 50%;
  }
}

/* ===================================================================
 * TEMPLATE DIAPORAMA MULTIPLE
 * =================================================================*/
.TPL_DIAPORAMA_MULTIPLE {
  margin: 0 0 90px;
}

.TPL_DIAPORAMA_MULTIPLE .carousel-inner > .item > img,
.TPL_DIAPORAMA_MULTIPLE .carousel-inner > .item > a > img {
  display: inline-block;
}

.TPL_DIAPORAMA_MULTIPLE .item {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 0;
}

.TPL_DIAPORAMA_MULTIPLE .item.active {
  display: flex;
  gap: 3rem;
}

.TPL_DIAPORAMA_MULTIPLE .carousel-caption {
  margin-top: 15px;
  padding: 0;
}

.TPL_DIAPORAMA_MULTIPLE .carousel-caption p {
  margin: 0;
}

@media screen and (max-width: 1024px) {
  .TPL_DIAPORAMA_MULTIPLE {
    margin-bottom: 60px;
  }
  .TPL_DIAPORAMA_MULTIPLE .item.active {
    gap: 2rem;
  }
  .TPL_DIAPORAMA_MULTIPLE .bx-wrapper,
  .TPL_DIAPORAMA_MULTIPLE .bx-viewport {
    overflow: visible !important;
  }
}

@media screen and (max-width: 767px) {
  .TPL_DIAPORAMA_MULTIPLE {
    padding-bottom: 60px;
  }
  .TPL_DIAPORAMA_MULTIPLE .bloc-titre-pag .pag {
    transform: none;
    left: 0;
    bottom: 0;
  }
}

/* ===================================================================
 * GENERALITES ACTUALITES
 * =================================================================*/
.bloc-titre-pag:before, .bloc-titre-pag:after {
  display: table;
  content: " ";
}

.bloc-titre-pag:after {
  clear: both;
}

.bloc-titre-pag h2, .bloc-titre-pag .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .bloc-titre-pag h1, .bloc-titre-pag .fiche-adherent h1, .fiche-adherent .bloc-titre-pag h1,
.bloc-titre-pag .titre {
  float: left;
  padding: 5px 60px 5px 0;
}

.bloc-titre-pag .info-actualites {
  margin-top: 0.6em;
  float: left;
  margin-left: 15px;
}

@media (max-width: 767px) {
  .bloc-titre-pag .info-actualites {
    margin: auto;
    text-align: center;
    width: 100%;
  }
}

.bloc-titre-pag .pag {
  float: left;
  border: 1px solid #c4c4c4;
  border-radius: 5px;
  background-color: #ffffff;
}

.bloc-titre-pag .pag:before, .bloc-titre-pag .pag:after {
  display: table;
  content: " ";
}

.bloc-titre-pag .pag:after {
  clear: both;
}

.bloc-titre-pag .pag > span {
  display: block;
  float: left;
}

.bloc-titre-pag .pag > span:first-child a {
  border-right: 1px solid #c4c4c4;
}

.bloc-titre-pag .pag a {
  display: block;
  width: 60px;
  height: 40px;
  line-height: 40px;
  position: relative;
  text-indent: -1000px;
  overflow: hidden;
}

.bloc-titre-pag .pag a::before {
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  font-size: 13px;
  text-indent: 0;
  color: #004462;
}

.bloc-titre-pag .pag a.disabled {
  opacity: 0.7;
  pointer-events: none;
  display: none;
}

.bloc-titre-pag .pag-next a::before {
  content: "\e905";
}

.bloc-titre-pag .pag-prev a::before {
  content: "\e906";
}

.col-left .bloc-actu {
  height: auto;
  background-color: #ffffff;
  margin-bottom: 30px;
  min-height: 0;
}

.col-left .bloc-actu .photos {
  height: 105px;
  background-size: contain;
}

.col-left .bloc-actu .description {
  padding: 20px 10px;
}

.col-left .bloc-actu .description h4 {
  font-size: 1.7rem;
}

.col-left .bloc-actu .description .resume {
  font-size: 1.5rem;
  line-height: 23px;
  margin-bottom: 0;
}

.col-left .liste-actu-lienplus {
  margin-top: 15px;
  float: none;
  text-align: left;
}

.col-left .liste-actu-lienplus a {
  padding-left: 20px;
}

.liste-actu-lienplus {
  float: right;
}

.liste-actu-lienplus a {
  font-size: 1.4rem;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  color: #003160;
  text-decoration: none;
  position: relative;
  padding: 10px 0 10px 20px;
  /*@if $lfb-breakpoint == $mobile {
        @media screen and (max-width: $mobile) {
            display: inline-block;
            border: 1px solid $grisBordure;
            background-color: #ffffff;
            padding: 20px;
            border-radius: 5px;
            font-weight: bold;

            &::before {
                display: none;
            }
        }
    } @else {
        @media screen and (max-width: $lfb-breakpoint) {
            display: inline-block;
            border: 1px solid $grisBordure;
            background-color: #ffffff;
            padding: 20px;
            border-radius: 5px;
            font-weight: bold;
            &::before {
                display: none;
            }
        }
    }*/
}

.liste-actu-lienplus a::before {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  content: "\e982";
  color: #003160;
  left: 0;
  font-size: 16px;
}

.liste-actu-lienplus a:hover {
  font-weight: 600;
}

/* ===================================================================
 * LISTE ACTU
 * =================================================================*/
.TPL_LISTE_ACTUALITE h2, .TPL_LISTE_ACTUALITE .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_LISTE_ACTUALITE h1, .TPL_LISTE_ACTUALITE .fiche-adherent h1, .fiche-adherent .TPL_LISTE_ACTUALITE h1 {
  margin: 10px 0 15px;
}

.TPL_LISTE_ACTUALITE .form-search-actus .bouton-rechercher {
  margin-top: 25px;
}

.TPL_LISTE_ACTUALITE .liste-actualite .item {
  min-height: 201px;
}

.TPL_LISTE_ACTUALITE .liste-actualite .item .thumbnail .photos {
  width: 50%;
  background-position: 0 0;
  aspect-ratio: 16/9;
}

.TPL_LISTE_ACTUALITE .liste-actualite .item .thumbnail .description {
  width: 50%;
}

.TPL_LISTE_ACTUALITE .liste-actualite .item .description {
  padding: 10px 25px;
}

.TPL_LISTE_ACTUALITE .liste-actualite .item .description .resume {
  font-size: 1.6rem;
  line-height: 22px;
  margin: 5px 0 0;
}

.TPL_LISTE_ACTUALITE .liste-actualite .item .description h4 {
  font-size: 1.9rem;
}

@media (min-width: 1025px) {
  .TPL_LISTE_ACTUALITE .liste-actualite {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
  }
  .TPL_LISTE_ACTUALITE .liste-actualite:before, .TPL_LISTE_ACTUALITE .liste-actualite:after {
    content: none;
  }
  .TPL_LISTE_ACTUALITE .liste-actualite .item {
    width: 49%;
  }
}

@media (min-width: 1025px) {
  .cms-bloc.fl-l-50 .TPL_LISTE_ACTUALITE,
  .cms-bloc.fl-r-50 .TPL_LISTE_ACTUALITE {
    padding: 0 3rem;
  }
  .cms-bloc.fl-l-50 .TPL_LISTE_ACTUALITE .liste .item,
  .cms-bloc.fl-r-50 .TPL_LISTE_ACTUALITE .liste .item {
    width: 100%;
  }
  .cms-bloc.fl-l-50 .TPL_LISTE_ACTUALITE .liste .item .thumbnail .photos,
  .cms-bloc.fl-r-50 .TPL_LISTE_ACTUALITE .liste .item .thumbnail .photos {
    border-radius: 0;
  }
}

.TPL_LISTE_PAGE .liste {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  gap: 25px 30px;
  margin: 0 0 30px;
}

@media (max-width: 767px) {
  .TPL_LISTE_PAGE .liste-photo {
    flex-direction: column;
  }
}

.TPL_LISTE_PAGE .liste h4 {
  margin-bottom: 5px;
  font-size: 1.8rem;
  font-weight: 700;
}

.TPL_LISTE_PAGE .liste h4 a {
  color: #003160;
}

.TPL_LISTE_PAGE .liste .date {
  color: #003160;
  font-size: 1.3rem;
  line-height: 1.8rem;
  margin: 0;
}

.TPL_LISTE_PAGE .liste .item {
  background: #ffffff;
  padding: 25px;
  border-radius: 5px;
  box-sizing: border-box;
  width: 100%;
}

.TPL_LISTE_PAGE .liste .item.with-thumbnail {
  padding: 0;
}

.TPL_LISTE_PAGE .liste .item.with-thumbnail h4 {
  margin: 0;
}

.TPL_LISTE_PAGE .liste .item.with-thumbnail img {
  border-radius: 5px 0 0 5px;
}

@media (min-width: 1025px) {
  .TPL_LISTE_PAGE .liste .item {
    width: calc(50% - 15px);
  }
}

@media (max-width: 767px) {
  .TPL_LISTE_PAGE .liste .item.with-thumbnail {
    max-width: 28rem;
  }
  .TPL_LISTE_PAGE .liste .item.with-thumbnail img {
    border-radius: 5px 5px 0 0;
  }
  .TPL_LISTE_PAGE .liste .item.with-thumbnail .description {
    padding: 1.5rem 2rem;
  }
}

.libelle-date {
  display: inline-block;
  background-color: #82aa37;
  border-radius: 5px;
  color: #ffffff;
  font-size: 1.6rem;
  padding: 10px;
  margin-top: 0;
  margin-right: 15px;
}

.bloc-resume-bleu {
  background-color: #003160;
  color: #ffffff;
  padding: 25px 30px;
  border-radius: 5px;
  font-size: 1.7rem;
}

/* ===================================================================
 * FICHE ACTU
 * =================================================================*/
.TPL_FICHE_ACTUALITE {
  position: relative;
  padding-bottom: 30px;
}

.TPL_FICHE_ACTUALITE .photos {
  text-align: center;
}

.TPL_FICHE_ACTUALITE .description p {
  font-size: 1.7rem;
  line-height: 25px;
}

.TPL_FICHE_ACTUALITE .produits-associes .liste-produits > li {
  width: 100%;
}

@media (min-width: 1440px) {
  .TPL_FICHE_ACTUALITE .liste-produits {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
  }
  .TPL_FICHE_ACTUALITE .liste-produits > li {
    width: 49%;
  }
}

.ressources-associees ul {
  background-color: #ffffff;
  border-radius: 10px 10px 0 0;
  border: 1px solid #c4c4c4;
  padding: 15px 30px 30px;
  margin-bottom: 30px;
}

.ressources-associees ul:before, .ressources-associees ul:after {
  display: table;
  content: " ";
}

.ressources-associees ul:after {
  clear: both;
}

.ressources-associees li {
  width: 49%;
}

.ressources-associees li a {
  display: block;
  padding: 15px 30px;
  position: relative;
  border-bottom: 1px solid #c4c4c4;
  font-size: 1.7rem;
  color: #004462;
}

.ressources-associees li a::before {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  left: 0;
  font-size: 20px;
  color: #868686;
}

.ressources-associees li:nth-child(even) {
  float: right;
  clear: right;
}

.ressources-associees li:nth-child(odd) {
  float: left;
  clear: left;
}

.ressources-associees li.document a::before {
  content: '\e92e';
}

.ressources-associees li.document a[href*=".txt"]::before {
  content: '\e936';
}

.ressources-associees li.document a[href*=".pdf"]::before {
  content: '\e922';
}

.ressources-associees li.document a[href*=".xls"]::before, .ressources-associees li.document a[href*=".xlsx"]::before {
  content: '\e934';
}

.ressources-associees li.document a[href*=".png"]::before {
  content: '\e90f';
}

.ressources-associees li.document a[href*=".flv"]::before, .ressources-associees li.document a[href*=".mp4"]::before {
  content: '\e910';
}

.ressources-associees li.document a[href*=".ppt"]::before, .ressources-associees li.document a[href*=".pptx"]::before {
  content: '\e928';
}

.ressources-associees li.document a[href*=".doc"]::before, .ressources-associees li.document a[href*=".docx"]::before {
  content: '\e93c';
}

.ressources-associees li.lien a::before {
  content: '\e912';
}

.ressources-associees li.fichier-AUTRE a::before {
  content: '\e930';
}

.ressources-associees li.fichier-PDF a::before {
  content: '\e922';
}

.ressources-associees li.fichier-EXCEL a::before {
  content: '\e934';
}

.ressources-associees li.fichier-WORD a::before {
  content: '\e93c';
}

.ressources-associees li.lien-tous {
  padding-top: 25px;
  text-align: center;
  float: right;
  clear: right;
}

.ressources-associees li.lien-tous a {
  min-width: 0;
}

@media screen and (max-width: 1024px) {
  /* ===================================================================
     * GENERALITES ACTUALITES
     * =================================================================*/
  .ressources-associees ul {
    padding: 5px 20px 20px;
  }
  /* ===================================================================
     * FICHE ACTU
     * =================================================================*/
  .TPL_FICHE_ACTUALITE .titre-avec-favoris {
    top: -5px;
  }
}

@media screen and (max-width: 767px) {
  /* ===================================================================
     * GENERALITES ACTUALITES
     * =================================================================*/
  .bloc-titre-pag h2, .bloc-titre-pag .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .bloc-titre-pag h1, .bloc-titre-pag .fiche-adherent h1, .fiche-adherent .bloc-titre-pag h1,
  .bloc-titre-pag .titre {
    float: none;
    padding-right: 0;
  }
  .bloc-titre-pag .pag {
    transform: translateX(-50%);
    left: 50%;
    position: absolute;
    float: none;
    margin: 0 auto;
    width: 121px;
    clear: both;
    bottom: 45px;
  }
  /* ===================================================================
     * LISTE ACTU
     * =================================================================*/
  .TPL_LISTE_ACTUALITE .liste .item .thumbnail .photos {
    width: 100%;
  }
  .TPL_LISTE_ACTUALITE .liste .item .thumbnail .photos img {
    left: auto;
  }
  .TPL_LISTE_ACTUALITE .liste .item .thumbnail .description {
    width: 100%;
  }
  /* ===================================================================
     * FICHE ACTU
     * =================================================================*/
  .TPL_FICHE_ACTUALITE {
    overflow: visible;
  }
  .TPL_FICHE_ACTUALITE .titre-avec-favoris {
    top: 5px;
  }
  .TPL_FICHE_ACTUALITE .photos {
    margin: 0 -20px;
  }
  .TPL_FICHE_ACTUALITE .description img {
    float: none;
    clear: both;
    margin: 30px 0;
    display: block;
  }
  .ressources-associees ul {
    padding: 5px 15px 25px;
  }
  .ressources-associees ul li {
    width: 100%;
    float: none;
  }
}

.s-element-associe-volet {
  margin-top: 30px;
  margin-bottom: 70px;
  position: relative;
}

.s-element-associe-volet .bloc-titre-pag .titre {
  margin-bottom: 0;
}

.s-element-associe-volet .liste-actualite-accueil {
  width: 100%;
}

.s-element-associe-volet .bx-viewport {
  padding-bottom: 20px;
}

/* ===================================================================
 * Slider de card (actualite et agenda)
 * =================================================================*/
.TPL_LISTE_ACTUALITE_ACCUEIL .pag.hide,
.TPL_LISTE_AGENDA_ACCUEIL .pag.hide,
.c-card-slider .pag.hide {
  display: none;
}

.TPL_LISTE_ACTUALITE_ACCUEIL .pag > span > a:not(:first-child),
.TPL_LISTE_AGENDA_ACCUEIL .pag > span > a:not(:first-child),
.c-card-slider .pag > span > a:not(:first-child) {
  display: none;
}

.TPL_LISTE_ACTUALITE_ACCUEIL .bx-wrapper .liste,
.TPL_LISTE_AGENDA_ACCUEIL .bx-wrapper .liste,
.c-card-slider .bx-wrapper .liste {
  display: flex;
}

@media screen and (max-width: 1024px) {
  .TPL_LISTE_ACTUALITE_ACCUEIL,
  .TPL_LISTE_AGENDA_ACCUEIL,
  .c-card-slider {
    margin-bottom: 60px;
  }
  .TPL_LISTE_ACTUALITE_ACCUEIL .bx-wrapper,
  .TPL_LISTE_ACTUALITE_ACCUEIL .bx-viewport,
  .TPL_LISTE_AGENDA_ACCUEIL .bx-wrapper,
  .TPL_LISTE_AGENDA_ACCUEIL .bx-viewport,
  .c-card-slider .bx-wrapper,
  .c-card-slider .bx-viewport {
    overflow: visible !important;
  }
}

@media screen and (max-width: 767px) {
  .TPL_LISTE_ACTUALITE_ACCUEIL,
  .TPL_LISTE_AGENDA_ACCUEIL,
  .c-card-slider {
    padding-bottom: 120px;
  }
  .TPL_LISTE_ACTUALITE_ACCUEIL .liste .item,
  .TPL_LISTE_AGENDA_ACCUEIL .liste .item,
  .c-card-slider .liste .item {
    margin-bottom: 20px;
  }
  .TPL_LISTE_ACTUALITE_ACCUEIL .pag.hide,
  .TPL_LISTE_AGENDA_ACCUEIL .pag.hide,
  .c-card-slider .pag.hide {
    display: block;
  }
  .TPL_LISTE_ACTUALITE_ACCUEIL .liste-actu-lienplus,
  .TPL_LISTE_AGENDA_ACCUEIL .liste-actu-lienplus,
  .c-card-slider .liste-actu-lienplus {
    transform: translateX(-50%);
    left: 50%;
    position: absolute;
    bottom: 0;
    float: none;
    margin: 0;
    width: 100%;
    text-align: center;
  }
}

.TPL_LISTE_ACTUALITE_ACCUEIL {
  margin-bottom: 90px;
}

@media screen and (max-width: 1024px) {
  .TPL_LISTE_ACTUALITE_ACCUEIL {
    margin-bottom: 60px;
  }
}

/* ===================================================================
 * TEMPLATE ACTUALITES ACCUEIL
 * =================================================================*/
.bloc-actu {
  border: 1px solid #c4c4c4;
  border-radius: 5px;
  height: calc(100% - 2px);
}

.bloc-actu .photos {
  aspect-ratio: 16/9;
  background-size: cover;
  border-radius: 5px 5px 0 0;
  position: relative;
  background-repeat: no-repeat;
  background-position: center;
}

@supports not (aspect-ratio: 16/9) {
  .bloc-actu .photos {
    padding-top: 56.25%;
  }
}

.bloc-actu .photos a {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.bloc-actu .description {
  padding: 20px;
}

.bloc-actu .description h4 {
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0 0 20px;
}

.bloc-actu .description h4 a {
  color: #003160;
}

.bloc-actu .description .text-libre {
  font-size: 1.3rem;
  line-height: 1.8rem;
  margin: 0 0 20px;
  color: #003160;
}

.bloc-actu .description .resume {
  color: #868686;
  font-size: 1.6rem;
}

.bloc-actu .description--only {
  padding-top: 30px;
}

.bloc-actu .pastille {
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 5px 0 0 0;
}

/* ===================================================================
 * TEMPLATE ACTUALITES ZOOM SUR
 * =================================================================*/
.TPL_ACTUALITE_ZOOM_SUR {
  display: flex;
  flex-flow: row wrap;
  gap: 30px;
  margin-bottom: 90px;
}

.TPL_ACTUALITE_ZOOM_SUR .photos {
  line-height: 1;
}

.TPL_ACTUALITE_ZOOM_SUR h2, .TPL_ACTUALITE_ZOOM_SUR .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_ACTUALITE_ZOOM_SUR h1, .TPL_ACTUALITE_ZOOM_SUR .fiche-adherent h1, .fiche-adherent .TPL_ACTUALITE_ZOOM_SUR h1 {
  margin-bottom: 15px;
}

.TPL_ACTUALITE_ZOOM_SUR h3 {
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 2.4rem;
  margin-bottom: 15px;
}

.TPL_ACTUALITE_ZOOM_SUR .lien-plus {
  font-size: 1.4rem;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  color: #003160;
  text-decoration: none;
  position: relative;
  padding: 10px 0 10px 20px;
  /*@if $lfb-breakpoint == $mobile {
        @media screen and (max-width: $mobile) {
            display: inline-block;
            border: 1px solid $grisBordure;
            background-color: #ffffff;
            padding: 20px;
            border-radius: 5px;
            font-weight: bold;

            &::before {
                display: none;
            }
        }
    } @else {
        @media screen and (max-width: $lfb-breakpoint) {
            display: inline-block;
            border: 1px solid $grisBordure;
            background-color: #ffffff;
            padding: 20px;
            border-radius: 5px;
            font-weight: bold;
            &::before {
                display: none;
            }
        }
    }*/
}

.TPL_ACTUALITE_ZOOM_SUR .lien-plus::before {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  content: "\e982";
  color: #003160;
  left: 0;
  font-size: 16px;
}

.TPL_ACTUALITE_ZOOM_SUR .lien-plus:hover {
  font-weight: 600;
}

@media screen and (max-width: 1024px) {
  .TPL_ACTUALITE_ZOOM_SUR {
    padding: 0 15px;
  }
}

@media screen and (max-width: 767px) {
  .TPL_ACTUALITE_ZOOM_SUR {
    flex-direction: column;
    gap: 15px;
  }
}

/* ===================================================================
 * PRODUITS
 * =================================================================*/
/* ===================================================================
 * COMMUN PRODUIT
 * =================================================================*/
.liste-produits .label-promo-dim-var,
.TPL_FICHE_PRODUIT .label-promo-dim-var,
.search-suggester-results-produits .label-promo-dim-var {
  color: #e05151;
}

.liste-produits .prix-barre-dim-var,
.TPL_FICHE_PRODUIT .prix-barre-dim-var,
.search-suggester-results-produits .prix-barre-dim-var {
  color: #545454;
}

.liste-produits .label,
.TPL_FICHE_PRODUIT .label,
.search-suggester-results-produits .label {
  font-size: 1.3rem;
  color: #003160;
}

.liste-produits .ecopart,
.TPL_FICHE_PRODUIT .ecopart,
.search-suggester-results-produits .ecopart {
  font-size: 1.2rem;
  line-height: normal;
  white-space: nowrap;
  display: block;
}

.liste-produits .prixHT,
.TPL_FICHE_PRODUIT .prixHT,
.search-suggester-results-produits .prixHT {
  font-size: 2.1rem;
  color: #003160;
  font-weight: 700;
}

.liste-produits .produitPrix .info,
.TPL_FICHE_PRODUIT .produitPrix .info,
.search-suggester-results-produits .produitPrix .info {
  font-size: 1.6rem;
  color: #003160;
  font-weight: bold;
}

.liste-produits .produitPrix .info.label-promo,
.TPL_FICHE_PRODUIT .produitPrix .info.label-promo,
.search-suggester-results-produits .produitPrix .info.label-promo {
  color: #e05151;
}

.liste-produits .btn-ajouter,
.TPL_FICHE_PRODUIT .btn-ajouter,
.search-suggester-results-produits .btn-ajouter {
  color: #004462;
}

.liste-produits .btn-ajouter::before,
.TPL_FICHE_PRODUIT .btn-ajouter::before,
.search-suggester-results-produits .btn-ajouter::before {
  font-size: 1.3rem;
  content: "\e907";
  margin-right: 10px;
}

.liste-produits .btn-ajouter:hover, .liste-produits .btn-ajouter:active,
.TPL_FICHE_PRODUIT .btn-ajouter:hover,
.TPL_FICHE_PRODUIT .btn-ajouter:active,
.search-suggester-results-produits .btn-ajouter:hover,
.search-suggester-results-produits .btn-ajouter:active {
  text-decoration: none;
}

.liste-produits .promo,
.TPL_FICHE_PRODUIT .promo,
.search-suggester-results-produits .promo {
  color: #e05151;
  text-transform: uppercase;
  font-weight: bold;
  margin-top: 7px;
}

.liste-produits .dimension div.alert, .liste-produits .dimension div.alert, .liste-produits .declinaison div.alert, .liste-produits .declinaison div.alert,
.TPL_FICHE_PRODUIT .dimension div.alert,
.TPL_FICHE_PRODUIT .dimension div.alert,
.TPL_FICHE_PRODUIT .declinaison div.alert,
.TPL_FICHE_PRODUIT .declinaison div.alert,
.search-suggester-results-produits .dimension div.alert,
.search-suggester-results-produits .dimension div.alert,
.search-suggester-results-produits .declinaison div.alert,
.search-suggester-results-produits .declinaison div.alert {
  display: none;
}

.liste-produits .dimension input[type="text"].alert, .liste-produits .dimension .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input.alert[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .liste-produits .dimension input.alert[type="date"], .liste-produits .dimension .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input.alert[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .liste-produits .dimension input.alert[type="date"], .liste-produits .dimension .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input.alert[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .liste-produits .dimension input.alert[type="date"], .liste-produits .declinaison input[type="text"].alert, .liste-produits .declinaison .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input.alert[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .liste-produits .declinaison input.alert[type="date"], .liste-produits .declinaison .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input.alert[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .liste-produits .declinaison input.alert[type="date"], .liste-produits .declinaison .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input.alert[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .liste-produits .declinaison input.alert[type="date"],
.TPL_FICHE_PRODUIT .dimension input[type="text"].alert,
.TPL_FICHE_PRODUIT .dimension .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input.alert[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_FICHE_PRODUIT .dimension input.alert[type="date"],
.TPL_FICHE_PRODUIT .dimension .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input.alert[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_FICHE_PRODUIT .dimension input.alert[type="date"],
.TPL_FICHE_PRODUIT .dimension .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input.alert[type="date"],
.liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_FICHE_PRODUIT .dimension input.alert[type="date"],
.TPL_FICHE_PRODUIT .declinaison input[type="text"].alert,
.TPL_FICHE_PRODUIT .declinaison .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input.alert[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_FICHE_PRODUIT .declinaison input.alert[type="date"],
.TPL_FICHE_PRODUIT .declinaison .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input.alert[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_FICHE_PRODUIT .declinaison input.alert[type="date"],
.TPL_FICHE_PRODUIT .declinaison .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input.alert[type="date"],
.liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_FICHE_PRODUIT .declinaison input.alert[type="date"],
.search-suggester-results-produits .dimension input[type="text"].alert,
.search-suggester-results-produits .dimension .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input.alert[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .search-suggester-results-produits .dimension input.alert[type="date"],
.search-suggester-results-produits .dimension .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input.alert[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .search-suggester-results-produits .dimension input.alert[type="date"],
.search-suggester-results-produits .dimension .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input.alert[type="date"],
.liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .search-suggester-results-produits .dimension input.alert[type="date"],
.search-suggester-results-produits .declinaison input[type="text"].alert,
.search-suggester-results-produits .declinaison .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input.alert[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .search-suggester-results-produits .declinaison input.alert[type="date"],
.search-suggester-results-produits .declinaison .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input.alert[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .search-suggester-results-produits .declinaison input.alert[type="date"],
.search-suggester-results-produits .declinaison .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input.alert[type="date"],
.liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .search-suggester-results-produits .declinaison input.alert[type="date"] {
  border: 1px solid #e05151;
}

.liste-produits .prix-libelle,
.TPL_FICHE_PRODUIT .prix-libelle,
.search-suggester-results-produits .prix-libelle {
  font-size: 1.2rem;
  color: #e05151;
  font-weight: 700;
}

.liste-produits .price-bloc + .price-bloc,
.TPL_FICHE_PRODUIT .price-bloc + .price-bloc,
.search-suggester-results-produits .price-bloc + .price-bloc {
  margin-top: 20px;
}

.liste-produits .interweb-stocks,
.TPL_FICHE_PRODUIT .interweb-stocks {
  background: #e2e8ea;
  margin-bottom: 15px;
  border-radius: 0 0 5px 5px;
}

.liste-produits .interweb-stocks .btn-voir-stocks,
.TPL_FICHE_PRODUIT .interweb-stocks .btn-voir-stocks {
  font-size: 1.8rem;
  color: #004462;
  font-weight: 700;
  padding: 14px 60px;
  position: relative;
  cursor: pointer;
  transition: all 0.3s;
}

.liste-produits .interweb-stocks .btn-voir-stocks:before,
.TPL_FICHE_PRODUIT .interweb-stocks .btn-voir-stocks:before {
  content: '';
  background: url(/build/images/bg_interweb.2c82cf71.png) no-repeat left center;
  width: 26px;
  height: 27px;
  left: 20px;
  position: absolute;
  top: 10px;
}

.liste-produits .interweb-stocks .btn-voir-stocks:after,
.TPL_FICHE_PRODUIT .interweb-stocks .btn-voir-stocks:after {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  font-size: 1.4rem;
  content: "\f078";
  font-family: 'FontAwesome', Arial, sans-serif;
  right: 20px;
  font-weight: normal;
}

.liste-produits .interweb-stocks .btn-voir-stocks.active::after,
.TPL_FICHE_PRODUIT .interweb-stocks .btn-voir-stocks.active::after {
  content: '\f077';
}

.liste-produits .interweb-stocks .btn-voir-stocks .loader-interweb,
.TPL_FICHE_PRODUIT .interweb-stocks .btn-voir-stocks .loader-interweb {
  display: none;
  margin-left: 1em;
}

.liste-produits .interweb-stocks .stocks p,
.TPL_FICHE_PRODUIT .interweb-stocks .stocks p {
  padding: 0  20px 20px;
  margin: 0;
}

.liste-produits .interweb-stocks .stocks ul,
.TPL_FICHE_PRODUIT .interweb-stocks .stocks ul {
  padding: 0 20px 20px;
}

.liste-produits .interweb-stocks .stocks ul > li,
.TPL_FICHE_PRODUIT .interweb-stocks .stocks ul > li {
  float: left;
  width: 50%;
  padding: 0 3% 3% 0;
  box-sizing: border-box;
}

.liste-produits .interweb-stocks .stocks ul > li.first:last-child,
.TPL_FICHE_PRODUIT .interweb-stocks .stocks ul > li.first:last-child {
  float: right;
}

.liste-produits .interweb-stocks .stocks ul > li:nth-child(2n+1),
.TPL_FICHE_PRODUIT .interweb-stocks .stocks ul > li:nth-child(2n+1) {
  clear: both;
}

.liste-produits .interweb-stocks .stocks ul > li:nth-child(2n),
.TPL_FICHE_PRODUIT .interweb-stocks .stocks ul > li:nth-child(2n) {
  padding: 0 0 3% 3%;
  border-left: 1px solid #c0bfbf;
}

.liste-produits .interweb-stocks .stocks ul > li:nth-last-child(-n+2),
.TPL_FICHE_PRODUIT .interweb-stocks .stocks ul > li:nth-last-child(-n+2) {
  padding-bottom: 0;
}

.liste-produits .interweb-stocks .stocks .qty-stock,
.TPL_FICHE_PRODUIT .interweb-stocks .stocks .qty-stock {
  color: #e05151;
  font-weight: 600;
}

.liste-produits .interweb-stocks .stocks .libelle,
.TPL_FICHE_PRODUIT .interweb-stocks .stocks .libelle {
  font-size: 1.6rem;
  color: #545454;
  font-weight: 700;
}

.liste-produits .interweb-stocks .stocks .delai,
.TPL_FICHE_PRODUIT .interweb-stocks .stocks .delai {
  font-size: 1.2rem;
  color: #004462;
  padding-top: 2px;
}

.TPL_CATEGORIE_LISTE_PRODUITS,
.TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT {
  overflow: visible;
}

.TPL_CATEGORIE_LISTE_PRODUITS h2, .TPL_CATEGORIE_LISTE_PRODUITS .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_CATEGORIE_LISTE_PRODUITS h1, .TPL_CATEGORIE_LISTE_PRODUITS .fiche-adherent h1, .fiche-adherent .TPL_CATEGORIE_LISTE_PRODUITS h1,
.TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT h2,
.TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .TPL_FICHE_PRODUIT .titre-produit h1,
.TPL_FICHE_PRODUIT .titre-produit .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT h1,
.TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .fiche-adherent h1,
.fiche-adherent .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT h1 {
  color: #003160;
  font-size: 3.2rem;
  line-height: 3.5rem;
  font-weight: 900;
  margin-bottom: 0;
}

@media (max-width: 1024px) {
  .TPL_CATEGORIE_LISTE_PRODUITS h2, .TPL_CATEGORIE_LISTE_PRODUITS .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_CATEGORIE_LISTE_PRODUITS h1, .TPL_CATEGORIE_LISTE_PRODUITS .fiche-adherent h1, .fiche-adherent .TPL_CATEGORIE_LISTE_PRODUITS h1,
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT h2,
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .TPL_FICHE_PRODUIT .titre-produit h1,
  .TPL_FICHE_PRODUIT .titre-produit .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT h1,
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .fiche-adherent h1,
  .fiche-adherent .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT h1 {
    margin-bottom: 2rem;
  }
}

@media (max-width: 374px) {
  .TPL_CATEGORIE_LISTE_PRODUITS h2, .TPL_CATEGORIE_LISTE_PRODUITS .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_CATEGORIE_LISTE_PRODUITS h1, .TPL_CATEGORIE_LISTE_PRODUITS .fiche-adherent h1, .fiche-adherent .TPL_CATEGORIE_LISTE_PRODUITS h1,
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT h2,
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .TPL_FICHE_PRODUIT .titre-produit h1,
  .TPL_FICHE_PRODUIT .titre-produit .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT h1,
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .fiche-adherent h1,
  .fiche-adherent .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT h1 {
    font-size: 2.2rem;
    line-height: 2.4rem;
  }
}

.with-btn-favoris .TPL_CATEGORIE_LISTE_PRODUITS h2, .with-btn-favoris .TPL_CATEGORIE_LISTE_PRODUITS .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .with-btn-favoris .TPL_CATEGORIE_LISTE_PRODUITS h1, .with-btn-favoris .TPL_CATEGORIE_LISTE_PRODUITS .fiche-adherent h1, .fiche-adherent .with-btn-favoris .TPL_CATEGORIE_LISTE_PRODUITS h1, .with-btn-favoris .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT h2, .with-btn-favoris .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .with-btn-favoris .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT h1, .with-btn-favoris .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .fiche-adherent h1, .fiche-adherent .with-btn-favoris .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT h1 {
  padding-right: 220px;
}

@media (max-width: 1024px) {
  .with-btn-favoris .TPL_CATEGORIE_LISTE_PRODUITS h2, .with-btn-favoris .TPL_CATEGORIE_LISTE_PRODUITS .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .with-btn-favoris .TPL_CATEGORIE_LISTE_PRODUITS h1, .with-btn-favoris .TPL_CATEGORIE_LISTE_PRODUITS .fiche-adherent h1, .fiche-adherent .with-btn-favoris .TPL_CATEGORIE_LISTE_PRODUITS h1, .with-btn-favoris .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT h2, .with-btn-favoris .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .with-btn-favoris .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT h1, .with-btn-favoris .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .fiche-adherent h1, .fiche-adherent .with-btn-favoris .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT h1 {
    padding-right: 50px;
    min-height: 4rem;
  }
}

.TPL_CATEGORIE_LISTE_PRODUITS h2 span, .TPL_CATEGORIE_LISTE_PRODUITS .TPL_FICHE_PRODUIT .titre-produit h1 span, .TPL_FICHE_PRODUIT .titre-produit .TPL_CATEGORIE_LISTE_PRODUITS h1 span, .TPL_CATEGORIE_LISTE_PRODUITS .fiche-adherent h1 span, .fiche-adherent .TPL_CATEGORIE_LISTE_PRODUITS h1 span,
.TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT h2 span,
.TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .TPL_FICHE_PRODUIT .titre-produit h1 span,
.TPL_FICHE_PRODUIT .titre-produit .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT h1 span,
.TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .fiche-adherent h1 span,
.fiche-adherent .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT h1 span {
  display: none;
}

/* ===================================================================
 * PRODUITS PANIER / LISTE ACHAT
 * =================================================================*/
.TPL_PANIER .liste-produits .message-promo .inner,
.TPL_ORCAB_LISTE_ACHAT .liste-produits .message-promo .inner {
  margin: -2rem;
}

@media (max-width: 1024px) {
  .TPL_PANIER .liste-produits .message-promo .inner,
  .TPL_ORCAB_LISTE_ACHAT .liste-produits .message-promo .inner {
    width: calc(100% + 3rem);
  }
}

/* ===================================================================
 * INFOTYPE
 * =================================================================*/
.infosTypes .info-type-link {
  display: block;
  border-bottom: 1px solid transparent;
}

.infosTypes .info-type-link:hover {
  cursor: pointer;
  border-color: #545454;
}

/* ===================================================================
 * TEMPLATE LISTE PRODUIT
 * =================================================================*/
.liste-produits,
.TPL_FICHE_PRODUIT .liste-produits {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

.liste-produits .liste-produit-item,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item {
  border: 1px solid #cecece;
  background: #fff;
  border-radius: 5px;
  margin-bottom: 12px;
  padding: 20px 15px;
  box-sizing: border-box;
  position: relative;
  width: 100%;
}

.liste-produits .liste-produit-item h2, .liste-produits .liste-produit-item .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .liste-produits .liste-produit-item h1, .liste-produits .liste-produit-item .fiche-adherent h1, .fiche-adherent .liste-produits .liste-produit-item h1,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item h2,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item .titre-produit h1,
.TPL_FICHE_PRODUIT .titre-produit .liste-produits .liste-produit-item h1,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item .fiche-adherent h1,
.fiche-adherent .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item h1 {
  color: #003160;
  font-size: 1.7rem;
  line-height: 2.2rem;
  font-weight: 400;
  margin: 0 0 20px;
  max-width: calc(100% - 20rem);
}

.liste-produits .liste-produit-item h2 a, .liste-produits .liste-produit-item .TPL_FICHE_PRODUIT .titre-produit h1 a, .TPL_FICHE_PRODUIT .titre-produit .liste-produits .liste-produit-item h1 a, .liste-produits .liste-produit-item .fiche-adherent h1 a, .fiche-adherent .liste-produits .liste-produit-item h1 a,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item h2 a,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item .titre-produit h1 a,
.TPL_FICHE_PRODUIT .titre-produit .liste-produits .liste-produit-item h1 a,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item .fiche-adherent h1 a,
.fiche-adherent .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item h1 a {
  color: #003160;
}

.liste-produits .liste-produit-item .ajout-comparateur,
.liste-produits .liste-produit-item .devis-bon-infos,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item .ajout-comparateur,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item .devis-bon-infos {
  position: absolute;
  right: 4rem;
  top: 2.5rem;
  color: #003160;
}

.liste-produits .liste-produit-item .ajout-comparateur [type="checkbox"] + label,
.liste-produits .liste-produit-item .devis-bon-infos [type="checkbox"] + label,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item .ajout-comparateur [type="checkbox"] + label,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item .devis-bon-infos [type="checkbox"] + label {
  font-size: 1.4rem;
}

.liste-produits .liste-produit-item .devis-bon-infos,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item .devis-bon-infos {
  font-size: 1.5rem;
}

@media screen and (max-width: 767px) {
  .liste-produits .liste-produit-item .devis-bon-infos,
  .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item .devis-bon-infos {
    position: relative;
    top: auto;
    right: auto;
    order: -1;
    text-align: right;
  }
}

.liste-produits .liste-produit-item.with-promo .ajout-comparateur,
.liste-produits .liste-produit-item.with-promo .devis-bon-infos,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item.with-promo .ajout-comparateur,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item.with-promo .devis-bon-infos {
  top: 5.75rem;
}

.liste-produits .liste-produit-item.with-interweb,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item.with-interweb {
  padding-bottom: 0;
}

.liste-produits .liste-details,
.TPL_FICHE_PRODUIT .liste-produits .liste-details {
  display: flex;
  word-break: break-word;
}

.liste-produits .image,
.TPL_FICHE_PRODUIT .liste-produits .image {
  margin-right: 2rem;
  width: 12.2rem;
  position: relative;
}

.liste-produits .image-inner,
.TPL_FICHE_PRODUIT .liste-produits .image-inner {
  height: 12.2rem;
  border-radius: 5px;
  overflow: hidden;
}

.liste-produits .image-produit,
.TPL_FICHE_PRODUIT .liste-produits .image-produit {
  object-fit: contain;
  width: 100%;
  height: 12.2rem;
}

.liste-produits .image a,
.TPL_FICHE_PRODUIT .liste-produits .image a {
  display: block;
}

.liste-produits h3,
.TPL_FICHE_PRODUIT .liste-produits h3 {
  font-size: 1.5rem;
  line-height: 2rem;
  color: #545454;
  margin: 0 0 2px;
  font-weight: 700;
}

.liste-produits h3 a,
.TPL_FICHE_PRODUIT .liste-produits h3 a {
  color: #545454;
}

.liste-produits h3 a:hover, .liste-produits h3 a.active,
.TPL_FICHE_PRODUIT .liste-produits h3 a:hover,
.TPL_FICHE_PRODUIT .liste-produits h3 a.active {
  color: #545454;
  text-decoration: none;
}

.liste-produits .produit-gauche, .liste-produits .produit-droite,
.TPL_FICHE_PRODUIT .liste-produits .produit-gauche,
.TPL_FICHE_PRODUIT .liste-produits .produit-droite {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  font-size: 1.4rem;
  line-height: 2rem;
}

.liste-produits .produit-gauche p, .liste-produits .produit-droite p,
.TPL_FICHE_PRODUIT .liste-produits .produit-gauche p,
.TPL_FICHE_PRODUIT .liste-produits .produit-droite p {
  margin: 0 0 0.2rem;
}

@media (max-width: 767px) {
  .liste-produits .produit-gauche, .liste-produits .produit-droite,
  .TPL_FICHE_PRODUIT .liste-produits .produit-gauche,
  .TPL_FICHE_PRODUIT .liste-produits .produit-droite {
    width: 100%;
  }
}

.liste-produits .produit-gauche,
.TPL_FICHE_PRODUIT .liste-produits .produit-gauche {
  width: 41.33611691022965%;
}

.liste-produits .produit-droite,
.TPL_FICHE_PRODUIT .liste-produits .produit-droite {
  align-items: center;
  width: 48.71259568545581%;
}

.liste-produits .produit-code,
.TPL_FICHE_PRODUIT .liste-produits .produit-code {
  width: 28.11447811447811%;
  margin-right: 3.367003367003367%;
}

.liste-produits .produit-prix,
.TPL_FICHE_PRODUIT .liste-produits .produit-prix {
  width: 35.21739130434783%;
  margin-right: 4.347826086956522%;
  align-self: flex-start;
}

.liste-produits .produit-stock,
.TPL_FICHE_PRODUIT .liste-produits .produit-stock {
  width: 65.15151515151515%;
  margin-right: 3.367003367003367%;
}

.liste-produits .produit-stock .stock,
.TPL_FICHE_PRODUIT .liste-produits .produit-stock .stock {
  display: flex;
  flex-direction: column;
}

.liste-produits .produit-stock .stock:before,
.TPL_FICHE_PRODUIT .liste-produits .produit-stock .stock:before {
  content: none;
}

.liste-produits .produit-stock .stock-plus,
.TPL_FICHE_PRODUIT .liste-produits .produit-stock .stock-plus {
  flex-flow: row wrap;
}

.liste-produits .produit-stock .stock-plus .stock-liste,
.TPL_FICHE_PRODUIT .liste-produits .produit-stock .stock-plus .stock-liste {
  width: 48%;
  padding-right: 2rem;
  box-sizing: border-box;
}

@media screen and (max-width: 1440px) and (min-width: 1025px) {
  .liste-produits .produit-stock .stock-plus .stock-liste,
  .TPL_FICHE_PRODUIT .liste-produits .produit-stock .stock-plus .stock-liste {
    width: 100%;
    padding: 0;
  }
}

@media screen and (max-width: 767px) {
  .liste-produits .produit-stock .stock-plus .stock-liste,
  .TPL_FICHE_PRODUIT .liste-produits .produit-stock .stock-plus .stock-liste {
    width: 100%;
    padding: 0;
  }
}

.liste-produits .produit-actions,
.TPL_FICHE_PRODUIT .liste-produits .produit-actions {
  width: 60.14492753623188%;
}

.liste-produits .produit-code .info,
.TPL_FICHE_PRODUIT .liste-produits .produit-code .info {
  font-size: 1.3rem;
}

.liste-produits .produit-stock .stock-liste,
.TPL_FICHE_PRODUIT .liste-produits .produit-stock .stock-liste {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px;
}

.liste-produits .produit-stock .qte-etat,
.TPL_FICHE_PRODUIT .liste-produits .produit-stock .qte-etat {
  width: 100%;
  flex-grow: 1;
  color: #003160;
  font-size: 1.3rem;
}

@media screen and (min-width: 1440px) {
  .liste-produits .produit-stock .qte-etat,
  .TPL_FICHE_PRODUIT .liste-produits .produit-stock .qte-etat {
    width: calc(50% - 20px);
  }
}

.liste-produits .produit-stock .qte-etat .libelle,
.TPL_FICHE_PRODUIT .liste-produits .produit-stock .qte-etat .libelle {
  font-size: 1.4rem;
}

.liste-produits .infotypes-wrap,
.TPL_FICHE_PRODUIT .liste-produits .infotypes-wrap {
  border-top: 1px solid #cecece;
  padding-top: 1.2rem;
  margin-top: 0.6rem;
  display: flex;
  flex-flow: row wrap;
}

.liste-produits .infosTypes ul,
.TPL_FICHE_PRODUIT .liste-produits .infosTypes ul {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
}

.liste-produits .infosTypes li,
.TPL_FICHE_PRODUIT .liste-produits .infosTypes li {
  min-width: 2rem;
  margin-right: .7rem;
}

.liste-produits .infosTypes li img,
.TPL_FICHE_PRODUIT .liste-produits .infosTypes li img {
  max-width: 20px;
  opacity: 0.99;
  transform: scale(0.999);
}

.liste-produits .infosTypes li .infotype-picto,
.TPL_FICHE_PRODUIT .liste-produits .infosTypes li .infotype-picto {
  position: relative;
  width: 24px;
  height: 24px;
}

.liste-produits .infosTypes li .infotype-picto .infotype-picto-color,
.TPL_FICHE_PRODUIT .liste-produits .infosTypes li .infotype-picto .infotype-picto-color {
  width: 100%;
  height: 100%;
  -webkit-mask-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-mask-size: contain;
  background-size: 24px auto;
  background-repeat: no-repeat;
  background-position: center;
}

.liste-produits .infosTypes a:before,
.TPL_FICHE_PRODUIT .liste-produits .infosTypes a:before {
  font-size: 2.4rem;
  color: #003160;
}

.liste-produits .typePaniers-wrap,
.TPL_FICHE_PRODUIT .liste-produits .typePaniers-wrap {
  border-top: 1px solid #cecece;
  padding-top: 1.2rem;
  margin-top: 0.6rem;
}

.liste-produits .typePaniers ul,
.TPL_FICHE_PRODUIT .liste-produits .typePaniers ul {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
}

.liste-produits .typePaniers li,
.TPL_FICHE_PRODUIT .liste-produits .typePaniers li {
  min-width: 2rem;
  margin-right: .7rem;
}

.liste-produits .typePaniers li img,
.TPL_FICHE_PRODUIT .liste-produits .typePaniers li img {
  max-width: 20px;
  opacity: 0.99;
  transform: scale(0.999);
}

.liste-produits .typePaniers li .typePanier-picto,
.TPL_FICHE_PRODUIT .liste-produits .typePaniers li .typePanier-picto {
  position: relative;
  width: 24px;
  height: 24px;
}

.liste-produits .typePaniers li .typePanier-picto .typePanier-picto-color,
.TPL_FICHE_PRODUIT .liste-produits .typePaniers li .typePanier-picto .typePanier-picto-color {
  width: 100%;
  height: 100%;
  -webkit-mask-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-mask-size: contain;
}

.liste-produits .typePaniers a:before,
.TPL_FICHE_PRODUIT .liste-produits .typePaniers a:before {
  font-size: 2.4rem;
  color: #003160;
}

.liste-produits .ajouter-produit-au-panier,
.TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier {
  display: flex;
  margin-bottom: 5px;
  padding: 0;
  position: relative;
  justify-content: space-between;
}

@media (min-width: 1441px) {
  .liste-produits .ajouter-produit-au-panier:has(.btn-cant-order) .box-panier,
  .liste-produits .ajouter-produit-au-panier:has(.btn-cant-order) .actions,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier:has(.btn-cant-order) .box-panier,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier:has(.btn-cant-order) .actions {
    width: 100%;
    min-width: 190px;
  }
}

.liste-produits .ajouter-produit-au-panier:has(.btn-trigger-dimension-variable-hide),
.TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier:has(.btn-trigger-dimension-variable-hide) {
  flex-direction: column;
}

.liste-produits .ajouter-produit-au-panier:has(.btn-trigger-dimension-variable-hide) .box-panier,
.TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier:has(.btn-trigger-dimension-variable-hide) .box-panier {
  width: 100%;
  text-align: left;
  gap: 1rem;
}

@media screen and (max-width: 1024px) {
  .liste-produits .ajouter-produit-au-panier:has(.btn-trigger-dimension-variable-hide) .box-panier,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier:has(.btn-trigger-dimension-variable-hide) .box-panier {
    margin-bottom: 0;
  }
}

.liste-produits .ajouter-produit-au-panier:has(.btn-trigger-dimension-variable-hide) .box-panier .dimension,
.TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier:has(.btn-trigger-dimension-variable-hide) .box-panier .dimension {
  margin-bottom: 10px;
}

@media screen and (max-width: 767px) {
  .liste-produits .ajouter-produit-au-panier:has(.btn-trigger-dimension-variable-hide) .box-panier .dimension,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier:has(.btn-trigger-dimension-variable-hide) .box-panier .dimension {
    margin-bottom: 0;
  }
}

.liste-produits .ajouter-produit-au-panier:has(.btn-trigger-dimension-variable-hide) .actions,
.TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier:has(.btn-trigger-dimension-variable-hide) .actions {
  width: 100%;
  padding-top: 0;
  gap: 1rem;
}

.liste-produits .ajouter-produit-au-panier:has(.btn-trigger-dimension-variable-hide) .listeProduitLignePrixTotal:not(:has(> *)),
.TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier:has(.btn-trigger-dimension-variable-hide) .listeProduitLignePrixTotal:not(:has(> *)) {
  display: none;
}

.liste-produits .ajouter-produit-au-panier:has(.btn-trigger-dimension-variable-hide) .quantite .qte-label,
.TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier:has(.btn-trigger-dimension-variable-hide) .quantite .qte-label {
  font-weight: 700;
  text-align: left;
}

.liste-produits .ajouter-produit-au-panier .box-panier,
.TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .box-panier {
  width: 49.39759036144578%;
}

.liste-produits .ajouter-produit-au-panier .actions,
.TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .actions {
  width: 43.37349397590361%;
  padding-top: 2rem;
}

.liste-produits .ajouter-produit-au-panier button,
.TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier button {
  min-width: 100%;
  font-size: 1.4rem;
  padding: 1.11rem 1rem;
  line-height: 1;
  margin: 0 0 1rem;
  letter-spacing: 0.06em;
}

.liste-produits .ajouter-produit-au-panier .bouton-bleu, .liste-produits .ajouter-produit-au-panier .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .liste-produits .ajouter-produit-au-panier .btn-imprimer, .liste-produits .ajouter-produit-au-panier .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .liste-produits .ajouter-produit-au-panier .btn-imprimer, .liste-produits .ajouter-produit-au-panier .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .liste-produits .ajouter-produit-au-panier a.voir-produit, .liste-produits .ajouter-produit-au-panier .materiel-print-btn a, .materiel-print-btn .liste-produits .ajouter-produit-au-panier a, .liste-produits .ajouter-produit-au-panier .materiel-planning-pdf a, .materiel-planning-pdf .liste-produits .ajouter-produit-au-panier a,
.TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .bouton-bleu,
.TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer,
.TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .btn-imprimer,
.TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .lignes-retour-wrap .form-submit .btn-imprimer,
.lignes-retour-wrap .form-submit .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .btn-imprimer,
.TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .TPL_COMPARATEUR .action a.voir-produit,
.TPL_COMPARATEUR .action .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier a.voir-produit,
.TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .materiel-print-btn a,
.materiel-print-btn .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier a,
.TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .materiel-planning-pdf a,
.materiel-planning-pdf .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier a {
  background-color: #003160;
}

.liste-produits .liste-achat-plugin .sousmenu-ajout-produit-liste,
.TPL_FICHE_PRODUIT .liste-produits .liste-achat-plugin .sousmenu-ajout-produit-liste {
  top: 40px;
}

.liste-produits .liste-achat-plugin .ajouter-a-la-liste,
.TPL_FICHE_PRODUIT .liste-produits .liste-achat-plugin .ajouter-a-la-liste {
  left: -50px;
}

.liste-produits .liste-achat-plugin .ajouter-a-la-liste::after,
.TPL_FICHE_PRODUIT .liste-produits .liste-achat-plugin .ajouter-a-la-liste::after {
  left: 75%;
}

@media screen and (max-width: 1850px) and (min-width: 1441px) {
  .liste-produits .liste-achat-plugin .ajouter-a-la-liste,
  .TPL_FICHE_PRODUIT .liste-produits .liste-achat-plugin .ajouter-a-la-liste {
    top: 15px;
    left: -90px;
  }
}

@media screen and (max-width: 1310px) and (min-width: 1024px) {
  .liste-produits .liste-achat-plugin .ajouter-a-la-liste,
  .TPL_FICHE_PRODUIT .liste-produits .liste-achat-plugin .ajouter-a-la-liste {
    top: 15px;
    left: -90px;
  }
}

@media screen and (max-width: 816px) and (min-width: 770px) {
  .liste-produits .liste-achat-plugin .ajouter-a-la-liste,
  .TPL_FICHE_PRODUIT .liste-produits .liste-achat-plugin .ajouter-a-la-liste {
    top: 15px;
    left: -90px;
  }
}

.liste-produits .actions-declinaison,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison {
  margin-top: 1.5rem;
  display: flex;
  justify-content: flex-end;
}

.liste-produits .actions-declinaison .bouton-vert, .liste-produits .actions-declinaison .form-submit button, .form-submit .liste-produits .actions-declinaison button,
.liste-produits .actions-declinaison .form-submit input[type="submit"], .form-submit .liste-produits .actions-declinaison input[type="submit"], .liste-produits .actions-declinaison .bouton-bleu, .liste-produits .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .liste-produits .actions-declinaison .btn-imprimer, .liste-produits .actions-declinaison .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .liste-produits .actions-declinaison .btn-imprimer, .liste-produits .actions-declinaison .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .liste-produits .actions-declinaison a.voir-produit, .liste-produits .actions-declinaison .materiel-print-btn a, .materiel-print-btn .liste-produits .actions-declinaison a, .liste-produits .actions-declinaison .materiel-planning-pdf a, .materiel-planning-pdf .liste-produits .actions-declinaison a, .liste-produits .actions-declinaison .bouton-gris, .liste-produits .actions-declinaison .bouton-rouge, .liste-produits .actions-declinaison .bouton-retour, .liste-produits .actions-declinaison .bouton-rechercher, .liste-produits .actions-declinaison .btn-ajouter-au-panier,
.liste-produits .actions-declinaison .btn-liste-achat-activate, .liste-produits .actions-declinaison .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .liste-produits .actions-declinaison a, .liste-produits .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .liste-produits .actions-declinaison .btn-ajouter-liste, .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-submit,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-vert,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .form-submit button,
.form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison button,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .form-submit input[type="submit"],
.form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison input[type="submit"],
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-bleu,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer,
.TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-imprimer,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .lignes-retour-wrap .form-submit .btn-imprimer,
.lignes-retour-wrap .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-imprimer,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .TPL_COMPARATEUR .action a.voir-produit,
.TPL_COMPARATEUR .action .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a.voir-produit,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .materiel-print-btn a,
.materiel-print-btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .materiel-planning-pdf a,
.materiel-planning-pdf .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-gris,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-rouge,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-retour,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-rechercher,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-ajouter-au-panier,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-liste-achat-activate,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .ressources-associees li.lien-tous a,
.ressources-associees li.lien-tous .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste,
.liste-achat-plugin .ajouter-a-la-liste .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-ajouter-liste,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-submit {
  width: 18rem;
  min-width: inherit;
  font-size: 1.5rem;
  padding: 1.1rem 1rem;
  line-height: 1;
  margin: 0 0 1rem;
  box-sizing: border-box;
  text-align: center;
}

.liste-produits .actions-declinaison .bouton-vert::before, .liste-produits .actions-declinaison .form-submit button::before, .form-submit .liste-produits .actions-declinaison button::before,
.liste-produits .actions-declinaison .form-submit input[type="submit"]::before, .form-submit .liste-produits .actions-declinaison input[type="submit"]::before, .liste-produits .actions-declinaison .bouton-bleu::before, .liste-produits .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer::before, .TPL_ORCAB_FICHE_RETOUR .form-submit .liste-produits .actions-declinaison .btn-imprimer::before, .liste-produits .actions-declinaison .lignes-retour-wrap .form-submit .btn-imprimer::before, .lignes-retour-wrap .form-submit .liste-produits .actions-declinaison .btn-imprimer::before, .liste-produits .actions-declinaison .TPL_COMPARATEUR .action a.voir-produit::before, .TPL_COMPARATEUR .action .liste-produits .actions-declinaison a.voir-produit::before, .liste-produits .actions-declinaison .materiel-print-btn a::before, .materiel-print-btn .liste-produits .actions-declinaison a::before, .liste-produits .actions-declinaison .materiel-planning-pdf a::before, .materiel-planning-pdf .liste-produits .actions-declinaison a::before, .liste-produits .actions-declinaison .bouton-gris::before, .liste-produits .actions-declinaison .bouton-rouge::before, .liste-produits .actions-declinaison .bouton-retour::before, .liste-produits .actions-declinaison .bouton-rechercher::before, .liste-produits .actions-declinaison .btn-ajouter-au-panier::before,
.liste-produits .actions-declinaison .btn-liste-achat-activate::before, .liste-produits .actions-declinaison .ressources-associees li.lien-tous a::before, .ressources-associees li.lien-tous .liste-produits .actions-declinaison a::before, .liste-produits .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste::before, .liste-achat-plugin .ajouter-a-la-liste .liste-produits .actions-declinaison .btn-ajouter-liste::before, .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .btn-submit::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-submit::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-vert::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .form-submit button::before,
.form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison button::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .form-submit input[type="submit"]::before,
.form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison input[type="submit"]::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-bleu::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer::before,
.TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-imprimer::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .lignes-retour-wrap .form-submit .btn-imprimer::before,
.lignes-retour-wrap .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-imprimer::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .TPL_COMPARATEUR .action a.voir-produit::before,
.TPL_COMPARATEUR .action .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a.voir-produit::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .materiel-print-btn a::before,
.materiel-print-btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .materiel-planning-pdf a::before,
.materiel-planning-pdf .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-gris::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-rouge::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-retour::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-rechercher::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-ajouter-au-panier::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-liste-achat-activate::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .ressources-associees li.lien-tous a::before,
.ressources-associees li.lien-tous .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste::before,
.liste-achat-plugin .ajouter-a-la-liste .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-ajouter-liste::before,
.TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-submit::before {
  content: "\e968";
  font-size: 1.25em;
  font-weight: normal;
  line-height: 17px;
  margin-right: 8px;
  vertical-align: middle;
}

.liste-produits .message-promo,
.TPL_FICHE_PRODUIT .liste-produits .message-promo {
  margin-bottom: 2rem;
  width: auto;
}

.liste-produits .message-promo-wrapper,
.TPL_FICHE_PRODUIT .liste-produits .message-promo-wrapper {
  display: flex;
}

.liste-produits .message-promo .inner,
.TPL_FICHE_PRODUIT .liste-produits .message-promo .inner {
  float: left;
  margin: -2.1rem 0 0 -1.5rem;
  border-radius: 5px 0 0 0;
}

@media (max-width: 1024px) {
  .liste-produits .message-promo .inner,
  .TPL_FICHE_PRODUIT .liste-produits .message-promo .inner {
    float: none;
    margin: -2rem -1rem 0;
    box-sizing: border-box;
    text-align: center;
  }
}

.liste-produits .message-promo + .message-promo .inner,
.TPL_FICHE_PRODUIT .liste-produits .message-promo + .message-promo .inner {
  border-radius: 0 0 5px 0;
  margin-left: 0;
}

@media (min-width: 1025px) {
  .liste-produits .message-promo:only-child .inner,
  .TPL_FICHE_PRODUIT .liste-produits .message-promo:only-child .inner {
    border-bottom-right-radius: 5px;
  }
}

@media (max-width: 1024px) and (min-width: 768px) {
  .liste-produits .message-promo:only-child .inner,
  .TPL_FICHE_PRODUIT .liste-produits .message-promo:only-child .inner {
    width: calc(100% + 2rem);
    border-radius: 5px 5px 0 0;
  }
}

@media (max-width: 1024px) {
  .liste-produits .message-promo,
  .TPL_FICHE_PRODUIT .liste-produits .message-promo {
    width: 100%;
  }
  .liste-produits .message-promo .inner,
  .TPL_FICHE_PRODUIT .liste-produits .message-promo .inner {
    border-radius: 5px 0 0 0;
  }
  .liste-produits .message-promo + .message-promo .inner,
  .TPL_FICHE_PRODUIT .liste-produits .message-promo + .message-promo .inner {
    border-radius: 0 5px 0 0;
    margin-left: -10px;
  }
}

@media (max-width: 767px) {
  .liste-produits .message-promo-wrapper,
  .TPL_FICHE_PRODUIT .liste-produits .message-promo-wrapper {
    flex-direction: column;
  }
  .liste-produits .message-promo .inner,
  .TPL_FICHE_PRODUIT .liste-produits .message-promo .inner {
    width: 100%;
    border-radius: 5px 5px 0 0;
  }
  .liste-produits .message-promo + .message-promo .inner,
  .TPL_FICHE_PRODUIT .liste-produits .message-promo + .message-promo .inner {
    margin-left: -10px;
    border-radius: 0;
  }
}

.liste-produits .conditionnement,
.liste-produits .more-options,
.TPL_FICHE_PRODUIT .liste-produits .conditionnement,
.TPL_FICHE_PRODUIT .liste-produits .more-options {
  border-top: 1px solid #cecece;
  padding-top: 0.8rem;
  margin-top: 0.8rem;
  line-height: 1.7rem;
  font-size: 1.3rem;
}

.liste-produits .conditionnement button,
.liste-produits .more-options button,
.TPL_FICHE_PRODUIT .liste-produits .conditionnement button,
.TPL_FICHE_PRODUIT .liste-produits .more-options button {
  margin-bottom: 1rem;
}

.liste-produits .more-options > div:not(:last-child),
.TPL_FICHE_PRODUIT .liste-produits .more-options > div:not(:last-child) {
  padding-bottom: 1rem;
}

.liste-produits .quantiteCalculateur label,
.TPL_FICHE_PRODUIT .liste-produits .quantiteCalculateur label {
  font-size: 1.4rem;
  color: #003160;
  margin-bottom: 4px;
  display: block;
  padding: 0;
  font-weight: normal;
  text-align: center;
}

.liste-produits .quantiteCalculateur input,
.TPL_FICHE_PRODUIT .liste-produits .quantiteCalculateur input {
  border: 1px solid #c4c4c4;
  border-radius: 10px;
  height: 40px;
  line-height: 40px;
  margin-bottom: 10px;
  font-size: 1.7rem;
  color: #003160;
  font-weight: 700;
}

.liste-produits .bouton-ajout-produit-liste:before,
.TPL_FICHE_PRODUIT .liste-produits .bouton-ajout-produit-liste:before {
  content: "\e963";
  font-size: 1.25em;
  font-weight: normal;
  line-height: 17px;
  margin-right: 5px;
  vertical-align: middle;
}

.liste-produits .produit-form-mini-loader,
.TPL_FICHE_PRODUIT .liste-produits .produit-form-mini-loader {
  transform: translateX(-50%);
  left: 50%;
  position: absolute;
  top: 100%;
}

.liste-produits .small-price,
.TPL_FICHE_PRODUIT .liste-produits .small-price {
  font-size: 1.2rem;
  line-height: 1.5rem;
}

.liste-produits .interweb-stocks,
.TPL_FICHE_PRODUIT .liste-produits .interweb-stocks {
  margin: 20px -15px 0;
  display: flex;
  flex-flow: row wrap;
}

.liste-produits .interweb-stocks .stocks p.shown,
.TPL_FICHE_PRODUIT .liste-produits .interweb-stocks .stocks p.shown {
  display: block;
}

@media screen and (max-width: 1024px) {
  .liste-produits .interweb-stocks,
  .TPL_FICHE_PRODUIT .liste-produits .interweb-stocks {
    margin: 20px -10px 0;
  }
}

.liste-produits .liste-produit-item.with-selection,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item.with-selection {
  padding-left: 20px;
}

.liste-produits .liste-produit-item.with-selection h2, .liste-produits .liste-produit-item.with-selection .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .liste-produits .liste-produit-item.with-selection h1, .liste-produits .liste-produit-item.with-selection .fiche-adherent h1, .fiche-adherent .liste-produits .liste-produit-item.with-selection h1,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item.with-selection h2,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item.with-selection .titre-produit h1,
.TPL_FICHE_PRODUIT .titre-produit .liste-produits .liste-produit-item.with-selection h1,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item.with-selection .fiche-adherent h1,
.fiche-adherent .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item.with-selection h1 {
  padding-left: 2.6rem;
}

.liste-produits .liste-produit-item.with-selection .selection [type="checkbox"] + label:before,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item.with-selection .selection [type="checkbox"] + label:before {
  top: 3px;
}

.liste-produits .liste-produit-item.with-selection .selection [type="checkbox"] + label:after,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item.with-selection .selection [type="checkbox"] + label:after {
  top: 0;
}

.liste-produits .liste-produit-item.with-selection .interweb-stocks,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit-item.with-selection .interweb-stocks {
  margin-left: -20px;
}

.liste-produits .listeProduitLignePrixTotal,
.TPL_FICHE_PRODUIT .liste-produits .listeProduitLignePrixTotal {
  padding-bottom: 1em;
}

.liste-produits .montant-total-ligne,
.TPL_FICHE_PRODUIT .liste-produits .montant-total-ligne {
  text-align: center;
  font-weight: 700;
  color: #003160;
  font-size: 2.7rem;
  line-height: 3.3rem;
}

.liste-produits .montant-total-ligne span:not(.ecopart):not(.btn-cant-order),
.TPL_FICHE_PRODUIT .liste-produits .montant-total-ligne span:not(.ecopart):not(.btn-cant-order) {
  font-size: 2.7rem;
}

.liste-produits .montant-total-ligne .ecopart,
.TPL_FICHE_PRODUIT .liste-produits .montant-total-ligne .ecopart {
  color: #545454;
  font-weight: normal;
}

.liste-produits .montant-total-ligne .btn-cant-order,
.TPL_FICHE_PRODUIT .liste-produits .montant-total-ligne .btn-cant-order {
  margin-top: 1rem;
}

@media screen and (min-width: 1441px) {
  .liste-produits .produit-actions:has(.btn-cant-order),
  .TPL_FICHE_PRODUIT .liste-produits .produit-actions:has(.btn-cant-order) {
    width: 200px;
  }
  .liste-produits .produit-actions:has(.btn-cant-order) .no-actions .ajouter-produit-au-panier,
  .liste-produits .produit-actions:has(.btn-cant-order) .no-actions .montant-total-ligne,
  .TPL_FICHE_PRODUIT .liste-produits .produit-actions:has(.btn-cant-order) .no-actions .ajouter-produit-au-panier,
  .TPL_FICHE_PRODUIT .liste-produits .produit-actions:has(.btn-cant-order) .no-actions .montant-total-ligne {
    width: 100%;
  }
}

.liste-produits .comment,
.TPL_FICHE_PRODUIT .liste-produits .comment {
  width: 70%;
}

.liste-produits .comment form,
.TPL_FICHE_PRODUIT .liste-produits .comment form {
  padding: 0;
}

.liste-produits .comment textarea,
.TPL_FICHE_PRODUIT .liste-produits .comment textarea {
  height: 6.7rem;
  resize: vertical;
}

@media (max-width: 1024px) {
  .liste-produits .comment,
  .TPL_FICHE_PRODUIT .liste-produits .comment {
    width: 100%;
  }
}

.liste-produits .show-comment,
.TPL_FICHE_PRODUIT .liste-produits .show-comment {
  color: #003160;
  font-size: 1.5rem;
  margin-bottom: 0.5rem;
  text-decoration: none;
  display: block;
}

.liste-produits .show-comment:after,
.TPL_FICHE_PRODUIT .liste-produits .show-comment:after {
  content: "\f107";
  margin-left: 10px;
}

.liste-produits .show-comment.active:after,
.TPL_FICHE_PRODUIT .liste-produits .show-comment.active:after {
  content: "\f106";
}

.liste-produits .delete-product,
.TPL_FICHE_PRODUIT .liste-produits .delete-product {
  margin-top: 20px;
  color: #e05151;
  display: flex;
  justify-content: center;
  align-items: center;
}

.liste-produits .delete-product:before,
.TPL_FICHE_PRODUIT .liste-produits .delete-product:before {
  content: '\e95e';
  margin-right: 1rem;
  font-size: 1.6rem;
}

.liste-produits .delete-product:hover, .liste-produits .delete-product:focus,
.TPL_FICHE_PRODUIT .liste-produits .delete-product:hover,
.TPL_FICHE_PRODUIT .liste-produits .delete-product:focus {
  text-decoration: none;
  color: #545454;
}

@media (max-width: 1024px) {
  .liste-produits .delete-product,
  .TPL_FICHE_PRODUIT .liste-produits .delete-product {
    margin: 1rem 0;
  }
}

@media screen and (min-width: 1025px) {
  .liste-produits .interweb-stocks,
  .TPL_FICHE_PRODUIT .liste-produits .interweb-stocks {
    position: relative;
  }
  .liste-produits .interweb-stocks .btn-voir-stocks,
  .TPL_FICHE_PRODUIT .liste-produits .interweb-stocks .btn-voir-stocks {
    float: left;
    padding: 14px 30px 14px 55px;
    width: 35%;
    box-sizing: border-box;
  }
  .liste-produits .interweb-stocks .btn-voir-stocks.active,
  .TPL_FICHE_PRODUIT .liste-produits .interweb-stocks .btn-voir-stocks.active {
    position: initial;
  }
  .liste-produits .interweb-stocks .btn-voir-stocks:after,
  .TPL_FICHE_PRODUIT .liste-produits .interweb-stocks .btn-voir-stocks:after {
    content: "\f054";
    right: 10px;
  }
  .liste-produits .interweb-stocks .btn-voir-stocks.active::after,
  .TPL_FICHE_PRODUIT .liste-produits .interweb-stocks .btn-voir-stocks.active::after {
    content: '\f053';
    right: 20px;
  }
  .liste-produits .interweb-stocks .stocks,
  .TPL_FICHE_PRODUIT .liste-produits .interweb-stocks .stocks {
    float: left;
    width: 63%;
  }
  .liste-produits .interweb-stocks .stocks p,
  .TPL_FICHE_PRODUIT .liste-produits .interweb-stocks .stocks p {
    padding: 14px 0;
    margin: 0;
  }
  .liste-produits .interweb-stocks .stocks ul,
  .TPL_FICHE_PRODUIT .liste-produits .interweb-stocks .stocks ul {
    padding: 14px 0;
  }
  .liste-produits .interweb-stocks .stocks ul > li,
  .TPL_FICHE_PRODUIT .liste-produits .interweb-stocks .stocks ul > li {
    width: auto;
    padding: 0 2%;
    border-right: 1px solid #c0bfbf;
    word-wrap: break-word;
  }
  .liste-produits .interweb-stocks .stocks ul > li:nth-child(2n+1),
  .TPL_FICHE_PRODUIT .liste-produits .interweb-stocks .stocks ul > li:nth-child(2n+1) {
    clear: none;
  }
  .liste-produits .interweb-stocks .stocks ul > li:nth-child(2n),
  .TPL_FICHE_PRODUIT .liste-produits .interweb-stocks .stocks ul > li:nth-child(2n) {
    padding: 0 2%;
    border-left: 0;
  }
  .liste-produits .interweb-stocks .stocks ul > li:last-child,
  .TPL_FICHE_PRODUIT .liste-produits .interweb-stocks .stocks ul > li:last-child {
    padding-right: 0;
    border-right: 0;
  }
  .liste-produits .interweb-stocks .stocks ul > li.first,
  .TPL_FICHE_PRODUIT .liste-produits .interweb-stocks .stocks ul > li.first {
    padding-left: 0;
  }
}

.liste-produits .liste-produit__dimensions-variables-form,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit__dimensions-variables-form {
  padding: 0;
  width: 100%;
  margin-top: 60px;
}

@media screen and (max-width: 1024px) {
  .liste-produits .liste-produit__dimensions-variables-form,
  .TPL_FICHE_PRODUIT .liste-produits .liste-produit__dimensions-variables-form {
    order: -1;
    margin-top: 0;
    margin-bottom: 20px;
  }
}

.liste-produits .liste-produit__dimension-btn-row,
.TPL_FICHE_PRODUIT .liste-produits .liste-produit__dimension-btn-row {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  margin-top: 1rem;
  flex-wrap: wrap;
}

.liste-produits .dimensions-variables,
.TPL_FICHE_PRODUIT .liste-produits .dimensions-variables {
  display: flex;
  align-items: flex-start;
  gap: 1.5rem;
}

@media screen and (max-width: 767px) {
  .liste-produits .dimensions-variables,
  .TPL_FICHE_PRODUIT .liste-produits .dimensions-variables {
    flex-direction: column;
  }
}

.liste-produits .dimensions-variables .dimension,
.TPL_FICHE_PRODUIT .liste-produits .dimensions-variables .dimension {
  flex: 1;
}

@media screen and (max-width: 767px) {
  .liste-produits .dimensions-variables .dimension,
  .TPL_FICHE_PRODUIT .liste-produits .dimensions-variables .dimension {
    width: 100%;
  }
}

.liste-produits .dimensions-variables label,
.TPL_FICHE_PRODUIT .liste-produits .dimensions-variables label {
  margin-bottom: 2px;
}

.liste-produits .dimensions-variables label,
.liste-produits .dimensions-variables .indication-max-min,
.TPL_FICHE_PRODUIT .liste-produits .dimensions-variables label,
.TPL_FICHE_PRODUIT .liste-produits .dimensions-variables .indication-max-min {
  font-size: 1.4rem;
  padding: 0;
}

.liste-produits .dimensions-variables input,
.TPL_FICHE_PRODUIT .liste-produits .dimensions-variables input {
  color: #003160;
  font-size: 1.4rem;
  font-weight: 700;
  text-align: center;
}

.liste-produits .action-dimension-variable,
.TPL_FICHE_PRODUIT .liste-produits .action-dimension-variable {
  text-align: right;
  margin-top: 1.5rem;
}

.liste-produits .btn-trigger-dimension-variable-hide,
.TPL_FICHE_PRODUIT .liste-produits .btn-trigger-dimension-variable-hide {
  width: 100%;
  text-align: center;
}

@media screen and (max-width: 1024px) {
  .liste-produits .interweb-stocks .btn-voir-stocks,
  .TPL_FICHE_PRODUIT .interweb-stocks .btn-voir-stocks {
    line-height: 1;
    padding: 14px 25px 14px 50px;
  }
  .liste-produits .interweb-stocks .btn-voir-stocks:before,
  .TPL_FICHE_PRODUIT .interweb-stocks .btn-voir-stocks:before {
    left: 10px;
  }
  .liste-produits .interweb-stocks .btn-voir-stocks:after,
  .TPL_FICHE_PRODUIT .interweb-stocks .btn-voir-stocks:after {
    right: 10px;
  }
  .liste-produits .interweb-stocks .stocks ul,
  .TPL_FICHE_PRODUIT .interweb-stocks .stocks ul {
    padding: 0 10px 20px;
  }
  .liste-produits .interweb-stocks .stocks .libelle,
  .liste-produits .interweb-stocks .stocks .qty-stock,
  .TPL_FICHE_PRODUIT .interweb-stocks .stocks .libelle,
  .TPL_FICHE_PRODUIT .interweb-stocks .stocks .qty-stock {
    font-size: 1.3rem;
  }
}

/* ===================================================================
 * TEMPLATE LISTE PRODUIT - 1440PX
 * =================================================================*/
@media (max-width: 1440px) and (min-width: 1025px) {
  .liste-produits .liste-produit-item,
  .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item {
    padding: 20px 10px 20px 15px;
  }
  .liste-produits .liste-produit-item .ajout-comparateur,
  .liste-produits .liste-produit-item .devis-bon-infos,
  .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item .ajout-comparateur,
  .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item .devis-bon-infos {
    right: 1rem;
  }
  .liste-produits .image,
  .TPL_FICHE_PRODUIT .liste-produits .image {
    max-width: 12.2rem;
    width: 100%;
  }
  .liste-produits .produit-gauche,
  .TPL_FICHE_PRODUIT .liste-produits .produit-gauche {
    width: 43.62850971922246%;
  }
  .liste-produits .produit-droite,
  .TPL_FICHE_PRODUIT .liste-produits .produit-droite {
    width: 56.47948164146868%;
  }
  .liste-produits .produit-code,
  .TPL_FICHE_PRODUIT .liste-produits .produit-code {
    width: 41.33663366336634%;
    margin-right: 4.95049504950495%;
  }
  .liste-produits .produit-stock,
  .TPL_FICHE_PRODUIT .liste-produits .produit-stock {
    width: 48.762376237623765%;
    margin-right: 4.95049504950495%;
  }
  .liste-produits .produit-prix,
  .TPL_FICHE_PRODUIT .liste-produits .produit-prix {
    width: 48.37476099426386%;
    margin-right: 2%;
  }
  .liste-produits .produit-actions,
  .TPL_FICHE_PRODUIT .liste-produits .produit-actions {
    width: 39.38814531548757%;
  }
  .liste-produits .ajouter-produit-au-panier,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier {
    flex-direction: column;
    align-items: center;
  }
  .liste-produits .ajouter-produit-au-panier .box-panier,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .box-panier {
    width: 100%;
  }
  .liste-produits .ajouter-produit-au-panier .actions,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .actions {
    padding-top: 0;
    width: 100%;
  }
  .liste-produits .interweb-stocks,
  .TPL_FICHE_PRODUIT .liste-produits .interweb-stocks {
    margin: 20px -10px 0 -15px;
  }
}

/* ===================================================================
 * TEMPLATE LISTE PRODUIT - TABLETTE
 * =================================================================*/
@media (max-width: 1024px) {
  .liste-produits .liste-produit-item,
  .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item {
    padding: 20px 10px;
    width: 49%;
  }
  .liste-produits .liste-produit-item h2, .liste-produits .liste-produit-item .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .liste-produits .liste-produit-item h1, .liste-produits .liste-produit-item .fiche-adherent h1, .fiche-adherent .liste-produits .liste-produit-item h1,
  .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item h2,
  .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item .titre-produit h1,
  .TPL_FICHE_PRODUIT .titre-produit .liste-produits .liste-produit-item h1,
  .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item .fiche-adherent h1,
  .fiche-adherent .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item h1 {
    margin-bottom: 10px;
    max-width: 100%;
  }
  .liste-produits .liste-produit-item .devis-bon-infos,
  .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item .devis-bon-infos {
    right: 1rem;
  }
  .liste-produits .liste-produit-item .ajout-comparateur,
  .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item .ajout-comparateur {
    display: none;
  }
  .liste-produits .inner-item,
  .TPL_FICHE_PRODUIT .liste-produits .inner-item {
    height: 100%;
    display: flex;
    flex-direction: column;
  }
  .liste-produits .infotypes-wrap,
  .TPL_FICHE_PRODUIT .liste-produits .infotypes-wrap {
    padding: 0;
    border: 0;
    margin: 20px 0;
  }
  .liste-produits .infosTypes li,
  .TPL_FICHE_PRODUIT .liste-produits .infosTypes li {
    margin-right: 0.8rem;
  }
  .liste-produits .liste-details,
  .TPL_FICHE_PRODUIT .liste-produits .liste-details {
    flex-flow: row wrap;
    flex: 1;
  }
  .liste-produits .message-promo .inner,
  .TPL_FICHE_PRODUIT .liste-produits .message-promo .inner {
    float: none;
    margin: -2rem -1rem 0;
    box-sizing: border-box;
    width: calc(100% + 2rem);
    text-align: center;
  }
  .liste-produits .prix-container,
  .TPL_FICHE_PRODUIT .liste-produits .prix-container {
    display: flex;
    text-align: left;
    flex-flow: row-reverse wrap;
  }
  .liste-produits .price-bloc,
  .TPL_FICHE_PRODUIT .liste-produits .price-bloc {
    width: 49%;
  }
  .liste-produits .price-bloc + .price-bloc,
  .TPL_FICHE_PRODUIT .liste-produits .price-bloc + .price-bloc {
    margin: 0 2% 0 0;
  }
  .liste-produits .image,
  .TPL_FICHE_PRODUIT .liste-produits .image {
    position: absolute;
  }
  .liste-produits .produit-gauche,
  .TPL_FICHE_PRODUIT .liste-produits .produit-gauche {
    width: 100%;
    flex-direction: column;
    justify-content: flex-start;
  }
  .liste-produits .produit-droite,
  .TPL_FICHE_PRODUIT .liste-produits .produit-droite {
    width: 100%;
    align-items: flex-end;
  }
  .liste-produits .produit-code,
  .TPL_FICHE_PRODUIT .liste-produits .produit-code {
    padding-left: 14.4rem;
    width: 100%;
    margin: 0;
    box-sizing: border-box;
  }
  .liste-produits .produit-stock,
  .TPL_FICHE_PRODUIT .liste-produits .produit-stock {
    width: 100%;
    margin: 0;
  }
  .liste-produits .produit-prix,
  .TPL_FICHE_PRODUIT .liste-produits .produit-prix {
    width: 100%;
    margin: 0;
  }
  .liste-produits .produit-actions,
  .TPL_FICHE_PRODUIT .liste-produits .produit-actions {
    width: 100%;
  }
  .liste-produits .conditionnement,
  .liste-produits .more-options,
  .TPL_FICHE_PRODUIT .liste-produits .conditionnement,
  .TPL_FICHE_PRODUIT .liste-produits .more-options {
    border-bottom: 1px solid #cecece;
    padding: 8px 0;
    margin: 10px 0;
    border-bottom: 1px solid #cecece;
  }
  .liste-produits .ajouter-produit-au-panier,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier {
    flex-direction: column;
    width: 100%;
    margin: 1.5rem 0 0;
  }
  .liste-produits .ajouter-produit-au-panier .box-panier,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .box-panier {
    width: 100%;
    margin-bottom: 1rem;
    display: flex;
  }
  .liste-produits .ajouter-produit-au-panier .quantite,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .quantite {
    width: 49%;
  }
  .liste-produits .ajouter-produit-au-panier .quantiteCalculateur,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .quantiteCalculateur {
    width: 49%;
    margin-left: 2%;
  }
  .liste-produits .ajouter-produit-au-panier .actions,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .actions {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    padding: 0;
  }
  .liste-produits .ajouter-produit-au-panier button,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier button {
    margin: 0;
  }
  .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier {
    width: 49%;
    min-width: inherit;
  }
  .liste-produits .ajouter-produit-au-panier .liste-achat-plugin,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .liste-achat-plugin {
    width: 49%;
    margin-left: 2%;
  }
  .liste-produits .ajouter-produit-au-panier .liste-achat-plugin .ajouter-a-la-liste,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .liste-achat-plugin .ajouter-a-la-liste {
    left: -10px;
  }
  .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste,
  .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier {
    height: 4rem;
    text-indent: -9999px;
    display: flex;
    justify-content: center;
  }
  .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste:before,
  .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier:before,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste:before,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier:before {
    text-indent: 0;
    float: left;
    margin: 0;
  }
  .liste-produits .ajouter-produit-au-panier .quantiteAlreadyInPanier span,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .quantiteAlreadyInPanier span {
    text-indent: -9999px;
  }
}

/* ===================================================================
 * TEMPLATE LISTE PRODUIT - MOBILE
 * =================================================================*/
@media (max-width: 767px) {
  .liste-produits .liste-produit-item h2, .liste-produits .liste-produit-item .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .liste-produits .liste-produit-item h1, .liste-produits .liste-produit-item .fiche-adherent h1, .fiche-adherent .liste-produits .liste-produit-item h1,
  .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item h2,
  .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item .titre-produit h1,
  .TPL_FICHE_PRODUIT .titre-produit .liste-produits .liste-produit-item h1,
  .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item .fiche-adherent h1,
  .fiche-adherent .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item h1 {
    max-width: inherit;
  }
  .liste-produits .infotypes-wrap,
  .liste-produits .conditionnement,
  .TPL_FICHE_PRODUIT .liste-produits .infotypes-wrap,
  .TPL_FICHE_PRODUIT .liste-produits .conditionnement {
    display: none;
  }
  .liste-produits .more-options,
  .TPL_FICHE_PRODUIT .liste-produits .more-options {
    border-bottom: 0;
    margin-bottom: 0;
    padding: 1rem 0 0;
  }
  .liste-produits .produit-stock,
  .TPL_FICHE_PRODUIT .liste-produits .produit-stock {
    padding: 1.7rem 0 1rem;
    margin-bottom: 20px;
    border-bottom: 1px solid #cecece;
  }
  .liste-produits .prix-container,
  .TPL_FICHE_PRODUIT .liste-produits .prix-container {
    flex-direction: column;
  }
  .liste-produits .price-bloc,
  .TPL_FICHE_PRODUIT .liste-produits .price-bloc {
    width: 100%;
  }
  .liste-produits .price-bloc + .price-bloc,
  .TPL_FICHE_PRODUIT .liste-produits .price-bloc + .price-bloc {
    margin: 2rem 0 0;
  }
  .liste-produits .ajouter-produit-au-panier .box-panier,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .box-panier {
    flex-direction: column;
  }
  .liste-produits .ajouter-produit-au-panier .quantite,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .quantite {
    width: 100%;
  }
  .liste-produits .ajouter-produit-au-panier .quantiteCalculateur,
  .TPL_FICHE_PRODUIT .liste-produits .ajouter-produit-au-panier .quantiteCalculateur {
    width: 100%;
    margin: 1rem 0 0;
  }
  .liste-produits .image,
  .TPL_FICHE_PRODUIT .liste-produits .image {
    max-width: 10rem;
    margin-right: 1.5rem;
  }
  .liste-produits .image-inner,
  .TPL_FICHE_PRODUIT .liste-produits .image-inner {
    height: 10rem;
  }
  .liste-produits .image-produit,
  .TPL_FICHE_PRODUIT .liste-produits .image-produit {
    height: 10rem;
  }
  .liste-produits .produit-code,
  .TPL_FICHE_PRODUIT .liste-produits .produit-code {
    padding-left: 11.5rem;
  }
}

/* ===================================================================
 * TEMPLATE LISTE PRODUIT - MOBILE SMALL
 * =================================================================*/
@media (max-width: 600px) {
  .liste-produits,
  .TPL_FICHE_PRODUIT .liste-produits {
    flex-direction: column;
  }
  .liste-produits .liste-produit-item,
  .TPL_FICHE_PRODUIT .liste-produits .liste-produit-item {
    width: 100%;
  }
}

/* ===================================================================
 * TEMPLATE LISTE PRODUIT - VUE GRILLE
 * =================================================================*/
@media (min-width: 1025px) {
  .liste-produits.thumbnails .liste-produit-item,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .liste-produit-item {
    padding: 20px 10px;
    width: 49%;
  }
  .liste-produits.thumbnails .liste-produit-item h2, .liste-produits.thumbnails .liste-produit-item .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .liste-produits.thumbnails .liste-produit-item h1, .liste-produits.thumbnails .liste-produit-item .fiche-adherent h1, .fiche-adherent .liste-produits.thumbnails .liste-produit-item h1,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .liste-produit-item h2,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .liste-produit-item .titre-produit h1,
  .TPL_FICHE_PRODUIT .titre-produit .liste-produits.thumbnails .liste-produit-item h1,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .liste-produit-item .fiche-adherent h1,
  .fiche-adherent .TPL_FICHE_PRODUIT .liste-produits.thumbnails .liste-produit-item h1 {
    margin-bottom: 10px;
  }
  .liste-produits.thumbnails .liste-produit-item .ajout-comparateur,
  .liste-produits.thumbnails .liste-produit-item .devis-bon-infos,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .liste-produit-item .ajout-comparateur,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .liste-produit-item .devis-bon-infos {
    right: 1rem;
  }
  .liste-produits.thumbnails .liste-produit-item.with-interweb,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .liste-produit-item.with-interweb {
    display: flex;
    flex-direction: column;
  }
  .liste-produits.thumbnails .interweb-stocks,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .interweb-stocks {
    display: block;
  }
  .liste-produits.thumbnails .inner-item,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .inner-item {
    height: 100%;
    display: flex;
    flex-direction: column;
  }
  .liste-produits.thumbnails .liste-details,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .liste-details {
    flex-flow: row wrap;
    flex: 1;
  }
  .liste-produits.thumbnails .liste-details .image .infotypes-wrap,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .liste-details .image .infotypes-wrap {
    width: 100%;
    margin-bottom: 0.8rem;
  }
  .liste-produits.thumbnails .liste-details .image .produit-code,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .liste-details .image .produit-code {
    margin-left: 1.5rem;
  }
  .liste-produits.thumbnails .liste-details .image .produit-code p,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .liste-details .image .produit-code p {
    margin-top: 0;
  }
  .liste-produits.thumbnails .message-promo,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .message-promo {
    width: 100%;
  }
  .liste-produits.thumbnails .message-promo .inner,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .message-promo .inner {
    float: none;
    margin: -2rem -1rem 0;
    box-sizing: border-box;
    width: calc(100% + 2rem);
    text-align: center;
    border-radius: 5px 0 0 0;
  }
  .liste-produits.thumbnails .message-promo + .message-promo .inner,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .message-promo + .message-promo .inner {
    border-radius: 0 5px 0 0;
  }
}

@media (min-width: 1025px) and (min-width: 1025px) {
  .liste-produits.thumbnails .message-promo:only-child .inner,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .message-promo:only-child .inner {
    border-radius: 5px 5px 0 0;
  }
}

@media (min-width: 1025px) {
  .liste-produits.thumbnails .produit-gauche,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .produit-gauche {
    width: 100%;
    margin-bottom: 1rem;
  }
  .liste-produits.thumbnails .produit-droite,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .produit-droite {
    flex-direction: column;
    width: 100%;
  }
  .liste-produits.thumbnails .produit-code,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .produit-code {
    width: 35.62386980108499%;
    margin-right: 3.616636528028933%;
  }
  .liste-produits.thumbnails .produit-stock,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .produit-stock {
    width: 100%;
    border: 0;
    margin: 0;
    padding: 0;
  }
  .liste-produits.thumbnails .produit-actions,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .produit-actions {
    width: 97.98%;
    margin-right: 0;
  }
  .liste-produits.thumbnails .produit-prix,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .produit-prix {
    text-align: right;
    width: 100%;
    margin: 0;
    align-self: flex-end;
  }
  .liste-produits.thumbnails .prix-container,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .prix-container {
    display: flex;
    text-align: left;
    flex-flow: row-reverse wrap;
  }
  .liste-produits.thumbnails .price-bloc,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .price-bloc {
    width: 49%;
  }
  .liste-produits.thumbnails .price-bloc + .price-bloc,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .price-bloc + .price-bloc {
    margin: 0 2% 0 0;
  }
  .liste-produits.thumbnails .price-bloc.first,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .price-bloc.first {
    background-color: #f6f6f6;
    padding: 1rem 1.5rem;
    box-sizing: border-box;
  }
  .liste-produits.thumbnails .infotypes-wrap,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .infotypes-wrap {
    margin-top: 0.8rem;
    padding: 0;
    border: 0;
  }
  .liste-produits.thumbnails .infosTypes li,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .infosTypes li {
    margin-right: 0.8rem;
  }
  .liste-produits.thumbnails .conditionnement,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .conditionnement {
    width: 100%;
    border-bottom: 1px solid #cecece;
    padding: 2rem 0;
    margin: 2rem 0;
  }
  .liste-produits.thumbnails .image-inner,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .image-inner {
    width: 12.2rem;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier {
    width: 100%;
    margin: 1.5rem 0 0;
    flex-direction: column;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .box-panier,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .box-panier {
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .quantite,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .quantite {
    width: 52.58426966292135%;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .quantiteCalculateur,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .quantiteCalculateur {
    width: 40.44943820224719%;
    margin-left: 10px;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .quantiteCalculateur input,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .quantiteCalculateur input {
    margin: 0;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .quantite .qte,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .quantite .qte {
    margin-bottom: 0;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .actions,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .actions {
    padding-top: 0;
    display: flex;
    width: 100%;
    justify-content: space-between;
    margin-top: 10px;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .btn-ajouter-au-panier,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .btn-ajouter-au-panier {
    min-width: inherit;
    width: 100%;
    margin: 0;
    height: 4rem;
    line-height: 2rem;
    box-sizing: border-box;
    padding: 1rem;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .liste-achat-plugin,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .liste-achat-plugin {
    width: 100%;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .bouton-ajout-produit-liste,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .bouton-ajout-produit-liste {
    width: 100%;
    height: 4rem;
    margin: 0;
    min-width: inherit;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .bouton-ajout-produit-liste:before,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .bouton-ajout-produit-liste:before {
    text-indent: 0;
    float: left;
    margin: 0;
  }
}

.liste-produits.thumbnails .liste-achat-plugin .sousmenu-ajout-produit-liste,
.TPL_FICHE_PRODUIT .liste-produits.thumbnails .liste-achat-plugin .sousmenu-ajout-produit-liste {
  left: -168px;
}

.liste-produits.thumbnails .liste-achat-plugin .ajouter-a-la-liste::after,
.TPL_FICHE_PRODUIT .liste-produits.thumbnails .liste-achat-plugin .ajouter-a-la-liste::after {
  left: 93%;
}

@media screen and (max-width: 1850px) and (min-width: 1441px) {
  .liste-produits.thumbnails .liste-achat-plugin .ajouter-a-la-liste,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .liste-achat-plugin .ajouter-a-la-liste {
    top: 0;
    left: -50px;
  }
}

@media screen and (max-width: 1310px) and (min-width: 1024px) {
  .liste-produits.thumbnails .liste-achat-plugin .ajouter-a-la-liste,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .liste-achat-plugin .ajouter-a-la-liste {
    top: 0;
    left: -50px;
  }
}

.liste-produits.thumbnails .interweb-stocks,
.TPL_FICHE_PRODUIT .liste-produits.thumbnails .interweb-stocks {
  margin: 20px -10px -20px;
  flex-direction: column;
}

@media (max-width: 1440px) {
  .liste-produits.thumbnails .interweb-stocks,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .interweb-stocks {
    display: flex;
    flex-direction: column;
  }
  .liste-produits.thumbnails .interweb-stocks .btn-voir-stocks,
  .liste-produits.thumbnails .interweb-stocks .stocks,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .interweb-stocks .btn-voir-stocks,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .interweb-stocks .stocks {
    float: none;
  }
  .liste-produits.thumbnails .interweb-stocks .btn-voir-stocks,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .interweb-stocks .btn-voir-stocks {
    line-height: 1;
    padding: 14px 25px 14px 50px;
  }
}

@media (max-width: 1024px) {
  .liste-produits.thumbnails .interweb-stocks,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .interweb-stocks {
    margin-bottom: 0;
  }
  .liste-produits.thumbnails .interweb-stocks .btn-voir-stocks:after,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .interweb-stocks .btn-voir-stocks:after {
    content: "\f078";
  }
  .liste-produits.thumbnails .interweb-stocks .btn-voir-stocks.active::after,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .interweb-stocks .btn-voir-stocks.active::after {
    content: '\f077';
  }
}

@media (min-width: 1441px) {
  .liste-produits.thumbnails .produit-gauche,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .produit-gauche {
    width: calc(100% - 14.2rem);
  }
  .liste-produits.thumbnails .produit-droite,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .produit-droite {
    justify-content: flex-end;
  }
  .liste-produits.thumbnails .produit-code,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .produit-code {
    width: 31.64556962025316%;
    margin-right: 1.808318264014467%;
  }
  .liste-produits.thumbnails .produit-stock,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .produit-stock {
    width: 66.54611211573237%;
  }
  .liste-produits.thumbnails .produit-actions,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .produit-actions {
    width: inherit;
    margin-right: 0;
  }
  .liste-produits.thumbnails .produit-prix,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .produit-prix {
    padding-left: 14.4rem;
    box-sizing: border-box;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier {
    flex-direction: row;
    align-items: flex-end;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .box-panier,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .box-panier {
    width: calc(100% - 26.2rem);
    justify-content: flex-end;
    align-items: flex-end;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .quantite,
  .liste-produits.thumbnails .ajouter-produit-au-panier .quantiteCalculateur,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .quantite,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .quantiteCalculateur {
    width: 47.64150943396226%;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .actions,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .actions {
    width: auto;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .btn-ajouter-au-panier,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .btn-ajouter-au-panier {
    width: 20.2rem;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .liste-achat-plugin,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .liste-achat-plugin {
    width: 4rem;
    margin-left: 1rem;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .bouton-ajout-produit-liste,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .bouton-ajout-produit-liste {
    width: 4rem;
    margin: 0;
    text-indent: -9999px;
  }
}

@media (max-width: 1440px) and (min-width: 1025px) {
  .liste-produits.thumbnails .image,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .image {
    position: absolute;
  }
  .liste-produits.thumbnails .produit-gauche,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .produit-gauche {
    width: 100%;
    flex-direction: column;
    justify-content: flex-start;
  }
  .liste-produits.thumbnails .produit-code,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .produit-code {
    padding-left: 14.4rem;
    width: 100%;
    margin: 0;
    box-sizing: border-box;
  }
  .liste-produits.thumbnails .produit-stock,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .produit-stock {
    width: 100%;
  }
  .liste-produits.thumbnails .produit-stock .stock-plus .stock-liste,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .produit-stock .stock-plus .stock-liste {
    width: 48%;
    padding-right: 2rem;
  }
  .liste-produits.thumbnails .produit-prix,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .produit-prix {
    width: 100%;
  }
  .liste-produits.thumbnails .infotypes-wrap,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .infotypes-wrap {
    margin: 20px 0;
  }
  .liste-produits.thumbnails .conditionnement,
  .liste-produits.thumbnails .more-options,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .conditionnement,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .more-options {
    padding: 20px 0;
    margin: 20px 0;
    border-bottom: 1px solid #cecece;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier {
    flex-direction: column;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .box-panier,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .box-panier {
    width: 100%;
    margin-bottom: 1rem;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .quantite,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .quantite {
    width: 49%;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .quantiteCalculateur,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .quantiteCalculateur {
    width: 49%;
    margin-left: 2%;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .actions,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .actions {
    width: 100%;
    align-items: initial;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier button,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier button {
    margin: 0;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .btn-ajouter-au-panier,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .btn-ajouter-au-panier {
    width: 49%;
    height: 100%;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .bouton-ajout-produit-liste,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .bouton-ajout-produit-liste {
    width: 100%;
    text-indent: 0;
    margin: 0;
    min-width: inherit;
    height: 100%;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .bouton-ajout-produit-liste:before,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .bouton-ajout-produit-liste:before {
    float: none;
    margin-right: 8px;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .liste-achat-plugin,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .liste-achat-plugin {
    width: 49%;
    margin-left: 2%;
  }
  .liste-produits.thumbnails .ajouter-produit-au-panier .liste-achat-plugin .ajouter-a-la-liste,
  .TPL_FICHE_PRODUIT .liste-produits.thumbnails .ajouter-produit-au-panier .liste-achat-plugin .ajouter-a-la-liste {
    left: -10px;
  }
}

/* ===================================================================
 * AJOUTER AU LISTE D'ACHAT POPUP
 * =================================================================*/
.liste-achat-plugin {
  position: relative;
}

.liste-achat-plugin .sousmenu-ajout-produit-liste {
  left: 0;
  width: 100%;
  position: absolute;
  text-align: center;
  z-index: 2;
}

@media screen and (max-width: 767px) {
  .liste-achat-plugin .sousmenu-ajout-produit-liste {
    left: -217px;
  }
}

.liste-achat-plugin .ajouter-a-la-liste {
  background: #003160;
  box-sizing: border-box;
  padding: 34px 20px 10px;
  width: 265px;
  margin: 10px 0 0;
  color: #fff;
  text-align: left;
  position: relative;
}

.liste-achat-plugin .ajouter-a-la-liste::after {
  bottom: 95%;
  left: 50%;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-style: solid;
  border-color: rgba(80, 107, 125, 0);
  border-bottom-color: #003160;
  border-width: 10px;
  margin-left: -10px;
  top: -20px;
}

@media screen and (max-width: 767px) {
  .liste-achat-plugin .ajouter-a-la-liste::after {
    left: 93%;
  }
}

.liste-achat-plugin .ajouter-a-la-liste a {
  color: #fff;
}

.liste-achat-plugin .ajouter-a-la-liste .close-ajout-produit-liste {
  position: absolute;
  right: 1rem;
  top: 1rem;
  text-indent: -9999px;
  width: 2.4rem;
  height: 2.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.liste-achat-plugin .ajouter-a-la-liste .close-ajout-produit-liste:before {
  content: '\f00d';
  float: left;
  text-indent: 0;
  font-size: 1rem;
}

.liste-achat-plugin .ajouter-a-la-liste .listes {
  margin-bottom: 10px;
  position: relative;
  padding: 0 1rem 0 2.8rem;
}

.liste-achat-plugin .ajouter-a-la-liste .listes::before {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  content: "\e913";
  left: 0;
}

.liste-achat-plugin .ajouter-a-la-liste .listes .nbre {
  display: block;
  color: #82aa37;
  font-size: 1.3rem;
  line-height: 1.75rem;
}

.liste-achat-plugin .ajouter-a-la-liste input[type="text"], .liste-achat-plugin .ajouter-a-la-liste .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .liste-achat-plugin .ajouter-a-la-liste input[type="date"], .liste-achat-plugin .ajouter-a-la-liste .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .liste-achat-plugin .ajouter-a-la-liste input[type="date"], .liste-achat-plugin .ajouter-a-la-liste .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .liste-achat-plugin .ajouter-a-la-liste input[type="date"] {
  padding: 10px 5px;
  margin: 5px 0;
  color: #004462;
}

.liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste {
  min-width: 100%;
}

.liste-achat-plugin .ajouter-a-la-liste .overflow {
  height: 194px;
  margin-bottom: 20px;
  margin-right: -20px;
  padding-right: 20px;
  font-size: 1.6rem;
  line-height: 2.4rem;
  overflow-y: auto;
  scrollbar-width: thin;
}

.liste-achat-plugin .ajouter-a-la-liste .overflow::-webkit-scrollbar {
  width: 9px;
  background: #F0F0F0;
}

.liste-achat-plugin .ajouter-a-la-liste .overflow::-webkit-scrollbar-thumb {
  background: #CDCDCD;
}

.liste-achat-plugin .ajouter-a-la-liste h4 {
  font-size: 1.7rem;
  line-height: 2.3rem;
  color: #fff;
  text-align: center;
}

.liste-achat-plugin .ajouter-a-la-liste .showNouvelleListe {
  min-width: 100%;
  padding-top: 15px;
  border-top: 1px dashed #fff;
  margin: 0 -1rem;
}

.liste-achat-plugin .ajouter-a-la-liste .showNouvelleListe span {
  box-sizing: border-box;
  min-width: inherit;
  text-align: center;
  width: 100%;
  cursor: pointer;
  font-size: 1.4rem;
  padding: 10px 20px;
  letter-spacing: 0.06em;
  line-height: 2rem;
}

.liste-achat-plugin .ajouter-a-la-liste .toggleAjouterANouvelleListe {
  display: none;
}

.liste-achat-plugin .liste-achat-ajouter-a-nouvelle-liste > div > form {
  padding: 0;
}

@media screen and (max-width: 1024px) {
  .liste-achat-plugin .close-ajout-produit-liste {
    padding: 0 10px 10px 10px;
    font-size: 1.118em;
  }
}

/* ===================================================================
 * PRODUITS PANIER
 * =================================================================*/
.TPL_PANIER #ficheCommande .liste-produits .actions-panier {
  margin-top: 1.5rem;
}

.TPL_PANIER #ficheCommande .liste-produits .price-bloc {
  background: none;
  padding: 0;
}

.TPL_PANIER #ficheCommande .liste-produits .actions-panier .pallier {
  display: block;
}

@media (min-width: 1441px) {
  .TPL_PANIER #ficheCommande .liste-produits .produit-code {
    width: 23.87878787878788%;
    margin-right: 15.39393939393939%;
  }
  .TPL_PANIER #ficheCommande .liste-produits .produit-stock {
    width: 45.09090909090909%;
    margin-right: 15.39393939393939%;
  }
  .TPL_PANIER #ficheCommande .liste-produits .produit-prix {
    width: 33.59893758300133%;
    margin-right: 10.62416998671979%;
  }
  .TPL_PANIER #ficheCommande .liste-produits .actions-panier {
    margin: 0 0 5px;
    padding: 0;
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    width: 55.77689243027888%;
  }
  .TPL_PANIER #ficheCommande .liste-produits .actions-panier .quantite {
    width: 49%;
    margin-right: 2%;
  }
  .TPL_PANIER #ficheCommande .liste-produits .actions-panier .no-actions {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
  }
  .TPL_PANIER #ficheCommande .liste-produits .actions-panier .no-actions .ajouter-produit-au-panier {
    width: 49%;
    margin-right: 2%;
  }
  .TPL_PANIER #ficheCommande .liste-produits .actions-panier .no-actions .box-panier,
  .TPL_PANIER #ficheCommande .liste-produits .actions-panier .no-actions .quantite {
    width: 100%;
    margin: 0;
  }
  .TPL_PANIER #ficheCommande .liste-produits .montant-total-ligne {
    width: 49%;
    align-self: center;
  }
}

/* ===================================================================
 * LISTE ACHAT ET DEVIS ET PANIERS PASSES
 * =================================================================*/
@media (min-width: 1441px) {
  #ficheCommande .liste-produits .montant-total-ligne + .btn-ajouter-au-panier {
    margin-top: 2rem;
  }
  #ficheCommande .liste-produits .ajouter-produit-au-panier {
    flex-flow: row wrap;
    align-items: center;
  }
  #ficheCommande .liste-produits .ajouter-produit-au-panier:has(.btn-cant-order) {
    flex-direction: column;
    align-items: center;
    width: 190px;
    margin-left: auto;
  }
  #ficheCommande .liste-produits .produit-code {
    width: 33.16498316498316%;
    margin-right: 2.5%;
  }
  #ficheCommande .liste-produits .produit-stock {
    width: 59.42760942760943%;
    margin-right: 2.5%;
  }
  #ficheCommande .liste-produits .produit-prix {
    width: 37.42424242424242%;
    margin-right: 1.515151515151515%;
    align-self: center;
  }
}

@media (max-width: 1440px) {
  #ficheCommande .liste-produits .montant-total-ligne {
    margin-bottom: 1rem;
  }
}

@media (max-width: 1024px) {
  #ficheCommande .liste-produits .ajouter-produit-au-panier .quantite,
  #ficheCommande .liste-produits .ajouter-produit-au-panier .quantiteCalculateur,
  #ficheCommande .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier {
    width: 100%;
  }
  #ficheCommande .liste-produits .ajouter-produit-au-panier .actions {
    flex-direction: column;
    margin-bottom: 1rem;
  }
}

@media screen and (min-width: 1441px) {
  .TPL_ORCAB_FICHE_DEVIS_BONS .liste-produits .no-actions,
  .TPL_ORCAB_SUIVI_DEVIS_BONS .liste-produits .no-actions {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;
  }
  .TPL_ORCAB_FICHE_DEVIS_BONS .liste-produits .no-actions .ajouter-produit-au-panier,
  .TPL_ORCAB_SUIVI_DEVIS_BONS .liste-produits .no-actions .ajouter-produit-au-panier {
    width: 49.39759036144578%;
  }
  .TPL_ORCAB_FICHE_DEVIS_BONS .liste-produits .no-actions .ajouter-produit-au-panier .box-panier,
  .TPL_ORCAB_SUIVI_DEVIS_BONS .liste-produits .no-actions .ajouter-produit-au-panier .box-panier {
    width: 100%;
  }
  .TPL_ORCAB_FICHE_DEVIS_BONS .liste-produits .no-actions .montant-total-ligne,
  .TPL_ORCAB_SUIVI_DEVIS_BONS .liste-produits .no-actions .montant-total-ligne {
    width: 43.37349397590361%;
  }
}

/* ===================================================================
 * TEMPLATE PRODUITS MISE EN AVANT ET PRODUIT COMPLEMENTAIRE
 * =================================================================*/
.TPL_PRODUITS_MIS_EN_AVANT .liste_produit_form_tri,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste_produit_form_tri,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste_produit_form_tri,
.TPL_TOP_VENTE_PRODUITS .liste_produit_form_tri,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste_produit_form_tri,
.TPL_NOUVEAUX_PRODUITS .liste_produit_form_tri {
  text-align: right;
}

.TPL_PRODUITS_MIS_EN_AVANT .pag > span > a:not(:first-child),
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .pag > span > a:not(:first-child),
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .pag > span > a:not(:first-child),
.TPL_TOP_VENTE_PRODUITS .pag > span > a:not(:first-child),
.TPL_LISTE_PRODUITS_EN_PROMOTION .pag > span > a:not(:first-child),
.TPL_NOUVEAUX_PRODUITS .pag > span > a:not(:first-child) {
  display: none;
}

.TPL_PRODUITS_MIS_EN_AVANT .bx-viewport,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .bx-viewport,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .bx-viewport,
.TPL_TOP_VENTE_PRODUITS .bx-viewport,
.TPL_LISTE_PRODUITS_EN_PROMOTION .bx-viewport,
.TPL_NOUVEAUX_PRODUITS .bx-viewport {
  padding-bottom: 10px;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits,
.TPL_TOP_VENTE_PRODUITS .liste-produits,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits,
.TPL_NOUVEAUX_PRODUITS .liste-produits {
  display: flex;
  flex-direction: row;
  justify-content: center;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .liste-produit-item,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .liste-produit-item,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .liste-produit-item,
.TPL_TOP_VENTE_PRODUITS .liste-produits .liste-produit-item,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .liste-produit-item,
.TPL_NOUVEAUX_PRODUITS .liste-produits .liste-produit-item {
  min-height: 415px;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .liste-produit-item h2, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .liste-produit-item .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .liste-produit-item h1, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .liste-produit-item .fiche-adherent h1, .fiche-adherent .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .liste-produit-item h1,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .liste-produit-item h2,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .liste-produit-item .TPL_FICHE_PRODUIT .titre-produit h1,
.TPL_FICHE_PRODUIT .titre-produit .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .liste-produit-item h1,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .liste-produit-item .fiche-adherent h1,
.fiche-adherent .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .liste-produit-item h1,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .liste-produit-item h2,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .liste-produit-item .TPL_FICHE_PRODUIT .titre-produit h1,
.TPL_FICHE_PRODUIT .titre-produit .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .liste-produit-item h1,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .liste-produit-item .fiche-adherent h1,
.fiche-adherent .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .liste-produit-item h1,
.TPL_TOP_VENTE_PRODUITS .liste-produits .liste-produit-item h2,
.TPL_TOP_VENTE_PRODUITS .liste-produits .liste-produit-item .TPL_FICHE_PRODUIT .titre-produit h1,
.TPL_FICHE_PRODUIT .titre-produit .TPL_TOP_VENTE_PRODUITS .liste-produits .liste-produit-item h1,
.TPL_TOP_VENTE_PRODUITS .liste-produits .liste-produit-item .fiche-adherent h1,
.fiche-adherent .TPL_TOP_VENTE_PRODUITS .liste-produits .liste-produit-item h1,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .liste-produit-item h2,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .liste-produit-item .TPL_FICHE_PRODUIT .titre-produit h1,
.TPL_FICHE_PRODUIT .titre-produit .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .liste-produit-item h1,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .liste-produit-item .fiche-adherent h1,
.fiche-adherent .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .liste-produit-item h1,
.TPL_NOUVEAUX_PRODUITS .liste-produits .liste-produit-item h2,
.TPL_NOUVEAUX_PRODUITS .liste-produits .liste-produit-item .TPL_FICHE_PRODUIT .titre-produit h1,
.TPL_FICHE_PRODUIT .titre-produit .TPL_NOUVEAUX_PRODUITS .liste-produits .liste-produit-item h1,
.TPL_NOUVEAUX_PRODUITS .liste-produits .liste-produit-item .fiche-adherent h1,
.fiche-adherent .TPL_NOUVEAUX_PRODUITS .liste-produits .liste-produit-item h1 {
  max-width: inherit;
  margin-top: 10px;
  margin-bottom: 0;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .liste-produit-item .inner-item,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .liste-produit-item .inner-item,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .liste-produit-item .inner-item,
.TPL_TOP_VENTE_PRODUITS .liste-produits .liste-produit-item .inner-item,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .liste-produit-item .inner-item,
.TPL_NOUVEAUX_PRODUITS .liste-produits .liste-produit-item .inner-item {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .liste-produit-item.with-interweb,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .liste-produit-item.with-interweb,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .liste-produit-item.with-interweb,
.TPL_TOP_VENTE_PRODUITS .liste-produits .liste-produit-item.with-interweb,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .liste-produit-item.with-interweb,
.TPL_NOUVEAUX_PRODUITS .liste-produits .liste-produit-item.with-interweb {
  padding-bottom: 20px;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .liste-details,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .liste-details,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .liste-details,
.TPL_TOP_VENTE_PRODUITS .liste-produits .liste-details,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .liste-details,
.TPL_NOUVEAUX_PRODUITS .liste-produits .liste-details {
  flex-flow: row wrap;
  flex: 1;
  height: 100% !important;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .prix-public-ttc,
.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .prix-net-ht,
.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajout-comparateur,
.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .interweb-stocks,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .prix-public-ttc,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .prix-net-ht,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajout-comparateur,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .interweb-stocks,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .prix-public-ttc,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .prix-net-ht,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajout-comparateur,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .interweb-stocks,
.TPL_TOP_VENTE_PRODUITS .liste-produits .prix-public-ttc,
.TPL_TOP_VENTE_PRODUITS .liste-produits .prix-net-ht,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajout-comparateur,
.TPL_TOP_VENTE_PRODUITS .liste-produits .interweb-stocks,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .prix-public-ttc,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .prix-net-ht,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajout-comparateur,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .interweb-stocks,
.TPL_NOUVEAUX_PRODUITS .liste-produits .prix-public-ttc,
.TPL_NOUVEAUX_PRODUITS .liste-produits .prix-net-ht,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajout-comparateur,
.TPL_NOUVEAUX_PRODUITS .liste-produits .interweb-stocks {
  display: none;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .produit-code span,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .produit-code span,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .produit-code span,
.TPL_TOP_VENTE_PRODUITS .liste-produits .produit-code span,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .produit-code span,
.TPL_NOUVEAUX_PRODUITS .liste-produits .produit-code span {
  word-break: break-all;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .image,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .image,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .image,
.TPL_TOP_VENTE_PRODUITS .liste-produits .image,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .image,
.TPL_NOUVEAUX_PRODUITS .liste-produits .image {
  position: relative;
  width: 100%;
  margin: 0;
  max-width: 100%;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .image, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .image .image-inner, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .image .image-inner .image-produit,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .image,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .image .image-inner,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .image .image-inner .image-produit,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .image,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .image .image-inner,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .image .image-inner .image-produit,
.TPL_TOP_VENTE_PRODUITS .liste-produits .image,
.TPL_TOP_VENTE_PRODUITS .liste-produits .image .image-inner,
.TPL_TOP_VENTE_PRODUITS .liste-produits .image .image-inner .image-produit,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .image,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .image .image-inner,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .image .image-inner .image-produit,
.TPL_NOUVEAUX_PRODUITS .liste-produits .image,
.TPL_NOUVEAUX_PRODUITS .liste-produits .image .image-inner,
.TPL_NOUVEAUX_PRODUITS .liste-produits .image .image-inner .image-produit {
  height: 15rem;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .produit-gauche,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .produit-gauche,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .produit-gauche,
.TPL_TOP_VENTE_PRODUITS .liste-produits .produit-gauche,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .produit-gauche,
.TPL_NOUVEAUX_PRODUITS .liste-produits .produit-gauche {
  width: 100%;
  flex-direction: column;
  justify-content: flex-start;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .produit-droite,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .produit-droite,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .produit-droite,
.TPL_TOP_VENTE_PRODUITS .liste-produits .produit-droite,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .produit-droite,
.TPL_NOUVEAUX_PRODUITS .liste-produits .produit-droite {
  flex-direction: column;
  width: 100%;
  justify-content: flex-end;
  margin-top: 0 !important;
  align-items: flex-start;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .produit-code,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .produit-code,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .produit-code,
.TPL_TOP_VENTE_PRODUITS .liste-produits .produit-code,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .produit-code,
.TPL_NOUVEAUX_PRODUITS .liste-produits .produit-code {
  width: 100%;
  box-sizing: border-box;
  margin: 1.5rem 0;
  min-height: auto !important;
  padding: 0;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .produit-stock,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .produit-stock,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .produit-stock,
.TPL_TOP_VENTE_PRODUITS .liste-produits .produit-stock,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .produit-stock,
.TPL_NOUVEAUX_PRODUITS .liste-produits .produit-stock {
  width: 100%;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .produit-prix,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .produit-prix,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .produit-prix,
.TPL_TOP_VENTE_PRODUITS .liste-produits .produit-prix,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .produit-prix,
.TPL_NOUVEAUX_PRODUITS .liste-produits .produit-prix {
  width: 100%;
  margin: 0;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .produit-actions,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .produit-actions,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .produit-actions,
.TPL_TOP_VENTE_PRODUITS .liste-produits .produit-actions,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .produit-actions,
.TPL_NOUVEAUX_PRODUITS .liste-produits .produit-actions {
  width: 97.98%;
  margin-right: 0;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .infotypes-wrap,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .infotypes-wrap,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .infotypes-wrap,
.TPL_TOP_VENTE_PRODUITS .liste-produits .infotypes-wrap,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .infotypes-wrap,
.TPL_NOUVEAUX_PRODUITS .liste-produits .infotypes-wrap {
  border: 0;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .conditionnement,
.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .more-options,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .conditionnement,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .more-options,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .conditionnement,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .more-options,
.TPL_TOP_VENTE_PRODUITS .liste-produits .conditionnement,
.TPL_TOP_VENTE_PRODUITS .liste-produits .more-options,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .conditionnement,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .more-options,
.TPL_NOUVEAUX_PRODUITS .liste-produits .conditionnement,
.TPL_NOUVEAUX_PRODUITS .liste-produits .more-options {
  padding: 20px 0;
  margin: 20px 0;
  border-bottom: 1px solid #cecece;
  width: 100%;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier {
  width: 100%;
  margin: 1.5rem 0 0;
  flex-direction: column;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .box-panier,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .box-panier,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .box-panier,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .box-panier,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .box-panier,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .box-panier {
  width: 100%;
  margin-bottom: 1rem;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions {
  width: 100%;
  align-items: initial;
  display: flex;
}

@media screen and (max-width: 1024px) {
  .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions,
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions,
  .TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions,
  .TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions {
    justify-content: flex-start;
  }
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier button,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier button,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier button,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier button,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier button,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier button {
  margin: 0;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier {
  min-width: inherit;
  margin: 0;
  height: 4rem;
  line-height: 2rem;
  box-sizing: border-box;
  padding: 1rem;
  width: 49%;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste {
  width: 100%;
  margin: 0;
  min-width: inherit;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste:before,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste:before,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste:before,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste:before,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste:before,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste:before {
  float: none;
  margin-right: 8px;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .liste-achat-plugin,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .liste-achat-plugin,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .liste-achat-plugin,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .liste-achat-plugin,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .liste-achat-plugin,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .liste-achat-plugin {
  width: 49%;
  margin-left: 2%;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .liste-achat-plugin .ajouter-a-la-liste,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .liste-achat-plugin .ajouter-a-la-liste,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .liste-achat-plugin .ajouter-a-la-liste,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .liste-achat-plugin .ajouter-a-la-liste,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .liste-achat-plugin .ajouter-a-la-liste,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .liste-achat-plugin .ajouter-a-la-liste {
  left: -10px;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste,
.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier,
.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .quantiteAlreadyInPanier span,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .quantiteAlreadyInPanier span,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .quantiteAlreadyInPanier span,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .quantiteAlreadyInPanier span,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .quantiteAlreadyInPanier span,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .quantiteAlreadyInPanier span {
  height: 4rem;
  text-indent: -999999px;
  display: flex;
  justify-content: center;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste:before,
.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier:before,
.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .quantiteAlreadyInPanier span:before,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste:before,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier:before,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .quantiteAlreadyInPanier span:before,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste:before,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier:before,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .quantiteAlreadyInPanier span:before,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste:before,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier:before,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .quantiteAlreadyInPanier span:before,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste:before,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier:before,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .quantiteAlreadyInPanier span:before,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .bouton-ajout-produit-liste:before,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .btn-ajouter-au-panier:before,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .quantiteAlreadyInPanier span:before {
  text-indent: 0;
  float: left;
  margin: 0;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-vert, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .form-submit button, .form-submit .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison button,
.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .form-submit input[type="submit"], .form-submit .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison input[type="submit"], .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-bleu, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-imprimer, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-imprimer, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison a.voir-produit, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .materiel-print-btn a, .materiel-print-btn .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison a, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .materiel-planning-pdf a, .materiel-planning-pdf .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison a, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-gris, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-rouge, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-retour, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-rechercher, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-ajouter-au-panier,
.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-liste-achat-activate, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison a, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-ajouter-liste, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-submit,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-vert,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .form-submit button,
.form-submit .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison button,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .form-submit input[type="submit"],
.form-submit .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison input[type="submit"],
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-bleu,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer,
.TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-imprimer,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .lignes-retour-wrap .form-submit .btn-imprimer,
.lignes-retour-wrap .form-submit .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-imprimer,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .TPL_COMPARATEUR .action a.voir-produit,
.TPL_COMPARATEUR .action .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison a.voir-produit,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .materiel-print-btn a,
.materiel-print-btn .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison a,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .materiel-planning-pdf a,
.materiel-planning-pdf .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison a,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-gris,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-rouge,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-retour,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-rechercher,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-ajouter-au-panier,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-liste-achat-activate,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .ressources-associees li.lien-tous a,
.ressources-associees li.lien-tous .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison a,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste,
.liste-achat-plugin .ajouter-a-la-liste .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-ajouter-liste,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .TPL_FICHE_PRODUIT .btn-submit,
.TPL_FICHE_PRODUIT .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-submit,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-vert,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .form-submit button,
.form-submit .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison button,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .form-submit input[type="submit"],
.form-submit .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison input[type="submit"],
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-bleu,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer,
.TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-imprimer,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .lignes-retour-wrap .form-submit .btn-imprimer,
.lignes-retour-wrap .form-submit .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-imprimer,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .TPL_COMPARATEUR .action a.voir-produit,
.TPL_COMPARATEUR .action .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison a.voir-produit,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .materiel-print-btn a,
.materiel-print-btn .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison a,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .materiel-planning-pdf a,
.materiel-planning-pdf .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison a,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-gris,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-rouge,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-retour,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-rechercher,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-ajouter-au-panier,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-liste-achat-activate,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .ressources-associees li.lien-tous a,
.ressources-associees li.lien-tous .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison a,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste,
.liste-achat-plugin .ajouter-a-la-liste .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-ajouter-liste,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .TPL_FICHE_PRODUIT .btn-submit,
.TPL_FICHE_PRODUIT .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-submit,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-vert,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .form-submit button,
.form-submit .TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison button,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .form-submit input[type="submit"],
.form-submit .TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison input[type="submit"],
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-bleu,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer,
.TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-imprimer,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .lignes-retour-wrap .form-submit .btn-imprimer,
.lignes-retour-wrap .form-submit .TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-imprimer,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .TPL_COMPARATEUR .action a.voir-produit,
.TPL_COMPARATEUR .action .TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison a.voir-produit,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .materiel-print-btn a,
.materiel-print-btn .TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison a,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .materiel-planning-pdf a,
.materiel-planning-pdf .TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison a,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-gris,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-rouge,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-retour,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-rechercher,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-ajouter-au-panier,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-liste-achat-activate,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .ressources-associees li.lien-tous a,
.ressources-associees li.lien-tous .TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison a,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste,
.liste-achat-plugin .ajouter-a-la-liste .TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-ajouter-liste,
.TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .TPL_FICHE_PRODUIT .btn-submit,
.TPL_FICHE_PRODUIT .TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-submit,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-vert,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .form-submit button,
.form-submit .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison button,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .form-submit input[type="submit"],
.form-submit .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison input[type="submit"],
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-bleu,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer,
.TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-imprimer,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .lignes-retour-wrap .form-submit .btn-imprimer,
.lignes-retour-wrap .form-submit .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-imprimer,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .TPL_COMPARATEUR .action a.voir-produit,
.TPL_COMPARATEUR .action .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison a.voir-produit,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .materiel-print-btn a,
.materiel-print-btn .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison a,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .materiel-planning-pdf a,
.materiel-planning-pdf .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison a,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-gris,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-rouge,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-retour,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-rechercher,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-ajouter-au-panier,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-liste-achat-activate,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .ressources-associees li.lien-tous a,
.ressources-associees li.lien-tous .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison a,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste,
.liste-achat-plugin .ajouter-a-la-liste .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-ajouter-liste,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .TPL_FICHE_PRODUIT .btn-submit,
.TPL_FICHE_PRODUIT .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-submit,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-vert,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .form-submit button,
.form-submit .TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison button,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .form-submit input[type="submit"],
.form-submit .TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison input[type="submit"],
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-bleu,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer,
.TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-imprimer,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .lignes-retour-wrap .form-submit .btn-imprimer,
.lignes-retour-wrap .form-submit .TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-imprimer,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .TPL_COMPARATEUR .action a.voir-produit,
.TPL_COMPARATEUR .action .TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison a.voir-produit,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .materiel-print-btn a,
.materiel-print-btn .TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison a,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .materiel-planning-pdf a,
.materiel-planning-pdf .TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison a,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-gris,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-rouge,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-retour,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .bouton-rechercher,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-ajouter-au-panier,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-liste-achat-activate,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .ressources-associees li.lien-tous a,
.ressources-associees li.lien-tous .TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison a,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste,
.liste-achat-plugin .ajouter-a-la-liste .TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-ajouter-liste,
.TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .TPL_FICHE_PRODUIT .btn-submit,
.TPL_FICHE_PRODUIT .TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .actions-declinaison .btn-submit {
  margin-bottom: 0;
}

@media (max-width: 1024px) {
  .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .produit-prix .prix-container,
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .produit-prix .prix-container,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .produit-prix .prix-container,
  .TPL_TOP_VENTE_PRODUITS .liste-produits .produit-prix .prix-container,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .produit-prix .prix-container,
  .TPL_NOUVEAUX_PRODUITS .liste-produits .produit-prix .prix-container {
    display: block;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .price-bloc,
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .price-bloc,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .price-bloc,
  .TPL_TOP_VENTE_PRODUITS .liste-produits .price-bloc,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .price-bloc,
  .TPL_NOUVEAUX_PRODUITS .liste-produits .price-bloc {
    width: 100%;
    padding: 0;
    background-color: initial;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-produit-au-panier .box-panier .quantite,
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .ajouter-produit-au-panier .box-panier .quantite,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-produit-au-panier .box-panier .quantite,
  .TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-produit-au-panier .box-panier .quantite,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-produit-au-panier .box-panier .quantite,
  .TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-produit-au-panier .box-panier .quantite {
    width: 100%;
  }
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-achat-plugin .sousmenu-ajout-produit-liste,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-achat-plugin .sousmenu-ajout-produit-liste,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-achat-plugin .sousmenu-ajout-produit-liste,
.TPL_TOP_VENTE_PRODUITS .liste-achat-plugin .sousmenu-ajout-produit-liste,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-achat-plugin .sousmenu-ajout-produit-liste,
.TPL_NOUVEAUX_PRODUITS .liste-achat-plugin .sousmenu-ajout-produit-liste {
  width: 330px;
  left: -155px;
  top: 65px;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-achat-plugin .ajouter-a-la-liste,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-achat-plugin .ajouter-a-la-liste,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-achat-plugin .ajouter-a-la-liste,
.TPL_TOP_VENTE_PRODUITS .liste-achat-plugin .ajouter-a-la-liste,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-achat-plugin .ajouter-a-la-liste,
.TPL_NOUVEAUX_PRODUITS .liste-achat-plugin .ajouter-a-la-liste {
  margin: 0;
  top: -340px;
  width: inherit;
  left: 0;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-achat-plugin .ajouter-a-la-liste.new,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-achat-plugin .ajouter-a-la-liste.new,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-achat-plugin .ajouter-a-la-liste.new,
.TPL_TOP_VENTE_PRODUITS .liste-achat-plugin .ajouter-a-la-liste.new,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-achat-plugin .ajouter-a-la-liste.new,
.TPL_NOUVEAUX_PRODUITS .liste-achat-plugin .ajouter-a-la-liste.new {
  top: -250px;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-achat-plugin .ajouter-a-la-liste::after,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-achat-plugin .ajouter-a-la-liste::after,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-achat-plugin .ajouter-a-la-liste::after,
.TPL_TOP_VENTE_PRODUITS .liste-achat-plugin .ajouter-a-la-liste::after,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-achat-plugin .ajouter-a-la-liste::after,
.TPL_NOUVEAUX_PRODUITS .liste-achat-plugin .ajouter-a-la-liste::after {
  left: 67%;
  top: 100%;
  border-top-color: #004462;
  border-bottom-color: rgba(80, 107, 125, 0);
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-achat-plugin ::-webkit-scrollbar,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-achat-plugin ::-webkit-scrollbar,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-achat-plugin ::-webkit-scrollbar,
.TPL_TOP_VENTE_PRODUITS .liste-achat-plugin ::-webkit-scrollbar,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-achat-plugin ::-webkit-scrollbar,
.TPL_NOUVEAUX_PRODUITS .liste-achat-plugin ::-webkit-scrollbar {
  width: 0;
  height: 10px;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-achat-plugin .overflow,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-achat-plugin .overflow,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-achat-plugin .overflow,
.TPL_TOP_VENTE_PRODUITS .liste-achat-plugin .overflow,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-achat-plugin .overflow,
.TPL_NOUVEAUX_PRODUITS .liste-achat-plugin .overflow {
  height: 105px;
}

.TPL_PRODUITS_MIS_EN_AVANT,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS,
.TPL_TOP_VENTE_PRODUITS,
.TPL_LISTE_PRODUITS_EN_PROMOTION,
.TPL_NOUVEAUX_PRODUITS {
  margin-bottom: 90px;
  background-color: #f6f6f6;
  clear: both;
}

@media screen and (min-width: 768px) {
  .TPL_PRODUITS_MIS_EN_AVANT,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS,
  .TPL_TOP_VENTE_PRODUITS,
  .TPL_LISTE_PRODUITS_EN_PROMOTION,
  .TPL_NOUVEAUX_PRODUITS {
    overflow: visible;
  }
}

.TPL_PRODUITS_MIS_EN_AVANT .paginator, .TPL_PRODUITS_MIS_EN_AVANT .nb-produits-page, .TPL_PRODUITS_MIS_EN_AVANT .qty-right,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .paginator,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .nb-produits-page,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .qty-right,
.TPL_TOP_VENTE_PRODUITS .paginator,
.TPL_TOP_VENTE_PRODUITS .nb-produits-page,
.TPL_TOP_VENTE_PRODUITS .qty-right,
.TPL_LISTE_PRODUITS_EN_PROMOTION .paginator,
.TPL_LISTE_PRODUITS_EN_PROMOTION .nb-produits-page,
.TPL_LISTE_PRODUITS_EN_PROMOTION .qty-right,
.TPL_NOUVEAUX_PRODUITS .paginator,
.TPL_NOUVEAUX_PRODUITS .nb-produits-page,
.TPL_NOUVEAUX_PRODUITS .qty-right {
  display: none;
}

.TPL_PRODUITS_MIS_EN_AVANT .liste-produits .liste-produit-item,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .liste-produit-item,
.TPL_TOP_VENTE_PRODUITS .liste-produits .liste-produit-item,
.TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .liste-produit-item,
.TPL_NOUVEAUX_PRODUITS .liste-produits .liste-produit-item {
  min-height: 270px;
}

.TPL_PRODUITS_MIS_EN_AVANT .bloc-titre-pag .titre-avec-favoris,
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS .bloc-titre-pag .titre-avec-favoris,
.TPL_TOP_VENTE_PRODUITS .bloc-titre-pag .titre-avec-favoris,
.TPL_LISTE_PRODUITS_EN_PROMOTION .bloc-titre-pag .titre-avec-favoris,
.TPL_NOUVEAUX_PRODUITS .bloc-titre-pag .titre-avec-favoris {
  position: initial;
}

.TPL_PRODUIT_CROSS_SELLING {
  padding-top: 40px;
}

.TPL_PRODUIT_CROSS_SELLING .loadMore, .TPL_PRODUIT_CROSS_SELLING .hideMore {
  display: block;
  width: 110px;
  text-align: center;
  line-height: 40px;
  color: #004462;
  border-radius: 10px;
  background-color: #ffffff;
  border: 1px solid #cecece;
  font-weight: bolder;
  font-size: 1.4rem;
  padding: 10px 20px;
  margin: auto auto 12px auto;
}

.TPL_PRODUIT_CROSS_SELLING .loadMore:hover, .TPL_PRODUIT_CROSS_SELLING .hideMore:hover {
  cursor: pointer;
}

.TPL_PRODUIT_CROSS_SELLING h2, .TPL_PRODUIT_CROSS_SELLING .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_PRODUIT_CROSS_SELLING h1, .TPL_PRODUIT_CROSS_SELLING .fiche-adherent h1, .fiche-adherent .TPL_PRODUIT_CROSS_SELLING h1 {
  font-size: 2rem;
  color: #003160;
  font-weight: 400;
  text-transform: none;
  padding-top: 4px;
  padding-left: 0;
}

.TPL_PRODUIT_CROSS_SELLING h2::before, .TPL_PRODUIT_CROSS_SELLING .TPL_FICHE_PRODUIT .titre-produit h1::before, .TPL_FICHE_PRODUIT .titre-produit .TPL_PRODUIT_CROSS_SELLING h1::before, .TPL_PRODUIT_CROSS_SELLING .fiche-adherent h1::before, .fiche-adherent .TPL_PRODUIT_CROSS_SELLING h1::before {
  content: none;
}

@media screen and (max-width: 1750px) {
  .TPL_PRODUIT_CROSS_SELLING {
    overflow: visible;
    position: relative;
  }
}

@media screen and (max-width: 767px) {
  .TPL_PRODUIT_CROSS_SELLING {
    overflow: hidden;
  }
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL {
  margin: 0 auto 60px;
  max-width: 146.2rem;
}

@media screen and (max-width: 1750px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL {
    max-width: 82.95454545454545%;
  }
}

@media screen and (max-width: 1024px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL {
    max-width: 81.80894308943089%;
  }
}

@media screen and (max-width: 767px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL {
    max-width: 100%;
    margin: 0 -20px 40px 0;
  }
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .bx-wrapper {
  margin: 0 auto;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .content {
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .details-produits {
  min-height: 240px;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .produitPrix .info {
  white-space: nowrap;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .bx-wrapper {
  margin: 0 auto;
  max-width: 100% !important;
  position: relative;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits {
  position: inherit;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .slick-list {
  width: 100%;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .slick-list.draggable {
  -webkit-user-select: text;
  -khtml-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text;
}

@media screen and (max-width: 767px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits {
    margin: 0;
    max-width: 280px;
  }
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .slick-list {
    overflow: visible;
  }
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .liste-produit-item {
  padding: 10px;
  min-width: 240px;
  max-width: 343px;
  margin-right: 30px;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .liste-produit-item .inner-item {
  display: flex;
  flex-direction: column;
}

@media screen and (max-width: 1750px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .liste-produit-item {
    max-width: calc(100% - 30px);
  }
}

@media screen and (max-width: 1440px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .liste-produit-item {
    min-width: inherit;
    max-width: calc(100% - 20px);
  }
}

@media screen and (max-width: 1024px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .liste-produit-item {
    margin-right: 20px;
  }
}

@media screen and (max-width: 767px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .liste-produit-item {
    max-width: 260px;
  }
}

@media screen and (max-width: 374px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .liste-produit-item {
    max-width: 235px;
  }
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits-item {
  height: 100%;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits-item > div {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .message-promo .inner {
  margin-top: -1.1rem;
  margin-left: -1.1rem;
}

@media screen and (max-width: 1024px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .message-promo .inner {
    width: calc(100% + 2.2rem);
  }
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .encadre {
  width: 100%;
  margin: 0 0 5px;
  text-align: center;
  min-height: 115px;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .caption {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .code-article .label {
  color: #003160;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .qte-etat {
  font-size: 1.3rem;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .qte-etat .libelle {
  font-size: 1.4rem;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .qte-etat .stock-terme {
  display: inline-block;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .details-produits {
  flex-direction: column;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .details-produits .prix-container,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .details-produits .stock {
  width: 100%;
  float: none;
  display: inline-block;
  margin-top: 10px;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .details-bas {
  margin-top: 5px;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .qty-right {
  display: flex;
  flex: 1;
  align-items: flex-end;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .qty-right form {
  width: 100%;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .qty-right .quantite {
  width: 100%;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .qty-right .qte {
  margin: 0 auto;
  max-width: 160px;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .actions {
  position: relative;
  text-align: center;
  width: 100%;
}

@media (min-width: 1440px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .actions {
    min-width: auto;
  }
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .actions .caddie,
.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .actions .ajouter-a-liste {
  float: none;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-achat-plugin {
  position: static;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-achat-plugin .sousmenu-ajout-produit-liste {
  width: 100%;
  max-width: 280px;
  left: 50% !important;
  transform: translateX(-50%);
  bottom: 70px;
  top: auto !important;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-achat-plugin .ajouter-a-la-liste {
  top: 0;
}

@media screen and (max-width: 767px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .pag {
    display: none;
  }
}

@media screen and (min-width: 767px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .details-produits .ref {
    width: 100%;
    float: none;
  }
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .actions {
    width: 60%;
    margin: 0 auto;
  }
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .qty-right .qte {
    max-width: 100%;
  }
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produits .qty-right .quantite {
    width: 60%;
  }
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .itemLimit .actions {
    width: 100%;
  }
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .itemLimit .actions .caddie,
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .itemLimit .actions .ajouter-a-liste {
    width: 50%;
  }
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .itemLimit .qty-right .quantite {
    width: 100%;
  }
}

@media screen and (min-width: 1441px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .bx-viewport {
    width: 100% !important;
    margin: auto;
    height: 100% !important;
  }
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .slick-arrow {
  display: block;
  width: 80px;
  height: 40px;
  line-height: 40px;
  position: absolute;
  text-indent: -1000px;
  overflow: hidden;
  background-color: #ffffff;
  border: 1px solid #cecece;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .slick-arrow.slick-disabled {
  opacity: 0.5;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .slick-arrow.slick-next {
  border-radius: 0 10px 10px 0;
  right: calc(5rem + 15px);
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .slick-arrow.slick-next::before {
  content: "\e905";
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .slick-arrow.slick-prev {
  border-radius: 10px 0 0 10px;
  left: 5rem;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .slick-arrow.slick-prev::before {
  content: "\e906";
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .slick-arrow::before {
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  font-size: 13px;
  text-indent: 0;
  color: #003160;
}

@media screen and (max-width: 1850px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .slick-arrow.slick-next {
    right: 0;
  }
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .slick-arrow.slick-prev {
    left: 0;
  }
}

@media screen and (max-width: 1750px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .slick-arrow {
    width: 64px;
  }
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .slick-arrow.slick-next {
    right: 30px;
  }
}

@media screen and (max-width: 1440px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .slick-arrow.slick-next {
    right: 15px;
  }
}

@media screen and (max-width: 1024px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .slick-arrow.slick-next {
    right: 0;
  }
}

@media screen and (max-width: 767px) {
  .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .slick-arrow {
    display: none !important;
  }
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produit-item .image, .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produit-item .image .image-inner, .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produit-item .image .image-inner .image-produit {
  height: 19.5rem;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produit-item .produit-gauche .produit-code h3, .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produit-item .produit-gauche .produit-stock h3 {
  min-height: auto;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produit-item .produit-gauche .infotypes-wrap {
  display: none;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produit-item .produit-droite .actions {
  padding-top: 0;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produit-item .produit-droite .produit-stock {
  margin-bottom: 0;
  padding: 0;
  border: none;
  margin-top: 1.5rem;
}

.TPL_PRODUIT_CROSS_SELLING_CAROUSEL .liste-produit-item .produit-droite .produit-stock h3 {
  display: none;
}

@media screen and (max-width: 1024px) {
  .TPL_PRODUITS_MIS_EN_AVANT,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS,
  .TPL_TOP_VENTE_PRODUITS,
  .TPL_LISTE_PRODUITS_EN_PROMOTION,
  .TPL_NOUVEAUX_PRODUITS {
    margin-bottom: 60px;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .liste-achat-plugin .sousmenu-ajout-produit-liste,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-achat-plugin .sousmenu-ajout-produit-liste,
  .TPL_TOP_VENTE_PRODUITS .liste-achat-plugin .sousmenu-ajout-produit-liste,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-achat-plugin .sousmenu-ajout-produit-liste,
  .TPL_NOUVEAUX_PRODUITS .liste-achat-plugin .sousmenu-ajout-produit-liste {
    width: 300px;
    left: -140px;
    top: 60px;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .liste-achat-plugin .ajouter-a-la-liste,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-achat-plugin .ajouter-a-la-liste,
  .TPL_TOP_VENTE_PRODUITS .liste-achat-plugin .ajouter-a-la-liste,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-achat-plugin .ajouter-a-la-liste,
  .TPL_NOUVEAUX_PRODUITS .liste-achat-plugin .ajouter-a-la-liste {
    left: 0;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .liste-achat-plugin .ajouter-a-la-liste::after,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-achat-plugin .ajouter-a-la-liste::after,
  .TPL_TOP_VENTE_PRODUITS .liste-achat-plugin .ajouter-a-la-liste::after,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-achat-plugin .ajouter-a-la-liste::after,
  .TPL_NOUVEAUX_PRODUITS .liste-achat-plugin .ajouter-a-la-liste::after {
    left: 67%;
  }
}

@media screen and (max-width: 767px) {
  .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .caddie, .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-a-liste,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .caddie,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-a-liste,
  .TPL_TOP_VENTE_PRODUITS .liste-produits .caddie,
  .TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-a-liste,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .caddie,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-a-liste,
  .TPL_NOUVEAUX_PRODUITS .liste-produits .caddie,
  .TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-a-liste {
    width: 48%;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .box-panier .quantite,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .box-panier .quantite,
  .TPL_TOP_VENTE_PRODUITS .liste-produits .box-panier .quantite,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .box-panier .quantite,
  .TPL_NOUVEAUX_PRODUITS .liste-produits .box-panier .quantite {
    display: none;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .liste-achat-plugin .sousmenu-ajout-produit-liste,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-achat-plugin .sousmenu-ajout-produit-liste,
  .TPL_TOP_VENTE_PRODUITS .liste-achat-plugin .sousmenu-ajout-produit-liste,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-achat-plugin .sousmenu-ajout-produit-liste,
  .TPL_NOUVEAUX_PRODUITS .liste-achat-plugin .sousmenu-ajout-produit-liste {
    top: 30px;
    width: 200px;
    left: -90px;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .liste-achat-plugin .overflow,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-achat-plugin .overflow,
  .TPL_TOP_VENTE_PRODUITS .liste-achat-plugin .overflow,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-achat-plugin .overflow,
  .TPL_NOUVEAUX_PRODUITS .liste-achat-plugin .overflow {
    height: 90px;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .liste-achat-plugin .ajouter-a-la-liste,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-achat-plugin .ajouter-a-la-liste,
  .TPL_TOP_VENTE_PRODUITS .liste-achat-plugin .ajouter-a-la-liste,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-achat-plugin .ajouter-a-la-liste,
  .TPL_NOUVEAUX_PRODUITS .liste-achat-plugin .ajouter-a-la-liste {
    left: auto;
    right: 30px;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .liste-achat-plugin .ajouter-a-la-liste::after,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-achat-plugin .ajouter-a-la-liste::after,
  .TPL_TOP_VENTE_PRODUITS .liste-achat-plugin .ajouter-a-la-liste::after,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-achat-plugin .ajouter-a-la-liste::after,
  .TPL_NOUVEAUX_PRODUITS .liste-achat-plugin .ajouter-a-la-liste::after {
    left: 65%;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .liste-achat-plugin .ajouter-a-la-liste h4,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-achat-plugin .ajouter-a-la-liste h4,
  .TPL_TOP_VENTE_PRODUITS .liste-achat-plugin .ajouter-a-la-liste h4,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-achat-plugin .ajouter-a-la-liste h4,
  .TPL_NOUVEAUX_PRODUITS .liste-achat-plugin .ajouter-a-la-liste h4 {
    margin-bottom: 5px;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .liste-achat-plugin .ajouter-a-la-liste.new,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-achat-plugin .ajouter-a-la-liste.new,
  .TPL_TOP_VENTE_PRODUITS .liste-achat-plugin .ajouter-a-la-liste.new,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-achat-plugin .ajouter-a-la-liste.new,
  .TPL_NOUVEAUX_PRODUITS .liste-achat-plugin .ajouter-a-la-liste.new {
    top: -270px;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .bx-viewport,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .bx-viewport,
  .TPL_TOP_VENTE_PRODUITS .bx-viewport,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .bx-viewport,
  .TPL_NOUVEAUX_PRODUITS .bx-viewport {
    overflow: visible !important;
  }
  /*.TPL_PRODUIT_CROSS_SELLING_CAROUSEL {
        //liste achat
        .liste-achat-plugin {
            .sousmenu-ajout-produit-liste {
                left: -20px;
            }
            .ajouter-a-la-liste::after {
                left: 55%;
            }
        }
    }*/
  .TPL_PRODUITS_MIS_EN_AVANT .stock,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .stock,
  .TPL_TOP_VENTE_PRODUITS .stock,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .stock,
  .TPL_NOUVEAUX_PRODUITS .stock,
  .liste-produits:not(.liste-panier-commande-rapide) .stock {
    margin: 10px 0;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .stock + .conditionnement,
  .TPL_PRODUITS_MIS_EN_AVANT .stock + .more-options,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .stock + .conditionnement,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .stock + .more-options,
  .TPL_TOP_VENTE_PRODUITS .stock + .conditionnement,
  .TPL_TOP_VENTE_PRODUITS .stock + .more-options,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .stock + .conditionnement,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .stock + .more-options,
  .TPL_NOUVEAUX_PRODUITS .stock + .conditionnement,
  .TPL_NOUVEAUX_PRODUITS .stock + .more-options,
  .liste-produits:not(.liste-panier-commande-rapide) .stock + .conditionnement,
  .liste-produits:not(.liste-panier-commande-rapide) .stock + .more-options {
    margin-top: 20px;
  }
  .TPL_PRODUITS_MIS_EN_AVANT,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS,
  .TPL_TOP_VENTE_PRODUITS,
  .TPL_LISTE_PRODUITS_EN_PROMOTION,
  .TPL_NOUVEAUX_PRODUITS {
    padding-bottom: 40px;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .bloc-titre-pag .pag,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .bloc-titre-pag .pag,
  .TPL_TOP_VENTE_PRODUITS .bloc-titre-pag .pag,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .bloc-titre-pag .pag,
  .TPL_NOUVEAUX_PRODUITS .bloc-titre-pag .pag {
    bottom: 0;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .liste-produit-item,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .liste-produit-item,
  .TPL_TOP_VENTE_PRODUITS .liste-produits .liste-produit-item,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .liste-produit-item,
  .TPL_NOUVEAUX_PRODUITS .liste-produits .liste-produit-item {
    min-height: 330px;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .qty-right:not(.withCalc),
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .qty-right:not(.withCalc),
  .TPL_TOP_VENTE_PRODUITS .liste-produits .qty-right:not(.withCalc),
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .qty-right:not(.withCalc),
  .TPL_NOUVEAUX_PRODUITS .liste-produits .qty-right:not(.withCalc) {
    width: 140px;
    float: right;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .box-panier .quantite,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .box-panier .quantite,
  .TPL_TOP_VENTE_PRODUITS .liste-produits .box-panier .quantite,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .box-panier .quantite,
  .TPL_NOUVEAUX_PRODUITS .liste-produits .box-panier .quantite {
    width: 100%;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .ajouter-a-liste,
  .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .caddie,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .ajouter-a-liste,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .caddie,
  .TPL_TOP_VENTE_PRODUITS .liste-produits .ajouter-a-liste,
  .TPL_TOP_VENTE_PRODUITS .liste-produits .caddie,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .ajouter-a-liste,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .caddie,
  .TPL_NOUVEAUX_PRODUITS .liste-produits .ajouter-a-liste,
  .TPL_NOUVEAUX_PRODUITS .liste-produits .caddie {
    width: auto;
  }
  .TPL_PRODUITS_MIS_EN_AVANT .liste-produits .details-produits .stock,
  .TPL_ORCAB_LISTE_PRODUITS_CHOISIS .liste-produits .details-produits .stock,
  .TPL_TOP_VENTE_PRODUITS .liste-produits .details-produits .stock,
  .TPL_LISTE_PRODUITS_EN_PROMOTION .liste-produits .details-produits .stock,
  .TPL_NOUVEAUX_PRODUITS .liste-produits .details-produits .stock {
    width: 100%;
    float: none;
    clear: both;
    margin: 0;
  }
}

/* ===================================================================
 * PRODUITS RECOMMANDER PAR VOTRE COOPERATIVE
 * =================================================================*/
.recherche-resultats .resultat-produits-mise-en-avant .recherche-tri-onglet {
  justify-content: flex-start;
}

.recherche-resultats .resultat-produits-mise-en-avant .recherche-tri-onglet h2, .recherche-resultats .resultat-produits-mise-en-avant .recherche-tri-onglet .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .recherche-resultats .resultat-produits-mise-en-avant .recherche-tri-onglet h1, .recherche-resultats .resultat-produits-mise-en-avant .recherche-tri-onglet .fiche-adherent h1, .fiche-adherent .recherche-resultats .resultat-produits-mise-en-avant .recherche-tri-onglet h1 {
  padding-right: 60px;
}

.recherche-resultats .resultat-produits-mise-en-avant .recherche-tri-onglet .nbre {
  font-weight: 400;
}

@media (max-width: 767px) {
  .recherche-resultats .resultat-produits-mise-en-avant .recherche-tri-onglet {
    display: block !important;
  }
  .recherche-resultats .resultat-produits-mise-en-avant .recherche-tri-onglet h2, .recherche-resultats .resultat-produits-mise-en-avant .recherche-tri-onglet .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .recherche-resultats .resultat-produits-mise-en-avant .recherche-tri-onglet h1, .recherche-resultats .resultat-produits-mise-en-avant .recherche-tri-onglet .fiche-adherent h1, .fiche-adherent .recherche-resultats .resultat-produits-mise-en-avant .recherche-tri-onglet h1 {
    min-height: inherit;
    padding: 0;
    margin-bottom: 10px;
  }
}

.resultat-produits-mise-en-avant {
  margin-bottom: 5rem;
}

@media (max-width: 767px) {
  .resultat-produits-mise-en-avant {
    position: relative;
    margin-bottom: 2.5rem;
  }
  .resultat-produits-mise-en-avant .bloc-titre-pag .pag {
    bottom: 0;
    position: relative;
    transform: none;
    left: 0;
    float: left;
    margin: 0;
  }
}

.liste-produits--recommande {
  margin: 0 -1.5rem;
}

@media (max-width: 767px) {
  .liste-produits--recommande {
    width: 83.33%;
  }
}

.liste-produits--recommande:not(.slick-initialized) {
  display: none;
}

.liste-produits--recommande .search-suggester-results-item {
  border: 1px solid #cecece;
  background: #fff;
  border-radius: 5px;
  margin-bottom: 12px;
  padding: 20px 15px;
  box-sizing: border-box;
  position: relative;
  width: 100%;
}

.liste-produits--recommande .search-suggester-results-item p {
  line-height: 2rem;
  width: auto;
  color: inherit;
  text-align: left;
}

@media (min-width: 768px) {
  .liste-produits--recommande .search-suggester-results-item p {
    margin: 0 0 0 25.1%;
  }
}

.liste-produits--recommande .search-suggester-results-item-image {
  display: block;
  float: left;
  box-sizing: border-box;
  margin-bottom: 2rem;
}

.liste-produits--recommande .search-suggester-results-item-image img {
  max-height: 8.8rem;
}

@media (min-width: 768px) {
  .liste-produits--recommande .search-suggester-results-item-image {
    width: 25.1%;
    padding-right: 2rem;
    margin-bottom: 0;
  }
  .liste-produits--recommande .search-suggester-results-item-image + .search-suggester-results-item-description {
    margin-left: 25.1%;
  }
}

.liste-produits--recommande .search-suggester-results-item-description {
  display: block;
}

.liste-produits--recommande .search-suggester-results-item-libelle {
  display: inline-block;
  margin-bottom: 7px;
  font-size: 1.7rem;
  line-height: 2.2rem;
  font-weight: 400;
  color: #004462;
  text-transform: uppercase;
}

.liste-produits--recommande .search-suggester-results-item .marque {
  font-size: 1.5rem;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 3px;
}

.liste-produits--recommande .search-suggester-results-item .label {
  font-size: 1.3rem;
  color: #004462;
}

.liste-produits--recommande .search-suggester-results-item .info {
  font-size: 1.4rem;
  line-height: 1em;
}

.liste-produits--recommande .message-promo {
  margin-bottom: 2rem;
  width: calc(100% - 1rem);
  text-align: center;
}

@media (max-width: 1024px) {
  .liste-produits--recommande .message-promo {
    width: 100%;
  }
}

.liste-produits--recommande .message-promo-wrapper {
  display: flex;
}

@media (max-width: 1024px) {
  .liste-produits--recommande .message-promo-wrapper {
    margin: 0 -1.5rem;
  }
}

.liste-produits--recommande .message-promo .inner {
  float: left !important;
  margin: -2.1rem 0 0 -1.5rem;
  border-radius: 5px 5px 0 0;
  width: 100% !important;
}

@media (max-width: 1024px) {
  .liste-produits--recommande .message-promo .inner {
    float: none;
    margin: -2rem 0 0;
    box-sizing: border-box;
    text-align: center;
    border-radius: 5px 5px 0 0;
  }
}

@media (max-width: 767px) {
  .liste-produits--recommande .message-promo .inner {
    width: calc(100% + 2rem);
  }
}

@media (max-width: 767px) {
  .liste-produits--recommande .slick-list {
    overflow: visible;
  }
}

.liste-produits--recommande .slick-list.draggable {
  -webkit-user-select: text;
  -khtml-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text;
}

.liste-produits--recommande .slick-slide > div {
  padding: 0 15px;
}

.liste-produits--recommande .slick-prev {
  top: 0;
  transform: none;
  left: 0;
}

.liste-produits--recommande .slick-next {
  top: 0;
  transform: none;
  right: 0;
}

/* ===================================================================
 * TABLEAU PRIX QUANTITATIF DANS VOLET
 * =================================================================*/
.c-table-price__parent table,
.c-table-price {
  width: 100%;
  text-align: center;
  font-size: 1.6rem;
  table-layout: fixed;
}

.c-table-price__parent table thead,
.c-table-price thead {
  background: #e9e9e9;
  color: #003160;
  font-size: 1.3rem;
}

.c-table-price__parent table thead td,
.c-table-price thead td {
  padding: 5px 10px 5px 0;
}

.c-table-price__parent table td,
.volet .c-table-price__parent table td,
.c-table-price td,
.volet
.c-table-price td {
  padding: 5px 10px;
  border: none;
}

.c-table-price__parent table tr:nth-child(even) td,
.c-table-price tr:nth-child(even) td {
  background-color: #fdfdfd;
}

/* ===================================================================
 * TEMPLATE FICHE PRODUIT
 * =================================================================*/
.TPL_FICHE_PRODUIT {
  overflow: visible;
  /** bloc action droite **/
}

.TPL_FICHE_PRODUIT .fiche-produit-main {
  margin-bottom: 40px;
}

.TPL_FICHE_PRODUIT .titre-produit {
  margin-bottom: 20px;
}

.TPL_FICHE_PRODUIT .titre-produit .bouton-retour-produit {
  margin: 0 20px 8px 0;
  appearance: none;
  border: none;
  background-color: transparent;
  display: none;
}

@media screen and (max-width: 767px) {
  .TPL_FICHE_PRODUIT .titre-produit .bouton-retour-produit {
    display: none;
  }
}

.TPL_FICHE_PRODUIT .titre-produit .bouton-retour-produit:hover {
  text-decoration: none;
}

.TPL_FICHE_PRODUIT .titre-produit .bouton-retour-produit::before {
  content: "\f053";
  margin-right: 8px;
  font-size: 1rem;
}

.TPL_FICHE_PRODUIT .titre-avec-favoris ~ .titre-avec-actualiteLies {
  right: 220px;
}

.TPL_FICHE_PRODUIT .titre-avec-actualiteLies {
  position: absolute;
  right: 0;
  top: 3px;
}

.TPL_FICHE_PRODUIT .titre-avec-actualiteLies .bouton-blanc, .TPL_FICHE_PRODUIT .titre-avec-actualiteLies .mise-en-avant .contenu a, .mise-en-avant .contenu .TPL_FICHE_PRODUIT .titre-avec-actualiteLies a, .TPL_FICHE_PRODUIT .titre-avec-actualiteLies .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement button, .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement .TPL_FICHE_PRODUIT .titre-avec-actualiteLies button {
  padding: 10px 20px;
  color: #868686;
  font-size: 1.4rem;
  line-height: 1.7rem;
  border-color: #e9e9e9;
  font-weight: 500;
}

.TPL_FICHE_PRODUIT .titre-avec-actualiteLies .bouton-blanc:hover, .TPL_FICHE_PRODUIT .titre-avec-actualiteLies .mise-en-avant .contenu a:hover, .mise-en-avant .contenu .TPL_FICHE_PRODUIT .titre-avec-actualiteLies a:hover, .TPL_FICHE_PRODUIT .titre-avec-actualiteLies .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement button:hover, .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement .TPL_FICHE_PRODUIT .titre-avec-actualiteLies button:hover {
  color: #ffffff;
}

.TPL_FICHE_PRODUIT .titre-avec-actualiteLies .bouton-blanc:hover span::before, .TPL_FICHE_PRODUIT .titre-avec-actualiteLies .mise-en-avant .contenu a:hover span::before, .mise-en-avant .contenu .TPL_FICHE_PRODUIT .titre-avec-actualiteLies a:hover span::before, .TPL_FICHE_PRODUIT .titre-avec-actualiteLies .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement button:hover span::before, .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement .TPL_FICHE_PRODUIT .titre-avec-actualiteLies button:hover span::before {
  color: #ffffff;
}

.TPL_FICHE_PRODUIT .titre-avec-actualiteLies .bouton-blanc span, .TPL_FICHE_PRODUIT .titre-avec-actualiteLies .mise-en-avant .contenu a span, .mise-en-avant .contenu .TPL_FICHE_PRODUIT .titre-avec-actualiteLies a span, .TPL_FICHE_PRODUIT .titre-avec-actualiteLies .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement button span, .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement .TPL_FICHE_PRODUIT .titre-avec-actualiteLies button span {
  margin-right: 5px;
}

.TPL_FICHE_PRODUIT .titre-avec-actualiteLies .bouton-blanc span::before, .TPL_FICHE_PRODUIT .titre-avec-actualiteLies .mise-en-avant .contenu a span::before, .mise-en-avant .contenu .TPL_FICHE_PRODUIT .titre-avec-actualiteLies a span::before, .TPL_FICHE_PRODUIT .titre-avec-actualiteLies .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement button span::before, .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement .TPL_FICHE_PRODUIT .titre-avec-actualiteLies button span::before {
  color: #003160;
}

.TPL_FICHE_PRODUIT .titre-avec-actualiteLies ~ .fiche-produit-container .titre-produit,
.TPL_FICHE_PRODUIT .titre-avec-favoris ~ .fiche-produit-container .titre-produit {
  padding-right: 215px;
}

.TPL_FICHE_PRODUIT .titre-avec-favoris ~ .titre-avec-actualiteLies ~ .fiche-produit-container .titre-produit {
  padding-right: 380px;
}

@media screen and (max-width: 1024px) {
  .TPL_FICHE_PRODUIT .titre-avec-favoris {
    padding-right: 235px;
  }
  .TPL_FICHE_PRODUIT .titre-avec-favoris a {
    width: auto;
    height: auto;
    text-indent: inherit;
    padding: 9px 20px;
    line-height: normal;
    position: relative;
  }
  .TPL_FICHE_PRODUIT .titre-avec-favoris a::before {
    position: initial;
    transform: none;
  }
  .TPL_FICHE_PRODUIT .titre-avec-actualiteLies {
    right: 0;
    text-align: center;
  }
  .TPL_FICHE_PRODUIT .titre-avec-actualiteLies a {
    width: 200px;
    box-sizing: border-box;
  }
  .TPL_FICHE_PRODUIT .titre-avec-actualiteLies .libelle-hide {
    display: none;
  }
  .TPL_FICHE_PRODUIT .titre-avec-favoris ~ .titre-avec-actualiteLies {
    right: 0;
    top: 50px;
  }
  .TPL_FICHE_PRODUIT .titre-avec-actualiteLies ~ .fiche-produit-container .titre-produit,
  .TPL_FICHE_PRODUIT .titre-avec-favoris ~ .fiche-produit-container .titre-produit {
    padding-right: 215px;
  }
  .TPL_FICHE_PRODUIT .titre-avec-favoris ~ .titre-avec-actualiteLies ~ .fiche-produit-container .titre-produit,
  .TPL_FICHE_PRODUIT .titre-avec-favoris ~ .titre-avec-actualiteLies ~ .fiche-produit-container .specifications {
    padding-right: 215px;
  }
}

@media screen and (max-width: 767px) {
  .TPL_FICHE_PRODUIT .titre-avec-favoris {
    padding-right: 42px;
  }
  .TPL_FICHE_PRODUIT .titre-avec-favoris a {
    text-indent: -9999px;
  }
  .TPL_FICHE_PRODUIT .titre-avec-favoris a::before {
    position: absolute;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
  }
  .TPL_FICHE_PRODUIT .titre-avec-actualiteLies {
    top: 4px;
  }
  .TPL_FICHE_PRODUIT .titre-avec-actualiteLies a {
    width: 32px;
  }
  .TPL_FICHE_PRODUIT .titre-avec-actualiteLies a span.icomoon-ORCAB_ico_document_valide::before {
    position: absolute;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
  }
  .TPL_FICHE_PRODUIT .titre-avec-actualiteLies a span.libelle {
    display: none;
  }
  .TPL_FICHE_PRODUIT .titre-avec-favoris ~ .titre-avec-actualiteLies {
    right: 50px;
    top: 4px;
  }
  .TPL_FICHE_PRODUIT .titre-avec-actualiteLies ~ .fiche-produit-container .titre-produit,
  .TPL_FICHE_PRODUIT .titre-avec-favoris ~ .fiche-produit-container .titre-produit {
    padding-right: 0;
  }
  .TPL_FICHE_PRODUIT .titre-avec-actualiteLies ~ .fiche-produit-container .titre-produit h1,
  .TPL_FICHE_PRODUIT .titre-avec-favoris ~ .fiche-produit-container .titre-produit h1 {
    padding-right: 50px;
  }
  .TPL_FICHE_PRODUIT .titre-avec-favoris ~ .titre-avec-actualiteLies ~ .fiche-produit-container .titre-produit,
  .TPL_FICHE_PRODUIT .titre-avec-favoris ~ .titre-avec-actualiteLies ~ .fiche-produit-container .specifications {
    padding-right: 0;
  }
}

.TPL_FICHE_PRODUIT .bloc {
  width: 23.5%;
  float: left;
  margin-right: 2.6%;
}

.TPL_FICHE_PRODUIT .bloc.infos {
  width: 47.8%;
  margin-right: 0;
}

.TPL_FICHE_PRODUIT .desc-produit {
  min-width: 23.5%;
  min-height: 1px;
}

.TPL_FICHE_PRODUIT .diapo {
  margin-bottom: 10px;
}

.TPL_FICHE_PRODUIT .diapo li {
  overflow: hidden;
  width: 100%;
  height: 370px;
  line-height: 370px;
  text-align: center;
  position: relative;
  background: #ffffff;
  display: none;
}

.TPL_FICHE_PRODUIT .diapo li:first-child {
  display: block;
}

.TPL_FICHE_PRODUIT .diapo a {
  display: block;
}

.TPL_FICHE_PRODUIT .diapo a > div {
  height: 370px;
}

.TPL_FICHE_PRODUIT .diapo img {
  vertical-align: middle;
  display: inline-block;
  max-height: 100%;
}

@media (max-width: 1024px) {
  .TPL_FICHE_PRODUIT .diapo li {
    height: 300px;
    line-height: 300px;
  }
  .TPL_FICHE_PRODUIT .diapo a > div {
    height: 300px;
  }
}

@media (max-width: 767px) {
  .TPL_FICHE_PRODUIT .diapo li {
    height: 260px;
    line-height: 260px;
  }
  .TPL_FICHE_PRODUIT .diapo a > div {
    height: 260px;
  }
}

.TPL_FICHE_PRODUIT .thumb {
  margin: 0 0 20px;
}

.TPL_FICHE_PRODUIT .thumb li {
  box-sizing: border-box;
  float: left;
  margin: 0 3% 3% 0;
  width: 23.98081534772182%;
  min-height: 100px;
  height: 100px;
  background: #fff;
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
}

.TPL_FICHE_PRODUIT .thumb li:nth-child(4n) {
  margin: 0;
}

.TPL_FICHE_PRODUIT .thumb li:after {
  border: 3px solid transparent;
  content: "";
  height: calc(100% - 6px);
  left: 0;
  position: absolute;
  top: 0;
  width: calc(100% - 6px);
  transition: all 0.3s;
}

.TPL_FICHE_PRODUIT .thumb li:hover::after, .TPL_FICHE_PRODUIT .thumb li:active::after, .TPL_FICHE_PRODUIT .thumb li.selected::after {
  border: 3px solid #82aa37;
}

.TPL_FICHE_PRODUIT .thumb li.video-produit a {
  display: block;
  position: absolute;
  z-index: 2;
  min-height: 100px;
  height: 100px;
  width: 100%;
}

.TPL_FICHE_PRODUIT .thumb li.video-produit a::before {
  border: 3px solid transparent;
  content: "";
  height: 93%;
  left: 0;
  position: absolute;
  top: 0;
  width: 93%;
  transition: all 0.3s;
}

.TPL_FICHE_PRODUIT .thumb li.video-produit:hover a::before, .TPL_FICHE_PRODUIT .thumb li.video-produit:active a::before, .TPL_FICHE_PRODUIT .thumb li.video-produit.selected a::before {
  background: rgba(255, 255, 255, 0.75);
  z-index: 1;
  border: 3px solid #82aa37;
}

.TPL_FICHE_PRODUIT .thumb li.video-produit:hover a::after, .TPL_FICHE_PRODUIT .thumb li.video-produit:active a::after, .TPL_FICHE_PRODUIT .thumb li.video-produit.selected a::after {
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  content: "\e905";
  font-size: 16px;
  border: 2px solid;
  color: #82aa37;
  padding: 10px;
  border-radius: 50%;
  z-index: 2;
}

.TPL_FICHE_PRODUIT .thumb li img {
  vertical-align: middle;
  max-height: 100%;
}

@media (max-width: 1440px) {
  .TPL_FICHE_PRODUIT .thumb li {
    min-height: 80px;
    height: 80px;
    width: 33.61344537815126%;
  }
  .TPL_FICHE_PRODUIT .thumb li.video-produit a {
    min-height: 80px;
    height: 80px;
  }
}

@media (max-width: 767px) {
  .TPL_FICHE_PRODUIT .thumb li {
    min-height: 70px;
    height: 70px;
    width: 26.92307692307692%;
  }
  .TPL_FICHE_PRODUIT .thumb li.video-produit a {
    min-height: 70px;
    height: 70px;
  }
}

.TPL_FICHE_PRODUIT .thumb.sliderSecondaryImage {
  display: flex;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: nowrap;
}

.TPL_FICHE_PRODUIT .thumb.sliderSecondaryImage li {
  margin: 0;
}

.TPL_FICHE_PRODUIT .photos.bloc .bx-wrapper {
  position: relative;
  margin: 10px auto 25px;
  max-width: 100% !important;
}

.TPL_FICHE_PRODUIT .photos.bloc .bx-viewport {
  width: calc(100% - 72px) !important;
  margin: auto;
  z-index: 2;
}

@media screen and (max-width: 1440px) {
  .TPL_FICHE_PRODUIT .photos.bloc .bx-viewport {
    width: calc(100% - 58px) !important;
  }
}

.TPL_FICHE_PRODUIT .photos.bloc .bx-controls {
  position: absolute;
  top: 0;
  width: 100%;
  min-height: 100%;
}

.TPL_FICHE_PRODUIT .photos.bloc .bx-controls-direction {
  width: 100%;
  height: 0;
}

.TPL_FICHE_PRODUIT .photos.bloc .bx-controls-direction a {
  display: block;
  text-indent: -1000px;
  overflow: hidden;
  background-color: #e9e9e9;
  border-radius: 3px;
  height: 100%;
  width: 20px;
  position: absolute;
  top: 0;
  z-index: 2;
}

.TPL_FICHE_PRODUIT .photos.bloc .bx-controls-direction a.bx-next {
  right: 0;
}

.TPL_FICHE_PRODUIT .photos.bloc .bx-controls-direction a.bx-next::before {
  content: "\e952";
}

.TPL_FICHE_PRODUIT .photos.bloc .bx-controls-direction a.bx-prev {
  left: 0;
}

.TPL_FICHE_PRODUIT .photos.bloc .bx-controls-direction a.bx-prev::before {
  content: "\e951";
}

.TPL_FICHE_PRODUIT .photos.bloc .bx-controls-direction a::before {
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  font-size: 13px;
  text-indent: 0;
  color: #003160;
}

.TPL_FICHE_PRODUIT .photos.bloc .mainPhotoMobile-slide .bx-viewport {
  width: 100% !important;
  height: 180px !important;
}

.TPL_FICHE_PRODUIT .photos.bloc .mainPhotoMobile-slide li {
  background-color: initial;
  height: 180px;
}

.TPL_FICHE_PRODUIT .photos.bloc .mainPhotoMobile-slide .container-img-diapo {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.TPL_FICHE_PRODUIT .photos.bloc .mainPhotoMobile-slide .container-img-diapo,
.TPL_FICHE_PRODUIT .photos.bloc .mainPhotoMobile-slide img {
  max-height: 180px;
}

.TPL_FICHE_PRODUIT h3 {
  font-size: 3rem;
}

.TPL_FICHE_PRODUIT .sectionFullwidthWhite {
  margin: 0 -60px;
  padding: 20px 60px;
  background-color: #ffffff;
}

@media screen and (max-width: 1024px) {
  .TPL_FICHE_PRODUIT .sectionFullwidthWhite {
    margin: 0 -20px;
    padding: 20px 20px;
  }
}

.TPL_FICHE_PRODUIT .produit-documents-technique {
  padding-bottom: 30px;
}

.TPL_FICHE_PRODUIT .produit-documents-technique h3 {
  font-size: 2rem;
  font-weight: 400;
  text-transform: none;
  padding: 4px 0 15px 0;
  max-width: 146.2rem;
  margin: 0 auto 1rem;
}

.TPL_FICHE_PRODUIT .produit-documents-technique ul {
  display: flex;
  flex-wrap: wrap;
  gap: 2%;
  max-width: 146.2rem;
  margin: 0 auto;
}

.TPL_FICHE_PRODUIT .produit-documents-technique li {
  padding: 15px;
  border: 1px solid #cecece;
  background: #ffffff;
  border-radius: 5px;
  margin-bottom: 10px;
  width: 49%;
  box-sizing: border-box;
}

.TPL_FICHE_PRODUIT .produit-documents-technique a {
  color: #003160;
  font-weight: 700;
  display: flex;
  align-items: center;
  font-size: 1.8rem;
  line-height: 2.4rem;
}

.TPL_FICHE_PRODUIT .produit-documents-technique a:hover, .TPL_FICHE_PRODUIT .produit-documents-technique a:active, .TPL_FICHE_PRODUIT .produit-documents-technique a:focus {
  text-decoration: none;
}

.TPL_FICHE_PRODUIT .produit-documents-technique a .icomoon, .TPL_FICHE_PRODUIT .produit-documents-technique a #toast-container .toast-message::after, #toast-container .TPL_FICHE_PRODUIT .produit-documents-technique a .toast-message::after, .TPL_FICHE_PRODUIT .produit-documents-technique a #bandeau-haut .top-header .right .btn::before, #bandeau-haut .top-header .right .TPL_FICHE_PRODUIT .produit-documents-technique a .btn::before, .TPL_FICHE_PRODUIT .produit-documents-technique a #bandeau-haut .show-tablet .btn:before, #bandeau-haut .show-tablet .TPL_FICHE_PRODUIT .produit-documents-technique a .btn:before, .TPL_FICHE_PRODUIT .produit-documents-technique a #bandeau-haut .recherche-header button::before, #bandeau-haut .recherche-header .TPL_FICHE_PRODUIT .produit-documents-technique a button::before, .TPL_FICHE_PRODUIT .produit-documents-technique a #mini-panier .panier-detail-item .btn-icon-delete::before, #mini-panier .panier-detail-item .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-icon-delete::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .menu .menu-style-mobile::before, .menu .TPL_FICHE_PRODUIT .produit-documents-technique a .menu-style-mobile::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .menu .mm-close::before, .menu .TPL_FICHE_PRODUIT .produit-documents-technique a .mm-close::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .mm-menu .menu-style-mobile::before, .mm-menu .TPL_FICHE_PRODUIT .produit-documents-technique a .menu-style-mobile::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .mm-menu .mm-close::before, .mm-menu .TPL_FICHE_PRODUIT .produit-documents-technique a .mm-close::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .menu .mm-navbars-top .mm-title::before, .menu .mm-navbars-top .TPL_FICHE_PRODUIT .produit-documents-technique a .mm-title::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .mm-menu .mm-navbars-top .mm-title::before, .mm-menu .mm-navbars-top .TPL_FICHE_PRODUIT .produit-documents-technique a .mm-title::before, .TPL_FICHE_PRODUIT .produit-documents-technique a #menuMobile .menu-niv .link:after, #menuMobile .menu-niv .TPL_FICHE_PRODUIT .produit-documents-technique a .link:after, .TPL_FICHE_PRODUIT .produit-documents-technique a #search-suggester-results .search-all-results::before, #search-suggester-results .TPL_FICHE_PRODUIT .produit-documents-technique a .search-all-results::before, .TPL_FICHE_PRODUIT .produit-documents-technique a #search-suggester-results .link-close::before, #search-suggester-results .TPL_FICHE_PRODUIT .produit-documents-technique a .link-close::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .quantite a.minus::before, .quantite .TPL_FICHE_PRODUIT .produit-documents-technique a a.minus::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .quantite a.plus::before, .quantite .TPL_FICHE_PRODUIT .produit-documents-technique a a.plus::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .icon::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-bloc > span::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-bloc > a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .ariane li:not(:first-child)::before, .ariane .TPL_FICHE_PRODUIT .produit-documents-technique a li:not(:first-child)::before, .TPL_FICHE_PRODUIT .produit-documents-technique a [type="checkbox"]:not(:checked) + label:after,
.TPL_FICHE_PRODUIT .produit-documents-technique a [type="checkbox"]:checked + label:after, .TPL_FICHE_PRODUIT .produit-documents-technique a .u-checkbox-parent label:has(+ [type="checkbox"]):after, .u-checkbox-parent .TPL_FICHE_PRODUIT .produit-documents-technique a label:has(+ [type="checkbox"]):after, .TPL_FICHE_PRODUIT .produit-documents-technique a .textarea-wrap::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .col-left .menu-col a.current-parent::after, .col-left .menu-col .TPL_FICHE_PRODUIT .produit-documents-technique a a.current-parent::after,
.TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_RECHERCHE_FACETTE_PRODUIT .menu-col a.current-parent::after, .TPL_RECHERCHE_FACETTE_PRODUIT .menu-col .TPL_FICHE_PRODUIT .produit-documents-technique a a.current-parent::after,
.TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_RECHERCHE_FACETTE_DOCUMENT .menu-col a.current-parent::after, .TPL_RECHERCHE_FACETTE_DOCUMENT .menu-col .TPL_FICHE_PRODUIT .produit-documents-technique a a.current-parent::after,
.TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_RECHERCHE_ACTUALITE .menu-col a.current-parent::after, .TPL_RECHERCHE_ACTUALITE .menu-col .TPL_FICHE_PRODUIT .produit-documents-technique a a.current-parent::after,
.TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_RECHERCHE_FACETTE_TYPEFORM .menu-col a.current-parent::after, .TPL_RECHERCHE_FACETTE_TYPEFORM .menu-col .TPL_FICHE_PRODUIT .produit-documents-technique a a.current-parent::after, .TPL_FICHE_PRODUIT .produit-documents-technique a .menu-secondaire .nav0 .openChild::after, .menu-secondaire .nav0 .TPL_FICHE_PRODUIT .produit-documents-technique a .openChild::after, .TPL_FICHE_PRODUIT .produit-documents-technique a .menu-category h3 a::before, .menu-category h3 .TPL_FICHE_PRODUIT .produit-documents-technique a a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .recherche-facette-gauche button::before, .recherche-facette-gauche .TPL_FICHE_PRODUIT .produit-documents-technique a button::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .bouton-rechercher span::before, .bouton-rechercher .TPL_FICHE_PRODUIT .produit-documents-technique a span::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-ajouter-au-panier::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .btn-liste-achat-activate::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-liste-achat-actif::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-export::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .bouton-creer-panier a::after, .bouton-creer-panier .TPL_FICHE_PRODUIT .produit-documents-technique a a::after, .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-panier-actif::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .btn-definir-panier-actif::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .btn-valider-panier::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .btn-modifier-panier::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .btn-refuser-panier::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .btn-dupliquer-liste-achat::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .btn-supprimer-liste-achat::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .btn-generer-pdf::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .btn-print-chifree::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .btn-print-nonchifree::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .c-contacts__mail::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .c-contacts__tel::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .c-documents a::before, .c-documents .TPL_FICHE_PRODUIT .produit-documents-technique a a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .favoris-btn-container a:before, .favoris-btn-container .TPL_FICHE_PRODUIT .produit-documents-technique a a:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie a:before, .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie .TPL_FICHE_PRODUIT .produit-documents-technique a a:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .fiche-retour-header > dl::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .responsive-table .row.locked .libelle__title::before, .responsive-table .row.locked .TPL_FICHE_PRODUIT .produit-documents-technique a .libelle__title::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_LISTE_ACHAT .item-commande[data-type="2"]:before, .TPL_ORCAB_LISTE_ACHAT .TPL_FICHE_PRODUIT .produit-documents-technique a .item-commande[data-type="2"]:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_FICHE_DEVIS_BONS .btn-ajouter-panier::before, .TPL_ORCAB_FICHE_DEVIS_BONS .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-ajouter-panier::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_INFOS_COMPTE .table-roles .roleHeader .btn-retirer::before, .TPL_INFOS_COMPTE .table-roles .roleHeader .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-retirer::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_DIAPORAMA_ORCAB .carousel-action.play, .TPL_DIAPORAMA_ORCAB .TPL_FICHE_PRODUIT .produit-documents-technique a .carousel-action.play, .TPL_FICHE_PRODUIT .produit-documents-technique a .bloc-titre-pag .pag a::before, .bloc-titre-pag .pag .TPL_FICHE_PRODUIT .produit-documents-technique a a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-actu-lienplus a::before, .liste-actu-lienplus .TPL_FICHE_PRODUIT .produit-documents-technique a a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .ressources-associees li a::before, .ressources-associees li .TPL_FICHE_PRODUIT .produit-documents-technique a a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ACTUALITE_ZOOM_SUR .lien-plus::before, .TPL_ACTUALITE_ZOOM_SUR .TPL_FICHE_PRODUIT .produit-documents-technique a .lien-plus::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .btn-ajouter::before, .liste-produits .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-ajouter::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .btn-ajouter::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .search-suggester-results-produits .btn-ajouter::before, .search-suggester-results-produits .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-ajouter::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .bouton-vert::before, .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .produit-documents-technique a .bouton-vert::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .form-submit button::before, .liste-produits .actions-declinaison .form-submit .TPL_FICHE_PRODUIT .produit-documents-technique a button::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .form-submit .liste-produits .actions-declinaison button::before, .form-submit .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .produit-documents-technique a button::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .form-submit input[type="submit"]::before, .liste-produits .actions-declinaison .form-submit .TPL_FICHE_PRODUIT .produit-documents-technique a input[type="submit"]::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .form-submit .liste-produits .actions-declinaison input[type="submit"]::before, .form-submit .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .produit-documents-technique a input[type="submit"]::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .bouton-bleu::before, .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .produit-documents-technique a .bouton-bleu::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer::before, .liste-produits .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-imprimer::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_FICHE_RETOUR .form-submit .liste-produits .actions-declinaison .btn-imprimer::before, .TPL_ORCAB_FICHE_RETOUR .form-submit .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-imprimer::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .lignes-retour-wrap .form-submit .btn-imprimer::before, .liste-produits .actions-declinaison .lignes-retour-wrap .form-submit .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-imprimer::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .lignes-retour-wrap .form-submit .liste-produits .actions-declinaison .btn-imprimer::before, .lignes-retour-wrap .form-submit .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-imprimer::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .TPL_COMPARATEUR .action a.voir-produit::before, .liste-produits .actions-declinaison .TPL_COMPARATEUR .action .TPL_FICHE_PRODUIT .produit-documents-technique a a.voir-produit::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_COMPARATEUR .action .liste-produits .actions-declinaison a.voir-produit::before, .TPL_COMPARATEUR .action .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .produit-documents-technique a a.voir-produit::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .materiel-print-btn a::before, .liste-produits .actions-declinaison .materiel-print-btn .TPL_FICHE_PRODUIT .produit-documents-technique a a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .materiel-print-btn .liste-produits .actions-declinaison a::before, .materiel-print-btn .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .produit-documents-technique a a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .materiel-planning-pdf a::before, .liste-produits .actions-declinaison .materiel-planning-pdf .TPL_FICHE_PRODUIT .produit-documents-technique a a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .materiel-planning-pdf .liste-produits .actions-declinaison a::before, .materiel-planning-pdf .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .produit-documents-technique a a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .bouton-gris::before, .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .produit-documents-technique a .bouton-gris::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .bouton-rouge::before, .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .produit-documents-technique a .bouton-rouge::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .bouton-retour::before, .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .produit-documents-technique a .bouton-retour::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .bouton-rechercher::before, .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .produit-documents-technique a .bouton-rechercher::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .btn-ajouter-au-panier::before, .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-ajouter-au-panier::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .btn-liste-achat-activate::before, .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-liste-achat-activate::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .ressources-associees li.lien-tous a::before, .liste-produits .actions-declinaison .ressources-associees li.lien-tous .TPL_FICHE_PRODUIT .produit-documents-technique a a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .ressources-associees li.lien-tous .liste-produits .actions-declinaison a::before, .ressources-associees li.lien-tous .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .produit-documents-technique a a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste::before, .liste-produits .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-ajouter-liste::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-achat-plugin .ajouter-a-la-liste .liste-produits .actions-declinaison .btn-ajouter-liste::before, .liste-achat-plugin .ajouter-a-la-liste .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-ajouter-liste::before, .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-submit::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .btn-submit::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .produit-documents-technique a .btn-submit::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .bouton-vert::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .produit-documents-technique a .bouton-vert::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .form-submit button::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .form-submit .produit-documents-technique a button::before, .form-submit .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison button::before, .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .produit-documents-technique a button::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .form-submit input[type="submit"]::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .form-submit .produit-documents-technique a input[type="submit"]::before, .form-submit .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison input[type="submit"]::before, .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .produit-documents-technique a input[type="submit"]::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .bouton-bleu::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .produit-documents-technique a .bouton-bleu::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .produit-documents-technique a .btn-imprimer::before, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .btn-imprimer::before, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .produit-documents-technique a .btn-imprimer::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .lignes-retour-wrap .form-submit .btn-imprimer::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .lignes-retour-wrap .form-submit .produit-documents-technique a .btn-imprimer::before, .lignes-retour-wrap .form-submit .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .btn-imprimer::before, .lignes-retour-wrap .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .produit-documents-technique a .btn-imprimer::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .TPL_COMPARATEUR .action a.voir-produit::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .TPL_COMPARATEUR .action .produit-documents-technique a a.voir-produit::before, .TPL_COMPARATEUR .action .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison a.voir-produit::before, .TPL_COMPARATEUR .action .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .produit-documents-technique a a.voir-produit::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .materiel-print-btn a::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .materiel-print-btn .produit-documents-technique a a::before, .materiel-print-btn .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison a::before, .materiel-print-btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .produit-documents-technique a a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .materiel-planning-pdf a::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .materiel-planning-pdf .produit-documents-technique a a::before, .materiel-planning-pdf .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison a::before, .materiel-planning-pdf .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .produit-documents-technique a a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .bouton-gris::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .produit-documents-technique a .bouton-gris::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .bouton-rouge::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .produit-documents-technique a .bouton-rouge::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .bouton-retour::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .produit-documents-technique a .bouton-retour::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .bouton-rechercher::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .produit-documents-technique a .bouton-rechercher::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .btn-ajouter-au-panier::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .produit-documents-technique a .btn-ajouter-au-panier::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .btn-liste-achat-activate::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .produit-documents-technique a .btn-liste-achat-activate::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .ressources-associees li.lien-tous a::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .ressources-associees li.lien-tous .produit-documents-technique a a::before, .ressources-associees li.lien-tous .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison a::before, .ressources-associees li.lien-tous .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .produit-documents-technique a a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .produit-documents-technique a .btn-ajouter-liste::before, .liste-achat-plugin .ajouter-a-la-liste .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .actions-declinaison .btn-ajouter-liste::before, .liste-achat-plugin .ajouter-a-la-liste .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .produit-documents-technique a .btn-ajouter-liste::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .bouton-ajout-produit-liste:before, .liste-produits .TPL_FICHE_PRODUIT .produit-documents-technique a .bouton-ajout-produit-liste:before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .bouton-ajout-produit-liste:before, .TPL_FICHE_PRODUIT .liste-produits .produit-documents-technique a .bouton-ajout-produit-liste:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .delete-product:before, .liste-produits .TPL_FICHE_PRODUIT .produit-documents-technique a .delete-product:before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .liste-produits .delete-product:before, .TPL_FICHE_PRODUIT .liste-produits .produit-documents-technique a .delete-product:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-achat-plugin .ajouter-a-la-liste .listes::before, .liste-achat-plugin .ajouter-a-la-liste .TPL_FICHE_PRODUIT .produit-documents-technique a .listes::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .slick-arrow::before, .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .TPL_FICHE_PRODUIT .produit-documents-technique a .slick-arrow::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .thumb li.video-produit:hover a::after, .TPL_FICHE_PRODUIT .thumb li.video-produit:hover .produit-documents-technique a a::after, .TPL_FICHE_PRODUIT .produit-documents-technique a .thumb li.video-produit:active a::after, .TPL_FICHE_PRODUIT .thumb li.video-produit:active .produit-documents-technique a a::after, .TPL_FICHE_PRODUIT .produit-documents-technique a .thumb li.video-produit.selected a::after, .TPL_FICHE_PRODUIT .thumb li.video-produit.selected .produit-documents-technique a a::after, .TPL_FICHE_PRODUIT .produit-documents-technique a .photos.bloc .bx-controls-direction a::before, .TPL_FICHE_PRODUIT .photos.bloc .bx-controls-direction .produit-documents-technique a a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .bloc-action form#produitAjouterPanier .btnCaddie-List button.bouton-ajout-produit-liste::before, .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .btnCaddie-List .produit-documents-technique a button.bouton-ajout-produit-liste::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-submit::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn:before, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .TPL_FICHE_PRODUIT .produit-documents-technique a .btn:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .ico:before, .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .TPL_FICHE_PRODUIT .produit-documents-technique a .ico:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_LOCATION #navCommande .etapes-tunnel .done::after, .TPL_LOCATION #navCommande .etapes-tunnel .TPL_FICHE_PRODUIT .produit-documents-technique a .done::after, .TPL_FICHE_PRODUIT .produit-documents-technique a .materiel-print-btn a::before, .materiel-print-btn .TPL_FICHE_PRODUIT .produit-documents-technique a a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .materiel-planning-pdf a::before, .materiel-planning-pdf .TPL_FICHE_PRODUIT .produit-documents-technique a a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .materiel-form-container .btn-search span:before, .materiel-form-container .btn-search .TPL_FICHE_PRODUIT .produit-documents-technique a span:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .form-recherche .form-submit button span::before, .form-recherche .form-submit button .TPL_FICHE_PRODUIT .produit-documents-technique a span::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-doc-plus a::before, .liste-doc-plus .TPL_FICHE_PRODUIT .produit-documents-technique a a::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .listes-de-courses .btn-nouvelle-liste::before, .listes-de-courses .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-nouvelle-liste::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .listes-de-courses .liste-achat-table .liste-detail .libelle.pictogramme::before, .listes-de-courses .liste-achat-table .liste-detail .TPL_FICHE_PRODUIT .produit-documents-technique a .libelle.pictogramme::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .options-selectionnees .btnModifierOptionsPanier::before, .options-selectionnees .TPL_FICHE_PRODUIT .produit-documents-technique a .btnModifierOptionsPanier::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .options-selectionnees .btnModifierOptionsListeAchat::before, .options-selectionnees .TPL_FICHE_PRODUIT .produit-documents-technique a .btnModifierOptionsListeAchat::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .btnModifierOptionsDimensions::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .fiche-commande-header .btn-petit-blanc::before, .fiche-commande-header .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-petit-blanc::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .fiche-commande-header #btnCommandeRapide::before, .fiche-commande-header .TPL_FICHE_PRODUIT .produit-documents-technique a #btnCommandeRapide::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .table-actions [class*="bouton-"]::before, .table-actions .TPL_FICHE_PRODUIT .produit-documents-technique a [class*="bouton-"]::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .panier-contenu-indisponible .bouton-rouge::before, .panier-contenu-indisponible .TPL_FICHE_PRODUIT .produit-documents-technique a .bouton-rouge::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_TUNNEL .adresse-form-container .bouton-bleu:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .produit-documents-technique a .bouton-bleu:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-imprimer:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-imprimer:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-imprimer:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-imprimer:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit:before, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action .TPL_FICHE_PRODUIT .produit-documents-technique a a.voir-produit:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit:before, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .produit-documents-technique a a.voir-produit:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_TUNNEL .adresse-form-container .materiel-print-btn a:before, .TPL_TUNNEL .adresse-form-container .materiel-print-btn .TPL_FICHE_PRODUIT .produit-documents-technique a a:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .materiel-print-btn .TPL_TUNNEL .adresse-form-container a:before, .materiel-print-btn .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .produit-documents-technique a a:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a:before, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf .TPL_FICHE_PRODUIT .produit-documents-technique a a:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a:before, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .produit-documents-technique a a:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_TUNNEL .adresse-form-container .bouton-vert:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .produit-documents-technique a .bouton-vert:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_TUNNEL .adresse-form-container .form-submit button:before, .TPL_TUNNEL .adresse-form-container .form-submit .TPL_FICHE_PRODUIT .produit-documents-technique a button:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .form-submit .TPL_TUNNEL .adresse-form-container button:before, .form-submit .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .produit-documents-technique a button:before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_TUNNEL .adresse-form-container .form-submit input[type="submit"]:before, .TPL_TUNNEL .adresse-form-container .form-submit .TPL_FICHE_PRODUIT .produit-documents-technique a input[type="submit"]:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .form-submit .TPL_TUNNEL .adresse-form-container input[type="submit"]:before, .form-submit .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .produit-documents-technique a input[type="submit"]:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_TUNNEL .adresse-form-container .bouton-gris:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .produit-documents-technique a .bouton-gris:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_TUNNEL .adresse-form-container .bouton-rouge:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .produit-documents-technique a .bouton-rouge:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_TUNNEL .adresse-form-container .bouton-retour:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .produit-documents-technique a .bouton-retour:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_TUNNEL .adresse-form-container .bouton-rechercher:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .produit-documents-technique a .bouton-rechercher:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_TUNNEL .adresse-form-container .btn-ajouter-au-panier:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-ajouter-au-panier:before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_TUNNEL .adresse-form-container .btn-liste-achat-activate:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-liste-achat-activate:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous a:before, .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous .TPL_FICHE_PRODUIT .produit-documents-technique a a:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container a:before, .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .produit-documents-technique a a:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste:before, .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-ajouter-liste:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .btn-ajouter-liste:before, .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-ajouter-liste:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-submit:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_TUNNEL .adresse-form-container .btn-submit:before, .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .produit-documents-technique a .btn-submit:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir .TPL_FICHE_PRODUIT .produit-documents-technique a a:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir .TPL_FICHE_PRODUIT .produit-documents-technique a button:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit .TPL_FICHE_PRODUIT .produit-documents-technique a a:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit .TPL_FICHE_PRODUIT .produit-documents-technique a button:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_PANIER #panierLibelleForm::before, .TPL_PANIER .TPL_FICHE_PRODUIT .produit-documents-technique a #panierLibelleForm::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-panier-commande-rapide .liste-produits-item .btn-icon-delete::before, .liste-panier-commande-rapide .liste-produits-item .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-icon-delete::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .form-recherche-paniers-passes .form-submit button span:before, .form-recherche-paniers-passes .form-submit button .TPL_FICHE_PRODUIT .produit-documents-technique a span:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .paniers-table .row .nb-article::before, .paniers-table .row .TPL_FICHE_PRODUIT .produit-documents-technique a .nb-article::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .commande-rapide-panier .encart-commande-rapide .bouton-fichier span::before, .commande-rapide-panier .encart-commande-rapide .bouton-fichier .TPL_FICHE_PRODUIT .produit-documents-technique a span::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .commande-rapide-panier .results .quantite .btn-petit-vert::before, .commande-rapide-panier .results .quantite .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-petit-vert::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .commande-rapide-panier .results .quantite .frontModalBoxContainer .btn-submit::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-submit::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .frontModalBoxContainer .commande-rapide-panier .results .quantite .btn-submit::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-submit::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .commande-rapide-panier .results .quantite .frontModalBoxContainer #btn-supprimer-oui::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer .TPL_FICHE_PRODUIT .produit-documents-technique a #btn-supprimer-oui::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .frontModalBoxContainer .commande-rapide-panier .results .quantite #btn-supprimer-oui::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .TPL_FICHE_PRODUIT .produit-documents-technique a #btn-supprimer-oui::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .commande-rapide-panier .results .quantite .frontModalBoxContainer .btn-valider::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-valider::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .frontModalBoxContainer .commande-rapide-panier .results .quantite .btn-valider::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-valider::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .commande-rapide-panier .results .quantite .s-editherm-info__form button[type="submit"]::before, .commande-rapide-panier .results .quantite .s-editherm-info__form .TPL_FICHE_PRODUIT .produit-documents-technique a button[type="submit"]::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .s-editherm-info__form .commande-rapide-panier .results .quantite button[type="submit"]::before, .s-editherm-info__form .commande-rapide-panier .results .quantite .TPL_FICHE_PRODUIT .produit-documents-technique a button[type="submit"]::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .commande-rapide-panier .results .quantite .btn-petit-bleu::before, .commande-rapide-panier .results .quantite .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-petit-bleu::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .changeVue.active::before, .commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .TPL_FICHE_PRODUIT .produit-documents-technique a .changeVue.active::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .changeVue.active::before, .TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .TPL_FICHE_PRODUIT .produit-documents-technique a .changeVue.active::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .commande-rapide-panier .results .quantite .btn-petit-gris::before, .commande-rapide-panier .results .quantite .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-petit-gris::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .changeVue::before, .commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .TPL_FICHE_PRODUIT .produit-documents-technique a .changeVue::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .changeVue::before, .TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .TPL_FICHE_PRODUIT .produit-documents-technique a .changeVue::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator p::before, .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator .TPL_FICHE_PRODUIT .produit-documents-technique a p::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .gm-style-iw p::before, .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .gm-style-iw .TPL_FICHE_PRODUIT .produit-documents-technique a p::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .form-submit span::before, .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .form-submit .TPL_FICHE_PRODUIT .produit-documents-technique a span::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .fiche-adherent__coordonnes p:before, .fiche-adherent__coordonnes .TPL_FICHE_PRODUIT .produit-documents-technique a p:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_CARTE_TOURNEE .carte-tournee p::before, .TPL_ORCAB_CARTE_TOURNEE .carte-tournee .TPL_FICHE_PRODUIT .produit-documents-technique a p::before,
.TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_CARTE_TOURNEE .gm-style-iw p::before, .TPL_ORCAB_CARTE_TOURNEE .gm-style-iw .TPL_FICHE_PRODUIT .produit-documents-technique a p::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_CARTE_TOURNEE .form-submit span::before, .TPL_ORCAB_CARTE_TOURNEE .form-submit .TPL_FICHE_PRODUIT .produit-documents-technique a span::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_AGENDA .changeVue:before, .TPL_ORCAB_AGENDA .TPL_FICHE_PRODUIT .produit-documents-technique a .changeVue:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_AGENDA .bouton-details:before, .TPL_ORCAB_AGENDA .TPL_FICHE_PRODUIT .produit-documents-technique a .bouton-details:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_LISTE_AGENDA_ACCUEIL .bloc-icone:before, .TPL_LISTE_AGENDA_ACCUEIL .TPL_FICHE_PRODUIT .produit-documents-technique a .bloc-icone:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .c-agenda__bloc:before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_MES_FAVORIS .liste-detail::before, .TPL_ORCAB_MES_FAVORIS .TPL_FICHE_PRODUIT .produit-documents-technique a .liste-detail::before, .TPL_FICHE_PRODUIT .produit-documents-technique a #volet-compte .lien-picto::before, #volet-compte .TPL_FICHE_PRODUIT .produit-documents-technique a .lien-picto::before, .TPL_FICHE_PRODUIT .produit-documents-technique a #volet-favoris .lien-picto::before, #volet-favoris .TPL_FICHE_PRODUIT .produit-documents-technique a .lien-picto::before, .TPL_FICHE_PRODUIT .produit-documents-technique a #volet-paniers .btnPanierActif::before, #volet-paniers .TPL_FICHE_PRODUIT .produit-documents-technique a .btnPanierActif::before, .TPL_FICHE_PRODUIT .produit-documents-technique a #volet-listes-achat .btnPanierActif::before, #volet-listes-achat .TPL_FICHE_PRODUIT .produit-documents-technique a .btnPanierActif::before, .TPL_FICHE_PRODUIT .produit-documents-technique a #volet-paniers .lien-picto::after, #volet-paniers .TPL_FICHE_PRODUIT .produit-documents-technique a .lien-picto::after, .TPL_FICHE_PRODUIT .produit-documents-technique a #volet-listes-achat .lien-picto::after, #volet-listes-achat .TPL_FICHE_PRODUIT .produit-documents-technique a .lien-picto::after, .TPL_FICHE_PRODUIT .produit-documents-technique a #volet-paniers .voletPanier__search div .btn-search::before, #volet-paniers .voletPanier__search div .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-search::before, .TPL_FICHE_PRODUIT .produit-documents-technique a #volet-paniers .voletListeAchat__search div .btn-search::before, #volet-paniers .voletListeAchat__search div .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-search::before, .TPL_FICHE_PRODUIT .produit-documents-technique a #volet-listes-achat .voletPanier__search div .btn-search::before, #volet-listes-achat .voletPanier__search div .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-search::before, .TPL_FICHE_PRODUIT .produit-documents-technique a #volet-listes-achat .voletListeAchat__search div .btn-search::before, #volet-listes-achat .voletListeAchat__search div .TPL_FICHE_PRODUIT .produit-documents-technique a .btn-search::before, .TPL_FICHE_PRODUIT .produit-documents-technique a #volet-paniers a.voletPanier__locked::before, #volet-paniers .TPL_FICHE_PRODUIT .produit-documents-technique a a.voletPanier__locked::before, .TPL_FICHE_PRODUIT .produit-documents-technique a #volet-listes-achat a.voletPanier__locked::before, #volet-listes-achat .TPL_FICHE_PRODUIT .produit-documents-technique a a.voletPanier__locked::before, .TPL_FICHE_PRODUIT .produit-documents-technique a .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-date:before, .TPL_ORCAB_FEED_ET_A_LA_UNE .TPL_FICHE_PRODUIT .produit-documents-technique a .feed-date:before {
  font-size: 2rem;
  margin-right: 10px;
}

.TPL_FICHE_PRODUIT .produit-documents-technique a img {
  margin-right: 10px;
  vertical-align: sub;
}

@media screen and (max-width: 1440px) {
  .TPL_FICHE_PRODUIT .produit-documents-technique h3,
  .TPL_FICHE_PRODUIT .produit-documents-technique ul {
    max-width: 109.5rem;
  }
}

@media screen and (max-width: 740px) {
  .TPL_FICHE_PRODUIT .produit-documents-technique {
    margin-bottom: 20px;
  }
  .TPL_FICHE_PRODUIT .produit-documents-technique ul {
    gap: 0;
  }
  .TPL_FICHE_PRODUIT .produit-documents-technique li {
    width: 100%;
  }
}

.TPL_FICHE_PRODUIT .infotypes-wrap {
  display: flex;
  flex-flow: row wrap;
}

.TPL_FICHE_PRODUIT .infosTypes {
  margin-bottom: 10px;
}

.TPL_FICHE_PRODUIT .infosTypes li {
  display: inline-block;
  margin-right: .7rem;
  vertical-align: middle;
}

.TPL_FICHE_PRODUIT .infosTypes li .infotype-picto {
  position: relative;
  width: 24px;
  height: 24px;
}

.TPL_FICHE_PRODUIT .infosTypes li .infotype-picto .infotype-picto-color {
  width: 100%;
  height: 100%;
  -webkit-mask-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-mask-size: contain;
  background-size: 24px auto;
  background-repeat: no-repeat;
  background-position: center;
}

.TPL_FICHE_PRODUIT .infosTypes li a:before {
  font-size: 2.4rem;
}

.TPL_FICHE_PRODUIT .produitActuLiee a {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 15px;
  padding: 10px;
  border: 2px solid #82aa37;
  border-radius: 5px;
  text-decoration: none;
}

.TPL_FICHE_PRODUIT .produitActuLiee a .icomoon-actu-lie {
  font-size: 2.2rem;
  color: #82aa37;
}

.TPL_FICHE_PRODUIT .produitActuLiee a .produitActuLiee__Content h4 {
  font-size: 1.8rem;
  border-bottom: 1px solid #545454;
  margin-bottom: 0.5rem;
  font-weight: 700;
  color: #545454;
  display: inline-block;
}

.TPL_FICHE_PRODUIT .produitActuLiee a .produitActuLiee__Content span {
  display: block;
  font-size: 1.3rem;
}

.TPL_FICHE_PRODUIT .specifications {
  margin-bottom: 20px;
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .TPL_FICHE_PRODUIT .specifications {
    flex-direction: column;
    gap: 0;
  }
}

.TPL_FICHE_PRODUIT .spec {
  font-size: 1.4rem;
  margin-bottom: 5px;
}

@media screen and (max-width: 767px) {
  .TPL_FICHE_PRODUIT .spec {
    margin-bottom: 0;
  }
}

.TPL_FICHE_PRODUIT .spec.fabricant {
  text-transform: uppercase;
  margin-bottom: 10px;
  font-weight: 700;
  font-size: 1.5rem;
}

@media screen and (max-width: 767px) {
  .TPL_FICHE_PRODUIT .spec.fabricant {
    margin-bottom: 0;
  }
}

.TPL_FICHE_PRODUIT .spec .label {
  font-size: 1.4rem;
  color: #003160;
}

.TPL_FICHE_PRODUIT .description {
  margin-bottom: 20px;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.8rem;
}

.TPL_FICHE_PRODUIT .description p {
  margin-top: 0;
}

.TPL_FICHE_PRODUIT .tableau-produit {
  width: 100%;
}

.TPL_FICHE_PRODUIT .tableau-produit.quantitatif {
  text-align: center;
  table-layout: fixed;
}

@media screen and (max-width: 1024px) {
  .TPL_FICHE_PRODUIT .tableau-produit.quantitatif {
    width: 30rem;
    margin: 0;
  }
}

@media screen and (max-width: 767px) {
  .TPL_FICHE_PRODUIT .tableau-produit.quantitatif {
    width: 26rem;
    clear: both;
  }
}

@media screen and (max-width: 740px) {
  .TPL_FICHE_PRODUIT .tableau-produit.quantitatif {
    width: 100%;
  }
}

.TPL_FICHE_PRODUIT .tableau-produit.quantitatif thead,
.TPL_FICHE_PRODUIT .tableau-produit.quantitatif thead .prixHT {
  background-color: #e9e9e9;
  color: #003160;
  font-size: 1.3rem;
}

.TPL_FICHE_PRODUIT .tableau-produit.quantitatif thead td {
  text-align: center;
  padding: 3px 10px;
  border: none;
}

.TPL_FICHE_PRODUIT .tableau-produit.quantitatif .prixHT {
  font-size: 1.6rem;
  color: inherit;
  font-weight: normal;
}

.TPL_FICHE_PRODUIT .tableau-produit.quantitatif tbody td {
  padding: 8px 10px;
}

.TPL_FICHE_PRODUIT .tableau-produit.quantitatif tbody tr:nth-child(even) td {
  background-color: #f8f8f8;
}

.TPL_FICHE_PRODUIT .tableau-produit td {
  padding: 20px 10px;
  position: relative;
}

.TPL_FICHE_PRODUIT .tableau-produit td:last-child:after {
  content: '';
}

.TPL_FICHE_PRODUIT .tableau-produit td.qty-prod {
  width: 30%;
  padding-right: 30px;
}

.TPL_FICHE_PRODUIT .tableau-produit td.tableimage {
  padding-left: 30px;
}

@media screen and (min-width: 768px) {
  .TPL_FICHE_PRODUIT .tableau-produit td.attribut {
    width: 11%;
  }
}

@media screen and (max-width: 1024px) {
  .TPL_FICHE_PRODUIT .tableau-produit td {
    padding: 20px 7px;
  }
  .TPL_FICHE_PRODUIT .tableau-produit td.qty-prod {
    width: 32%;
  }
}

.TPL_FICHE_PRODUIT .tableau-produit tr.declinaison:nth-child(odd) {
  background-color: #ffffff;
}

.TPL_FICHE_PRODUIT .tableau-produit tr.declinaison:last-child {
  border-bottom: 0;
}

.TPL_FICHE_PRODUIT .tableau-produit tr.declinaison:hover {
  background: #bcc5ca;
}

.TPL_FICHE_PRODUIT .tableau-produit tr.declinaison.dimensionsVariables td > input[type="text"], .TPL_FICHE_PRODUIT .tableau-produit tr.declinaison.dimensionsVariables .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required td > input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_FICHE_PRODUIT .tableau-produit tr.declinaison.dimensionsVariables td > input[type="date"], .TPL_FICHE_PRODUIT .tableau-produit tr.declinaison.dimensionsVariables .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field td > input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_FICHE_PRODUIT .tableau-produit tr.declinaison.dimensionsVariables td > input[type="date"], .TPL_FICHE_PRODUIT .tableau-produit tr.declinaison.dimensionsVariables .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field td > input[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_FICHE_PRODUIT .tableau-produit tr.declinaison.dimensionsVariables td > input[type="date"] {
  height: 40px;
  padding: 2px 10px;
}

.TPL_FICHE_PRODUIT .tableau-produit tr.declinaison .tableimage a {
  display: block;
  line-height: 0;
}

.TPL_FICHE_PRODUIT .tableau-produit tr.declinaison .article-thumb {
  max-height: 80px;
}

@media screen and (max-width: 1024px) {
  .TPL_FICHE_PRODUIT .tableau-produit tr.declinaison .article-thumb {
    max-height: 60px;
  }
}

.TPL_FICHE_PRODUIT .tableau-produit thead td, .TPL_FICHE_PRODUIT .tableau-produit thead th {
  font-weight: normal;
  padding: 10px;
  text-align: left;
  border-bottom: 1px solid #cecece;
}

.TPL_FICHE_PRODUIT .tableau-produit thead td.tableimage, .TPL_FICHE_PRODUIT .tableau-produit thead th.tableimage {
  padding-left: 30px;
}

.TPL_FICHE_PRODUIT .qte-etat {
  position: relative;
  min-height: 18px;
  padding-left: 20px;
}

.TPL_FICHE_PRODUIT .qte-etat::before {
  position: absolute;
  top: 7px;
  left: 0;
  margin: 0 10px 0 0;
}

.TPL_FICHE_PRODUIT .stock-produit {
  text-align: right;
  overflow: hidden;
  margin-bottom: 10px;
}

.TPL_FICHE_PRODUIT .stock-produit.display-interweb {
  margin-bottom: 0;
}

.TPL_FICHE_PRODUIT .stock-produit.stock-empty {
  display: none !important;
}

.TPL_FICHE_PRODUIT .stock-produit:not(.debut-vie) {
  background: #fff;
  border-radius: 5px;
  padding: 20px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.TPL_FICHE_PRODUIT .stock-produit > div {
  padding: 0 10px 10px 0;
  box-sizing: border-box;
  min-width: 33%;
  flex-grow: 1;
}

@media screen and (max-width: 1024px) {
  .TPL_FICHE_PRODUIT .stock-produit > div {
    min-width: 50%;
  }
}

@media screen and (max-width: 767px) {
  .TPL_FICHE_PRODUIT .stock-produit > div {
    min-width: 100%;
  }
}

.TPL_FICHE_PRODUIT .stock-produit > div:last-child {
  padding-bottom: 0;
}

.TPL_FICHE_PRODUIT .stock-produit .qte-etat {
  text-align: left;
  font-size: 1.3rem;
}

.TPL_FICHE_PRODUIT .stock-produit .qte-etat .qty-stock {
  color: #e05151;
}

.TPL_FICHE_PRODUIT .stock-produit .qte-etat .qty-stock, .TPL_FICHE_PRODUIT .stock-produit .qte-etat .stock-terme {
  font-size: inherit;
}

.TPL_FICHE_PRODUIT .stock-produit .qte-etat .libelle {
  font-size: 1.4rem;
}

.TPL_FICHE_PRODUIT .stock-produit .stock-terme {
  text-align: left;
  display: inline-block;
  vertical-align: top;
}

.TPL_FICHE_PRODUIT .stock-produit .libelle {
  color: #545454;
  font-weight: 700;
}

.TPL_FICHE_PRODUIT .date-debut-vie {
  font-size: 1.4rem;
  color: #e05151;
  font-weight: 700;
}

.TPL_FICHE_PRODUIT .stock-terme {
  font-size: 1.2rem;
  color: #003160;
}

.TPL_FICHE_PRODUIT .bloc-action {
  background: #fff;
  border-radius: 5px;
  padding: 20px;
  margin-bottom: 10px;
  position: relative;
  display: flex;
  flex-direction: column;
}

.TPL_FICHE_PRODUIT .bloc-action .prix {
  order: 2;
}

.TPL_FICHE_PRODUIT .bloc-action .quantite a.minus::before,
.TPL_FICHE_PRODUIT .bloc-action .quantite a.plus::before {
  font-size: 2rem;
}

.TPL_FICHE_PRODUIT .bloc-action form {
  padding-bottom: 0;
}

.TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 18px;
  align-items: flex-end;
}

.TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier > div {
  flex: 1;
  margin-bottom: 0;
  min-width: 30%;
}

@media screen and (max-width: 1024px) {
  .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier > div {
    min-width: 45%;
  }
}

@media screen and (max-width: 767px) {
  .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier > div {
    min-width: 100%;
  }
}

.TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .options {
  width: 100%;
  flex: 100%;
}

.TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .quantite .qte {
  margin-bottom: 0;
}

.TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .quantite label {
  text-align: left;
}

.TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .btnCaddie-List {
  display: flex;
  flex-direction: row;
  gap: 20px;
  min-width: 65%;
}

.TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .btnCaddie-List > div {
  width: 50%;
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .btnCaddie-List > div {
    width: calc(100% - 70px);
  }
  .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .btnCaddie-List .liste-achat-plugin {
    width: 55px;
    height: 55px;
  }
  .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .btnCaddie-List button span {
    font-size: 1.8rem;
    line-height: 2.4rem;
  }
}

.TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .btnCaddie-List button {
  min-width: auto;
  font-size: 1.4rem;
  line-height: 2rem;
  letter-spacing: 0.06em;
  width: 100%;
  height: 100%;
  padding: 10px 5px;
}

.TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .btnCaddie-List button.bouton-ajout-produit-liste {
  background-color: #003160;
}

@media screen and (max-width: 767px) {
  .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .btnCaddie-List button.bouton-ajout-produit-liste {
    font-size: 0;
    width: 100%;
  }
}

.TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .btnCaddie-List button.bouton-ajout-produit-liste::before {
  content: "\e963";
  font-size: 2rem;
  margin-right: 8px;
  vertical-align: middle;
}

@media screen and (max-width: 767px) {
  .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .btnCaddie-List button.bouton-ajout-produit-liste::before {
    margin-left: 3px;
    margin-right: 3px;
  }
}

@media screen and (max-width: 767px) {
  .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier {
    justify-content: center;
  }
}

.TPL_FICHE_PRODUIT .bloc-action .message-promo {
  order: 1;
  margin: -2rem -2rem 1rem;
}

.TPL_FICHE_PRODUIT .bloc-action .message-promo .inner {
  border-radius: 5px 0 5px 0;
  display: inline-flex;
}

.TPL_FICHE_PRODUIT .bloc-action .message-promo .inner, .TPL_FICHE_PRODUIT .bloc-action .message-promo .inner span {
  font-size: 1.4rem;
}

.TPL_FICHE_PRODUIT .titre-prix {
  font-size: 1.8rem;
  color: #003160;
  font-weight: 700;
  margin-bottom: 10px;
}

.TPL_FICHE_PRODUIT .product__Prices {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.TPL_FICHE_PRODUIT .product__Prices .prix-libelle {
  flex: 100%;
  font-weight: normal;
  font-size: 1.4rem;
}

.TPL_FICHE_PRODUIT .product__Prices .produitPrix__aVenir {
  flex: 100%;
  display: flex;
  flex-wrap: wrap;
}

.TPL_FICHE_PRODUIT .product__Prices .produitPrix__aVenir .produitPrix .info {
  font-size: 1.4rem;
}

.TPL_FICHE_PRODUIT .product__Prices .produitPrix__aVenir .produitPrix .label.left,
.TPL_FICHE_PRODUIT .product__Prices .produitPrix__aVenir .produitPrix .info {
  color: #868686;
}

.TPL_FICHE_PRODUIT .produitPrix {
  margin-bottom: 10px;
  width: 33%;
  flex-grow: 1;
}

.TPL_FICHE_PRODUIT .produitPrix.noMargin {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .TPL_FICHE_PRODUIT .produitPrix {
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  .TPL_FICHE_PRODUIT .produitPrix .left, .TPL_FICHE_PRODUIT .produitPrix .right {
    width: 50%;
  }
}

.TPL_FICHE_PRODUIT .produitPrix .left {
  line-height: 18px;
}

.TPL_FICHE_PRODUIT .produitPrix .info {
  font-size: 1.6rem;
}

.TPL_FICHE_PRODUIT .produitPrix .option {
  color: #545454;
  line-height: 1;
}

.TPL_FICHE_PRODUIT .produitPrix .prix-conditionnement-msg {
  font-size: 1.2rem;
  float: left;
  color: #e05151;
}

.TPL_FICHE_PRODUIT .produitPrix .prix-conditionnement-msg::before {
  font-size: 1em;
  content: "\f05a";
  position: relative;
  margin-right: 5px;
}

.TPL_FICHE_PRODUIT .aligner-middle {
  width: 82%;
  margin: 0 auto;
}

.TPL_FICHE_PRODUIT .aligner-middle .liste-achat-plugin {
  text-align: center;
  margin: 0 0 15px;
}

.TPL_FICHE_PRODUIT .aligner-middle .liste-achat-plugin .ajouter-a-la-liste {
  margin: 10px auto 0;
}

.TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .dimensions-variables {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 20px;
}

@media screen and (max-width: 1024px) {
  .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .dimensions-variables {
    display: contents;
  }
}

.TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .dimensions-variables.flex60 {
  flex: 60%;
}

@media screen and (max-width: 1024px) {
  .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .dimensions-variables.flex60 {
    flex: 100%;
  }
}

.TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .dimensions-variables.flex100 {
  flex: 100%;
}

@media screen and (max-width: 1024px) {
  .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .dimensions-variables.flex100 {
    flex: 1;
  }
}

.TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .dimensions-variables label {
  font-size: 1.4rem;
  padding-bottom: 3px;
  font-weight: normal;
  color: #003160;
}

.TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .dimensions-variables .dimension {
  flex: 1;
  margin-bottom: 0;
  min-width: calc(33% - 20px);
}

.TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .dimensions-variables .dimension:last-child {
  padding-right: 0;
}

@media screen and (max-width: 1024px) {
  .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .dimensions-variables .dimension {
    min-width: 45%;
  }
}

@media screen and (max-width: 767px) {
  .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .dimensions-variables .dimension {
    min-width: 100%;
  }
}

.TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .dimensions-variables input[type="text"], .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .dimensions-variables .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .dimensions-variables input[type="date"], .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .dimensions-variables .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .dimensions-variables input[type="date"], .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .dimensions-variables .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .dimensions-variables input[type="date"] {
  border-color: #c4c4c4;
  color: #003160;
  font-weight: bold;
  padding: 2px 10px;
  margin-bottom: 0;
  border-radius: 10px;
}

.TPL_FICHE_PRODUIT .indication-max-min {
  font-size: 1.075rem;
  color: #003160;
  margin-bottom: 3px;
  font-weight: normal;
}

.TPL_FICHE_PRODUIT .alert.form-error {
  font-size: 1.1rem;
  font-weight: normal;
}

.TPL_FICHE_PRODUIT .options {
  margin-bottom: 15px;
}

.TPL_FICHE_PRODUIT .options h5 {
  font-size: 1.5rem;
  color: #003160;
  margin-bottom: 2px;
}

.TPL_FICHE_PRODUIT .options [type="checkbox"]:not(:checked) + label,
.TPL_FICHE_PRODUIT .options [type="checkbox"]:checked + label {
  color: #868686;
  font-size: 1.4rem;
  margin-bottom: 5px;
  display: block;
}

.TPL_FICHE_PRODUIT .options ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.TPL_FICHE_PRODUIT .options ul li {
  width: 50%;
  flex-grow: 1;
}

@media screen and (max-width: 1024px) {
  .TPL_FICHE_PRODUIT .options ul li {
    width: 100%;
  }
}

.TPL_FICHE_PRODUIT .bouton-actions {
  text-align: center;
  margin-bottom: 10px;
  background-color: #e9e9e9;
  padding: 10px;
  border-radius: 5px;
  display: flex;
  flex-wrap: wrap;
  gap: 2%;
}

.TPL_FICHE_PRODUIT .bouton-actions a, .TPL_FICHE_PRODUIT .bouton-actions button {
  font-size: 1.4rem;
  color: #003160;
  background: #ffffff;
  border: 1px solid #cecece;
  border-radius: 5px;
  padding: 15px 5px;
  min-width: 32%;
  min-height: 8.8rem;
  float: left;
  text-decoration: none;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 2rem;
  flex: 1;
  margin-top: 2%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.TPL_FICHE_PRODUIT .bouton-actions a:nth-child(-n+3), .TPL_FICHE_PRODUIT .bouton-actions button:nth-child(-n+3) {
  margin-top: 0;
}

.TPL_FICHE_PRODUIT .bouton-actions a:last-child, .TPL_FICHE_PRODUIT .bouton-actions button:last-child {
  margin-right: 0;
}

.TPL_FICHE_PRODUIT .bouton-actions a span::before, .TPL_FICHE_PRODUIT .bouton-actions button span::before {
  color: #003160;
  font-size: 2rem;
}

@media screen and (min-width: 1440px) {
  .TPL_FICHE_PRODUIT .bouton-actions a, .TPL_FICHE_PRODUIT .bouton-actions button {
    min-width: 23%;
  }
  .TPL_FICHE_PRODUIT .bouton-actions a:nth-child(4n), .TPL_FICHE_PRODUIT .bouton-actions button:nth-child(4n) {
    margin-top: 2%;
  }
  .TPL_FICHE_PRODUIT .bouton-actions a:nth-child(4n), .TPL_FICHE_PRODUIT .bouton-actions button:nth-child(4n) {
    margin-top: 0;
  }
}

@media screen and (max-width: 1024px) {
  .TPL_FICHE_PRODUIT .bouton-actions a, .TPL_FICHE_PRODUIT .bouton-actions button {
    min-width: 48%;
    margin-top: 2%;
    height: 100%;
  }
  .TPL_FICHE_PRODUIT .bouton-actions a:nth-child(3n), .TPL_FICHE_PRODUIT .bouton-actions button:nth-child(3n) {
    margin-top: 2%;
  }
  .TPL_FICHE_PRODUIT .bouton-actions a:nth-child(-n+2), .TPL_FICHE_PRODUIT .bouton-actions button:nth-child(-n+2) {
    margin-top: 0;
  }
}

.TPL_FICHE_PRODUIT .bouton-actions span {
  display: block;
  font-size: 1.429em;
  margin-bottom: 5px;
}

.TPL_FICHE_PRODUIT .caddie {
  margin-bottom: 20px;
  text-align: center;
}

.TPL_FICHE_PRODUIT .btn-submit::before {
  content: "\e964";
  font-size: 2rem;
  margin-right: 8px;
  vertical-align: text-bottom;
}

.TPL_FICHE_PRODUIT .btn-submit.quantiteAlreadyInPanier:before {
  content: "\e94b";
  font-size: 16px;
  display: inline-block;
  margin-top: -3px;
  margin-right: 5px;
}

.TPL_FICHE_PRODUIT .btn-submit.quantiteAlreadyInPanier i {
  font-style: normal;
  margin-right: 8px;
}

@media screen and (max-width: 740px) {
  .TPL_FICHE_PRODUIT .btn-submit.quantiteAlreadyInPanier span {
    font-size: 1.6rem;
  }
}

.TPL_FICHE_PRODUIT .btn-ajouter {
  border: 0;
  background: none;
}

.TPL_FICHE_PRODUIT .declinaisons {
  padding-top: 40px;
  padding-bottom: 50px;
  color: #868686;
}

.TPL_FICHE_PRODUIT .declinaisons a {
  color: #868686;
}

.TPL_FICHE_PRODUIT .declinaisons h2, .TPL_FICHE_PRODUIT .declinaisons .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .declinaisons h1, .TPL_FICHE_PRODUIT .declinaisons .fiche-adherent h1, .fiche-adherent .TPL_FICHE_PRODUIT .declinaisons h1 {
  font-size: 2rem;
  font-weight: 400;
}

.TPL_FICHE_PRODUIT .declinaisons thead {
  font-size: 1.3rem;
}

.TPL_FICHE_PRODUIT .declinaisons .caddie {
  float: right;
  margin-bottom: 0;
}

.TPL_FICHE_PRODUIT .declinaisons .btn-submit {
  text-indent: -9999px;
  min-width: 5.5rem;
  height: 5.5rem;
  position: relative;
  padding: 9px 0;
}

.TPL_FICHE_PRODUIT .declinaisons .btn-submit::before {
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  text-indent: 0;
}

@media (min-width: 768px) {
  .TPL_FICHE_PRODUIT .declinaisons .btn-submit.quantiteAlreadyInPanier {
    text-indent: initial;
  }
}

.TPL_FICHE_PRODUIT .declinaisons .btn-submit.quantiteAlreadyInPanier::before {
  transform: none;
  top: 0;
  left: 0;
  position: relative;
}

.TPL_FICHE_PRODUIT .declinaisons .quantite {
  float: left;
  width: calc(100% - 65px);
}

.TPL_FICHE_PRODUIT .declinaisons .quantite .qte-label {
  display: none;
}

.TPL_FICHE_PRODUIT .declinaisons .quantite .qte {
  background: #ffffff none repeat scroll 0 0;
  height: 55px;
  line-height: 55px;
  max-width: 220px;
  margin: 0;
}

.TPL_FICHE_PRODUIT .declinaisons .quantite .amount {
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 1.9rem;
  min-height: 5.3rem;
}

.TPL_FICHE_PRODUIT .declinaisons .dimension {
  height: 55px;
  line-height: 55px;
  border: 1px solid #c4c4c4;
  color: #003160;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .TPL_FICHE_PRODUIT .declinaisons table {
    display: block;
  }
  .TPL_FICHE_PRODUIT .declinaisons thead {
    display: none;
  }
  .TPL_FICHE_PRODUIT .declinaisons .bx-wrapper {
    max-width: 100% !important;
    width: 100%;
  }
  .TPL_FICHE_PRODUIT .declinaisons .mobile-hidden {
    display: none;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody {
    display: flex;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody tr {
    display: flex;
    flex-direction: column;
    background-color: #ffffff;
    padding: 10px 0;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody tr.declinaison:hover {
    background-color: #ffffff;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody tr td {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    padding: 5px 10px;
    border: 0;
    font-size: 1.3rem;
  }
  .TPL_FICHE_PRODUIT .declinaisons input.dimension {
    width: 100%;
    height: 40px;
  }
  .TPL_FICHE_PRODUIT .declinaisons input.dimension, .TPL_FICHE_PRODUIT .declinaisons .qte .amount {
    font-weight: 500;
    font-size: 1.3rem;
    line-height: 1.8rem;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody tr td.qty-prod {
    width: 185px;
    margin: auto;
    box-sizing: border-box;
    flex-direction: column;
    flex-wrap: wrap;
    padding: 0;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody tr td.qty-prod::before {
    text-align: left;
    width: 95%;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody tr td.qty-prod form {
    width: 100%;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody tr td.qty-prod .dimension {
    width: 300px;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody tr td.qty-prod .quantite {
    width: 100%;
    float: none;
    margin: auto;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody tr td.qty-prod .quantite .amount {
    width: calc(100% - 100px);
    border-left: 1px solid #cecece;
    border-right: 1px solid #cecece;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody tr td.qty-prod .quantite a.minus, .TPL_FICHE_PRODUIT .declinaisons tbody tr td.qty-prod .quantite a.plus {
    width: 50px;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody tr td.qty-prod button.quantiteAlreadyInPanier::before {
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    position: absolute;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody tr td.qty-prod button.quantiteAlreadyInPanier span {
    display: none;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody tr td.qty-prod .qte {
    width: auto;
    border-radius: 10px;
    display: flex;
    justify-content: space-between;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody tr td.qty-prod .caddie {
    float: none;
    margin: 15px auto 0;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody tr td::before {
    content: attr(data-label) " :";
    padding-right: 6px;
    text-align: left;
    color: #003160;
    text-transform: capitalize;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody tr .tableimage {
    justify-content: center;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody tr .tableimage::before {
    content: none;
  }
  .TPL_FICHE_PRODUIT .declinaisons tbody tr .tableimage .article-thumb {
    max-height: 80px;
  }
  .TPL_FICHE_PRODUIT .declinaisons .btn-submit {
    width: 42px;
    height: 42px;
    min-width: inherit;
  }
}

.TPL_FICHE_PRODUIT .caracteristiques {
  padding-bottom: 40px;
}

.TPL_FICHE_PRODUIT .caracteristiques h3 {
  font-size: 2rem;
  font-weight: 400;
  text-transform: none;
  padding: 4px 0 15px 0;
  max-width: 146.2rem;
  margin: 0 auto 1rem;
}

.TPL_FICHE_PRODUIT .caracteristiques table {
  max-width: 146.2rem;
  margin: 0 auto;
  width: 100%;
  text-align: left;
  font-size: 1.8rem;
}

.TPL_FICHE_PRODUIT .caracteristiques th {
  color: #003160;
  width: 25%;
  font-weight: normal;
}

.TPL_FICHE_PRODUIT .caracteristiques th, .TPL_FICHE_PRODUIT .caracteristiques td {
  padding: 15px 20px;
  font-size: 1.6rem;
  line-height: 2.4rem;
}

.TPL_FICHE_PRODUIT .caracteristiques tr {
  border-bottom: 1px solid #c1c1c1;
}

.TPL_FICHE_PRODUIT .caracteristiques tr:nth-child(odd) {
  background: #e7e7e7;
}

.TPL_FICHE_PRODUIT .caracteristiques tr:last-child {
  border-bottom: none;
}

@media screen and (max-width: 1440px) {
  .TPL_FICHE_PRODUIT .caracteristiques h3,
  .TPL_FICHE_PRODUIT .caracteristiques table {
    max-width: 109.5rem;
  }
}

@media screen and (max-width: 1024px) {
  .TPL_FICHE_PRODUIT .caracteristiques h3,
  .TPL_FICHE_PRODUIT .caracteristiques table {
    max-width: 78.4rem;
  }
}

@media screen and (max-width: 767px) {
  .TPL_FICHE_PRODUIT .caracteristiques th {
    width: 45%;
  }
}

.TPL_FICHE_PRODUIT .qty-prod form {
  padding-bottom: 0;
}

.TPL_FICHE_PRODUIT .calculator {
  margin-bottom: 15px;
}

.TPL_FICHE_PRODUIT .calculator input[type="text"], .TPL_FICHE_PRODUIT .calculator .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .TPL_FICHE_PRODUIT .calculator input[type="date"], .TPL_FICHE_PRODUIT .calculator .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .TPL_FICHE_PRODUIT .calculator input[type="date"], .TPL_FICHE_PRODUIT .calculator .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .TPL_FICHE_PRODUIT .calculator input[type="date"] {
  border-color: #c4c4c4;
  color: #003160;
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 1.9rem;
}

.TPL_FICHE_PRODUIT .calculator label {
  font-weight: normal;
  font-size: 1.4rem;
}

.TPL_FICHE_PRODUIT .txt-multiple-vente {
  margin: 10px 0 0;
  font-size: 1.4rem;
  color: #003160;
}

.TPL_FICHE_PRODUIT .message-promo span {
  font-size: 2.5rem;
}

.TPL_FICHE_PRODUIT .ecopart {
  line-height: 1.7rem;
}

.TPL_FICHE_PRODUIT .prixSecondeUniteForCalculateur {
  line-height: 1.7rem;
  font-size: 1.2rem;
}

.TPL_FICHE_PRODUIT .prixSecondeUniteForCalculateur:before {
  content: ' - ';
}

.TPL_FICHE_PRODUIT .prixSecondeUniteForCalculateur .label {
  color: #545454;
}

/* ===================================================================
 * TEMPLATE CATEGORIE LISTE PRODUIT REDAC
 * =================================================================*/
.TPL_CATEGORIE_LISTE_PRODUITS_REDAC {
  padding: 10px 0;
  background-color: #f6f6f6;
  overflow: visible;
}

.TPL_CATEGORIE_LISTE_PRODUITS_REDAC .liste-achat-plugin .ajouter-a-la-liste {
  left: 0;
}

.TPL_CATEGORIE_LISTE_PRODUITS_REDAC .titre-avec-favoris {
  box-sizing: border-box;
  margin: 0 0 10px;
}

/* ===================================================================
 * RESULTATS DE RECHERCHE
 * =================================================================*/
.recherche-resultats-onglets.ui-tabs-nav {
  border-bottom: 1px solid #cecece;
  margin: 0 0 2.5rem;
  padding: 0;
}

.recherche-resultats-onglets.ui-tabs-nav:before, .recherche-resultats-onglets.ui-tabs-nav:after {
  display: table;
  content: " ";
}

.recherche-resultats-onglets.ui-tabs-nav:after {
  clear: both;
}

.recherche-resultats-onglets.ui-tabs-nav li {
  border: 1px solid #cecece;
  border-bottom: 0;
  border-radius: 0;
  float: left;
  text-align: center;
  position: relative;
  top: inherit;
  margin: 0;
  height: 40px;
  box-sizing: border-box;
  /*&[aria-controls="search-produits-container"] a::before {
            @extend .icomoon;
            content: "\e91b";
            margin-right: 10px;
            font-size: 16px;
        }
        &[aria-controls="search-documents-container"] a::before {
            @extend .icomoon;
            content: "\e917";
            margin-right: 10px;
            font-size: 16px;
        }
        &[aria-controls="search-actualites-container"] a::before {
            @extend .icomoon;
            content: "\e94a";
            margin-right: 10px;
            font-size: 18px;
        }
        &[aria-controls="search-pages-container"] a::before {
            @extend .icomoon;
            content: "\e930";
            margin-right: 10px;
            font-size: 16px;
        }
        &:not(.ui-state-active) {
            height: 50px;
            bottom: -11px;
        }*/
}

.recherche-resultats-onglets.ui-tabs-nav li + li {
  border-left: 0;
}

.recherche-resultats-onglets.ui-tabs-nav li:first-child {
  border-radius: 5px 0 0 0;
}

.recherche-resultats-onglets.ui-tabs-nav li:last-child {
  border-radius: 0 5px 0 0;
}

.recherche-resultats-onglets.ui-tabs-nav li .ui-tabs-anchor {
  font-size: 1.4rem;
  font-weight: 700;
  color: #003160;
  padding: 0 20px;
  text-decoration: none;
  letter-spacing: 0.06em;
  display: flex;
  align-items: center;
  height: 100%;
}

.recherche-resultats-onglets.ui-tabs-nav li .ui-tabs-anchor:hover {
  text-decoration: none;
}

.recherche-resultats-onglets.ui-tabs-nav li span {
  margin-left: 5px;
}

.recherche-resultats-onglets.ui-tabs-nav li.ui-state-active {
  background: #003160;
  border: 1px solid #003160;
  margin: 0;
  padding: 0;
}

.recherche-resultats-onglets.ui-tabs-nav li.ui-state-active a {
  color: #fff;
}

.recherche-resultats-onglets.ui-tabs-nav li.ui-state-active a::before {
  color: #fff;
}

.recherche-resultats {
  position: relative;
  padding: 0;
}

.recherche-resultats .contenu-onglets {
  position: relative;
}

.recherche-resultats .recherche-tri-onglet {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 2.5rem;
}

.recherche-resultats .recherche-tri-onglet h2, .recherche-resultats .recherche-tri-onglet .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .recherche-resultats .recherche-tri-onglet h1, .recherche-resultats .recherche-tri-onglet .fiche-adherent h1, .fiche-adherent .recherche-resultats .recherche-tri-onglet h1 {
  margin: 0;
  padding: 0;
  font-size: 2.7rem;
  line-height: 3rem;
  font-weight: 700;
}

.recherche-resultats .recherche-tri-onglet h2 span, .recherche-resultats .recherche-tri-onglet .TPL_FICHE_PRODUIT .titre-produit h1 span, .TPL_FICHE_PRODUIT .titre-produit .recherche-resultats .recherche-tri-onglet h1 span, .recherche-resultats .recherche-tri-onglet .fiche-adherent h1 span, .fiche-adherent .recherche-resultats .recherche-tri-onglet h1 span {
  display: inline;
}

.recherche-resultats .recherche-tri-onglet h2 span.nb-produit, .recherche-resultats .recherche-tri-onglet .TPL_FICHE_PRODUIT .titre-produit h1 span.nb-produit, .TPL_FICHE_PRODUIT .titre-produit .recherche-resultats .recherche-tri-onglet h1 span.nb-produit, .recherche-resultats .recherche-tri-onglet .fiche-adherent h1 span.nb-produit, .fiche-adherent .recherche-resultats .recherche-tri-onglet h1 span.nb-produit {
  font-weight: 400;
}

.recherche-resultats .recherche-tri-onglet .tri-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  float: right;
}

.recherche-resultats .recherche-tri-onglet form {
  padding-bottom: 0;
  float: right;
}

.recherche-resultats .recherche-tri-onglet .en-stock,
.recherche-resultats .recherche-tri-onglet .suivi-en-stock {
  margin-right: 15px;
}

.recherche-resultats .right {
  width: calc(100% + 60px - 30px - 348px);
  float: right;
}

.recherche-resultats .liste-produits-wrapper {
  padding: 0;
}

.recherche-resultats .menu-col .nav0 a {
  padding-left: 0;
  font-size: 0.875em;
  margin: 0;
  padding: 8px 0;
  text-transform: none;
  border-top: 1px solid #d4d4d4;
}

@media (max-width: 1440px) {
  .recherche-resultats .recherche-tri-onglet form {
    float: none;
    display: inline-block;
  }
  .with-btn-favoris .recherche-resultats h1 {
    padding-right: 50px;
  }
  .recherche-resultats h1 {
    min-height: 4.8rem;
  }
}

.recherche-resultats .search-with-no-results {
  min-height: 30rem;
}

.TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT {
  overflow: visible;
}

.TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets:before, .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets:after {
  display: table;
  content: " ";
}

.TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets:after {
  clear: both;
}

.TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets .TPL_RECHERCHE_FACETTE_PRODUIT {
  width: 100%;
  float: left;
  margin-left: -6rem;
  max-width: 34.8rem;
}

@media screen and (max-width: 1440px) {
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets .TPL_RECHERCHE_FACETTE_PRODUIT {
    width: 25.5rem;
  }
}

.TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets .inner {
  width: calc(100% + 60px - 30px - 348px);
  float: right;
}

.TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets .inner.withoutCol {
  width: 100%;
  float: none;
  max-width: none;
}

@media screen and (max-width: 1440px) {
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets .inner {
    width: calc(100% + 60px - 30px - 255px);
  }
}

@media (min-width: 1025px) {
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits:not(.thumbnails) .message-promo {
    width: auto;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits:not(.thumbnails) .message-promo .inner {
    float: left;
    width: auto;
  }
}

@media (max-width: 767px) {
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits .message-promo .inner {
    width: calc(100% + 2rem);
  }
}

@media (max-width: 1024px) {
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits .message-promo + .message-promo .inner {
    width: calc(100% + 2rem);
  }
}

@media (min-width: 1025px) {
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits.thumbnails .message-promo .inner {
    float: left;
    width: calc(100% + 2rem);
  }
}

.TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT {
  overflow: visible;
}

.TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets:before, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets:after {
  display: table;
  content: " ";
}

.TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets:after {
  clear: both;
}

.TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets .TPL_RECHERCHE_FACETTE_DOCUMENT {
  width: 100%;
  float: left;
  margin-left: -6rem;
  max-width: 34.8rem;
}

@media screen and (max-width: 1440px) {
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets .TPL_RECHERCHE_FACETTE_DOCUMENT {
    width: 25.5rem;
  }
}

.TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets .inner {
  width: calc(100% + 60px - 30px - 348px);
  float: right;
}

.TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets .inner.withoutCol {
  width: 100%;
  float: none;
  max-width: none;
}

@media screen and (max-width: 1440px) {
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets .inner {
    width: calc(100% + 60px - 30px - 255px);
  }
}

.TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste {
  margin-bottom: 5px;
  gap: 3rem;
}

@media (min-width: 1025px) {
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste:before, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste:after {
    content: none !important;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste .item {
    width: calc(50% - 1.5rem);
  }
}

.TPL_RESULTAT_RECHERCHE_ACTUALITE .liste .resume {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.TPL_RESULTAT_RECHERCHE_ACTUALITE .liste img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (min-width: 768px) {
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .liste .item .photos {
    width: 22rem;
    aspect-ratio: 16 / 9;
  }
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .liste .item .description {
    width: 100%;
    flex: 1;
    padding: 9px 10px 9px 30px;
  }
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .liste .item .resume {
    margin: 5px 0 0;
    color: #868686;
  }
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .liste .item-inner {
    display: flex;
    flex-flow: row wrap;
  }
}

.TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM {
  overflow: visible;
}

.TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets:before, .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets:after {
  display: table;
  content: " ";
}

.TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets:after {
  clear: both;
}

.TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets .TPL_RECHERCHE_FACETTE_TYPEFORM {
  width: 100%;
  float: left;
  margin-left: -6rem;
  max-width: 34.8rem;
}

@media screen and (max-width: 1440px) {
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets .TPL_RECHERCHE_FACETTE_TYPEFORM {
    width: 25.5rem;
  }
}

.TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets .inner {
  width: calc(100% + 60px - 30px - 348px);
  float: right;
}

.TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets .inner.withoutCol {
  width: 100%;
  float: none;
  max-width: none;
}

@media screen and (max-width: 1440px) {
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets .inner {
    width: calc(100% + 60px - 30px - 255px);
  }
}

.TPL_RESULTAT_RECHERCHE_PAGE {
  overflow: visible;
}

/* ===================================================================
 * TEMPLATE ORCAB - LISTE DE PRODUITS CHOISIS
 * =================================================================*/
.TPL_ORCAB_LISTE_PRODUITS_CHOISIS {
  overflow: visible;
}

/* ===================================================================
 * NAVIGATION DES OPTIONS DE LA FICHE PRODUIT
 * =================================================================*/
.ficheproduit__liensNav {
  transition: top .5s;
}

.ficheproduit__liensNav ul {
  display: flex;
  gap: 30px;
  border-bottom: 1px solid #cecece;
  overflow: auto;
}

.ficheproduit__liensNav li {
  padding: 10px 0;
}

.ficheproduit__liensNav li.js-lienNavActive {
  border-bottom: 4px solid #003160;
}

.ficheproduit__liensNav li a {
  color: #003160;
  font-weight: 700;
  white-space: nowrap;
  font-size: 1.8rem;
  line-height: 2.4rem;
}

.ficheproduit__liensNav.sticky {
  position: fixed;
  top: 0;
  z-index: 100;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  margin: 0;
}

.ficheproduit__liensNav.sticky.intoHeader {
  position: relative;
}

/* ===================================================================
 * MEDIAQUERIES
 * =================================================================*/
@media screen and (max-width: 1024px) {
  /* ===================================================================
     * TEMPLATE LISTE PRODUIT
     * =================================================================*/
  .with-btn-favoris .TPL_CATEGORIE_LISTE_PRODUITS > h2, .with-btn-favoris .TPL_FICHE_PRODUIT .titre-produit .TPL_CATEGORIE_LISTE_PRODUITS > h1, .TPL_FICHE_PRODUIT .titre-produit .with-btn-favoris .TPL_CATEGORIE_LISTE_PRODUITS > h1, .with-btn-favoris .fiche-adherent .TPL_CATEGORIE_LISTE_PRODUITS > h1, .fiche-adherent .with-btn-favoris .TPL_CATEGORIE_LISTE_PRODUITS > h1 {
    padding-right: 50px;
  }
  /* ===================================================================
     * TEMPLATE FICHE PRODUIT
     * =================================================================*/
  .TPL_FICHE_PRODUIT {
    position: relative;
    display: flex;
    flex-flow: row wrap;
  }
  .TPL_FICHE_PRODUIT:before, .TPL_FICHE_PRODUIT:after {
    display: none;
  }
  .TPL_FICHE_PRODUIT .bloc {
    width: 30rem;
    margin: 0;
  }
  .TPL_FICHE_PRODUIT .bloc.infos {
    float: right;
    width: calc(100% - 32rem);
  }
  .TPL_FICHE_PRODUIT .desc-produit {
    width: 100%;
  }
  .TPL_FICHE_PRODUIT .desc-produit .prix-quantitatif,
  .TPL_FICHE_PRODUIT .desc-produit .description {
    width: 30rem;
  }
  .TPL_FICHE_PRODUIT .aligner-middle.calcule {
    width: 100%;
  }
  .TPL_FICHE_PRODUIT .btn-comparateur {
    display: none !important;
  }
  .TPL_FICHE_PRODUIT .bouton-actions a, .TPL_FICHE_PRODUIT .bouton-actions button {
    min-height: 97px;
  }
  /* ===================================================================
     * RESULTATS DE RECHERCHE
     * =================================================================*/
  .recherche-resultats .facette-mobile {
    left: 350px;
    position: absolute;
    top: 70px;
  }
  .recherche-resultats select {
    padding-right: 30px;
  }
  .recherche-resultats .menu-col .nav0 > a {
    padding-bottom: 0;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits-wrapper .liste-produits, .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits-wrapper .inner,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste-produits-wrapper .liste-produits,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste-produits-wrapper .inner,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .liste-produits-wrapper .liste-produits,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .liste-produits-wrapper .inner,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .liste-produits-wrapper .liste-produits,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .liste-produits-wrapper .inner {
    width: 100%;
    float: none;
    clear: both;
    box-sizing: border-box;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_PRODUIT,
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_DOCUMENT,
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_TYPEFORM,
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits-wrapper .TPL_RECHERCHE_ACTUALITE,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_PRODUIT,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_DOCUMENT,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_TYPEFORM,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste-produits-wrapper .TPL_RECHERCHE_ACTUALITE,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_PRODUIT,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_DOCUMENT,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_TYPEFORM,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .liste-produits-wrapper .TPL_RECHERCHE_ACTUALITE,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_PRODUIT,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_DOCUMENT,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_TYPEFORM,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .liste-produits-wrapper .TPL_RECHERCHE_ACTUALITE {
    float: none;
    width: 100%;
    overflow: visible;
    position: relative;
    margin: 0;
    max-width: inherit;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits-wrapper .date-field .field-required, .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits-wrapper .date-field .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits-wrapper .date-field .field,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste-produits-wrapper .date-field .field-required,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste-produits-wrapper .date-field .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field,
  .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste-produits-wrapper .date-field .field,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .liste-produits-wrapper .date-field .field-required,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .liste-produits-wrapper .date-field .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field,
  .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .liste-produits-wrapper .date-field .field,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .liste-produits-wrapper .date-field .field-required,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .liste-produits-wrapper .date-field .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field,
  .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_RESULTAT_RECHERCHE_ACTUALITE .liste-produits-wrapper .date-field .field {
    padding: 10px 10px 0;
    margin-bottom: 10px;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits-wrapper .date-field .field-required .datepickerField, .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits-wrapper .date-field .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .datepickerField, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits-wrapper .date-field .field .datepickerField,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste-produits-wrapper .date-field .field-required .datepickerField,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste-produits-wrapper .date-field .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .datepickerField,
  .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste-produits-wrapper .date-field .field .datepickerField,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .liste-produits-wrapper .date-field .field-required .datepickerField,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .liste-produits-wrapper .date-field .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .datepickerField,
  .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .liste-produits-wrapper .date-field .field .datepickerField,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .liste-produits-wrapper .date-field .field-required .datepickerField,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .liste-produits-wrapper .date-field .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .datepickerField,
  .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_RESULTAT_RECHERCHE_ACTUALITE .liste-produits-wrapper .date-field .field .datepickerField {
    border-color: #f6f6f6;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets .facette-wrapper,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets .facette-wrapper,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets .facette-wrapper,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .contenu-onglets .facette-wrapper {
    display: block;
    margin: 0;
    border-radius: 0;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets .facette-wrapper > h3,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets .facette-wrapper > h3,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets .facette-wrapper > h3,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .contenu-onglets .facette-wrapper > h3 {
    width: 100%;
    padding: 0;
    text-transform: none;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets .facette-wrapper > h3::after,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets .facette-wrapper > h3::after,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets .facette-wrapper > h3::after,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .contenu-onglets .facette-wrapper > h3::after {
    content: '';
    color: #fff;
    position: relative;
    display: inline;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets .facette-wrapper .facette,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets .facette-wrapper .facette,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets .facette-wrapper .facette,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .contenu-onglets .facette-wrapper .facette {
    width: 100%;
    max-width: inherit;
    box-sizing: border-box;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets .facette-wrapper .facette .menu-categorie-liste,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets .facette-wrapper .facette .menu-categorie-liste,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets .facette-wrapper .facette .menu-categorie-liste,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .contenu-onglets .facette-wrapper .facette .menu-categorie-liste {
    padding: 10px 0;
    margin: 0;
    text-align: left;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .h3,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .h3,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .h3,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .h3 {
    margin-bottom: 10px;
    padding-left: 35px;
    padding-right: 10px;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav0 a,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav0 a,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav0 a,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav0 a {
    padding-left: 35px;
    padding-right: 10px;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav0 > a,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav0 > a,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav0 > a,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav0 > a {
    margin-bottom: 10px;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav0 .hasChild,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav0 .hasChild,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav0 .hasChild,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav0 .hasChild {
    padding-left: 35px;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav0 .openChild,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav0 .openChild,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav0 .openChild,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav0 .openChild {
    left: 10px;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav3,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav3,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav3,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav3 {
    margin-left: 0;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav3 .openChild,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav3 .openChild,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav3 .openChild,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .contenu-onglets .facette-wrapper .facette .menu-categorie-liste .nav3 .openChild {
    top: 0;
    left: 0;
    padding-left: 5px;
    border: none;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .contenu-onglets .menu-col .facette-wrapper > h3::after,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .contenu-onglets .menu-col .facette-wrapper > h3::after,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .contenu-onglets .menu-col .facette-wrapper > h3::after,
  .TPL_RESULTAT_RECHERCHE_ACTUALITE .contenu-onglets .menu-col .facette-wrapper > h3::after {
    content: "\f107";
    font-size: 0.882em;
    font-family: 'FontAwesome', Arial, sans-serif;
    color: #fff;
    position: relative;
    display: inline;
    margin-left: 10px;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .rechercheFacetteProduit-optionGroup > div > div:not(.rechercheFacetteProduit-option) {
    margin: 10px 0;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT form {
    padding: 0;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .rechercheFacetteProduit-optionGroup > div > div:not(.rechercheFacetteProduit-option) {
    margin: 10px 0;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM form {
    padding: 0;
  }
}

@media screen and (max-width: 767px) {
  .liste-produits .details-produits {
    width: 100%;
    display: inherit;
    margin: 0;
  }
  .liste-produits .encadre {
    margin: 5px 2.5% 0 0;
    width: auto;
    float: left;
  }
  .liste-produits .caption {
    width: 100%;
    float: none;
  }
  .liste-produits .details-bas {
    clear: left;
    margin: 15px 0 10px;
    display: inline-block;
  }
  .liste-produits .qty-right {
    width: 140px;
    float: right;
  }
  .liste-produits .qty-right .btn-action {
    height: 60px;
    line-height: 60px;
    width: 60px;
  }
  .liste-produits .qty-right .message {
    min-height: inherit;
  }
  .liste-produits .zoneinfo {
    display: none;
  }
  .liste-produits .infotypes-wrap {
    display: none;
  }
  .liste-produits .details-bas {
    width: 100%;
  }
  .liste-produits .qty-right .btn-voir-produit {
    margin-bottom: 0;
  }
  .liste-produits .message-promo {
    text-align: center;
  }
  .liste-produits .qty-right.withCalc {
    width: 100%;
    float: none;
  }
  .liste-produits .qty-right.withCalc .qte-label {
    width: 48%;
    text-align: left;
  }
  .liste-produits .qty-right.withCalc .qte {
    width: 48%;
    float: left;
  }
  .liste-produits .qty-right.withCalc .calc {
    width: 48%;
    float: right;
    margin-top: -27px;
  }
  .liste-produits .qty-right.withCalc .box-panier:before, .liste-produits .qty-right.withCalc .box-panier:after {
    display: table;
    content: " ";
  }
  .liste-produits .qty-right.withCalc .box-panier:after {
    clear: both;
  }
  .liste-produits .caption {
    position: relative;
  }
  .liste-produits .prixSecondeUniteForCalculateur {
    left: 0;
  }
  .liste-produits .details-produits .ref,
  .liste-produits .details-produits .prix-container {
    width: 48%;
    float: left;
  }
  .liste-produits .details-produits .stock {
    width: 100%;
  }
  /* ===================================================================
     * TEMPLATE FICHE PRODUIT
     * =================================================================*/
  .TPL_FICHE_PRODUIT .bloc {
    width: 26rem;
  }
  .TPL_FICHE_PRODUIT .bloc.infos {
    width: calc(100% - 28rem);
  }
  .TPL_FICHE_PRODUIT .desc-produit .prix-quantitatif,
  .TPL_FICHE_PRODUIT .desc-produit .description {
    width: 26rem;
  }
  .TPL_FICHE_PRODUIT .fiche-produit-container {
    width: 100%;
  }
  .TPL_FICHE_PRODUIT .bloc-action {
    padding: 20px 10px;
  }
  .TPL_FICHE_PRODUIT .bloc-action .message-promo {
    margin: -2rem -1rem 1rem;
  }
  .TPL_FICHE_PRODUIT .aligner-middle {
    width: 100%;
    text-align: center;
  }
  .TPL_FICHE_PRODUIT .declinaisons .quantite .qte {
    width: auto;
    border-radius: 0;
  }
  .TPL_FICHE_PRODUIT .declinaisons .quantite .amount {
    width: 40px;
    border: 0;
  }
  .TPL_FICHE_PRODUIT .tableau-produit td.qty-prod,
  .TPL_FICHE_PRODUIT .tableau-produit th.qty-prod,
  .TPL_FICHE_PRODUIT .tableau-produit td.qty-prod form {
    width: 90px;
  }
  .TPL_FICHE_PRODUIT .tableau-produit.quantitatif .prixHT:after {
    content: '';
  }
  .TPL_FICHE_PRODUIT .message-promo span {
    font-size: 2rem;
  }
  .TPL_FICHE_PRODUIT .stock-produit > div {
    float: none;
    width: 100%;
    padding: 0;
    margin-bottom: 5px;
  }
  .TPL_FICHE_PRODUIT .stock-produit > div:nth-child(2n) {
    border: 0;
    padding: 0;
  }
  /* ===================================================================
     * RESULTATS DE RECHERCHE
     * =================================================================*/
  .recherche-resultats-onglets.ui-tabs-nav {
    margin: 0 0 20px;
    padding: 0 0 10px;
    border: 0;
    display: flex;
    overflow-x: auto;
  }
  .recherche-resultats-onglets.ui-tabs-nav li {
    background-color: #ffffff;
    border-bottom: 1px solid #cecece;
  }
  .recherche-resultats-onglets.ui-tabs-nav li .ui-tabs-anchor {
    width: 100%;
    text-align: center;
    box-sizing: border-box;
  }
  .recherche-resultats-onglets.ui-tabs-nav li.ui-state-active {
    border-bottom-color: #003160;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_PRODUIT,
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_DOCUMENT,
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_TYPEFORM,
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .liste-produits-wrapper .liste-produits,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_PRODUIT,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_DOCUMENT,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_TYPEFORM,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste-produits-wrapper .liste-produits,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_PRODUIT,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_DOCUMENT,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .liste-produits-wrapper .TPL_RECHERCHE_FACETTE_TYPEFORM,
  .TPL_RESULTAT_RECHERCHE_FACETTE_TYPEFORM .liste-produits-wrapper .liste-produits {
    width: 100%;
    float: none;
    clear: both;
    box-sizing: border-box;
  }
  .recherche-resultats .recherche-tri-onglet {
    flex-direction: column;
    gap: 1rem;
    align-items: flex-start;
    margin-bottom: 1rem;
  }
  .recherche-resultats .recherche-tri-onglet h2, .recherche-resultats .recherche-tri-onglet .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .recherche-resultats .recherche-tri-onglet h1, .recherche-resultats .recherche-tri-onglet .fiche-adherent h1, .fiche-adherent .recherche-resultats .recherche-tri-onglet h1 {
    font-size: 2rem;
    line-height: 2.2rem;
    min-height: inherit;
  }
  .recherche-resultats .recherche-tri-onglet .tri-wrapper {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px 0;
    float: none;
    width: 100%;
  }
  .recherche-resultats .recherche-tri-onglet form,
  .recherche-resultats .recherche-tri-onglet .select-wrap {
    width: 100%;
  }
  .recherche-resultats .recherche-tri-onglet .controls {
    display: flex;
    align-items: center;
  }
  .recherche-resultats .recherche-tri-onglet .controls span:last-child {
    flex: 1;
  }
}

@media screen and (max-width: 740px) {
  /* ===================================================================
    * TEMPLATE FICHE PRODUIT
    * =================================================================*/
  .TPL_FICHE_PRODUIT .favoris-btn-container {
    margin-top: -10px;
  }
  .TPL_FICHE_PRODUIT .titre-avec-favoris ~ .titre-avec-actualiteLies {
    top: -5px;
  }
  .TPL_FICHE_PRODUIT .bloc {
    width: 100%;
    float: none;
  }
  .TPL_FICHE_PRODUIT .bloc.infos {
    width: 100%;
  }
  .TPL_FICHE_PRODUIT .desc-produit .prix-quantitatif,
  .TPL_FICHE_PRODUIT .desc-produit .description {
    width: 100%;
  }
  .TPL_FICHE_PRODUIT .diapo li {
    display: block;
  }
  .TPL_FICHE_PRODUIT .secondaryPhoto-slide,
  .TPL_FICHE_PRODUIT .sliderSecondaryImage,
  .TPL_FICHE_PRODUIT .photos .thumb {
    display: none;
  }
}

.etiquetteProduit {
  position: absolute;
  top: 4px;
  max-width: 80px;
  max-height: 34px;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (max-width: 767px) {
  .etiquetteProduit {
    max-width: 60px;
  }
}

.etiquetteProduit--big,
.TPL_FICHE_PRODUIT .photos.bloc .mainPhotoMobile-slide .etiquetteProduit--big,
.TPL_FICHE_PRODUIT .diapo .etiquetteProduit--big {
  max-height: 80px;
}

@media screen and (max-width: 767px) {
  .etiquetteProduit--big,
  .TPL_FICHE_PRODUIT .photos.bloc .mainPhotoMobile-slide .etiquetteProduit--big,
  .TPL_FICHE_PRODUIT .diapo .etiquetteProduit--big {
    max-height: 60px;
  }
}

/* ===================================================================
 * TEMPLATE LISTE DES ETIQUETTES PRODUITS
 * =================================================================*/
.TPL_ORCAB_LISTE_ETIQUETTE {
  /*
    Liste etiquettes
  */
  /*
    Formulaire edit/new
  */
}

.TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .encart-commande-rapide .depot-fichier {
  text-align: right;
}

.TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .encart-commande-rapide .depot-fichier .bouton-rouge:before {
  content: "\f014";
  margin-right: 10px;
  font-size: 1.071em;
}

@media screen and (max-width: 1024px) {
  .TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .encart-commande-rapide .depot-fichier {
    margin-top: 15px;
  }
}

.TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .display-table .reference {
  width: 20%;
}

.TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .display-table .reference .img-prod img {
  max-width: 51px;
}

.TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .display-table .reference .img-prod + .details {
  display: inline-block;
}

.TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .display-table .libelle {
  width: 20%;
}

.TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .display-table .marque {
  width: 14%;
}

.TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .display-table .cond {
  width: 10%;
}

.TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .display-table .quantite {
  width: 8%;
}

@media screen and (max-width: 1024px) {
  .TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .liste-tbody {
    padding-top: 10px;
  }
  .TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .liste-produits-item .display-table {
    display: flex;
  }
  .TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .liste-produits-item .display-table .reference {
    width: 40%;
  }
  .TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .liste-produits-item .display-table .libelle {
    width: 50%;
  }
  .TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .liste-produits-item .display-table .marque {
    width: 0;
    padding: 0;
  }
  .TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .liste-produits-item .display-table .cond {
    width: 10%;
  }
  .TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .liste-produits-item .display-table .quantite {
    width: 10%;
  }
  .TPL_ORCAB_LISTE_ETIQUETTE .commande-rapide-panier .liste-produits-item .display-table .prix {
    width: 20%;
  }
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-wrapper {
  background: #e7e7e7;
  padding: 20px;
  border-radius: 8px;
  margin-bottom: 30px;
  clear: both;
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-wrapper label {
  color: #004462;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-wrapper {
    padding: 20px 10px;
  }
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .select-wrap {
  float: left;
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn-wrapper {
  float: right;
  margin: 4px 0 0;
  display: flex;
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn:before {
  margin-right: 5px;
  font-size: 1.2em;
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn-ajouter:before {
  content: "\e91a";
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn-supprimer:before {
  content: "\e909";
  font-size: 1.035em;
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn-nouveau:before {
  content: "\e913";
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn:not(:first-child) {
  margin-left: 10px;
}

@media screen and (max-width: 1024px) {
  .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn {
    padding: 10px 15px;
  }
  .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn + .btn {
    margin-left: 5px;
  }
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .select-wrap {
    width: 100%;
  }
  .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn-wrapper {
    margin-top: 15px;
    width: 100%;
    justify-content: center;
  }
}

.TPL_ORCAB_LISTE_ETIQUETTE .entete-etiquette {
  border-bottom: 1px solid #c4c4c4;
  font-size: 0.94118em;
  padding: 0 20px 10px;
  display: flex;
}

.TPL_ORCAB_LISTE_ETIQUETTE .entete-etiquette .article {
  width: 22%;
}

.TPL_ORCAB_LISTE_ETIQUETTE .entete-etiquette .libelle {
  width: 48%;
}

.TPL_ORCAB_LISTE_ETIQUETTE .entete-etiquette .prix {
  width: 10%;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_LISTE_ETIQUETTE .entete-etiquette {
    padding: 0 10px 10px;
  }
  .TPL_ORCAB_LISTE_ETIQUETTE .entete-etiquette .article, .TPL_ORCAB_LISTE_ETIQUETTE .entete-etiquette .libelle {
    width: 50%;
  }
  .TPL_ORCAB_LISTE_ETIQUETTE .entete-etiquette .prix {
    display: none;
  }
}

.TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette {
  background: #fff;
  border-radius: 7px;
  margin-top: 20px;
  height: 80px;
  overflow: hidden;
  display: flex;
  align-items: center;
  padding: 20px;
}

.TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette > div {
  padding-right: 10px;
  box-sizing: border-box;
}

.TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .article {
  width: 22%;
}

.TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .libelle {
  width: 48%;
}

.TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .prix {
  width: 10%;
}

.TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .action {
  flex-grow: 1;
  padding-right: 0;
  text-align: right;
}

.TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .action .btn {
  padding: 0;
  width: 50px;
  height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25em;
}

.TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .action .btn + .btn {
  margin-left: 10px;
}

.TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .ico-pencil:before {
  content: '\e923';
}

.TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .ico-delete:before {
  content: '\e909';
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette {
    flex-wrap: wrap;
    align-items: flex-start;
    height: auto;
    padding: 10px;
  }
  .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .article {
    width: 50%;
    margin-bottom: 10px;
  }
  .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .libelle {
    width: 50%;
    margin-bottom: 10px;
    align-self: flex-start;
  }
  .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .prix {
    width: 50%;
    align-self: center;
  }
}

.TPL_ORCAB_LISTE_ETIQUETTE .table-action {
  background: #e7e7e7;
  padding: 20px;
  border-radius: 8px;
  margin-bottom: 10px;
  margin-top: 20px;
  clear: both;
}

.TPL_ORCAB_LISTE_ETIQUETTE .table-action a {
  color: #004462;
}

.TPL_ORCAB_LISTE_ETIQUETTE .table-action a:hover {
  color: #ffffff;
  background: #004462;
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field {
  min-height: 60px;
  padding-bottom: 5px;
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field label {
  width: 19%;
  display: inline-block;
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field label[for="eolas_ecommerce_orcab_etiquettetype_descriptionCourte"] {
  float: left;
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field input, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field .field-required, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field .field, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field textarea {
  width: 79%;
  display: inline-block;
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field .field-required:after, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field:after, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field .field:after {
  right: 15px;
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field .field-required input, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field .field input {
  width: 100%;
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field .field-required input[type="checkbox"], .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="checkbox"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field .field input[type="checkbox"] {
  width: auto;
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form #eolas_ecommerce_orcab_etiquettetype > div.field-required, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire #eolas_ecommerce_orcab_etiquettetype > div.field, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form #eolas_ecommerce_orcab_etiquettetype > div.field {
  visibility: hidden;
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form #eolas_ecommerce_orcab_etiquettetype_memorise {
  margin-top: 5px;
  width: auto;
  visibility: visible;
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .btn-cont {
  display: flex;
  align-self: center;
  justify-content: space-between;
}

.TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .btn-cont .btn {
  box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field {
    padding-bottom: 15px;
  }
  .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field label, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field input, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field .field-required, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field .field, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field textarea {
    width: 100%;
  }
  .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .field label[for="eolas_ecommerce_orcab_etiquettetype_memorise"] {
    width: 30%;
  }
  .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .btn-cont {
    flex-direction: column;
  }
  .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-detail-form .btn-cont .btn + .btn {
    margin-top: 20px;
  }
}

/* ===================================================================
 * TEMPLATE COMPARATEUR
 * =================================================================*/
.comparateur .container-comparateur {
  margin-bottom: 35px;
}

.comparateur .items li {
  margin-bottom: 10px;
  border-radius: 5px;
  background: #fff;
  padding: 10px;
  display: flex;
  flex-wrap: wrap;
}

.comparateur .items li > div {
  display: inline-block;
  vertical-align: middle;
}

.comparateur .items li .comparateur_libelleDel {
  width: 57%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
}

.comparateur .items .item-image {
  margin-right: 10px;
}

.comparateur .items .libelle {
  font-size: 1.3rem;
  color: #004462;
  text-transform: uppercase;
  margin-right: 5px;
}

.comparateur .items .icon-delete:hover, .comparateur .items .icon-delete:focus {
  text-decoration: none;
}

.comparateur h3 {
  margin-bottom: 12px;
}

.comparateur .btn-compare {
  background: #82aa37;
  border-radius: 5px;
  color: #ffffff;
  display: block;
  font-weight: 700;
  padding: 13px 10px;
  text-align: center;
}

.comparateur .btn-compare:hover, .comparateur .btn-compare:focus {
  text-decoration: none;
}

.comparateur .btn-compare .icomoon-compare {
  font-size: 2.1rem;
  display: inline-block;
  margin-right: 5px;
  vertical-align: middle;
}

.comparateur .message {
  margin-top: 50px;
}

/* ===================================================================
 * TEMPLATE COMPARATEUR
 * =================================================================*/
.TPL_COMPARATEUR {
  position: relative;
  margin-bottom: 60px;
}

.with-btn-favoris .TPL_COMPARATEUR {
  padding-top: 6rem;
}

.TPL_COMPARATEUR .retour-liste:not(.vide) .bouton-retour {
  position: absolute;
  left: 0;
  top: 0;
}

.with-btn-favoris .TPL_COMPARATEUR .retour-liste:not(.vide) .bouton-retour {
  top: 6rem;
}

.TPL_COMPARATEUR ul {
  float: left;
  margin-right: 0.5%;
  width: 20.875%;
}

.TPL_COMPARATEUR ul.titre {
  width: 14.5%;
}

.TPL_COMPARATEUR ul.titre li {
  font-size: 1.8rem;
  color: #a0a0a0;
  padding: 20px 2px;
  border-color: #e0e0e0;
}

.TPL_COMPARATEUR ul.item {
  background: #fff;
  border-radius: 5px 5px 0 0;
  text-align: center;
}

.TPL_COMPARATEUR ul.item:last-child {
  margin-right: 0;
}

.TPL_COMPARATEUR ul li {
  padding: 20px;
  border-bottom: 1px solid #c4c4c4;
  font-size: 1.6rem;
  line-height: 18px;
}

.TPL_COMPARATEUR ul li:last-child {
  border: 0;
}

.TPL_COMPARATEUR ul li.descriptionLongue {
  display: none;
  padding: 20px 10px;
}

.TPL_COMPARATEUR ul li.descriptionLongue p {
  margin: 0;
}

.TPL_COMPARATEUR ul li.descriptionLongue img {
  width: 16px;
  cursor: pointer;
}

.TPL_COMPARATEUR .produit {
  color: #004462;
  text-transform: uppercase;
  font-weight: 700;
}

.TPL_COMPARATEUR .more {
  color: #82aa37;
  font-weight: 700;
  cursor: pointer;
}

.TPL_COMPARATEUR .facettes ul {
  display: block;
  float: none;
  margin: 0;
  width: 100%;
}

.TPL_COMPARATEUR .facettes ul li {
  border: 0 none;
  padding: 0;
  text-align: center;
}

.TPL_COMPARATEUR .produitPrix {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.TPL_COMPARATEUR .produitPrix > div {
  display: table-cell;
  text-align: left;
}

.TPL_COMPARATEUR .produitPrix .left {
  color: #82aa37;
  width: 35%;
  padding-right: 10px;
  font-size: 1.4rem;
}

.TPL_COMPARATEUR .produitPrix .right {
  width: 65%;
}

.TPL_COMPARATEUR .produitPrix .right .prix {
  font-weight: bold;
}

.TPL_COMPARATEUR .produitPrix .right .ecopart {
  font-size: 1.3rem;
}

.TPL_COMPARATEUR .photo {
  min-height: 13.5rem;
  font-size: 1.2rem;
}

.TPL_COMPARATEUR .photo .nomProduitPanier {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.TPL_COMPARATEUR .action a {
  box-sizing: border-box;
  font-size: 1.063em;
  margin-bottom: 10px;
  width: 100%;
  display: block;
}

.TPL_COMPARATEUR .action a:hover, .TPL_COMPARATEUR .action a:focus, .TPL_COMPARATEUR .action a:active {
  text-decoration: none;
}

.TPL_COMPARATEUR .action a.quantiteAlreadyInPanier {
  padding: 15px 10px;
}

.TPL_COMPARATEUR .action a.quantiteAlreadyInPanier:before {
  display: inline-block;
  margin-top: -2px;
  margin-right: 0;
}

.TPL_COMPARATEUR .action a.voir-produit {
  min-width: inherit;
  background: #004462;
}

.TPL_COMPARATEUR .action a.voir-produit::before {
  content: "\f00e";
  font-size: 1.25em;
  font-weight: normal;
  line-height: 17px;
  margin-right: 8px;
  vertical-align: middle;
}

.TPL_COMPARATEUR .action .retirer {
  margin-top: 10px;
  color: #e05151;
  line-height: 20px;
}

.TPL_COMPARATEUR .action .retirer .icomoon-close {
  font-size: 1.176em;
  margin-left: 15px;
  vertical-align: middle;
}

/* ===================================================================
 * COMPARATEUR DANS LA LISTE PRODUIT
 * =================================================================*/
.listeComparateur {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #c4c4c4;
  padding-bottom: 10px;
  border-top: 1px solid #c4c4c4;
  padding-top: 10px;
  margin-bottom: 25px;
}

@media screen and (max-width: 1024px) {
  .listeComparateur {
    display: none;
  }
}

.listeComparateur.sticky {
  background-color: #f6f6f6;
  position: fixed;
  top: 0;
  z-index: 9;
  right: 0;
  box-sizing: border-box;
  border-top: none;
}

@media screen and (min-width: 1440px) {
  .listeComparateur.sticky {
    left: 377px;
    width: auto;
    right: 59px;
  }
}

@media screen and (max-width: 1440px) {
  .listeComparateur.sticky {
    left: 28.5rem;
    width: auto;
    right: 59px;
  }
  .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .listeComparateur.sticky {
    width: calc(100% - 60px - 29px - 255px);
    left: auto;
  }
}

.listeComparateur.transitionHeaderGoingUp {
  transition: top .5s;
}

.listeComparateur.listeComparateurProduct {
  background-color: #f6f6f6;
  box-sizing: border-box;
  border-top: none;
  width: 100%;
  padding: 0 60px;
  left: auto;
  transition: top .5s;
}

.listeComparateur.stickyProduct {
  position: fixed;
  top: 0;
  z-index: 200;
  right: 0;
}

.recherche-resultats .TPL_RESULTAT_RECHERCHE_FACETTE_PRODUIT .listeComparateur:not(.sticky) {
  /*width: calc(100% + 60px - 30px - 348px);
        float: right;*/
}

.listeComparateur .listeComparateur__nbProduits {
  color: #003160;
  font-weight: bold;
  width: 10%;
  min-width: 100px;
  font-size: 1.4rem;
  line-height: 1.9rem;
}

.listeComparateur .listeComparateur__listeProduits {
  width: 60%;
}

@media screen and (max-width: 1360px) {
  .listeComparateur .listeComparateur__listeProduits {
    width: 65%;
  }
}

.listeComparateur .listeComparateur__listeProduits ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.listeComparateur .listeComparateur__listeProduits .listeComparateur__produit {
  flex: 1;
  min-width: 25%;
  padding: 5px 10px 5px 0;
  box-sizing: border-box;
  display: flex;
  align-items: center;
}

.listeComparateur .listeComparateur__listeProduits .listeComparateur__produit .listeComparateur__produitImg {
  width: 50px;
  margin-right: 10px;
  position: relative;
  line-height: 0;
  max-height: 50px;
  overflow: hidden;
  border-radius: 5px;
  display: flex;
  justify-content: center;
  background-color: #ffffff;
}

.listeComparateur .listeComparateur__listeProduits .listeComparateur__produit .listeComparateur__produitImgOverlay {
  background-color: rgba(0, 49, 96, 0.8);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  opacity: 0;
  transition: .5s ease;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #ffffff;
  font-size: 2.5rem;
  border-radius: 5px;
  text-decoration: none;
}

.listeComparateur .listeComparateur__listeProduits .listeComparateur__produit .listeComparateur__produitImg:hover .listeComparateur__produitImgOverlay {
  opacity: 1;
}

.listeComparateur .listeComparateur__listeProduits .listeComparateur__produit img {
  height: 50px;
}

.listeComparateur .listeComparateur__listeProduits .listeComparateur__produit h3 {
  flex: 1;
  font-size: 1.3rem;
  line-height: 1.8rem;
  color: #003160;
  font-weight: 500;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  /*! autoprefixer: off */
  -webkit-box-orient: vertical;
  /* autoprefixer: on */
  margin-bottom: 0;
}

.listeComparateur .listeComparateur__listeProduits .listeComparateur__produit h3 a {
  color: #003160;
}

.listeComparateur .listeComparateur__btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.listeComparateur .listeComparateur__btn button {
  margin-right: 20px;
  background-color: #003160;
  text-align: center;
}

.listeComparateur .listeComparateur__btn .listeComparateur__btnClose {
  color: #003160;
  display: flex;
  align-items: center;
  gap: 5px;
}

.listeComparateur .listeComparateur__btn .listeComparateur__btnClose i {
  font-size: 2.5rem;
}

.listeComparateur .listeComparateur__btn .listeComparateur__btnClose:hover {
  text-decoration: none;
}

@media screen and (max-width: 1360px) {
  .listeComparateur .listeComparateur__btn {
    flex-direction: column-reverse;
    align-items: flex-end;
    gap: 6px;
  }
  .listeComparateur .listeComparateur__btn .bouton-medium, .listeComparateur .listeComparateur__btn .form-submit button, .form-submit .listeComparateur .listeComparateur__btn button,
  .listeComparateur .listeComparateur__btn .form-submit input[type="submit"], .form-submit .listeComparateur .listeComparateur__btn input[type="submit"], .listeComparateur .listeComparateur__btn .bouton-rechercher, .listeComparateur .listeComparateur__btn .suivi-wrapper .btn-more-fields, .suivi-wrapper .listeComparateur .listeComparateur__btn .btn-more-fields, .listeComparateur .listeComparateur__btn .suivi-wrapper #eolas_ecommerce_orcab_suivi_factures_type_exporterCsv, .suivi-wrapper .listeComparateur .listeComparateur__btn #eolas_ecommerce_orcab_suivi_factures_type_exporterCsv, .listeComparateur .listeComparateur__btn .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement button, .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement .listeComparateur .listeComparateur__btn button {
    max-width: 125px;
    box-sizing: border-box;
    padding: 0.6rem 1rem;
    text-align: center;
    line-height: 1;
  }
}

/* ===================================================================
 * TEMPLATE LOCATION
 * =================================================================*/
.TPL_LOCATION {
  padding-bottom: 50px;
}

.TPL_LOCATION .titre-bouton {
  flex-flow: row wrap;
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}

.with-btn-favoris .TPL_LOCATION .titre-bouton {
  max-width: calc(100% - 235px);
}

.with-btn-favoris .TPL_LOCATION .titre-bouton .titre {
  flex: 1;
  margin: 0;
}

@media screen and (max-width: 1024px) {
  .with-btn-favoris .TPL_LOCATION .titre-bouton {
    max-width: calc(100% - 50px);
  }
}

.TPL_LOCATION .selection-tournee {
  clear: both;
  overflow: hidden;
}

.TPL_LOCATION .materiel-form--adresses .selection-tournee {
  padding: 0;
  margin-bottom: 10px;
}

.TPL_LOCATION .tournees-container {
  cursor: pointer;
}

.TPL_LOCATION .tournees-container.sansTournee {
  display: none;
}

.TPL_LOCATION .titre-avec-favoris {
  width: 45%;
}

@media screen and (max-width: 1024px) {
  .TPL_LOCATION .titre-avec-favoris {
    width: calc(100% - 345px);
  }
}

@media screen and (max-width: 767px) {
  .TPL_LOCATION .titre-avec-favoris {
    width: calc(100% - 65px);
  }
}

.TPL_LOCATION .showInEtape2 {
  display: none;
}

.TPL_LOCATION .etapes-tunnel > div {
  font-size: 1.4rem;
  line-height: 1.9rem;
}

.TPL_LOCATION #navCommande .etapes-tunnel .done {
  color: #82aa37;
}

.TPL_LOCATION #navCommande .etapes-tunnel .done:before {
  background-color: #82aa37;
  border-color: #82aa37;
}

.TPL_LOCATION #navCommande .etapes-tunnel .done::after {
  content: '\e961';
  margin-right: 4px;
  font-size: 1.7rem;
  color: #82aa37;
}

.TPL_LOCATION #navCommande .etapes-tunnel .active {
  color: #868686;
}

.TPL_LOCATION #navCommande .etapes-tunnel .active span {
  color: #cecece;
}

.materiel-print-btn {
  margin: 0;
}

.materiel-print-btn a {
  text-indent: -1000px;
  overflow: hidden;
  position: relative;
  min-width: 0;
  width: 60px;
  box-sizing: border-box;
  height: 40px;
  padding: 0;
}

.materiel-print-btn a::before {
  text-indent: 0;
  content: '\e95c';
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  font-size: 20px;
}

.with-btn-favoris .materiel-print-btn {
  float: none;
  flex: 1;
  align-self: flex-start;
  display: flex;
  justify-content: flex-end;
}

.materiel-planning-pdf a {
  min-width: inherit;
}

.materiel-planning-pdf a::before {
  content: '\e908';
  font-size: 18px;
  margin-right: 10px;
}

.materiel-form-container .txt-ou {
  font-weight: bold;
  font-size: 20px;
  color: #004462;
}

.materiel-form-container .btn-search span:before {
  content: "\e915";
  margin-right: 15px;
}

#eolas_ecommerce_orcab_location_demande_type_search:disabled {
  background-color: #ddd;
}

.materiel-preview-container,
.materiel-selection-wrapper {
  margin-top: 30px;
}

.materiel-form {
  width: 100%;
  float: left;
}

.materiel-form .date-field .field input {
  border-radius: 8px;
}

.materiel-visuel {
  margin: 0 -15px;
  display: flex;
  flex-wrap: wrap;
}

.materiel-visuel hr {
  border: 0 none;
  border-bottom: 1px solid #c4c4c4;
}

.materiel-visuel#materiel-visuel .materiel-retirer {
  display: none;
}

.materiel-visuel#materiel-selection .checkbox-content {
  display: none;
}

.materiel-visuel#materiel-selection .materiel-ajouter {
  display: none;
}

.materiel-visuel .empty {
  width: 100%;
  text-align: center;
  margin: 0 0 30px;
}

.materiel-visuel .tri-categorie {
  justify-content: flex-start;
  padding: 0 15px;
}

.materiel-visuel .tri-categorie .nb {
  text-align: left;
  max-width: inherit;
  margin: 0 0 30px;
  font-weight: 700;
  color: #545454;
}

.materiel-visuel .paginator-nbre {
  width: 100%;
}

.materiel-visuel .chargement {
  padding: 0 15px;
}

.materiel-preview-pane {
  padding: 0 15px;
  margin-bottom: 30px;
  box-sizing: border-box;
  width: 100%;
}

.materiel-preview-pane .cont {
  height: 100%;
  padding: 20px;
  background: #ffffff;
  border-radius: 5px;
  box-sizing: border-box;
  position: relative;
  display: flex;
  flex-flow: row wrap;
  gap: 20px;
}

.materiel-preview-pane .cont__visuel {
  width: 20.6rem;
}

@media screen and (max-width: 767px) {
  .materiel-preview-pane .cont__visuel {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .container-etape-reservez .materiel-preview-pane .cont__visuel,
  .container-etape-confirmer .materiel-preview-pane .cont__visuel {
    text-align: center;
  }
}

@media screen and (min-width: 768px) {
  .container-etape-reservez .materiel-preview-pane .cont__visuel,
  .container-etape-confirmer .materiel-preview-pane .cont__visuel {
    width: 11.2rem;
  }
}

.materiel-preview-pane .cont__detail {
  flex: 1;
}

.materiel-preview-pane .cont__detail-top {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px 0;
  margin-bottom: 10px;
}

.materiel-preview-pane .cont__detail-top p {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .materiel-preview-pane .cont__detail-top {
    flex-direction: column;
    align-items: flex-start;
  }
}

.materiel-preview-pane .cont__contact {
  width: 15.40697674418605%;
}

@media screen and (max-width: 1024px) {
  .materiel-preview-pane .cont__contact {
    width: 100%;
    display: flex;
    flex-flow: row wrap;
    gap: 2rem;
    align-items: flex-end;
    justify-content: flex-end;
  }
}

@media screen and (max-width: 767px) {
  .materiel-preview-pane .cont__contact {
    flex-direction: column;
    align-items: normal;
    gap: 0;
  }
}

.materiel-preview-pane .cont__action button {
  width: 100%;
  font-weight: 700;
}

@media screen and (max-width: 1024px) and (min-width: 768px) {
  .materiel-preview-pane .cont__action {
    order: 3;
  }
}

.materiel-preview-pane .cont__desc-btn {
  font-size: 1.3rem;
}

.materiel-preview-pane .cont__desc-btn:before {
  content: '\f078';
  font-size: 1.2rem;
  line-height: 1.6rem;
  margin-right: 0.8rem;
  color: #003160;
}

.materiel-preview-pane .cont__desc-btn:hover:before {
  color: #ffffff;
}

.materiel-preview-pane .cont__desc .display-less {
  display: none;
}

.materiel-preview-pane .cont__desc .display-less:before {
  content: '\f077';
}

@media screen and (max-width: 767px) {
  .materiel-preview-pane .cont {
    flex-direction: column;
  }
  .materiel-preview-pane .cont__desc-btn {
    width: 100%;
  }
}

.materiel-preview-pane .desc {
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  margin: 0 0 10px;
}

.materiel-preview-pane .desc.reduced {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.materiel-preview-pane p {
  margin: 0 0 10px;
}

.materiel-preview-pane .code {
  font-size: 1.3rem;
  line-height: 1.8rem;
}

.materiel-preview-pane .code span {
  color: #003160;
}

.materiel-preview-pane .fournisseur {
  display: flex;
  align-items: center;
  font-size: 1.5rem;
  line-height: 2.1rem;
  gap: 10px;
  font-weight: 700;
  color: #545454;
  text-transform: uppercase;
}

.materiel-preview-pane .fournisseur img {
  object-fit: contain;
}

.materiel-preview-pane .contact {
  padding: 10px;
  margin-bottom: 20px;
  border: 1px solid #cecece;
  box-sizing: border-box;
  border-radius: 5px;
}

.materiel-preview-pane .contact__info {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 700;
  color: #82aa37;
}

.materiel-preview-pane .contact__mail {
  border-top: 1px solid #e9e9e9;
  padding: 10px 0 0;
  margin-bottom: 0;
}

.materiel-preview-pane .contact__link {
  font-size: 1.4rem;
  font-weight: 700;
  display: flex;
  color: #003160;
  justify-content: center;
  align-items: center;
}

.materiel-preview-pane .contact__link i {
  font-size: 2rem;
  margin-right: 0.8rem;
}

.materiel-preview-pane .contact__link:hover {
  color: #ffffff;
}

@media screen and (max-width: 1024px) and (min-width: 768px) {
  .materiel-preview-pane .contact {
    width: 20.6rem;
    margin: 0;
    order: 1;
  }
}

.materiel-preview-pane .tarif {
  font-weight: 700;
  color: #003160;
  margin-bottom: 2rem;
  text-align: right;
}

@media screen and (max-width: 1024px) {
  .materiel-preview-pane .tarif {
    text-align: left;
  }
}

@media screen and (max-width: 1024px) and (min-width: 768px) {
  .materiel-preview-pane .tarif {
    order: 2;
    flex: 1;
  }
  .container-etape-reservez .materiel-preview-pane .tarif,
  .container-etape-confirmer .materiel-preview-pane .tarif {
    text-align: right;
  }
}

.materiel-preview-pane .checkbox-content {
  position: absolute;
  top: 10px;
  right: 0;
}

.materiel-preview-pane [type="checkbox"]:checked + label:after {
  top: 0;
  left: 0;
  font-size: 16px;
  color: #82aa37;
}

.materiel-preview-pane h3 {
  font-size: 1.8rem;
  line-height: 2.5rem;
  font-weight: 700;
}

.materiel-preview-pane .category {
  padding: 4px 10px;
  font-size: 1.4rem;
  line-height: 1.9rem;
  border-radius: 30px;
  background-color: #003160;
  color: #ffffff;
  font-weight: 700;
}

.materiel-preview-pane .category-list {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  gap: 5px 8px;
}

.materiel-preview-pane img {
  border-radius: 5px;
}

.container-etape-reservez .materiel-preview-pane,
.container-etape-confirmer .materiel-preview-pane {
  width: 50%;
}

@media screen and (max-width: 1024px) {
  .container-etape-reservez .materiel-preview-pane,
  .container-etape-confirmer .materiel-preview-pane {
    width: 100%;
  }
}

.materiel-confirmation {
  margin-bottom: 20px;
}

.materiel-confirmation__detail {
  margin: 0 0 10px;
}

.materiel-confirmation__title {
  font-weight: 700;
  color: #003160;
  margin: 0 0 30px;
}

.cont__visuel-top {
  line-height: 0;
  margin-bottom: 8px;
}

@media screen and (max-width: 767px) {
  .cont__visuel-top {
    margin-bottom: 0;
  }
}

.cont__visuel-top .fancybox {
  width: 20.6rem;
  height: 20.6rem;
  display: block;
}

@media screen and (min-width: 768px) {
  .container-etape-reservez .cont__visuel-top .fancybox,
  .container-etape-confirmer .cont__visuel-top .fancybox {
    width: 11.2rem;
    height: 11.2rem;
  }
}

@media screen and (max-width: 767px) {
  .container-etape-reservez .cont__visuel-top .fancybox,
  .container-etape-confirmer .cont__visuel-top .fancybox {
    margin: 0 auto;
  }
}

.cont__visuel-top .img-fluid {
  object-fit: cover;
  height: 100%;
}

.cont__visuel-thumb {
  position: relative;
  padding: 0 2.2rem;
  line-height: 0;
}

.cont__visuel .slick-arrow {
  width: 1.8rem;
  background-color: #e9e9e9;
  height: 100%;
  border-radius: 3px;
}

.cont__visuel .slick-arrow:before {
  font-size: 0.8rem;
  color: #545454;
}

.cont__visuel .slick-prev {
  left: 0;
}

.cont__visuel .slick-prev:before {
  content: '\f053';
}

.cont__visuel .slick-next {
  right: 0;
}

.cont__visuel .slick-next:before {
  content: '\f054';
}

.cont__visuel .slick-slide {
  display: flex;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .cont__visuel .slick-slide {
    display: block;
    width: 22rem !important;
  }
}

.location-price:before, .location-price:after {
  display: table;
  content: " ";
}

.location-price:after {
  clear: both;
}

.location-price .left {
  float: left;
  width: 60%;
}

.location-price .left h4 {
  font-size: 1.6rem;
  color: #004462;
  font-weight: bold;
  margin-bottom: 0;
}

.location-price .left p {
  font-size: 1.6rem;
  font-weight: bold;
  color: #868686;
  margin-top: 0;
}

.location-price .right {
  float: right;
  width: 40%;
  font-size: 3rem;
  color: #004462;
  font-weight: bold;
  text-align: right;
}

/* ===================================================================
 * MEDIAQUERIES
 * =================================================================*/
@media screen and (max-width: 767px) {
  .TPL_LOCATION .titre-bouton {
    margin-bottom: 10px;
  }
  .TPL_LOCATION .tunnel-wrapper .etapes {
    display: flex;
    flex-wrap: wrap;
  }
  .TPL_LOCATION .tunnel-wrapper .etapes .btn-etape {
    width: 50%;
  }
  .TPL_LOCATION .tunnel-wrapper .etapes .etapes-tunnel {
    order: 2;
  }
  .TPL_LOCATION .tunnel-wrapper .bouton-precedent,
  .TPL_LOCATION .tunnel-wrapper .bouton-suivant {
    width: auto;
  }
  .materiel-preview-container,
  .materiel-selection-wrapper {
    margin-top: 20px;
  }
  .materiel-form,
  .materiel-preview {
    width: 100%;
    float: none;
  }
  .materiel-visuel {
    margin: 0;
  }
  .materiel-visuel > div {
    padding: 0;
  }
  .materiel-visuel .materiel-preview-pane {
    width: 100%;
    padding: 0;
  }
  .location-price .left,
  .location-price .right {
    width: auto;
    float: none;
  }
}

@media screen and (max-width: 375px) {
  .TPL_LOCATION .tunnel-wrapper .etapes .btn-etape {
    width: 100%;
  }
  .TPL_LOCATION .tunnel-wrapper .bouton-precedent,
  .TPL_LOCATION .tunnel-wrapper .bouton-suivant {
    width: 100%;
  }
  .TPL_LOCATION .tunnel-wrapper .etape-suivant {
    margin-top: 10px;
  }
}

/* ===================================================================
 * SELECTION LOCATION
 * =================================================================*/
.materiel-selection-wrapper {
  display: flex;
  justify-content: space-between;
  flex-flow: row wrap;
  align-items: flex-start;
  border-bottom: 1px solid #c4c4c4;
  padding-bottom: 10px;
  border-top: 1px solid #c4c4c4;
  padding-top: 10px;
  margin-bottom: 30px;
  gap: 15px;
}

.materiel-selection-wrapper.sticky {
  position: fixed;
  margin: 0;
  width: 100%;
  left: 0;
  z-index: 2;
  background: #ffffff;
  padding: 10px 60px;
  border-top: 0;
  box-sizing: border-box;
}

@media screen and (max-width: 1024px) {
  .materiel-selection-wrapper.sticky {
    padding: 10px 20px;
  }
}

.materiel-selection-wrapper.transitionHeaderGoingUp {
  transition: top .5s;
}

.materiel-selection-wrapper > h3 {
  font-size: 2rem;
  line-height: 5rem;
  margin-bottom: 0;
}

.materiel-selection-wrapper .selection-action {
  display: flex;
  flex-flow: row wrap;
  gap: 15px;
  margin-top: 5px;
}

.materiel-selection-wrapper .selection-action__btn {
  font-size: 1.4rem;
  padding: 8px 15px;
}

.materiel-selection-wrapper .btn-voir {
  display: none;
}

.materiel-selection-wrapper .btn-voir.shown {
  display: block;
}

.materiel-selection-wrapper .btn-voir.not-full:before {
  content: '\f077';
}

.materiel-selection-wrapper .btn-voir:before {
  content: '\f078';
  font-size: 1.2rem;
  line-height: 1.6rem;
  margin-right: 0.8rem;
  color: #003160;
  font-weight: normal;
}

@media screen and (max-width: 1440px) {
  .materiel-selection-wrapper {
    flex-direction: column;
    gap: 0;
  }
  .materiel-selection-wrapper > h3 {
    margin-bottom: 15px;
    line-height: 3rem;
  }
  .materiel-selection-wrapper .selection-action {
    width: 100%;
    margin-top: 10px;
  }
  .materiel-selection-wrapper .selection-action__btn {
    flex: 1;
  }
}

.materiel-selection {
  flex: 1;
  gap: 15px;
  margin: 0;
  max-height: 50px;
  overflow: hidden;
  width: 100%;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.materiel-selection.full {
  max-height: inherit;
}

@media screen and (max-width: 767px) {
  .materiel-selection {
    max-height: 115px;
  }
}

.materiel-selection .materiel-preview-pane {
  margin: 0;
  padding: 0;
  width: calc(25% - 12px);
}

@media screen and (max-width: 1024px) {
  .materiel-selection .materiel-preview-pane {
    width: calc(50% - 8px);
  }
}

@media screen and (max-width: 767px) {
  .materiel-selection .materiel-preview-pane {
    width: 100%;
  }
}

.materiel-selection .materiel-preview-pane h3 {
  font-size: 1.3rem;
  line-height: 1.8rem;
  font-weight: 400;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.materiel-selection .materiel-preview-pane .cont {
  padding: 0;
  background: no-repeat;
  gap: 0.8rem;
  align-items: center;
  position: relative;
}

.materiel-selection .cont:hover .materiel-retirer {
  opacity: 1;
}

.materiel-selection .cont__visuel {
  width: 5rem;
  line-height: 0;
}

.materiel-selection .cont__visuel-thumb {
  padding: 0;
}

.materiel-selection .cont__visuel .slick-slide {
  justify-content: flex-start;
}

@media screen and (max-width: 1024px) {
  .materiel-selection .cont__visuel {
    order: 1;
  }
}

@media screen and (max-width: 1024px) {
  .materiel-selection .cont__detail {
    order: 2;
  }
}

@media screen and (max-width: 767px) {
  .materiel-selection .cont {
    flex-direction: row;
  }
}

@media screen and (min-width: 1025px) {
  .materiel-selection .materiel-retirer {
    background-color: rgba(0, 49, 96, 0.8);
    width: 50px;
    height: 50px;
    position: absolute;
    top: 0;
    opacity: 0;
    transition: .5s ease;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #ffffff;
    font-size: 2.5rem;
    border-radius: 5px;
    padding: 0;
    text-decoration: none;
    z-index: 2;
  }
}

@media screen and (max-width: 1024px) {
  .materiel-selection .materiel-retirer {
    order: 3;
    font-size: 2.4rem;
    background-color: transparent;
    color: #e05151;
    padding: 0;
  }
}

/* ===================================================================
 * ADRESSE LOCATION
 * =================================================================*/
.materiel-form--adresses.TPL_TUNNEL .field {
  margin-bottom: 0;
}

.materiel-form--adresses.TPL_TUNNEL .field-title {
  font-size: 2.7rem;
  margin-bottom: 16px;
}

.materiel-form--adresses .address-block-btn .btn,
.materiel-form--adresses .address-block-btn .bouton-vert,
.materiel-form--adresses .address-block-btn .form-submit button,
.form-submit .materiel-form--adresses .address-block-btn button,
.materiel-form--adresses .address-block-btn .form-submit input[type="submit"],
.form-submit .materiel-form--adresses .address-block-btn input[type="submit"],
.materiel-form--adresses .address-block-btn .bouton-bleu,
.materiel-form--adresses .address-block-btn .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer,
.TPL_ORCAB_FICHE_RETOUR .form-submit .materiel-form--adresses .address-block-btn .btn-imprimer,
.materiel-form--adresses .address-block-btn .lignes-retour-wrap .form-submit .btn-imprimer,
.lignes-retour-wrap .form-submit .materiel-form--adresses .address-block-btn .btn-imprimer,
.materiel-form--adresses .address-block-btn .TPL_COMPARATEUR .action a.voir-produit,
.TPL_COMPARATEUR .action .materiel-form--adresses .address-block-btn a.voir-produit,
.materiel-form--adresses .address-block-btn .materiel-print-btn a,
.materiel-print-btn .materiel-form--adresses .address-block-btn a,
.materiel-form--adresses .address-block-btn .materiel-planning-pdf a,
.materiel-planning-pdf .materiel-form--adresses .address-block-btn a,
.materiel-form--adresses .address-block-btn .bouton-gris,
.materiel-form--adresses .address-block-btn .bouton-rouge,
.materiel-form--adresses .address-block-btn .bouton-retour,
.materiel-form--adresses .address-block-btn .bouton-rechercher,
.materiel-form--adresses .address-block-btn .btn-ajouter-au-panier,
.materiel-form--adresses .address-block-btn .btn-liste-achat-activate,
.materiel-form--adresses .address-block-btn .ressources-associees li.lien-tous a,
.ressources-associees li.lien-tous .materiel-form--adresses .address-block-btn a,
.materiel-form--adresses .address-block-btn .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste,
.liste-achat-plugin .ajouter-a-la-liste .materiel-form--adresses .address-block-btn .btn-ajouter-liste,
.materiel-form--adresses .address-block-btn .TPL_FICHE_PRODUIT .btn-submit,
.TPL_FICHE_PRODUIT .materiel-form--adresses .address-block-btn .btn-submit {
  padding: 8px 28px;
}

.materiel-form--adresses textarea {
  background: url(/build/images/bg-textarea.c686eaad.png) no-repeat 12px 12px #fff;
  padding-left: 55px;
}

.materiel-form--adresses .radio {
  display: inline-block;
}

.materiel-confirmation .address-block {
  float: none;
}

/* ===================================================================
 * COMMON LISTE DOCUMENTAIRE
 * =================================================================*/
.liste-documentaire .item, .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .item, .TPL_LISTE_BASE_DOCUMENTAIRE .item, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .item {
  min-height: 160px;
  background-color: #ffffff;
  border-radius: 5px;
  position: relative;
  padding: 10px;
  width: calc(50% - 15px);
  box-sizing: border-box;
}

@media screen and (max-width: 1024px) {
  .liste-documentaire .item, .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .item, .TPL_LISTE_BASE_DOCUMENTAIRE .item, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .item {
    width: 100%;
  }
}

.liste-documentaire .item .thumbnail .photos, .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .item .thumbnail .photos, .TPL_LISTE_BASE_DOCUMENTAIRE .item .thumbnail .photos, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .item .thumbnail .photos {
  max-width: 135px;
  align-self: flex-start;
}

.liste-documentaire .item .thumbnail .photos a, .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .item .thumbnail .photos a, .TPL_LISTE_BASE_DOCUMENTAIRE .item .thumbnail .photos a, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .item .thumbnail .photos a {
  display: flex;
  height: 100%;
}

.liste-documentaire .item .thumbnail .photos img, .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .item .thumbnail .photos img, .TPL_LISTE_BASE_DOCUMENTAIRE .item .thumbnail .photos img, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .item .thumbnail .photos img {
  object-fit: cover;
}

.liste-documentaire .item .thumbnail .description, .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .item .thumbnail .description, .TPL_LISTE_BASE_DOCUMENTAIRE .item .thumbnail .description, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .item .thumbnail .description {
  flex: 1;
}

.liste-documentaire .item .description h4, .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .item .description h4, .TPL_LISTE_BASE_DOCUMENTAIRE .item .description h4, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .item .description h4 {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 1.2rem;
}

.liste-documentaire .item .description h4 a, .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .item .description h4 a, .TPL_LISTE_BASE_DOCUMENTAIRE .item .description h4 a, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .item .description h4 a {
  color: #003160;
  word-break: break-word;
}

.liste-documentaire .item .description .date, .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .item .description .date, .TPL_LISTE_BASE_DOCUMENTAIRE .item .description .date, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .item .description .date {
  margin: 0;
  font-size: 1.3rem;
  line-height: 1.8rem;
}

.liste-documentaire .item .details, .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .item .details, .TPL_LISTE_BASE_DOCUMENTAIRE .item .details, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .item .details {
  display: flex;
  flex-flow: row wrap;
  gap: 1.2rem;
  align-items: center;
}

.liste-documentaire .item .details a, .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .item .details a, .TPL_LISTE_BASE_DOCUMENTAIRE .item .details a, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .item .details a {
  display: flex;
  gap: 1.8rem;
}

.liste-documentaire .item .resume, .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .item .resume, .TPL_LISTE_BASE_DOCUMENTAIRE .item .resume, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .item .resume {
  color: #868686;
  margin: 0;
  width: 100%;
}

.liste-documentaire .item .icon, .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .item .icon, .TPL_LISTE_BASE_DOCUMENTAIRE .item .icon, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .item .icon {
  margin: 0;
}

.liste-documentaire .item .icon:before, .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .item .icon:before, .TPL_LISTE_BASE_DOCUMENTAIRE .item .icon:before, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .item .icon:before {
  color: #003160;
}

@media screen and (max-width: 767px) {
  .liste-documentaire .item .thumbnail .photos, .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .item .thumbnail .photos, .TPL_LISTE_BASE_DOCUMENTAIRE .item .thumbnail .photos, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .item .thumbnail .photos {
    max-width: 260px;
  }
}

.liste-documentaire .liste-doc-inner, .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .liste-doc-inner, .TPL_LISTE_BASE_DOCUMENTAIRE .liste-doc-inner, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste-doc-inner {
  display: flex;
  flex-flow: row wrap;
  gap: 1rem;
}

@media screen and (max-width: 767px) {
  .liste-documentaire .liste-doc-inner, .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .liste-doc-inner, .TPL_LISTE_BASE_DOCUMENTAIRE .liste-doc-inner, .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .liste-doc-inner {
    flex-direction: column;
  }
}

.liste-doc-inner .photos img {
  border-radius: 5px;
}

.liste-doc-inner .doc__new {
  border-radius: 5px;
  margin-bottom: .8rem;
}

.liste-doc-inner:has(.photos) .doc__new {
  border-radius: 5px 0 0 0;
  position: absolute;
  top: 10px;
  left: 10px;
  margin-bottom: 0;
  max-width: 135px;
}

.icon-document-confidentiel {
  color: #d32d12;
  box-sizing: border-box;
  position: relative;
}

.icon-document-confidentiel.mobile {
  display: none;
}

.icon-document-confidentiel span {
  display: flex;
  width: 100%;
}

.icon-document-confidentiel span::after {
  display: inline-block;
  content: '\f29c';
  font-size: 14px;
  margin-left: 15px;
}

.icon-document-confidentiel.inline {
  display: inline-block;
  margin-bottom: 0;
  padding-bottom: 0;
  border: 0 none;
}

.icon-document-confidentiel.inline span::after {
  margin-left: 5px;
}

.icon-document-confidentiel .description-confidentiel {
  position: absolute;
  right: 0;
  top: 100%;
  background-color: #e05151;
  padding: 5px;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #ffffff;
  z-index: 1;
}

.icon-document-confidentiel .description-confidentiel::before {
  content: '';
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 5px solid #e05151;
  position: absolute;
  right: 0;
  top: -5px;
}

/* ===================================================================
* TPL LISTE DOCUMENTS RATTACHES
* =================================================================*/
.TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .liste {
  margin-bottom: 30px;
}

/* ===================================================================
* TPL FICHE TYPEFORM
* =================================================================*/
.with-btn-favoris .TPL_FICHE_TYPEFORM {
  padding-top: 55px;
}

/* ===================================================================
* TPL LISTE BASE DOCUMENTAIRE
* =================================================================*/
.TPL_LISTE_BASE_DOCUMENTAIRE .item .icomoon-mail2:before,
.TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .item .icomoon-mail2:before {
  font-size: 2.2rem;
}

.TPL_LISTE_BASE_DOCUMENTAIRE .tri-categorie,
.TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .tri-categorie {
  border-bottom: 0;
  margin-bottom: 5px;
  padding: 0;
  justify-content: flex-start;
}

.TPL_LISTE_BASE_DOCUMENTAIRE .filter-list-selected,
.TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .filter-list-selected {
  margin: 0 -0.6rem;
}

.TPL_LISTE_BASE_DOCUMENTAIRE .icon-document-confidentiel,
.TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .icon-document-confidentiel {
  width: auto;
}

.form-recherche {
  position: relative;
  margin-bottom: 30px;
  padding-bottom: 0;
}

.form-recherche:before, .form-recherche:after {
  display: table;
  content: " ";
}

.form-recherche:after {
  clear: both;
}

.form-recherche > div {
  display: flex;
  flex-flow: row wrap;
}

.form-recherche > div .select-wrap {
  width: 100%;
}

.form-recherche > div > div {
  box-sizing: border-box;
}

.form-recherche > div > div:nth-child(1) {
  width: 50%;
  padding-right: 15px;
}

.form-recherche > div > div:nth-child(2) {
  width: 50%;
  padding-left: 15px;
}

.form-recherche-wrap h1 {
  line-height: 40px;
  margin-bottom: 1.7rem;
}

.form-recherche__top {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
}

.form-recherche__top h2, .form-recherche__top .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .form-recherche__top h1, .form-recherche__top .fiche-adherent h1, .fiche-adherent .form-recherche__top h1 {
  flex: 1;
  margin: 0;
  font-weight: 500;
}

.TPL_LISTE_BASE_DOCUMENTAIRE .form-recherche__top .form-recherche__tri {
  width: auto !important;
  margin: 0;
}

.form-recherche__top .form-recherche__tri > div {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.form-recherche__top label {
  padding: 0;
}

.TPL_LISTE_BASE_DOCUMENTAIRE .form-recherche__top .select-wrap {
  width: auto;
}

.form-recherche .form-submit {
  width: 19.2rem;
  margin: 2.5rem auto 0;
}

.form-recherche .form-submit button {
  width: 100%;
  min-width: 0;
}

.form-recherche .form-submit button span {
  display: inline-block;
  position: relative;
  padding-left: 30px;
}

.form-recherche .form-submit button span::before {
  display: block;
  content: "\e915";
  color: #fff;
  font-size: 16px;
  position: absolute;
  left: 0;
  top: 2px;
}

.TPL_LISTE_BASE_DOCUMENTAIRE ul.liste {
  display: flex;
  flex-direction: column;
  gap: 3rem;
  margin-bottom: 2rem;
}

@media screen and (min-width: 1025px) {
  .TPL_LISTE_BASE_DOCUMENTAIRE ul.liste {
    flex-flow: row wrap;
  }
}

@media screen and (max-width: 1024px) {
  /* ===================================================================
    * TPL LISTE BASE DOCUMENTAIRE
    * =================================================================*/
  .TPL_LISTE_BASE_DOCUMENTAIRE .rechercheFacetteProduit-optionGroup > div > div:not(.rechercheFacetteProduit-option) {
    margin: 10px 0;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .rechercheFacetteProduit-optionGroup.date-field .field {
    margin: 0;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .rechercheFacetteProduit-optionGroup.date-field .field-required, .TPL_LISTE_BASE_DOCUMENTAIRE .rechercheFacetteProduit-optionGroup.date-field .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_LISTE_BASE_DOCUMENTAIRE .rechercheFacetteProduit-optionGroup.date-field .field {
    padding: 10px 10px 0;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .tri-categorie {
    display: block;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .tri-categorie > div:last-child {
    display: block;
    width: 100%;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .facette-wrapper {
    border-radius: 0;
    display: block;
    margin: 0 0 20px;
    position: relative;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .facette-wrapper h3 {
    width: 100%;
    box-sizing: border-box;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .facette-wrapper h3:after {
    content: "\f107";
    font-size: 0.882em;
    font-family: 'FontAwesome', Arial, sans-serif;
    color: #fff;
    position: relative;
    display: inline;
    margin-left: 10px;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .facette-wrapper .facette {
    box-sizing: border-box;
    max-width: inherit;
    width: 100%;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .facette-wrapper .facette .base-doc-side-menu {
    padding: 10px 0;
    margin: 0;
    text-align: left;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .facette-wrapper .facette .base-doc-side-menu h3 {
    display: none;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .facette-wrapper .facette .base-doc-side-menu .niv1 {
    border: 0;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .facette-wrapper .facette .base-doc-side-menu .nav0 a {
    padding-left: 35px;
    padding-right: 10px;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .facette-wrapper .facette .base-doc-side-menu .nav0 .hasChild {
    padding-left: 35px;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .facette-wrapper .facette .base-doc-side-menu .nav0 .openChild {
    left: 10px;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .facette-wrapper .facette .base-doc-side-menu .nav1.selected > a {
    color: #004462;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .facette-wrapper .facette .base-doc-side-menu .nav1 > a {
    border: 0;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .facette-wrapper .facette .base-doc-side-menu .niv2 {
    border-top: 1px solid #c4c4c4;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .facette-wrapper .facette #ecom_cat_recherche_par_facette .rechercheFacetteProduit-optionGroup label::after {
    left: 10px;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .facette-wrapper form {
    padding: 0;
  }
}

@media screen and (max-width: 767px) {
  /* ===================================================================
    * TPL LISTE BASE DOCUMENTAIRE
    * =================================================================*/
  .form-recherche-wrap form:not(.form-recherche--simple) {
    background-color: #ffffff;
    border-radius: 5px;
    padding: 10px 10px 20px;
  }
  .form-recherche > div {
    width: 100%;
    float: none;
  }
  .form-recherche > div > div {
    box-sizing: border-box;
  }
  .form-recherche > div > div:nth-child(1), .form-recherche > div > div:nth-child(2) {
    width: 100% !important;
    float: none;
    padding: 0;
    margin-bottom: 30px;
  }
  .form-recherche__top h2, .form-recherche__top .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .form-recherche__top h1, .form-recherche__top .fiche-adherent h1, .fiche-adherent .form-recherche__top h1 {
    font-size: 1.8rem;
    line-height: 2rem;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .form-recherche__top .form-recherche__tri {
    width: auto !important;
    margin: 0;
  }
  .form-recherche__top label {
    font-size: 1.4rem;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .form-recherche__top .select-wrap {
    width: 94px;
  }
  .form-recherche .form-submit {
    margin-top: 0;
  }
  .form-recherche .form-submit button {
    width: auto;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .facette-mobile,
  .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .facette-mobile,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .facette-mobile {
    margin: 0;
  }
  .TPL_LISTE_BASE_DOCUMENTAIRE .inner .liste .item .description .droite,
  .TPL_ORCAB_LISTE_ADHERENT_DOCUMENT .inner .liste .item .description .droite,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .inner .liste .item .description .droite {
    height: auto;
  }
  .icon-document-confidentiel,
  .TPL_LISTE_BASE_DOCUMENTAIRE .icon-document-confidentiel,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .icon-document-confidentiel {
    display: none;
  }
  .icon-document-confidentiel.mobile,
  .TPL_LISTE_BASE_DOCUMENTAIRE .icon-document-confidentiel.mobile,
  .TPL_RESULTAT_RECHERCHE_FACETTE_DOCUMENT .icon-document-confidentiel.mobile {
    display: block;
  }
}

/* ===================================================================
 * TPL BASE DOCUMENTAIRE ACCUEIL
 * =================================================================*/
.TPL_BASE_DOC_ACCEUIL {
  background-color: #ffffff;
  padding: 6rem;
  margin-bottom: 90px;
}

.TPL_BASE_DOC_ACCEUIL h2, .TPL_BASE_DOC_ACCEUIL .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_BASE_DOC_ACCEUIL h1, .TPL_BASE_DOC_ACCEUIL .fiche-adherent h1, .fiche-adherent .TPL_BASE_DOC_ACCEUIL h1 {
  margin-bottom: 15px;
}

.TPL_BASE_DOC_ACCEUIL .liste .item {
  padding-bottom: 20px;
  font-size: 1.3rem;
  line-height: 1.8rem;
}

.TPL_BASE_DOC_ACCEUIL .liste h4 {
  margin-bottom: 5px;
  font-size: 1.8rem;
  font-weight: 700;
}

.TPL_BASE_DOC_ACCEUIL .liste h4 a {
  color: #003160;
  text-decoration: none;
}

.TPL_BASE_DOC_ACCEUIL .liste .date {
  color: #004462;
  margin-top: 0;
  margin-bottom: 5px;
  font-size: 1.3rem;
}

.TPL_BASE_DOC_ACCEUIL .liste .date span {
  color: #004462;
}

.TPL_BASE_DOC_ACCEUIL .liste .resume {
  margin: 0;
}

.liste-doc-plus {
  margin: 0;
}

.liste-doc-plus a {
  font-size: 1.4rem;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  color: #003160;
  text-decoration: none;
  position: relative;
  padding: 10px 0 10px 20px;
  /*@if $lfb-breakpoint == $mobile {
        @media screen and (max-width: $mobile) {
            display: inline-block;
            border: 1px solid $grisBordure;
            background-color: #ffffff;
            padding: 20px;
            border-radius: 5px;
            font-weight: bold;

            &::before {
                display: none;
            }
        }
    } @else {
        @media screen and (max-width: $lfb-breakpoint) {
            display: inline-block;
            border: 1px solid $grisBordure;
            background-color: #ffffff;
            padding: 20px;
            border-radius: 5px;
            font-weight: bold;
            &::before {
                display: none;
            }
        }
    }*/
}

.liste-doc-plus a::before {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  content: "\e982";
  color: #003160;
  left: 0;
  font-size: 16px;
}

.liste-doc-plus a:hover {
  font-weight: 600;
}

/* ===================================================================
* MEDIA QUERIES
* =================================================================*/
@media screen and (max-width: 1440px) {
  /* ===================================================================
    * TPL BASE DOCUMENTAIRE ACCEUIL
    * =================================================================*/
  .fl-r-50 .TPL_BASE_DOC_ACCEUIL {
    padding: 30px 30px 30px 40px;
  }
}

@media screen and (max-width: 1170px) {
  /* ===================================================================
    * TPL BASE DOCUMENTAIRE ACCEUIL
    * =================================================================*/
  .fl-r-50 .TPL_BASE_DOC_ACCEUIL {
    padding: 30px 20px;
  }
}

@media screen and (max-width: 767px) {
  /* ===================================================================
    * TPL BASE DOCUMENTAIRE ACCEUIL
    * =================================================================*/
  .TPL_BASE_DOC_ACCEUIL {
    padding: 40px 30px;
    margin-bottom: 60px;
  }
}

/* ===================================================================
* FICHE BASE DOCUMENTAIRE
* =================================================================*/
.TPL_FICHE_BASE_DOCUMENTAIRE {
  overflow: visible;
}

.TPL_FICHE_BASE_DOCUMENTAIRE h3 {
  margin: 0;
}

.TPL_FICHE_BASE_DOCUMENTAIRE .ressources-associees ul {
  padding-top: 10px;
  padding-bottom: 10px;
}

.TPL_FICHE_BASE_DOCUMENTAIRE .ressources-associees ul li a {
  padding: 10px 30px;
}

.TPL_FICHE_BASE_DOCUMENTAIRE .ressources-associees ul .lien-tous {
  padding-top: 15px;
}

.TPL_FICHE_BASE_DOCUMENTAIRE .ressources-associees ul .lien-tous .error {
  display: block;
  color: #c33a27;
}

.TPL_FICHE_BASE_DOCUMENTAIRE .base-doc-contact {
  float: right;
}

.fiche-document-main .description {
  padding: 0;
  font-size: 1.6rem;
}

.fiche-document-main .intro-wid-photo {
  font-size: 1.8rem;
  background-color: transparent;
}

.fiche-document-main .intro-wid-photo .description .resume {
  color: #404040;
  text-align: left;
  padding: 0 20px;
}

.intro-wid-photo {
  position: relative;
  background-color: #404040;
  border-radius: 10px;
}

.intro-wid-photo:before, .intro-wid-photo:after {
  display: table;
  content: " ";
}

.intro-wid-photo:after {
  clear: both;
}

.intro-wid-photo .thumbnail .photos {
  width: 300px;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  border-radius: 10px 0 0 10px;
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
}

.intro-wid-photo .thumbnail .photos img {
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
}

.intro-wid-photo .thumbnail .description {
  width: calc(100% - 300px);
  float: right;
}

.intro-wid-photo .description {
  padding: 25px;
  box-sizing: border-box;
}

.intro-wid-photo .description:before, .intro-wid-photo .description:after {
  display: table;
  content: " ";
}

.intro-wid-photo .description:after {
  clear: both;
}

@media screen and (max-width: 767px) {
  .intro-wid-photo .thumbnail .photos {
    width: 100%;
    height: auto;
    float: none;
    border-radius: 10px 10px 0 0;
    margin-right: 0;
    position: relative;
    text-align: center;
  }
  .intro-wid-photo .thumbnail .photos img {
    position: relative;
    top: 0;
    left: 0;
    transform: none;
  }
  .intro-wid-photo .thumbnail .description {
    width: 100%;
    float: none;
  }
  .intro-wid-photo .thumbnail .description-mobile-nopadding {
    padding: 0 !important;
  }
}

.intro-wid-photo .photos {
  width: 250px;
  float: left;
  position: relative;
  height: 100px;
  overflow: hidden;
  border-radius: 9px 0 0 9px;
}

.intro-wid-photo .photos img {
  display: block;
  border-radius: 10px 0 0 10px;
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
}

.intro-wid-photo .description {
  position: relative;
  width: calc( 100% - 250px);
  float: right;
  min-height: 100px;
  padding: 10px 25px;
}

.intro-wid-photo .description .resume {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  left: 0;
  font-size: 1.7rem;
  width: 100%;
  text-align: center;
  color: #ffffff;
  line-height: 24px;
  padding: 0 50px;
  margin: 0;
  box-sizing: border-box;
}

@media screen and (max-width: 1024px) {
  /* ===================================================================
    * FICHE BASE DOCUMENTAIRE
    * =================================================================*/
  .fiche-document-main .intro-wid-photo .description .resume {
    background-color: transparent;
    color: #404040;
    padding: 0;
    margin-bottom: 20px;
  }
  .intro-wid-photo {
    background-color: transparent;
    border-radius: 0;
  }
  .intro-wid-photo .photos {
    width: 100%;
    height: auto;
    float: none;
    border-radius: 0;
    margin-right: 0;
    position: relative;
  }
  .intro-wid-photo .photos img {
    border-radius: 10px;
    position: relative;
    top: 0;
    transform: none;
  }
  .intro-wid-photo .description {
    width: 100%;
    position: relative;
    min-height: 0;
    margin-top: 20px;
    padding: 0;
  }
  .intro-wid-photo .description .resume {
    position: relative;
    background-color: #404040;
    color: #ffffff;
    padding: 25px 30px;
    border-radius: 5px;
    font-size: 1.7rem;
    transform: none;
    text-align: left;
  }
}

@media screen and (max-width: 767px) {
  /* ===================================================================
    * FICHE BASE DOCUMENTAIRE
    * =================================================================*/
  .intro-wid-photo .photos {
    width: auto;
  }
}

/* ===================================================================
 * LISTES
 * =================================================================*/
.listes-de-courses {
  /* fiche liste achat et liste achat commun boutons */
  /* fiche liste achat  */
}

.listes-de-courses .top-liste {
  margin-bottom: 30px;
  display: table;
  width: 100%;
}

.listes-de-courses .top-liste h3 {
  font-size: 4rem;
  float: left;
  margin: 0;
}

.with-btn-favoris .listes-de-courses .top-liste {
  max-width: calc(100% - 200px);
}

@media screen and (max-width: 1024px) {
  .with-btn-favoris .listes-de-courses .top-liste {
    max-width: calc(100% - 60px);
  }
}

.listes-de-courses .bouton-actions {
  margin-bottom: 10px;
  overflow: hidden;
}

.listes-de-courses .bouton-actions .btn-petit-blanc {
  margin: 0 8px 10px 0;
}

.listes-de-courses .bouton-actions .btn-petit-blanc > span {
  font-size: 15px;
  margin-right: 5px;
}

.listes-de-courses .bouton-actions .btn-petit-blanc:hover > span::before {
  color: #fff;
}

.listes-de-courses .liste-tablette, .listes-de-courses .liste-mobile {
  display: none;
}

.listes-de-courses .float-left {
  float: left;
  max-width: 70%;
}

.listes-de-courses .float-left .field-required::after, .listes-de-courses .float-left .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field::after, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .listes-de-courses .float-left .field::after {
  right: 5%;
}

.listes-de-courses .float-left .btn-edit {
  font-size: 0.425em;
  background: none;
  cursor: pointer;
  border: 0;
  height: 30px;
  margin-left: 20px;
  overflow: hidden;
  padding: 0;
  text-indent: -9999px;
  vertical-align: middle;
  width: 30px;
}

.listes-de-courses .float-left .btn-edit:before {
  content: "\f040";
  color: #fff;
  background: #82aa37;
  border-radius: 50%;
  float: left;
  height: 30px;
  line-height: 30px;
  text-indent: 0;
  width: 30px;
  text-align: center;
}

.listes-de-courses .float-left .btn-annuler {
  height: 30px;
  width: 30px;
  margin-left: 10px;
}

.listes-de-courses .float-left .btn-annuler::before {
  font-size: 3rem;
}

.listes-de-courses .float-right {
  float: right;
  text-align: right;
}

.listes-de-courses select {
  font-size: 1.6rem;
  border: 1px solid #c4c4c4;
  color: #868686;
  font-weight: normal;
  min-width: 210px;
}

.listes-de-courses .select-wrap {
  margin-left: 35px;
}

.listes-de-courses .select-wrap::after {
  border: 0;
}

.listes-de-courses .btn-nouvelle-liste {
  text-align: center;
  position: relative;
  box-sizing: border-box;
  line-height: 1;
  display: inline-block;
}

.listes-de-courses .btn-nouvelle-liste::before {
  content: "\e90c";
  font-size: 1.25em;
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
}

.listes-de-courses .btn-nouvelle-liste span {
  line-height: 1;
  padding-left: 25px;
}

.listes-de-courses .nombreDeListes {
  font-size: 3rem;
  font-weight: 700;
  color: #004462;
  margin-bottom: 20px;
}

.with-btn-favoris .listes-de-courses .liste-desktop {
  margin-top: 55px;
}

.listes-de-courses .intitules > div {
  vertical-align: top;
}

.listes-de-courses .intitules .tri {
  margin-left: 20px;
}

.listes-de-courses .intitules .fl-down {
  margin: 0;
}

.listes-de-courses .liste-achat-table {
  margin-bottom: 60px;
}

.listes-de-courses .liste-achat-table .intitules, .listes-de-courses .liste-achat-table .liste-detail {
  display: table;
  table-layout: fixed;
  width: 100%;
}

.listes-de-courses .liste-achat-table .intitules > div, .listes-de-courses .liste-achat-table .liste-detail > div {
  display: table-cell;
  vertical-align: middle;
  width: 13%;
  box-sizing: border-box;
  padding: 10px 15px 10px 0;
}

.listes-de-courses .liste-achat-table .intitules > div.libelle, .listes-de-courses .liste-achat-table .liste-detail > div.libelle {
  width: 25%;
}

.listes-de-courses .liste-achat-table .intitules > div.action, .listes-de-courses .liste-achat-table .liste-detail > div.action {
  width: 38%;
}

.listes-de-courses .liste-achat-table .intitules > div.action .select-wrap, .listes-de-courses .liste-achat-table .liste-detail > div.action .select-wrap {
  display: none;
}

.listes-de-courses .liste-achat-table .intitules > div.nombre, .listes-de-courses .liste-achat-table .liste-detail > div.nombre {
  width: 23%;
}

.listes-de-courses .liste-achat-table .liste-detail {
  background: #fff;
  border-radius: 7px;
  margin-top: 20px;
  height: 120px;
  overflow: hidden;
}

.listes-de-courses .liste-achat-table .liste-detail.hide {
  display: none;
}

.listes-de-courses .liste-achat-table .liste-detail .libelle {
  font-size: 2rem;
  color: #404040;
  padding-left: 35px;
}

.listes-de-courses .liste-achat-table .liste-detail .libelle.pictogramme {
  position: relative;
}

.listes-de-courses .liste-achat-table .liste-detail .libelle.pictogramme::before {
  content: "\e945";
  font-size: 14.5rem;
  color: rgba(130, 170, 55, 0.25);
  left: -75px;
  position: absolute;
  top: -23px;
  pointer-events: none;
}

.listes-de-courses .liste-achat-table .liste-detail .libelle.pictogramme .texte {
  font-size: 1.100em;
  color: #004462;
  font-weight: 700;
}

.listes-de-courses .liste-achat-table .liste-detail .left-data {
  position: relative;
  z-index: 1;
}

.listes-de-courses .liste-achat-table .liste-detail .right-data {
  display: none;
}

.listes-de-courses .liste-achat-table .btn-detail {
  font-size: 0.750em;
  text-transform: uppercase;
  font-weight: 700;
  padding: 5px 10px;
  display: inline-block;
  min-height: inherit;
}

.listes-de-courses .liste-achat-table .total {
  font-size: 1.5rem;
}

.listes-de-courses .liste-achat-table .total strong {
  font-size: 1.2em;
}

.listes-de-courses .btn-ajouter-au-panier {
  margin-right: 20px;
  padding: 15px 20px;
  display: inline-block;
  vertical-align: top;
}

.listes-de-courses .ajouter-panier {
  position: relative;
}

.listes-de-courses .ajouter-panier span {
  position: absolute;
  left: 25%;
  bottom: 10px;
}

.listes-de-courses .float-right.buttons .btn,
.listes-de-courses .ajouter-panier .btn {
  height: 50px;
  text-indent: -9999px;
  width: 50px;
  position: relative;
  margin-right: 10px;
  border: 0;
  vertical-align: top;
}

.listes-de-courses .float-right.buttons .btn:last-child,
.listes-de-courses .ajouter-panier .btn:last-child {
  margin-right: 0;
}

.listes-de-courses .float-right.buttons .btn:before,
.listes-de-courses .ajouter-panier .btn:before {
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  color: #fff;
  font-size: 1.25em;
  text-indent: 0;
}

.listes-de-courses .float-right.buttons .btn span,
.listes-de-courses .ajouter-panier .btn span {
  display: none;
}

.listes-de-courses .float-right.buttons .btn-duplicate,
.listes-de-courses .ajouter-panier .btn-duplicate {
  margin-right: 20px;
}

.listes-de-courses .float-right.buttons .btn-delete,
.listes-de-courses .ajouter-panier .btn-delete {
  margin: 0;
}

.listes-de-courses .float-right.buttons .btn {
  float: left;
}

.listes-de-courses .liste-achat-renommer {
  float: left;
  line-height: 50px;
  padding: 0;
  display: none;
}

.listes-de-courses .liste-achat-renommer .field-required, .listes-de-courses .liste-achat-renommer .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .listes-de-courses .liste-achat-renommer .field {
  float: left;
}

.listes-de-courses .liste-achat-renommer .btn-edit {
  font-size: 1em;
}

.listes-de-courses .liste-achat-renommer .btn-edit.active:before {
  content: '\f00c';
}

.listes-de-courses .liste-achat-detail-form {
  margin-bottom: 10px;
  padding: 0;
}

.listes-de-courses .fiche-liste-achat {
  margin: 0;
}

.listes-de-courses .liste-produits {
  width: 100%;
  margin: 0;
}

.listes-de-courses .liste-produits li {
  position: relative;
  border: 1px solid #ffffff;
}

.listes-de-courses .liste-produits li.selected {
  border-color: #004462;
}

.listes-de-courses .liste-produits li.item-moving {
  width: 100%;
  border: 3px dotted #9f9a9a;
  background: #e7e7e7;
  height: 140px;
}

.listes-de-courses .liste-produits.ui-sortable li:hover {
  box-shadow: 5px 5px 25px gray;
}

.listes-de-courses .liste-produits.ui-sortable li:hover .item-handle {
  display: block;
}

.listes-de-courses .liste-produits .ui-sortable-helper {
  box-shadow: 5px 5px 50px gray;
}

.listes-de-courses .liste-produits .item-handle {
  position: absolute;
  top: 7px;
  left: 7px;
  width: 25px;
  height: 25px;
  display: none;
}

.listes-de-courses .liste-produits .item-handle:hover {
  cursor: grab;
}

.listes-de-courses .liste-produits .item-handle-icon {
  width: 100%;
  height: 100%;
  opacity: 0.3;
}

.listes-de-courses .liste-produits .selection {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  left: 20px;
}

.listes-de-courses .liste-produits .encadre {
  margin-left: 3.5%;
  position: relative;
}

.listes-de-courses .liste-produits .encadre img {
  max-height: 75px;
}

.listes-de-courses .liste-produits .caption {
  width: 85%;
}

.listes-de-courses .liste-produits .btn-ajouter-au-panier {
  margin-right: 0;
  width: 100%;
  box-sizing: border-box;
  padding: 15px 5px;
}

.listes-de-courses .liste-produits .quantiteAlreadyInPanier:before {
  display: inline-block;
  margin-top: -2px;
  margin-right: 0;
}

.listes-de-courses .liste-produits .options-selectionnees,
.listes-de-courses .liste-produits .dimensions-selectionnees {
  font-size: 1.6rem;
}

.listes-de-courses .liste-produits .options-selectionnees span,
.listes-de-courses .liste-produits .dimensions-selectionnees span {
  color: #004462;
}

.listes-de-courses .liste-produits .options-selectionnees .modifierOptionsPanier {
  display: none;
}

.listes-de-courses .liste-produits .devis-bon-infos {
  padding: 0 6.3% 0 3.5%;
  font-size: 0.813em;
  color: #004462;
}

.listes-de-courses .table-actions {
  color: #004462;
  background: #e7e7e7;
  padding: 20px;
  border-radius: 8px;
  margin-bottom: 10px;
  clear: both;
}

.listes-de-courses .table-actions .selection {
  float: left;
  margin-right: 20px;
  padding: 10px 0;
  font-size: 1.6rem;
}

.listes-de-courses .table-actions .selection label {
  color: #004462;
}

.listes-de-courses .table-actions .btn {
  background: #fff;
  padding: 10px;
  border: 0;
  border-radius: 5px;
  color: #868686;
  display: inline-block;
  float: left;
  margin: 5px 8px 5px 0;
  font-size: 1.4rem;
}

.listes-de-courses .table-actions .btn::before {
  margin-right: 5px;
  color: #004462;
  font-size: 1.071em;
}

.listes-de-courses .table-actions .btn:hover {
  text-decoration: none;
  background-color: #004462;
  color: #fff;
  -webkit-transition: background 0.3s;
  -o-transition: background 0.3s;
  transition: background 0.3s;
}

.listes-de-courses .table-actions .btn:hover:before {
  color: #fff;
}

.listes-de-courses .table-actions .btn.ajout-selection::before {
  content: "\f217";
}

.listes-de-courses .table-actions .btn.envoi-panier::before {
  content: "\f03a";
}

.listes-de-courses .table-actions .listeAchatSupprimerLaSelection:before {
  content: "\f014";
}

.listes-de-courses .vider {
  float: right;
  margin: 5px 0;
  padding: 10px;
  min-height: 38px;
}

.listes-de-courses .vider::before {
  content: "\f10c";
  margin-right: 5px;
  font-size: 1.071em;
}

.listes-de-courses .dimensions-selectionnees {
  clear: both;
  font-size: 1.6rem;
}

.listes-de-courses .dimensions-selectionnees > span + span::before {
  content: "- ";
}

.listes-de-courses .comment {
  margin: 0.5em 0;
}

.listes-de-courses .comment .show-comment {
  position: relative;
  font-size: 1.6rem;
}

.listes-de-courses .comment .show-comment::before {
  content: "\f0e5";
  color: #004462;
}

.listes-de-courses .comment .comment-form {
  margin-top: 5px;
}

.listes-de-courses .liste-detail-montant .prix-total-item {
  color: #004462;
  font-weight: bold;
}

.options-selectionnees .btnModifierOptionsPanier,
.options-selectionnees .btnModifierOptionsListeAchat,
.btnModifierOptionsDimensions {
  color: #004462;
  font-weight: normal;
  display: inline-block;
  position: relative;
  background: 0 none;
  border: 0 none;
  font-size: 1.5rem;
  line-height: 1;
}

.options-selectionnees .btnModifierOptionsPanier::before,
.options-selectionnees .btnModifierOptionsListeAchat::before,
.btnModifierOptionsDimensions::before {
  content: '\e955';
  vertical-align: bottom;
}

.options-selectionnees .btnModifierOptionsPanier:hover, .options-selectionnees .btnModifierOptionsPanier:focus, .options-selectionnees .btnModifierOptionsPanier:active,
.options-selectionnees .btnModifierOptionsListeAchat:hover,
.options-selectionnees .btnModifierOptionsListeAchat:focus,
.options-selectionnees .btnModifierOptionsListeAchat:active,
.btnModifierOptionsDimensions:hover,
.btnModifierOptionsDimensions:focus,
.btnModifierOptionsDimensions:active {
  text-decoration: none;
}

.options-selectionnees .options {
  display: inline-block;
}

.options-selectionnees .modifierOptionsPanier, .options-selectionnees .modifierOptionsListeAchat {
  display: none;
}

.options-selectionnees .modifierOptionsPanier > div, .options-selectionnees .modifierOptionsListeAchat > div {
  margin-top: 1em;
}

.options-selectionnees .modifierOptionsPanier .btn, .options-selectionnees .modifierOptionsListeAchat .btn {
  width: 120px;
  min-width: 120px;
  margin: 0 10px;
}

.options-selectionnees .modifierOptionsPanier .bouton-gris, .options-selectionnees .modifierOptionsListeAchat .bouton-gris {
  background-color: #c4c4c4;
}

.options-selectionnees li {
  margin: 6px 6px 0 0;
}

/* ===================================================================
 * MEDIAQUERIES
 * =================================================================*/
@media screen and (max-width: 1024px) {
  /* ===================================================================
     * LISTES
     * =================================================================*/
  .listes-de-courses .liste-produits .item-handle {
    display: block;
  }
  .listes-de-courses .intitules .tri {
    margin: 0;
    display: block;
  }
  .listes-de-courses .ajouter-panier .btn,
  .listes-de-courses .ajouter-panier .btn-ajouter-au-panier {
    margin: 5px;
  }
  .listes-de-courses .liste-tablette {
    display: block;
  }
  .listes-de-courses .liste-tablette .btn-submit, .listes-de-courses .liste-tablette select {
    min-width: inherit;
  }
  .listes-de-courses .liste-tablette .select-wrap {
    margin-left: 20px;
  }
  .listes-de-courses .table-actions.top .btn {
    display: none;
  }
  .listes-de-courses .table-actions.top .selection {
    padding: 0;
    margin: 0;
    width: 48%;
  }
  .listes-de-courses .nombreDeListes.liste {
    float: left;
  }
  .listes-de-courses .vider {
    margin: 0;
  }
}

@media screen and (max-width: 767px) {
  /* ===================================================================
     * LISTES
     * =================================================================*/
  .listes-de-courses .liste-produits .item-handle {
    display: block;
  }
  .listes-de-courses:before, .listes-de-courses:after {
    display: table;
    content: " ";
  }
  .listes-de-courses:after {
    clear: both;
  }
  .listes-de-courses .liste-achat-table .intitules > div {
    padding-right: 0;
  }
  .listes-de-courses .liste-achat-table .intitules > div.action .select-wrap {
    display: inline-block;
  }
  .listes-de-courses .liste-achat-table .liste-detail > div {
    display: block;
    padding: 10px 15px;
  }
  .listes-de-courses .liste-achat-table .liste-detail > div.action, .listes-de-courses .liste-achat-table .liste-detail > div.libelle {
    width: 100%;
  }
  .listes-de-courses .liste-achat-table .liste-detail > div.libelle {
    padding-left: 20px;
  }
  .listes-de-courses .liste-achat-table .liste-detail > div.libelle:before, .listes-de-courses .liste-achat-table .liste-detail > div.libelle:after {
    display: table;
    content: " ";
  }
  .listes-de-courses .liste-achat-table .liste-detail > div.libelle:after {
    clear: both;
  }
  .listes-de-courses .liste-achat-table .liste-detail .left-data {
    float: left;
    width: 48%;
    padding-top: 5px;
  }
  .listes-de-courses .liste-achat-table .liste-detail .right-data {
    display: block;
    float: right;
    font-size: 0.85em;
    text-align: right;
    width: 48%;
  }
  .listes-de-courses .select-wrap {
    margin: 0;
  }
  .listes-de-courses select {
    min-width: inherit;
    padding-right: 40px;
  }
  .listes-de-courses .btn-nouvelle-liste {
    height: 50px;
    min-width: inherit;
    text-indent: -9999px;
    width: 50px;
  }
  .listes-de-courses .btn-nouvelle-liste:before {
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    position: absolute;
    text-indent: 0;
  }
  .listes-de-courses .liste-tablette .select-wrap {
    display: none;
  }
  .listes-de-courses .btn-ajouter-au-panier {
    float: right;
  }
  .listes-de-courses .ajouter-panier .btn-ajouter-au-panier,
  .listes-de-courses .ajouter-panier .btn {
    margin: 4px;
  }
  .listes-de-courses .table-actions {
    padding: 20px 10px;
  }
  .listes-de-courses .table-actions.bottom {
    background: none;
    padding: 0;
  }
  .listes-de-courses .table-actions.bottom .btn {
    box-sizing: border-box;
    display: block;
    float: none;
    margin: 0 auto 20px;
    text-align: center;
    width: 270px;
  }
  .listes-de-courses .liste-produits .encadre {
    margin-left: 30px;
  }
  .listes-de-courses .liste-produits .caption {
    box-sizing: border-box;
    float: none;
    padding-left: 30px;
    width: 100%;
  }
  .listes-de-courses .liste-produits .box-panier:before, .listes-de-courses .liste-produits .box-panier:after {
    display: table;
    content: " ";
  }
  .listes-de-courses .liste-produits .box-panier:after {
    clear: both;
  }
  .listes-de-courses .liste-produits .box-panier .btn-ajouter-au-panier {
    height: 60px;
    text-indent: -9999px;
    width: 60px;
    position: relative;
  }
  .listes-de-courses .liste-produits .box-panier .btn-ajouter-au-panier:before {
    font-size: 2.5rem;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    position: absolute;
    text-indent: 0;
    float: left;
  }
  .listes-de-courses .liste-produits .quantite {
    margin-top: 10px;
  }
  .listes-de-courses .liste-mobile {
    display: block;
    margin-bottom: 10px;
  }
  .listes-de-courses .liste-mobile .float-right.buttons {
    display: inline-block;
    float: none;
    margin: 0 auto;
    text-align: center;
    width: 100%;
  }
  .listes-de-courses .liste-mobile .float-right.buttons .btn {
    float: none;
  }
  .listes-de-courses .top-liste {
    margin-bottom: 20px;
  }
  .listes-de-courses .top-liste .float-left {
    max-width: 100%;
    margin-bottom: 15px;
  }
  .listes-de-courses .top-liste .float-right.buttons {
    display: none;
  }
  .listes-de-courses .top-liste .liste-achat-renommer .btn-edit {
    margin-left: 10px;
  }
  .listes-de-courses .top-liste .liste-achat-renommer .field-required, .listes-de-courses .top-liste .liste-achat-renommer .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .listes-de-courses .top-liste .liste-achat-renommer .field {
    width: 70%;
  }
  .listes-de-courses .vider {
    padding: 10px 6px;
  }
  .listes-de-courses .bouton-actions .btn-petit-blanc {
    text-indent: -9999px;
    position: relative;
    width: 40px;
  }
  .listes-de-courses .bouton-actions .btn-petit-blanc > span::before {
    text-indent: 0;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    position: absolute;
    margin-right: 0;
  }
}

/* ===================================================================
 * TUNNEL
 * =================================================================*/
/* ===================================================================
 * TUNNEL - HEADER
 * =================================================================*/
#navCommande {
  overflow: hidden;
  margin-bottom: 30px;
}

#navCommande .etapes-tunnel {
  display: table;
  width: 64%;
  float: left;
  table-layout: fixed;
  position: relative;
}

#navCommande .etapes-tunnel::before {
  content: "";
  width: 100%;
  height: 1px;
  background: #c4c4c4;
  display: block;
  transform: translateX(-50%);
  left: 50%;
  position: absolute;
  top: 26px;
}

#navCommande .etapes-tunnel > div {
  display: table-cell;
  vertical-align: top;
  text-align: center;
  position: relative;
  width: 50%;
  padding: 52px 10px 0;
  box-sizing: border-box;
  color: #c4c4c4;
}

#navCommande .etapes-tunnel > div::before {
  content: "";
  width: 18px;
  height: 18px;
  border: 1px solid #c4c4c4;
  background: #c4c4c4;
  display: block;
  border-radius: 50%;
  transform: translateX(-50%);
  left: 50%;
  position: absolute;
  top: 16px;
}

#navCommande .etapes-tunnel > div.selected, #navCommande .etapes-tunnel > div.active {
  color: #545454;
}

#navCommande .etapes-tunnel > div.selected span, #navCommande .etapes-tunnel > div.active span {
  color: #82aa37;
}

#navCommande .etapes-tunnel > div.selected::before, #navCommande .etapes-tunnel > div.active::before {
  background: #82aa37;
  border: 1px solid #82aa37;
}

#navCommande .etapes-tunnel > div.valider a {
  color: #82aa37;
}

#navCommande .etapes-tunnel > div.valider::after {
  content: '\f00c';
  color: #82aa37;
}

#navCommande .etapes-tunnel > div.valider::before {
  background: #82aa37;
  border: 1px solid #82aa37;
}

@media screen and (max-width: 1024px) {
  #navCommande {
    margin-bottom: 15px;
  }
}

@media screen and (max-width: 767px) {
  #navCommande .etapes-tunnel {
    width: 100%;
    float: none;
  }
}

.tunnel-wrapper .bouton-precedent {
  float: left;
  min-width: inherit;
  width: 18%;
  box-sizing: border-box;
}

.tunnel-wrapper .bouton-precedent span {
  position: relative;
}

.tunnel-wrapper .bouton-precedent span::before {
  content: "\f053";
  font-weight: normal;
  margin-right: 10px;
}

.tunnel-wrapper .bouton-suivant {
  float: right;
  min-width: inherit;
  width: 18%;
  text-align: center;
  box-sizing: border-box;
}

.tunnel-wrapper .bouton-suivant.disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.tunnel-wrapper .bouton-suivant span {
  position: relative;
}

.tunnel-wrapper .bouton-suivant span::after {
  content: "\f054";
  font-weight: normal;
  margin-left: 10px;
}

.tunnel-wrapper .prixSecondeUniteForCalculateur {
  left: 0;
  font-size: 0.9em;
}

.tunnel-wrapper .panier-actif {
  background: #e9e9e9;
  border-radius: 5px;
  padding: 30px;
}

.tunnel-wrapper .panier-actif__products {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  gap: 16px;
  margin-bottom: 3rem;
}

.tunnel-wrapper .panier-actif__products h2, .tunnel-wrapper .panier-actif__products .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .tunnel-wrapper .panier-actif__products h1, .tunnel-wrapper .panier-actif__products .fiche-adherent h1, .fiche-adherent .tunnel-wrapper .panier-actif__products h1 {
  margin: 0 !important;
}

.tunnel-wrapper textarea {
  background: url(/build/images/bg-textarea.c686eaad.png) no-repeat 12px 12px #fff;
  padding-left: 55px;
}

@media screen and (max-width: 767px) {
  .tunnel-wrapper .bouton-precedent, .tunnel-wrapper .bouton-suivant {
    width: 48%;
    font-size: 1.4rem;
    line-height: 1.9rem;
    padding: 0.5rem 1rem;
    min-height: 5rem;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .tunnel-wrapper .prixSecondeUniteForCalculateur {
    text-align: right;
  }
}

/* ===================================================================
 * FICHE COMMANDE - HEADER
 * =================================================================*/
.fiche-commande-header .libelle-panier-actif h2, .fiche-commande-header .libelle-panier-actif .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .fiche-commande-header .libelle-panier-actif h1, .fiche-commande-header .libelle-panier-actif .fiche-adherent h1, .fiche-adherent .fiche-commande-header .libelle-panier-actif h1 {
  margin-bottom: 20px;
}

.fiche-commande-header .btn-actions {
  display: flex;
  flex-flow: row wrap;
}

.fiche-commande-header .btn-actions .liste-achat-plugin {
  margin-bottom: 1rem;
}

.fiche-commande-header .btn-actions .liste-achat-plugin a {
  margin-bottom: 0;
}

.fiche-commande-header .panier-actif {
  margin-bottom: 30px;
}

.fiche-commande-header .panier-actif .name {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  margin-bottom: 1rem;
}

.fiche-commande-header .panier-actif .name .btn-petit-blanc {
  margin: 0;
}

.fiche-commande-header .panier-actif .name .btn-petit-blanc::before {
  content: "\e955";
}

@media screen and (max-width: 374px) {
  .fiche-commande-header .panier-actif .name .btn-petit-blanc {
    width: 22rem;
    margin: 0 auto;
  }
}

.fiche-commande-header .panier-actif .name .btn-petit-rouge, .fiche-commande-header .panier-actif .name .frontModalBoxContainer #btn-supprimer-non, .frontModalBoxContainer .fiche-commande-header .panier-actif .name #btn-supprimer-non,
.fiche-commande-header .panier-actif .name .frontModalBoxContainer .btn-annuler, .frontModalBoxContainer .fiche-commande-header .panier-actif .name .btn-annuler, .fiche-commande-header .panier-actif .name .btn-petit-vert, .fiche-commande-header .panier-actif .name .frontModalBoxContainer .btn-submit, .frontModalBoxContainer .fiche-commande-header .panier-actif .name .btn-submit, .fiche-commande-header .panier-actif .name .frontModalBoxContainer #btn-supprimer-oui, .frontModalBoxContainer .fiche-commande-header .panier-actif .name #btn-supprimer-oui,
.fiche-commande-header .panier-actif .name .frontModalBoxContainer .btn-valider, .frontModalBoxContainer .fiche-commande-header .panier-actif .name .btn-valider, .fiche-commande-header .panier-actif .name .s-editherm-info__form button[type="submit"], .s-editherm-info__form .fiche-commande-header .panier-actif .name button[type="submit"], .fiche-commande-header .panier-actif .name .btn-petit-noir, .fiche-commande-header .panier-actif .name .btn-petit-bleu, .fiche-commande-header .panier-actif .name .btn-petit-gris, .fiche-commande-header .panier-actif .name .TPL_ORCAB_AGENDA .changeVue, .TPL_ORCAB_AGENDA .fiche-commande-header .panier-actif .name .changeVue, .fiche-commande-header .panier-actif .name .btn-petit-gris-darker {
  margin-left: 3rem;
}

@media screen and (max-width: 374px) {
  .fiche-commande-header .panier-actif .name .btn-petit-rouge, .fiche-commande-header .panier-actif .name .frontModalBoxContainer #btn-supprimer-non, .frontModalBoxContainer .fiche-commande-header .panier-actif .name #btn-supprimer-non,
  .fiche-commande-header .panier-actif .name .frontModalBoxContainer .btn-annuler, .frontModalBoxContainer .fiche-commande-header .panier-actif .name .btn-annuler, .fiche-commande-header .panier-actif .name .btn-petit-vert, .fiche-commande-header .panier-actif .name .frontModalBoxContainer .btn-submit, .frontModalBoxContainer .fiche-commande-header .panier-actif .name .btn-submit, .fiche-commande-header .panier-actif .name .frontModalBoxContainer #btn-supprimer-oui, .frontModalBoxContainer .fiche-commande-header .panier-actif .name #btn-supprimer-oui,
  .fiche-commande-header .panier-actif .name .frontModalBoxContainer .btn-valider, .frontModalBoxContainer .fiche-commande-header .panier-actif .name .btn-valider, .fiche-commande-header .panier-actif .name .s-editherm-info__form button[type="submit"], .s-editherm-info__form .fiche-commande-header .panier-actif .name button[type="submit"], .fiche-commande-header .panier-actif .name .btn-petit-noir, .fiche-commande-header .panier-actif .name .btn-petit-bleu, .fiche-commande-header .panier-actif .name .btn-petit-gris, .fiche-commande-header .panier-actif .name .TPL_ORCAB_AGENDA .changeVue, .TPL_ORCAB_AGENDA .fiche-commande-header .panier-actif .name .changeVue, .fiche-commande-header .panier-actif .name .btn-petit-gris-darker {
    margin: 1rem auto 0;
    width: 22rem;
    text-align: center;
  }
}

.fiche-commande-header .panier-actif h1 {
  margin: 0 1rem 0 0;
  line-height: 4rem;
}

.fiche-commande-header .panier-actif h2, .fiche-commande-header .panier-actif .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .fiche-commande-header .panier-actif h1, .fiche-commande-header .panier-actif .fiche-adherent h1, .fiche-adherent .fiche-commande-header .panier-actif h1 {
  margin-bottom: 3rem;
}

.fiche-commande-header .panier-actif .chantier {
  padding: 0 3rem;
  border-left: 1px solid #cecece;
  color: #003160;
  font-size: 1.6rem;
  line-height: 4rem;
  font-weight: 700;
}

.fiche-commande-header .panier-actif .action,
.fiche-commande-header .panier-actif .actions-droit {
  display: flex;
  flex-flow: row wrap;
}

.fiche-commande-header .panier-actif .action {
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  flex: 1;
}

@media screen and (max-width: 767px) {
  .fiche-commande-header .panier-actif .action {
    margin-bottom: 10px;
  }
}

.fiche-commande-header .panier-actif .actions-droit {
  align-self: flex-end;
}

@media screen and (max-width: 767px) {
  .fiche-commande-header .panier-actif .actions-droit {
    width: 100%;
  }
  .fiche-commande-header .panier-actif .actions-droit .btn-petit-rouge, .fiche-commande-header .panier-actif .actions-droit .frontModalBoxContainer #btn-supprimer-non, .frontModalBoxContainer .fiche-commande-header .panier-actif .actions-droit #btn-supprimer-non,
  .fiche-commande-header .panier-actif .actions-droit .frontModalBoxContainer .btn-annuler, .frontModalBoxContainer .fiche-commande-header .panier-actif .actions-droit .btn-annuler, .fiche-commande-header .panier-actif .actions-droit .btn-petit-vert, .fiche-commande-header .panier-actif .actions-droit .frontModalBoxContainer .btn-submit, .frontModalBoxContainer .fiche-commande-header .panier-actif .actions-droit .btn-submit, .fiche-commande-header .panier-actif .actions-droit .frontModalBoxContainer #btn-supprimer-oui, .frontModalBoxContainer .fiche-commande-header .panier-actif .actions-droit #btn-supprimer-oui,
  .fiche-commande-header .panier-actif .actions-droit .frontModalBoxContainer .btn-valider, .frontModalBoxContainer .fiche-commande-header .panier-actif .actions-droit .btn-valider, .fiche-commande-header .panier-actif .actions-droit .s-editherm-info__form button[type="submit"], .s-editherm-info__form .fiche-commande-header .panier-actif .actions-droit button[type="submit"], .fiche-commande-header .panier-actif .actions-droit .btn-petit-noir, .fiche-commande-header .panier-actif .actions-droit .btn-petit-bleu, .fiche-commande-header .panier-actif .actions-droit .btn-petit-gris, .fiche-commande-header .panier-actif .actions-droit .TPL_ORCAB_AGENDA .changeVue, .TPL_ORCAB_AGENDA .fiche-commande-header .panier-actif .actions-droit .changeVue, .fiche-commande-header .panier-actif .actions-droit .btn-petit-gris-darker {
    margin-left: 0;
  }
}

@media screen and (max-width: 374px) {
  .fiche-commande-header .panier-actif .actions-droit .btn-petit-rouge, .fiche-commande-header .panier-actif .actions-droit .frontModalBoxContainer #btn-supprimer-non, .frontModalBoxContainer .fiche-commande-header .panier-actif .actions-droit #btn-supprimer-non,
  .fiche-commande-header .panier-actif .actions-droit .frontModalBoxContainer .btn-annuler, .frontModalBoxContainer .fiche-commande-header .panier-actif .actions-droit .btn-annuler, .fiche-commande-header .panier-actif .actions-droit .btn-petit-vert, .fiche-commande-header .panier-actif .actions-droit .frontModalBoxContainer .btn-submit, .frontModalBoxContainer .fiche-commande-header .panier-actif .actions-droit .btn-submit, .fiche-commande-header .panier-actif .actions-droit .frontModalBoxContainer #btn-supprimer-oui, .frontModalBoxContainer .fiche-commande-header .panier-actif .actions-droit #btn-supprimer-oui,
  .fiche-commande-header .panier-actif .actions-droit .frontModalBoxContainer .btn-valider, .frontModalBoxContainer .fiche-commande-header .panier-actif .actions-droit .btn-valider, .fiche-commande-header .panier-actif .actions-droit .s-editherm-info__form button[type="submit"], .s-editherm-info__form .fiche-commande-header .panier-actif .actions-droit button[type="submit"], .fiche-commande-header .panier-actif .actions-droit .btn-petit-noir, .fiche-commande-header .panier-actif .actions-droit .btn-petit-bleu, .fiche-commande-header .panier-actif .actions-droit .btn-petit-gris, .fiche-commande-header .panier-actif .actions-droit .TPL_ORCAB_AGENDA .changeVue, .TPL_ORCAB_AGENDA .fiche-commande-header .panier-actif .actions-droit .changeVue, .fiche-commande-header .panier-actif .actions-droit .btn-petit-gris-darker {
    margin: 0 auto;
    text-align: center;
    justify-content: center;
  }
}

.fiche-commande-header .panier-actif .edit-libelle {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  width: 100%;
}

.fiche-commande-header .panier-actif .edit-libelle .field {
  margin-bottom: 0;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}

.fiche-commande-header .panier-actif .edit-libelle .field:nth-child(2n) {
  padding: 0 3rem;
  border-left: 1px solid #cecece;
  color: #003160;
  font-size: 1.6rem;
  line-height: 4rem;
  gap: 1rem;
  margin-left: 3rem;
}

@media screen and (max-width: 767px) {
  .fiche-commande-header .panier-actif .edit-libelle .field {
    width: 100%;
  }
  .fiche-commande-header .panier-actif .edit-libelle .field:nth-child(2n) {
    margin: 0;
    padding: 1rem 0 0;
    border: 0;
  }
}

.fiche-commande-header .panier-actif .edit-libelle .select-wrap,
.fiche-commande-header .panier-actif .edit-libelle input[type="text"],
.fiche-commande-header .panier-actif .edit-libelle .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .fiche-commande-header .panier-actif .edit-libelle input[type="date"],
.fiche-commande-header .panier-actif .edit-libelle .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"],
.recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .fiche-commande-header .panier-actif .edit-libelle input[type="date"],
.fiche-commande-header .panier-actif .edit-libelle .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"],
.liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .fiche-commande-header .panier-actif .edit-libelle input[type="date"] {
  width: 31.5rem;
}

@media screen and (max-width: 374px) {
  .fiche-commande-header .panier-actif .edit-libelle .select-wrap,
  .fiche-commande-header .panier-actif .edit-libelle input[type="text"],
  .fiche-commande-header .panier-actif .edit-libelle .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"],
  .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .fiche-commande-header .panier-actif .edit-libelle input[type="date"],
  .fiche-commande-header .panier-actif .edit-libelle .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"],
  .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .fiche-commande-header .panier-actif .edit-libelle input[type="date"],
  .fiche-commande-header .panier-actif .edit-libelle .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"],
  .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .fiche-commande-header .panier-actif .edit-libelle input[type="date"] {
    max-width: 22rem;
  }
}

@media screen and (max-width: 374px) {
  .fiche-commande-header .panier-actif .edit-libelle {
    flex-direction: column;
  }
}

.fiche-commande-header .panier-actif #commande_informations_form {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}

.fiche-commande-header .panier-actif form {
  padding-bottom: 0;
  flex: 1;
  margin-right: 1rem;
}

@media screen and (max-width: 1400px) {
  .fiche-commande-header .panier-actif form {
    width: 100%;
    margin: 0 0 1rem;
    flex: inherit;
  }
}

.fiche-commande-header .link-edit {
  margin-left: 5px;
}

.fiche-commande-header .btn-actions-bottom {
  clear: both;
  overflow: hidden;
  margin-bottom: 60px;
  position: relative;
}

.fiche-commande-header .btn-actions-bottom::after {
  content: "";
  background: #c4c4c4;
  width: 64%;
  height: 1px;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  display: block;
  z-index: -1;
}

.fiche-commande-header .btn-petit-blanc {
  margin: 0 20px 10px 0;
}

.fiche-commande-header .btn-petit-blanc::before {
  color: #004462;
  font-size: 1.8rem;
  display: inline-block;
  vertical-align: sub;
  width: 2.4rem;
  text-align: left;
}

.fiche-commande-header .btn-petit-blanc:hover::before {
  color: #fff;
}

.fiche-commande-header #btnCommandeRapide {
  display: none;
}

.fiche-commande-header #btnCommandeRapide::before {
  content: "\e946";
}

.fiche-commande-header #btnPanierActionSupprimer::before {
  content: "\e95e";
}

.fiche-commande-header #btnPanierActionTransferer::before {
  content: "\e962";
}

.fiche-commande-header #btnPanierActionDupliquer::before {
  content: "\e95a";
}

.fiche-commande-header #btnPanierActionPrint::before,
.fiche-commande-header #btnPanierActionImprimer:before,
.fiche-commande-header .btn-imprimer:before,
.fiche-commande-header .btn-editer:before {
  content: "\e95c";
}

.fiche-commande-header .btn-save-to-list::before {
  content: "\e963";
}

.fiche-commande-header #btnPanierActionExporter::before {
  content: "\e959";
}

.fiche-commande-header .btn-imprimer-etiq::before {
  content: "\e95b";
}

.fiche-commande-header .nb-produits,
.fiche-commande-header .produits-indisponibles {
  font-size: 3rem;
  color: #004462;
  font-weight: bold;
  width: 47%;
  box-sizing: border-box;
  padding-right: 10px;
  display: inline-block;
}

@media screen and (max-width: 1024px) {
  .fiche-commande-header .panier-actif {
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 767px) {
  .fiche-commande-header .panier-actif .btn-petit-blanc:not(.btn-valider) {
    text-indent: -9999px;
    position: relative;
    width: 40px;
    float: left;
  }
  .fiche-commande-header .panier-actif .btn-petit-blanc:not(.btn-valider):nth-child(4n+1) {
    margin-left: 0;
    clear: left;
  }
  .fiche-commande-header .panier-actif .btn-petit-blanc:not(.btn-valider)::before {
    text-indent: 0;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    position: absolute;
    margin-right: 0;
    text-align: center;
  }
  .fiche-commande-header .panier-actif h1 {
    width: 100%;
    margin-right: 60px;
    margin-bottom: 15px;
  }
  .fiche-commande-header .panier-actif #btnCommandeRapide {
    display: inline;
  }
  .fiche-commande-header .panier-actif .edit-libelle {
    margin: 0 0 10px;
    width: 100%;
  }
  .fiche-commande-header .btn-actions #btnPanierActionPrint,
  .fiche-commande-header .btn-actions .btn-save-to-list,
  .fiche-commande-header .btn-actions .btn-submit-vide-panier,
  .fiche-commande-header .btn-actions .btn-supprimer-produits-indisponibles {
    padding: 10px;
  }
  .fiche-commande-header .btn-actions .liste-achat-panier,
  .fiche-commande-header .btn-actions .btn-submit-vide-panier,
  .fiche-commande-header .btn-actions .btn-supprimer-produits-indisponibles {
    margin: 0 0 20px 4px;
  }
  .fiche-commande-header .btn-actions-bottom::after {
    content: none;
  }
  .fiche-commande-header .btn-actions-bottom .bouton-precedent,
  .fiche-commande-header .btn-actions-bottom .bouton-suivant {
    width: 100%;
    margin: 5px 0;
  }
}

.fiche-commande-header .name__icon {
  font-size: 2rem;
  color: #545454;
  margin-right: 2px;
}

@media (max-width: 374px) {
  .fiche-commande-header .name__icon {
    font-size: 1.8rem;
  }
}

.fiche-commande-header .notes p {
  font-size: 1.3rem;
  margin: 1rem 0;
}

.fiche-commande-header .quick-edit-top label {
  font-size: 1.4rem;
  font-weight: 700;
  margin-top: 10px;
}

.fiche-commande-header #ficheCommandeHeaderSubtitle:has(~ .quick-edit-top label) h2, .fiche-commande-header #ficheCommandeHeaderSubtitle:has(~ .quick-edit-top label) .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .fiche-commande-header #ficheCommandeHeaderSubtitle:has(~ .quick-edit-top label) h1, .fiche-commande-header #ficheCommandeHeaderSubtitle:has(~ .quick-edit-top label) .fiche-adherent h1, .fiche-adherent .fiche-commande-header #ficheCommandeHeaderSubtitle:has(~ .quick-edit-top label) h1 {
  margin-bottom: 1.8rem;
  font-weight: 500;
}

/* ===================================================================
 * COMMON
 * =================================================================*/
.table-actions {
  background: #e9e9e9;
  padding: 20px 30px;
  margin-bottom: 20px;
  overflow: hidden;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}

.table-actions .selection {
  margin-right: 2rem;
}

.table-actions [type="checkbox"] + label::before {
  background-color: #ffffff;
}

.table-actions.top > [class*="bouton-"] {
  margin: 5px 0 5px 10px;
  padding: 0.9rem 2rem;
  line-height: 1;
  min-width: 23rem;
}

.table-actions [class*="bouton-"]::before {
  margin-right: 5px;
  font-size: 2rem;
  vertical-align: sub;
  display: inline-block;
}

.table-actions .remove-selection:before,
.table-actions .btn-submit-vide-panier:before {
  content: "\e95e";
}

.table-actions .btn-submit-vide-panier {
  align-content: center;
}

.table-actions .remove-selection {
  margin: 0 1rem;
  padding: 14px 15px;
  line-height: 1;
}

.table-actions .add-selection {
  margin-left: 0;
  padding: 14px 15px;
  line-height: 1;
}

.table-actions .add-selection:before {
  content: '\e91f';
}

.table-actions .btn-valider {
  min-width: 10rem;
  margin: 0 1rem;
  text-align: center;
  line-height: 1;
}

.table-actions .btn-ajouter-au-panier {
  font-size: 1.6rem;
  padding: 16px 15px;
  display: flex;
  justify-content: center;
}

.table-actions .right {
  display: flex;
  flex: 1;
  justify-content: flex-end;
  align-items: center;
}

.table-actions .tri {
  margin-right: 40px;
}

.table-actions .tri form {
  padding: 0;
  float: right;
}

.table-actions .tri label {
  font-size: 1.6rem;
  color: #004462;
  text-transform: uppercase;
  text-align: right;
}

.table-actions .tri select {
  font-size: 1.6rem;
  color: #868686;
  display: inline-block;
}

.table-actions .tri .select-wrap::after {
  border: 0;
}

@media (max-width: 1024px) {
  .table-actions .table-buttons {
    margin-top: 5px;
  }
}

@media (max-width: 767px) {
  .table-actions {
    flex-direction: column;
  }
  .table-actions .selection {
    margin-bottom: 1rem;
  }
  .table-actions .tri {
    clear: both;
    margin: 0 0 10px;
  }
  .table-actions .tri label {
    display: none;
  }
  .table-actions .tri .select-wrap::before {
    content: "\f077";
    top: 30%;
    right: 10px;
  }
  .table-actions .tri .select-wrap::after {
    top: 55%;
    right: -9px;
  }
  .table-actions .tri select {
    width: 230px;
    height: 50px;
    line-height: 50px;
    padding: 0 40px 0 10px;
  }
  .table-actions .right {
    flex-direction: column;
  }
  .table-actions .right .btn-valider {
    margin: 0 0 10px;
  }
  .table-actions.bottom a, .table-actions.bottom button {
    min-width: 220px;
  }
  .table-actions .remove-selection,
  .table-actions .btn-submit-vide-panier {
    margin: 10px 0 0;
  }
  .table-actions .table-buttons {
    text-align: center;
  }
}

.total-paniers {
  display: flex;
  flex-direction: column;
}

@media screen and (min-width: 1025px) {
  .total-paniers {
    align-items: flex-end;
  }
}

.total-price {
  background: #ffffff;
  padding: 1.5rem 4.5rem;
  border-radius: 5px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

@media screen and (min-width: 1025px) {
  .total-price {
    width: 49%;
  }
}

.total-price span {
  font-weight: bold;
  color: #004462;
}

.total-price .label {
  font-size: 1.7rem;
  line-height: 2.3rem;
  margin-right: 30px;
  font-weight: normal;
}

.total-price .prix-total {
  font-size: 2.7rem;
  line-height: 1;
}

.total-price .prix-total-items-selected {
  font-size: 2rem;
}

@media screen and (max-width: 1024px) {
  .total-price {
    width: 100%;
    box-sizing: border-box;
  }
}

.panier-contenu-indisponible {
  margin-bottom: 6rem;
}

.panier-contenu-indisponible .top {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  justify-content: space-between;
}

.panier-contenu-indisponible .bouton-rouge::before {
  content: "\e95e";
  margin-right: 5px;
  font-size: 2rem;
  vertical-align: sub;
  display: inline-block;
}

.nombre-liste {
  font-size: 2.7rem;
  color: #004462;
}

/* ===================================================================
 * ETAPE 2 - TUNNEL
 * =================================================================*/
.TPL_TUNNEL .field-title {
  font-size: 2rem;
  color: #004462;
  font-weight: bold;
  margin-bottom: 30px;
}

.TPL_TUNNEL .field {
  margin-bottom: 30px;
}

.TPL_TUNNEL .field ul li:not(.col) {
  color: #c33a27;
  font-size: 1.5rem;
}

.TPL_TUNNEL .type-commande {
  width: 48%;
  clear: both;
}

.TPL_TUNNEL .type-commande .select-wrap {
  width: 100%;
}

.TPL_TUNNEL .mode-livraison {
  margin: 30px 0 60px;
  padding-left: 1px;
}

.TPL_TUNNEL .mode-livraison .enLigne .mode-livraison-wrapper div {
  display: inline-block;
}

.TPL_TUNNEL .mode-livraison .mode-livraison-wrapper {
  width: 49%;
}

.TPL_TUNNEL .selection-tournee {
  clear: both;
  overflow: hidden;
  margin-bottom: 40px;
}

.TPL_TUNNEL .tournees-container {
  cursor: pointer;
}

.TPL_TUNNEL .tournees-container.sansTournee {
  display: none;
}

.TPL_TUNNEL .delai-livraison {
  clear: both;
  margin-bottom: 60px;
}

.TPL_TUNNEL .delai-livraison .options-delai, .TPL_TUNNEL .delai-livraison .date-field {
  display: inline-block;
}

.TPL_TUNNEL .delai-livraison .date-field .field {
  width: 100%;
  min-width: 36rem;
}

@media screen and (max-width: 767px) {
  .TPL_TUNNEL .delai-livraison .date-field .field {
    min-width: 28rem;
  }
}

.TPL_TUNNEL .delai-livraison .format-semaine .field {
  display: none;
}

.TPL_TUNNEL .delai-livraison .format-semaine .field .wrap-date::after {
  content: none;
}

.TPL_TUNNEL .delai-livraison .format-semaine input {
  padding-right: 15px;
}

.TPL_TUNNEL .confirmation-date {
  display: inline-block;
  margin-left: 20px;
}

.TPL_TUNNEL .confirmation-date label {
  display: inline-block;
}

.TPL_TUNNEL .confirmation-date .error {
  color: #c33a27;
  font-size: 1.5rem;
}

.TPL_TUNNEL .reference {
  clear: both;
  width: 48%;
}

.TPL_TUNNEL .email-suivi-commande {
  width: 48.7%;
}

.TPL_TUNNEL .field-required::after, .TPL_TUNNEL .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field::after, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_TUNNEL .field::after {
  right: 20px;
}

.TPL_TUNNEL .adresse-container {
  margin-top: 15px;
}

.TPL_TUNNEL .adresse-container .address-block .selected {
  border: 3px solid #6b8d2c;
  border-radius: 5px;
}

.TPL_TUNNEL .adresse-container .address-block .selected .address-block-title > p:first-child > span {
  position: relative;
}

.TPL_TUNNEL .adresse-container .address-block .selected .address-block-title > p:first-child > span::before {
  content: "\f00c";
  font-weight: normal;
  margin-right: 8px;
  font-size: 1.2rem;
}

.TPL_TUNNEL .tunnel-mini-loader {
  position: relative;
  top: 5px;
  left: 0;
}

.TPL_TUNNEL .adresse-existantes {
  display: none;
}

.TPL_TUNNEL .adresse-option ul li {
  font-weight: 700;
  color: #c33a27;
}

.TPL_TUNNEL #tunnel_livraison_form_origineAdresse div {
  display: inline-block;
}

.TPL_TUNNEL .adresse-form-container {
  margin: 30px 0;
  display: none;
}

.TPL_TUNNEL .adresse-form-container .form-fields-wrapper {
  max-width: 68%;
}

.TPL_TUNNEL .adresse-form-container .field {
  margin-bottom: 0;
}

.TPL_TUNNEL .adresse-form-container .field select {
  background: url(/build/images/fl-select.39dda136.png) no-repeat 97% 50% #fff;
}

.TPL_TUNNEL .adresse-form-container .field ul li {
  font-weight: 700;
  color: #c33a27;
}

.TPL_TUNNEL .adresse-form-container .bouton-bleu, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit, .TPL_TUNNEL .adresse-form-container .materiel-print-btn a, .materiel-print-btn .TPL_TUNNEL .adresse-form-container a, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a, .TPL_TUNNEL .adresse-form-container .bouton-vert, .TPL_TUNNEL .adresse-form-container .form-submit button, .form-submit .TPL_TUNNEL .adresse-form-container button,
.TPL_TUNNEL .adresse-form-container .form-submit input[type="submit"], .form-submit .TPL_TUNNEL .adresse-form-container input[type="submit"], .TPL_TUNNEL .adresse-form-container .bouton-bleu, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit, .TPL_TUNNEL .adresse-form-container .materiel-print-btn a, .materiel-print-btn .TPL_TUNNEL .adresse-form-container a, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a, .TPL_TUNNEL .adresse-form-container .bouton-gris, .TPL_TUNNEL .adresse-form-container .bouton-rouge, .TPL_TUNNEL .adresse-form-container .bouton-retour, .TPL_TUNNEL .adresse-form-container .bouton-rechercher, .TPL_TUNNEL .adresse-form-container .btn-ajouter-au-panier,
.TPL_TUNNEL .adresse-form-container .btn-liste-achat-activate, .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container a, .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .btn-ajouter-liste, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .btn-submit, .TPL_TUNNEL .adresse-form-container .bouton-rouge {
  min-width: 160px;
}

.TPL_TUNNEL .adresse-form-container .bouton-bleu + button, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer + button, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer + button, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer + button, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer + button, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit + button, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit + button, .TPL_TUNNEL .adresse-form-container .materiel-print-btn a + button, .materiel-print-btn .TPL_TUNNEL .adresse-form-container a + button, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a + button, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a + button, .TPL_TUNNEL .adresse-form-container .bouton-vert + button, .TPL_TUNNEL .adresse-form-container .form-submit button + button, .form-submit .TPL_TUNNEL .adresse-form-container button + button, .TPL_TUNNEL .adresse-form-container .form-submit input[type="submit"] + button, .form-submit .TPL_TUNNEL .adresse-form-container input[type="submit"] + button, .TPL_TUNNEL .adresse-form-container .bouton-bleu + button, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer + button, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer + button, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer + button, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer + button, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit + button, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit + button, .TPL_TUNNEL .adresse-form-container .materiel-print-btn a + button, .materiel-print-btn .TPL_TUNNEL .adresse-form-container a + button, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a + button, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a + button, .TPL_TUNNEL .adresse-form-container .bouton-gris + button, .TPL_TUNNEL .adresse-form-container .bouton-rouge + button, .TPL_TUNNEL .adresse-form-container .form-submit .bouton-rouge + button, .TPL_TUNNEL .adresse-form-container .bouton-retour + button, .TPL_TUNNEL .adresse-form-container .bouton-rechercher + button, .TPL_TUNNEL .adresse-form-container .btn-ajouter-au-panier + button, .TPL_TUNNEL .adresse-form-container .btn-liste-achat-activate + button, .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous a + button, .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container a + button, .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste + button, .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .btn-ajouter-liste + button, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .btn-submit + button, .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .btn-submit + button, .TPL_TUNNEL .adresse-form-container .bouton-rouge + button {
  margin-left: 30px;
}

.TPL_TUNNEL .adresse-form-container .bouton-bleu:before, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer:before, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer:before, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit:before, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit:before, .TPL_TUNNEL .adresse-form-container .materiel-print-btn a:before, .materiel-print-btn .TPL_TUNNEL .adresse-form-container a:before, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a:before, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a:before, .TPL_TUNNEL .adresse-form-container .bouton-vert:before, .TPL_TUNNEL .adresse-form-container .form-submit button:before, .form-submit .TPL_TUNNEL .adresse-form-container button:before,
.TPL_TUNNEL .adresse-form-container .form-submit input[type="submit"]:before, .form-submit .TPL_TUNNEL .adresse-form-container input[type="submit"]:before, .TPL_TUNNEL .adresse-form-container .bouton-bleu:before, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer:before, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer:before, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit:before, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit:before, .TPL_TUNNEL .adresse-form-container .materiel-print-btn a:before, .materiel-print-btn .TPL_TUNNEL .adresse-form-container a:before, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a:before, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a:before, .TPL_TUNNEL .adresse-form-container .bouton-gris:before, .TPL_TUNNEL .adresse-form-container .bouton-rouge:before, .TPL_TUNNEL .adresse-form-container .bouton-retour:before, .TPL_TUNNEL .adresse-form-container .bouton-rechercher:before, .TPL_TUNNEL .adresse-form-container .btn-ajouter-au-panier:before,
.TPL_TUNNEL .adresse-form-container .btn-liste-achat-activate:before, .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous a:before, .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container a:before, .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste:before, .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .btn-ajouter-liste:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .btn-submit:before, .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .btn-submit:before, .TPL_TUNNEL .adresse-form-container .bouton-rouge:before {
  color: #ffffff;
  font-size: 2rem;
  font-weight: 400;
  display: inline-block;
  vertical-align: sub;
  width: 2.4rem;
  text-align: left;
}

.TPL_TUNNEL .adresse-form-container .tunnel-mini-loader {
  display: inline-block;
  margin-left: 20px;
}

.TPL_TUNNEL .libelleAdresseSelectionnee,
.TPL_TUNNEL .btn-tunnel-adresse-modify,
.TPL_TUNNEL .btn-tunnel-select {
  min-width: 17rem;
  cursor: pointer;
}

.TPL_TUNNEL .libelleAdresseSelectionnee + .btn,
.TPL_TUNNEL .btn-tunnel-adresse-modify + .btn,
.TPL_TUNNEL .btn-tunnel-select + .btn {
  margin-top: 15px;
}

.TPL_TUNNEL .libelleAdresseSelectionnee.bouton-medium, .TPL_TUNNEL .form-submit button.libelleAdresseSelectionnee, .form-submit .TPL_TUNNEL button.libelleAdresseSelectionnee,
.TPL_TUNNEL .form-submit input.libelleAdresseSelectionnee[type="submit"], .form-submit .TPL_TUNNEL input.libelleAdresseSelectionnee[type="submit"], .TPL_TUNNEL .libelleAdresseSelectionnee.bouton-rechercher, .TPL_TUNNEL .suivi-wrapper .libelleAdresseSelectionnee.btn-more-fields, .suivi-wrapper .TPL_TUNNEL .libelleAdresseSelectionnee.btn-more-fields, .TPL_TUNNEL .suivi-wrapper .libelleAdresseSelectionnee#eolas_ecommerce_orcab_suivi_factures_type_exporterCsv, .suivi-wrapper .TPL_TUNNEL .libelleAdresseSelectionnee#eolas_ecommerce_orcab_suivi_factures_type_exporterCsv, .TPL_TUNNEL .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement button.libelleAdresseSelectionnee, .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement .TPL_TUNNEL button.libelleAdresseSelectionnee,
.TPL_TUNNEL .btn-tunnel-adresse-modify.bouton-medium,
.TPL_TUNNEL .form-submit button.btn-tunnel-adresse-modify,
.form-submit .TPL_TUNNEL button.btn-tunnel-adresse-modify,
.TPL_TUNNEL .form-submit input.btn-tunnel-adresse-modify[type="submit"],
.form-submit .TPL_TUNNEL input.btn-tunnel-adresse-modify[type="submit"],
.TPL_TUNNEL .btn-tunnel-adresse-modify.bouton-rechercher,
.TPL_TUNNEL .suivi-wrapper .btn-tunnel-adresse-modify.btn-more-fields,
.suivi-wrapper .TPL_TUNNEL .btn-tunnel-adresse-modify.btn-more-fields,
.TPL_TUNNEL .suivi-wrapper .btn-tunnel-adresse-modify#eolas_ecommerce_orcab_suivi_factures_type_exporterCsv,
.suivi-wrapper .TPL_TUNNEL .btn-tunnel-adresse-modify#eolas_ecommerce_orcab_suivi_factures_type_exporterCsv,
.TPL_TUNNEL .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement button.btn-tunnel-adresse-modify,
.TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement .TPL_TUNNEL button.btn-tunnel-adresse-modify,
.TPL_TUNNEL .btn-tunnel-select.bouton-medium,
.TPL_TUNNEL .form-submit button.btn-tunnel-select,
.form-submit .TPL_TUNNEL button.btn-tunnel-select,
.TPL_TUNNEL .form-submit input.btn-tunnel-select[type="submit"],
.form-submit .TPL_TUNNEL input.btn-tunnel-select[type="submit"],
.TPL_TUNNEL .btn-tunnel-select.bouton-rechercher,
.TPL_TUNNEL .suivi-wrapper .btn-tunnel-select.btn-more-fields,
.suivi-wrapper .TPL_TUNNEL .btn-tunnel-select.btn-more-fields,
.TPL_TUNNEL .suivi-wrapper .btn-tunnel-select#eolas_ecommerce_orcab_suivi_factures_type_exporterCsv,
.suivi-wrapper .TPL_TUNNEL .btn-tunnel-select#eolas_ecommerce_orcab_suivi_factures_type_exporterCsv,
.TPL_TUNNEL .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement button.btn-tunnel-select,
.TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement .TPL_TUNNEL button.btn-tunnel-select {
  min-width: auto;
}

.TPL_TUNNEL .address-block-inner.selected .has-selection + a.btn {
  margin-top: 15px;
}

.TPL_TUNNEL #mapTunnel {
  display: none;
  position: relative;
  height: 500px;
  width: 100%;
  width: calc( 100% - 2px);
  margin-bottom: 20px;
  border: 1px solid #adadad;
  border-radius: 5px;
}

.TPL_TUNNEL .mode-transport {
  margin-bottom: 40px;
}

.TPL_TUNNEL .mode-transport .tableau-agenda .div-col {
  cursor: pointer;
}

.TPL_TUNNEL .mode-transport .tableau-agenda .div-col .title {
  background: none;
}

.TPL_TUNNEL .mode-transport .tableau-agenda .div-col:not(.empty) {
  background: #FFF;
}

.TPL_TUNNEL .mode-transport .tableau-agenda .div-col.disabled {
  cursor: not-allowed;
  background-color: #FFF;
  opacity: 0.25;
}

.TPL_TUNNEL .mode-transport .tableau-agenda .div-col.active {
  background: #072938;
  cursor: initial;
}

.TPL_TUNNEL .mode-transport .tableau-agenda .div-col.active .title {
  color: #fff;
}

.TPL_TUNNEL .mode-transport .tableau-agenda .div-row {
  display: flex;
}

.TPL_TUNNEL .mode-transport .tableau-agenda .div-row .col {
  width: 11.93%;
  min-width: 95px;
}

@media screen and (max-width: 767px) {
  .TPL_TUNNEL .mode-transport .tableau-agenda .div-row .col {
    min-width: 45px;
  }
}

.TPL_TUNNEL .mode-transport .tableau-agenda .div-row .col.num_semaine {
  width: 9.5%;
  height: 34px;
  min-width: 85px;
}

@media screen and (max-width: 1024px) {
  .TPL_TUNNEL .mode-transport .tableau-agenda .div-row .col.num_semaine {
    min-width: 45px;
  }
}

.TPL_TUNNEL .mode-transport .tableau-agenda .div-row .col.num_semaine .title {
  line-height: 24px;
  font-weight: normal;
}

@media screen and (min-width: 1025px) {
  .TPL_TUNNEL .mode-transport .tableau-agenda .div-row .col.num_semaine .title .libelle-mob {
    display: none;
  }
}

.TPL_TUNNEL .mode-transport .calendrier {
  position: relative;
}

.TPL_TUNNEL .mode-transport .calendrier .livraison-au-plus-tot-active {
  display: none;
}

.TPL_TUNNEL .mode-transport .calendrier.disable .livraison-au-plus-tot-active {
  display: block;
  position: absolute;
  background-color: rgba(8, 8, 8, 0.5);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.TPL_TUNNEL .mode-transport .calendrier.disable .livraison-au-plus-tot-active div {
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  background-color: #fff;
  width: 30%;
  padding: 20px;
  border-radius: 10px;
  font-weight: 700;
}

@media screen and (max-width: 1024px) {
  .TPL_TUNNEL .mode-transport .calendrier.disable .livraison-au-plus-tot-active {
    border-radius: 10px 10px 0 0;
  }
  .TPL_TUNNEL .mode-transport .calendrier.disable .livraison-au-plus-tot-active div {
    width: 60%;
  }
}

.TPL_TUNNEL .wrapper-calendrier {
  display: flex;
  flex-flow: row wrap;
  background-color: #fff;
  border-radius: 5px 0 0 5px;
}

.TPL_TUNNEL .wrapper-calendrier .wrapper-left {
  width: 25%;
  border-radius: 5px 0 0 5px;
  padding: 45px 30px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  position: relative;
}

.TPL_TUNNEL .wrapper-calendrier .wrapper-right {
  width: 75%;
  padding: 30px 60px 30px 20px;
  box-sizing: border-box;
  position: relative;
  background-color: #E9E9E9;
  border-radius: 0 5px 5px 0;
}

.TPL_TUNNEL .wrapper-calendrier h4 {
  color: #004462;
  font-size: 2.7rem;
  font-weight: 700;
  margin: 0;
}

.TPL_TUNNEL .wrapper-calendrier h5 {
  font-size: 1.6rem;
  margin-bottom: 30px;
}

.TPL_TUNNEL .wrapper-calendrier .au-plus-tot {
  flex-grow: 1;
}

.TPL_TUNNEL .wrapper-calendrier .au-plus-tot .btn-petit-vert, .TPL_TUNNEL .wrapper-calendrier .au-plus-tot .frontModalBoxContainer .btn-submit, .frontModalBoxContainer .TPL_TUNNEL .wrapper-calendrier .au-plus-tot .btn-submit, .TPL_TUNNEL .wrapper-calendrier .au-plus-tot .frontModalBoxContainer #btn-supprimer-oui, .frontModalBoxContainer .TPL_TUNNEL .wrapper-calendrier .au-plus-tot #btn-supprimer-oui,
.TPL_TUNNEL .wrapper-calendrier .au-plus-tot .frontModalBoxContainer .btn-valider, .frontModalBoxContainer .TPL_TUNNEL .wrapper-calendrier .au-plus-tot .btn-valider, .TPL_TUNNEL .wrapper-calendrier .au-plus-tot .s-editherm-info__form button[type="submit"], .s-editherm-info__form .TPL_TUNNEL .wrapper-calendrier .au-plus-tot button[type="submit"] {
  font-size: 1.6rem;
  font-weight: 700;
}

.TPL_TUNNEL .wrapper-calendrier .btn-afficher {
  font-size: 1.6rem;
  width: 180px;
  padding: 10px 20px;
}

.TPL_TUNNEL .wrapper-calendrier .btn-afficher::before {
  content: "\f002";
  font-size: 1.6rem;
  margin-right: 8px;
  font-weight: normal;
}

@media screen and (min-width: 1025px) {
  .TPL_TUNNEL .wrapper-calendrier .btn-afficher {
    position: absolute;
    bottom: 45px;
    left: 30px;
  }
}

@media screen and (max-width: 1024px) {
  .TPL_TUNNEL .wrapper-calendrier {
    flex-direction: column;
    border-radius: 10px 10px 0 0;
  }
  .TPL_TUNNEL .wrapper-calendrier .wrapper-left {
    width: 100%;
    order: 2;
    border-radius: 0;
  }
  .TPL_TUNNEL .wrapper-calendrier .wrapper-right {
    width: 100%;
    order: 1;
    border-radius: 10px 10px 0 0;
    padding: 20px 10px;
  }
  .TPL_TUNNEL .wrapper-calendrier .au-plus-tot {
    margin-bottom: 30px;
  }
}

.TPL_TUNNEL #pop-up-month {
  transform: translateX(-50%);
  left: 50%;
  position: absolute;
}

.TPL_TUNNEL .showDetail {
  display: none;
}

.TPL_TUNNEL .showDetail .detail {
  background: #ededed;
  padding: 20px;
  text-align: center;
}

.TPL_TUNNEL .showDetail h5 {
  color: #404040;
  font-weight: 600;
}

.TPL_TUNNEL .showDetail .table-entete-grise {
  margin-bottom: 20px;
  text-align: left;
}

.TPL_TUNNEL .alert {
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);
  padding: 20px 30px;
  border-radius: 5px;
  margin-bottom: 20px;
}

.TPL_TUNNEL .alert-danger {
  background-color: #e05151;
  color: #fff;
  padding-left: 70px;
  position: relative;
}

.TPL_TUNNEL .alert-danger::before {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  content: "\f071";
  font-size: 1.5em;
  left: 25px;
}

.TPL_TUNNEL .alert-warning {
  background-color: #f59235;
  color: #fff;
  padding-left: 70px;
  position: relative;
}

.TPL_TUNNEL .alert-warning::before {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  content: "\f071";
  font-size: 1.5em;
  left: 25px;
}

@media screen and (max-width: 1024px) {
  .TPL_TUNNEL {
    /*.libelle-panier-actif {
            display: block;
            width: 100%;
            margin-bottom: 20px;
        }*/
  }
  .TPL_TUNNEL .type-commande, .TPL_TUNNEL .mode-livraison {
    float: none;
    width: 100%;
  }
  .TPL_TUNNEL .type-commande, .TPL_TUNNEL .reference, .TPL_TUNNEL .email-suivi-commande {
    width: 64.6%;
  }
  .TPL_TUNNEL .email-suivi-commande {
    float: left;
  }
  .TPL_TUNNEL .adresse-container .address-block > div:first-child {
    width: 50%;
  }
  .TPL_TUNNEL .adresse-container .address-block > div:first-child.address-block-inner {
    width: 100%;
    box-sizing: border-box;
  }
  .TPL_TUNNEL .adresse-form-container .form-fields-wrapper {
    width: 100%;
    max-width: inherit;
  }
  .TPL_TUNNEL .adresse-form-container .bouton-rouge, .TPL_TUNNEL .adresse-form-container .bouton-vert, .TPL_TUNNEL .adresse-form-container .form-submit button, .form-submit .TPL_TUNNEL .adresse-form-container button,
  .TPL_TUNNEL .adresse-form-container .form-submit input[type="submit"], .form-submit .TPL_TUNNEL .adresse-form-container input[type="submit"], .TPL_TUNNEL .adresse-form-container .bouton-bleu, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit, .TPL_TUNNEL .adresse-form-container .materiel-print-btn a, .materiel-print-btn .TPL_TUNNEL .adresse-form-container a, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a, .TPL_TUNNEL .adresse-form-container .bouton-gris, .TPL_TUNNEL .adresse-form-container .bouton-rouge, .TPL_TUNNEL .adresse-form-container .bouton-retour, .TPL_TUNNEL .adresse-form-container .bouton-rechercher, .TPL_TUNNEL .adresse-form-container .btn-ajouter-au-panier,
  .TPL_TUNNEL .adresse-form-container .btn-liste-achat-activate, .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container a, .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .btn-ajouter-liste, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .btn-submit, .TPL_TUNNEL .adresse-form-container .bouton-bleu, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit, .TPL_TUNNEL .adresse-form-container .materiel-print-btn a, .materiel-print-btn .TPL_TUNNEL .adresse-form-container a, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a {
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 767px) {
  .TPL_TUNNEL .type-commande, .TPL_TUNNEL .reference, .TPL_TUNNEL .email-suivi-commande {
    width: 100%;
  }
  .TPL_TUNNEL .adresse-container .address-block > div {
    display: block;
  }
  .TPL_TUNNEL .adresse-container .address-block > div:first-child {
    width: 100%;
  }
  .TPL_TUNNEL .adresse-form-container .bouton-rouge, .TPL_TUNNEL .adresse-form-container .bouton-vert, .TPL_TUNNEL .adresse-form-container .form-submit button, .form-submit .TPL_TUNNEL .adresse-form-container button,
  .TPL_TUNNEL .adresse-form-container .form-submit input[type="submit"], .form-submit .TPL_TUNNEL .adresse-form-container input[type="submit"], .TPL_TUNNEL .adresse-form-container .bouton-bleu, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit, .TPL_TUNNEL .adresse-form-container .materiel-print-btn a, .materiel-print-btn .TPL_TUNNEL .adresse-form-container a, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a, .TPL_TUNNEL .adresse-form-container .bouton-gris, .TPL_TUNNEL .adresse-form-container .bouton-rouge, .TPL_TUNNEL .adresse-form-container .bouton-retour, .TPL_TUNNEL .adresse-form-container .bouton-rechercher, .TPL_TUNNEL .adresse-form-container .btn-ajouter-au-panier,
  .TPL_TUNNEL .adresse-form-container .btn-liste-achat-activate, .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container a, .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .btn-ajouter-liste, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .btn-submit, .TPL_TUNNEL .adresse-form-container .bouton-bleu, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit, .TPL_TUNNEL .adresse-form-container .materiel-print-btn a, .materiel-print-btn .TPL_TUNNEL .adresse-form-container a, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a {
    min-width: 200px;
    display: block;
    margin: 0 auto 10px;
  }
  .TPL_TUNNEL .adresse-form-container .bouton-rouge + button, .TPL_TUNNEL .adresse-form-container .bouton-vert + button, .TPL_TUNNEL .adresse-form-container .form-submit button + button, .form-submit .TPL_TUNNEL .adresse-form-container button + button, .TPL_TUNNEL .adresse-form-container .form-submit input[type="submit"] + button, .form-submit .TPL_TUNNEL .adresse-form-container input[type="submit"] + button, .TPL_TUNNEL .adresse-form-container .bouton-bleu + button, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer + button, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer + button, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer + button, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer + button, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit + button, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit + button, .TPL_TUNNEL .adresse-form-container .materiel-print-btn a + button, .materiel-print-btn .TPL_TUNNEL .adresse-form-container a + button, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a + button, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a + button, .TPL_TUNNEL .adresse-form-container .bouton-gris + button, .TPL_TUNNEL .adresse-form-container .bouton-rouge + button, .TPL_TUNNEL .adresse-form-container .form-submit .bouton-rouge + button, .TPL_TUNNEL .adresse-form-container .bouton-retour + button, .TPL_TUNNEL .adresse-form-container .bouton-rechercher + button, .TPL_TUNNEL .adresse-form-container .btn-ajouter-au-panier + button, .TPL_TUNNEL .adresse-form-container .btn-liste-achat-activate + button, .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous a + button, .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container a + button, .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste + button, .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .btn-ajouter-liste + button, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .btn-submit + button, .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .btn-submit + button, .TPL_TUNNEL .adresse-form-container .bouton-bleu + button, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer + button, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer + button, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer + button, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer + button, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit + button, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit + button, .TPL_TUNNEL .adresse-form-container .materiel-print-btn a + button, .materiel-print-btn .TPL_TUNNEL .adresse-form-container a + button, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a + button, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a + button {
    margin: 0 auto 10px;
  }
}

/* ===================================================================
 * GENERALITES PANIER
 * =================================================================*/
/*.panier-table {
    .libelle {
        width: 30%;
        p {
            @extend .titre-vert;
            text-transform: none;
        }
    }
    .nb-article {
        width: 20%;
        p,
        .nbre {
            position: relative;
            @include fontSize(16px);
            padding-left: 40px;

            &::before {
                @extend .icomoon;
                @include alignementY();
                content: '\e917';
                font-size: 20px;
                color: $vert;
                left: 0;
            }
        }
    }
    .adresse {
        width: 20%;
        @include fontSize(16px);
    }
    .options {
        width: 30%;
        vertical-align: middle;
        .btn-bloc {
            text-align: center;
            & > a, & > span {
                position: static;
                top: auto;
                left: auto;
                transform: translate(0, 0);
                line-height: 50px;
            }
        }
    }

    .liste-detail {
        &.locked {
            background-color: #ddd;
            cursor: not-allowed;
        }
    }

    //paniers a valider
    &.paniers-a-valider-table {
        .lib {
            display: none;
        }
        .intitules .fl-down {
            margin-left: 10px;
        }
        .head, .row {
            & > div {
                width: 16%;
                padding-right: 10px;
                display: inline-block;
                vertical-align: top;
            }
            .reference {
                width: 13%;
            }
            .client {
                width: 17%;
            }
            .date-co {
                width: 10%;
            }
            .options {
                width: 18%;
            }

        }
        .row > div:first-child {
            padding-left: 10px;
        }
        .nb-article p {
            margin: 0;
        }
    }
}*/
/*
    fieldset.address-block
    e.g. : page créer un panier / choisir adresse
*/
.address-blocks-wrapper {
  padding-top: 10px;
}

.address-blocks-wrapper:before, .address-blocks-wrapper:after {
  display: table;
  content: " ";
}

.address-blocks-wrapper:after {
  clear: both;
}

.address-block {
  width: 24.50925406618059%;
  border-radius: 5px;
  background-color: #ffffff;
  float: left;
  margin: 0 30px 30px 0;
}

.address-block:nth-child(3n+3) {
  margin-right: 0;
}

.address-block:nth-child(3n+1) {
  clear: left;
}

.address-block__parent {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 30px;
  margin-bottom: 30px;
}

.address-block__parent .address-block {
  margin: 0;
  width: calc(33% - 16px);
}

@media screen and (max-width: 1024px) {
  .address-block__parent .address-block {
    width: calc(50% - 16px);
  }
}

@media screen and (max-width: 767px) {
  .address-block__parent .address-block {
    width: 100%;
  }
}

.address-block legend {
  font-size: 1.6rem;
  width: 100%;
  display: block;
  background-color: #e7e7e7;
  border-radius: 5px 5px 0 0;
  min-height: 50px;
  text-align: center;
  padding: 20px;
}

.address-block .content {
  padding: 5px 20px;
  color: #868686;
}

.address-block .content > div {
  padding: 15px 0;
  border-bottom: 1px solid #e9e9e9;
}

.address-block .content > div:last-child {
  border-bottom: 0 none;
}

.address-block p {
  margin: 0;
}

.address-block-btn {
  padding: 0 25px 30px;
  text-align: center;
  /*a {
            @extend .bouton-vert;
            min-width: 0;
        }*/
}

.address-block .address-block-title > p:first-child > span {
  color: #004462;
  font-weight: 700;
}

/* ===================================================================
 * LISTES PANIERS
 * =================================================================*/
.liste-paniers .link-edit-bleu,
.liste-paniers-a-valider .link-edit-bleu {
  font-size: 1.1rem;
  display: block;
}

.liste-paniers-a-valider .paginator-nbre {
  margin-bottom: 0;
}

.recherche-paniers .form-recherche .field-required::after, .recherche-paniers .form-recherche .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field::after, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-paniers .form-recherche .field::after {
  right: 20px;
}

.TPL_ORCAB_PANIERS .form-recherche > div > div:nth-child(1),
.TPL_ORCAB_PANIERS_PARTAGES .form-recherche > div > div:nth-child(1) {
  width: 100%;
}

/* ===================================================================
 * LISTES PANIERS : FICHE
 * =================================================================*/
.TPL_ORCAB_PANIERS #mapTunnel {
  display: none;
  position: relative;
  height: 500px;
  width: 100%;
  width: calc(100% - 2px);
  margin-bottom: 20px;
  border: 1px solid #adadad;
  border-radius: 5px;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_PANIERS form .enLigne label {
    margin-right: 30px;
    display: block;
  }
  .TPL_ORCAB_PANIERS form .enLigne input {
    float: left;
  }
}

.TPL_ORCAB_PANIERS .creationPanierAdresse .select-wrap::after {
  border: 0;
}

.TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir a, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir button, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit a, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit button {
  min-width: 155px;
  text-align: center;
  margin-bottom: 1rem;
}

.TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit button:before {
  color: #ffffff;
  font-size: 2rem;
  font-weight: 400;
  display: inline-block;
  vertical-align: sub;
  width: 2.4rem;
  text-align: left;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit {
    text-align: center;
  }
}

.TPL_ORCAB_PANIERS .creationPanierAdresse .btn-group-modification-panier .btn-fondrouge a {
  background-color: #e05151;
}

.TPL_ORCAB_PANIERS .creationPanierAdresse .btn-group-modification-panier .btn-fondrouge a:hover {
  background-color: #ba4242;
}

.TPL_ORCAB_PANIERS .creationPanierAdresse__btn2 {
  margin-top: 25px;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_PANIERS .creationPanierAdresse__btn2 {
    margin-top: 10px;
  }
}

.TPL_ORCAB_PANIERS .creationPanierAdresse__btn2 a.bouton-medium, .TPL_ORCAB_PANIERS .creationPanierAdresse__btn2 a.bouton-rechercher, .TPL_ORCAB_PANIERS .creationPanierAdresse__btn2 .suivi-wrapper a.btn-more-fields, .suivi-wrapper .TPL_ORCAB_PANIERS .creationPanierAdresse__btn2 a.btn-more-fields, .TPL_ORCAB_PANIERS .creationPanierAdresse__btn2 .suivi-wrapper a#eolas_ecommerce_orcab_suivi_factures_type_exporterCsv, .suivi-wrapper .TPL_ORCAB_PANIERS .creationPanierAdresse__btn2 a#eolas_ecommerce_orcab_suivi_factures_type_exporterCsv {
  min-width: auto;
}

.TPL_ORCAB_PANIERS .btn-tunnel-select {
  background-color: #fff;
  font-size: 1.4rem;
  color: #82aa37;
  border: 1px solid #82aa37;
  padding: 10px 20px;
  min-height: 40px;
  border-radius: 5px;
  box-sizing: border-box;
  position: relative;
  display: inline-block;
  min-width: 200px;
  cursor: pointer;
}

.TPL_ORCAB_PANIERS .btn-tunnel-select:hover {
  text-decoration: none;
  background-color: #6b8d2c;
  -webkit-transition: background 0.3s;
  -o-transition: background 0.3s;
  transition: background 0.3s;
  color: #fff;
}

.TPL_ORCAB_PANIERS .paniers-table .libelle {
  width: 100%;
  align-items: center;
}

.TPL_ORCAB_PANIERS .titre-avec-favoris,
.TPL_ORCAB_PANIERS_PARTAGES .titre-avec-favoris {
  width: 55%;
}

@media screen and (max-width: 1024px) {
  .TPL_ORCAB_PANIERS .titre-avec-favoris,
  .TPL_ORCAB_PANIERS_PARTAGES .titre-avec-favoris {
    width: calc(100% - 250px);
  }
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_PANIERS .titre-avec-favoris,
  .TPL_ORCAB_PANIERS_PARTAGES .titre-avec-favoris {
    width: calc(100% - 125px);
  }
}

@media screen and (min-width: 767px) {
  .TPL_ORCAB_PANIERS form.form-recherche,
  .TPL_ORCAB_PANIERS_PARTAGES form.form-recherche {
    display: flex;
  }
  .TPL_ORCAB_PANIERS form.form-recherche #recherche_paniers_form,
  .TPL_ORCAB_PANIERS_PARTAGES form.form-recherche #recherche_paniers_form {
    width: 100%;
  }
  .TPL_ORCAB_PANIERS form.form-recherche .form-submit,
  .TPL_ORCAB_PANIERS_PARTAGES form.form-recherche .form-submit {
    width: auto;
    margin: auto;
    margin-bottom: 0;
  }
}

.TPL_ORCAB_PANIERS .paniers-table .libelle,
.TPL_ORCAB_PANIERS_PARTAGES .paniers-table .libelle {
  flex-flow: row wrap;
  display: flex;
  margin-bottom: 2rem;
  gap: 1rem 3rem;
}

.TPL_ORCAB_PANIERS .paniers-table .item-commande,
.TPL_ORCAB_PANIERS_PARTAGES .paniers-table .item-commande {
  flex-wrap: wrap;
}

.orcabPrint {
  display: none;
}

/* ===================================================================
 * ETAPE 1 - TUNNEL
 * =================================================================*/
.TPL_PANIER .panier-actif {
  padding-bottom: 10px;
}

.TPL_PANIER #panierLibelle {
  display: inline-block;
  width: 33.3%;
}

.TPL_PANIER #panierLibelleForm {
  position: relative;
  margin: -5px 0 5px;
  line-height: 40px;
}

.TPL_PANIER #panierLibelleForm::before {
  content: "\e920";
  font-size: 2.4rem;
  color: #868686;
  margin-right: 10px;
  margin-top: 5px;
}

.TPL_PANIER #panierLibelleForm form {
  display: inline-block;
  width: 65%;
  padding: 0;
}

.TPL_PANIER #panierLibelleForm .field-required::after, .TPL_PANIER #panierLibelleForm .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field::after, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .TPL_PANIER #panierLibelleForm .field::after {
  right: 20px;
}

.TPL_PANIER .liste-achat-panier {
  margin: 0 0 10px 20px;
  display: inline-block;
}

.TPL_PANIER .liste-achat-panier .btn-petit-blanc {
  margin-bottom: 0;
}

.TPL_PANIER .liste-achat-panier .ajouter-a-la-liste {
  left: -55px;
}

.TPL_PANIER .display-table > div {
  padding-right: 15px;
  vertical-align: middle;
}

.TPL_PANIER .display-table .reference {
  width: 17%;
}

.TPL_PANIER .display-table .libelle {
  width: 23%;
}

.TPL_PANIER .display-table .marque {
  width: 0;
}

.TPL_PANIER .display-table .stock {
  width: 21.3%;
}

.TPL_PANIER .display-table .prix {
  width: 9.4%;
}

.TPL_PANIER .display-table .quantite {
  width: 14.5%;
  text-align: left;
}

.TPL_PANIER .display-table .total {
  width: 8.5%;
}

.TPL_PANIER .display-table .act {
  width: 6.3%;
}

.TPL_PANIER .display-table .prix, .TPL_PANIER .display-table .total {
  white-space: nowrap;
}

.TPL_PANIER .intitules {
  margin-bottom: 30px;
}

.TPL_PANIER .liste-produits {
  margin-top: 20px;
  clear: both;
}

.TPL_PANIER .sub-total {
  width: 48.7%;
  float: right;
  background: #fff;
  border-radius: 5px;
  padding: 15px 4.1%;
  box-sizing: border-box;
  margin-bottom: 30px;
  font-size: 2.1rem;
  color: #004462;
  text-align: right;
  font-weight: bold;
}

.TPL_PANIER .sub-total span {
  font-size: 1.667em;
  margin-left: 25px;
}

.TPL_PANIER .sub-total .taxe-eco {
  color: #545454;
  font-size: 1rem;
  font-weight: normal;
}

.TPL_PANIER .panier-vide {
  margin-bottom: 30px;
  display: inline-block;
  width: 100%;
}

.TPL_PANIER .panier-vide .infoMessages,
.TPL_PANIER .panier-vide .commande-rapide-panier {
  margin-bottom: 30px;
}

.liste-panier-commande-rapide .liste-produits-item {
  background: #fff;
  border-radius: 5px;
  margin-bottom: 20px;
  padding: 20px 0;
}

.liste-panier-commande-rapide .liste-produits-item .display-table.avecOptions {
  padding-bottom: 10px;
}

.liste-panier-commande-rapide .liste-produits-item .display-table > div {
  padding: 0 15px 0 0;
  text-overflow: ellipsis;
  overflow: hidden;
}

.liste-panier-commande-rapide .liste-produits-item .display-table > div.reference {
  padding-left: 15px;
}

.liste-panier-commande-rapide .liste-produits-item .display-table > div.qte-etat {
  padding-right: 30px;
}

.liste-panier-commande-rapide .liste-produits-item .reference .img-prod {
  position: relative;
  display: block;
}

.liste-panier-commande-rapide .liste-produits-item .reference .img-prod img {
  max-height: 70px;
}

.liste-panier-commande-rapide .liste-produits-item div.libelle, .liste-panier-commande-rapide .liste-produits-item .prix-unitaire, .liste-panier-commande-rapide .liste-produits-item .prix-total {
  font-size: 2.1rem;
  color: #004462;
  font-weight: bold;
  text-transform: uppercase;
}

.liste-panier-commande-rapide .liste-produits-item div.libelle a, .liste-panier-commande-rapide .liste-produits-item .prix-unitaire a, .liste-panier-commande-rapide .liste-produits-item .prix-total a {
  color: inherit;
}

.liste-panier-commande-rapide .liste-produits-item div.libelle .label, .liste-panier-commande-rapide .liste-produits-item .prix-unitaire .label, .liste-panier-commande-rapide .liste-produits-item .prix-total .label {
  text-transform: lowercase;
}

.liste-panier-commande-rapide .liste-produits-item .fabricant {
  font-size: 1.3rem;
  color: #545454;
}

.liste-panier-commande-rapide .liste-produits-item .prix-mobile {
  display: none;
}

.liste-panier-commande-rapide .liste-produits-item .prix-unitaire.label-promo {
  color: #e05151;
}

.liste-panier-commande-rapide .liste-produits-item .img-prod {
  width: 30%;
  margin-right: 7.5%;
  float: left;
}

.liste-panier-commande-rapide .liste-produits-item .img-prod + .details {
  padding-left: 36.5%;
}

.liste-panier-commande-rapide .liste-produits-item .identifiants, .liste-panier-commande-rapide .liste-produits-item .cond {
  font-size: 1.6rem;
}

.liste-panier-commande-rapide .liste-produits-item .identifiants span, .liste-panier-commande-rapide .liste-produits-item .cond span {
  font-size: 0.813em;
  color: #004462;
}

.liste-panier-commande-rapide .liste-produits-item .infos-types {
  font-size: 1.3rem;
  padding-top: 10px;
}

.liste-panier-commande-rapide .liste-produits-item #lienAfficherStock {
  font-size: 1.3rem;
  color: #004462;
  font-weight: 600;
  text-decoration: none;
}

.liste-panier-commande-rapide .liste-produits-item #lienAfficherStock::after {
  content: "\f106";
  font-family: 'FontAwesome', Arial, sans-serif;
  position: relative;
  display: inline;
  margin-left: 10px;
}

.liste-panier-commande-rapide .liste-produits-item #lienAfficherStock.plier:after {
  content: "\f107";
}

.liste-panier-commande-rapide .liste-produits-item .qte-etat {
  position: relative;
  padding-left: 15px;
  margin-bottom: 5px;
  line-height: normal;
}

.liste-panier-commande-rapide .liste-produits-item .qte-etat::before {
  position: absolute;
  left: 0;
  top: 4px;
  margin-left: 0;
  width: 10px;
  height: 10px;
}

.liste-panier-commande-rapide .liste-produits-item .marque {
  font-size: 1.6rem;
  text-transform: uppercase;
  font-weight: bold;
}

.liste-panier-commande-rapide .liste-produits-item .marque .identifiants {
  display: none;
}

.liste-panier-commande-rapide .liste-produits-item .qte {
  line-height: 40px;
  height: 40px;
  max-width: 140px;
  margin-bottom: 20px;
}

.liste-panier-commande-rapide .liste-produits-item .qte a.minus, .liste-panier-commande-rapide .liste-produits-item .qte a.plus {
  width: 30%;
}

.liste-panier-commande-rapide .liste-produits-item .qte .unite-quantite {
  font-size: 1.4rem;
  margin-left: 5px;
  width: 40px;
  display: inline-block;
  text-overflow: ellipsis;
  overflow: hidden;
}

.liste-panier-commande-rapide .liste-produits-item .qte .pallier {
  font-size: 1.2rem;
  display: block;
  color: #e05151;
  line-height: 20px;
}

.liste-panier-commande-rapide .liste-produits-item .qte .pallier::before {
  font-size: 1em;
  content: "\f05a";
  position: relative;
  margin-right: 5px;
}

.liste-panier-commande-rapide .liste-produits-item .calc {
  margin-bottom: 8px;
  max-width: 142px;
}

.liste-panier-commande-rapide .liste-produits-item .calc label {
  font-size: 1.5rem;
  padding: 0;
}

.liste-panier-commande-rapide .liste-produits-item .calc input[type="text"], .liste-panier-commande-rapide .liste-produits-item .calc .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .liste-panier-commande-rapide .liste-produits-item .calc input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .calc .comment-form.comment-obligatoire .field input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .calc input[type="date"], .liste-panier-commande-rapide .liste-produits-item .calc .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .calc input[type="date"] {
  border-color: #c4c4c4;
  height: 42px;
}

.liste-panier-commande-rapide .liste-produits-item .cond span .cond-unite {
  display: block;
  font-size: 1em;
}

.liste-panier-commande-rapide .liste-produits-item .quantite .unite {
  font-size: 1.5rem;
  text-align: center;
  max-width: 140px;
  color: #004462;
}

.liste-panier-commande-rapide .liste-produits-item .option-unite {
  font-size: 1.05em;
}

.liste-panier-commande-rapide .liste-produits-item .amount {
  font-size: 2.1rem;
  text-align: center;
  height: 40px;
  line-height: 40px;
  width: 40%;
}

.liste-panier-commande-rapide .liste-produits-item .quantite-nette-unite, .liste-panier-commande-rapide .liste-produits-item .taxe-eco {
  font-size: 1.1rem;
}

.liste-panier-commande-rapide .liste-produits-item .taxe-eco {
  white-space: nowrap;
}

.liste-panier-commande-rapide .liste-produits-item .act {
  text-align: center;
}

.liste-panier-commande-rapide .liste-produits-item .btn-icon-delete {
  text-indent: -9999px;
  display: inline-block;
  position: relative;
  font-size: 2rem;
  color: #e05151;
  text-align: center;
  width: 20px;
  height: 20px;
  margin: 0 auto;
}

.liste-panier-commande-rapide .liste-produits-item .btn-icon-delete::before {
  content: "\e909";
  text-indent: 0;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
}

.liste-panier-commande-rapide .liste-produits-item .options-selectionnees,
.liste-panier-commande-rapide .liste-produits-item .dimensions-selectionnees {
  padding: 0 6.3% 0 6.8%;
  font-size: 1.6rem;
}

.liste-panier-commande-rapide .liste-produits-item .options-selectionnees span,
.liste-panier-commande-rapide .liste-produits-item .dimensions-selectionnees span {
  color: #004462;
}

.liste-panier-commande-rapide .liste-produits-item .devis-bon-infos {
  padding: 0 6.3% 0 6.8%;
  font-size: 0.813em;
  color: #004462;
}

.liste-panier-commande-rapide .liste-produits-item .comment,
.liste-panier-commande-rapide .liste-produits-item .message-promo,
.liste-panier-commande-rapide .liste-produits-item .fin-de-vie {
  padding: 0 6.3% 0 6.8%;
}

.liste-panier-commande-rapide .liste-produits-item .comment form,
.liste-panier-commande-rapide .liste-produits-item .message-promo form,
.liste-panier-commande-rapide .liste-produits-item .fin-de-vie form {
  padding: 0;
}

.liste-panier-commande-rapide .liste-produits-item .fin-de-vie {
  color: #ff0109;
}

.liste-panier-commande-rapide .liste-produits-item .fin-de-vie p {
  margin: 10px 0 0;
}

.liste-panier-commande-rapide .liste-produits-item .show-comment {
  position: relative;
  font-size: 1.6rem;
}

.liste-panier-commande-rapide .liste-produits-item .show-comment::before {
  content: "\f0e5";
  color: #004462;
}

.liste-panier-commande-rapide .liste-produits-item .show-comment::after {
  content: "\f078";
  font-size: 0.625em;
}

.liste-panier-commande-rapide .liste-produits-item .show-comment.active::after {
  content: "\f077";
}

.liste-panier-commande-rapide .liste-produits-item .comment-form {
  margin-top: 5px;
}

.liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field::after {
  right: 20px;
}

.liste-panier-commande-rapide .liste-produits-item .comment-form textarea {
  height: 52px;
}

/* ===================================================================
 * CONFIRMATION DE COMMANDE
 * =================================================================*/
.tunnel-confirmation {
  margin-bottom: 40px;
}

.tunnel-confirmation .tunnel-resume-titre a {
  color: #004462;
  font-weight: bold;
}

.tunnel-confirmation .tunnel-resume-titre a.btn {
  color: #ffffff;
}

.tunnel-confirmation .frontModalBoxContainer .modal {
  display: none;
}

.tunnel-confirmation .frontModalBoxContainer .content {
  margin: 20px 0 30px;
}

.tunnel-confirmation .frontModalBoxContainer .content p {
  margin: 0;
}

.tunnel-confirmation .frontModalBoxContainer .footer .bouton-vert, .tunnel-confirmation .frontModalBoxContainer .footer .form-submit button, .form-submit .tunnel-confirmation .frontModalBoxContainer .footer button,
.tunnel-confirmation .frontModalBoxContainer .footer .form-submit input[type="submit"], .form-submit .tunnel-confirmation .frontModalBoxContainer .footer input[type="submit"], .tunnel-confirmation .frontModalBoxContainer .footer .bouton-bleu, .tunnel-confirmation .frontModalBoxContainer .footer .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .tunnel-confirmation .frontModalBoxContainer .footer .btn-imprimer, .tunnel-confirmation .frontModalBoxContainer .footer .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .tunnel-confirmation .frontModalBoxContainer .footer .btn-imprimer, .tunnel-confirmation .frontModalBoxContainer .footer .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .tunnel-confirmation .frontModalBoxContainer .footer a.voir-produit, .tunnel-confirmation .frontModalBoxContainer .footer .materiel-print-btn a, .materiel-print-btn .tunnel-confirmation .frontModalBoxContainer .footer a, .tunnel-confirmation .frontModalBoxContainer .footer .materiel-planning-pdf a, .materiel-planning-pdf .tunnel-confirmation .frontModalBoxContainer .footer a, .tunnel-confirmation .frontModalBoxContainer .footer .bouton-gris, .tunnel-confirmation .frontModalBoxContainer .footer .bouton-rouge, .tunnel-confirmation .frontModalBoxContainer .footer .bouton-retour, .tunnel-confirmation .frontModalBoxContainer .footer .bouton-rechercher, .tunnel-confirmation .frontModalBoxContainer .footer .btn-ajouter-au-panier,
.tunnel-confirmation .frontModalBoxContainer .footer .btn-liste-achat-activate, .tunnel-confirmation .frontModalBoxContainer .footer .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .tunnel-confirmation .frontModalBoxContainer .footer a, .tunnel-confirmation .frontModalBoxContainer .footer .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .tunnel-confirmation .frontModalBoxContainer .footer .btn-ajouter-liste, .tunnel-confirmation .frontModalBoxContainer .footer .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .tunnel-confirmation .frontModalBoxContainer .footer .btn-submit {
  float: right;
}

.tunnel-confirmation .frontModalBoxContainer .footer .bouton-rouge {
  float: left;
}

.tunnel-confirmation .btn-impression-wrapper {
  margin: 15px 0;
}

.tunnel-confirmation .btn-impression-wrapper .btn {
  max-width: 100%;
  width: 500px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}

.tunnel-confirmation .btn-impression-wrapper .icomoon, .tunnel-confirmation .btn-impression-wrapper #toast-container .toast-message::after, #toast-container .tunnel-confirmation .btn-impression-wrapper .toast-message::after, .tunnel-confirmation .btn-impression-wrapper #bandeau-haut .top-header .right .btn::before, #bandeau-haut .top-header .right .tunnel-confirmation .btn-impression-wrapper .btn::before, .tunnel-confirmation .btn-impression-wrapper #bandeau-haut .show-tablet .btn:before, #bandeau-haut .show-tablet .tunnel-confirmation .btn-impression-wrapper .btn:before, .tunnel-confirmation .btn-impression-wrapper #bandeau-haut .recherche-header button::before, #bandeau-haut .recherche-header .tunnel-confirmation .btn-impression-wrapper button::before, .tunnel-confirmation .btn-impression-wrapper #mini-panier .panier-detail-item .btn-icon-delete::before, #mini-panier .panier-detail-item .tunnel-confirmation .btn-impression-wrapper .btn-icon-delete::before, .tunnel-confirmation .btn-impression-wrapper .menu .menu-style-mobile::before, .menu .tunnel-confirmation .btn-impression-wrapper .menu-style-mobile::before,
.tunnel-confirmation .btn-impression-wrapper .menu .mm-close::before, .menu .tunnel-confirmation .btn-impression-wrapper .mm-close::before, .tunnel-confirmation .btn-impression-wrapper .mm-menu .menu-style-mobile::before, .mm-menu .tunnel-confirmation .btn-impression-wrapper .menu-style-mobile::before,
.tunnel-confirmation .btn-impression-wrapper .mm-menu .mm-close::before, .mm-menu .tunnel-confirmation .btn-impression-wrapper .mm-close::before, .tunnel-confirmation .btn-impression-wrapper .menu .mm-navbars-top .mm-title::before, .menu .mm-navbars-top .tunnel-confirmation .btn-impression-wrapper .mm-title::before, .tunnel-confirmation .btn-impression-wrapper .mm-menu .mm-navbars-top .mm-title::before, .mm-menu .mm-navbars-top .tunnel-confirmation .btn-impression-wrapper .mm-title::before, .tunnel-confirmation .btn-impression-wrapper #menuMobile .menu-niv .link:after, #menuMobile .menu-niv .tunnel-confirmation .btn-impression-wrapper .link:after, .tunnel-confirmation .btn-impression-wrapper #search-suggester-results .search-all-results::before, #search-suggester-results .tunnel-confirmation .btn-impression-wrapper .search-all-results::before, .tunnel-confirmation .btn-impression-wrapper #search-suggester-results .link-close::before, #search-suggester-results .tunnel-confirmation .btn-impression-wrapper .link-close::before, .tunnel-confirmation .btn-impression-wrapper .quantite a.minus::before, .quantite .tunnel-confirmation .btn-impression-wrapper a.minus::before, .tunnel-confirmation .btn-impression-wrapper .quantite a.plus::before, .quantite .tunnel-confirmation .btn-impression-wrapper a.plus::before, .tunnel-confirmation .btn-impression-wrapper .icon::before, .tunnel-confirmation .btn-impression-wrapper .btn-bloc > span::before, .tunnel-confirmation .btn-impression-wrapper .btn-bloc > a::before, .tunnel-confirmation .btn-impression-wrapper .ariane li:not(:first-child)::before, .ariane .tunnel-confirmation .btn-impression-wrapper li:not(:first-child)::before, .tunnel-confirmation .btn-impression-wrapper [type="checkbox"]:not(:checked) + label:after,
.tunnel-confirmation .btn-impression-wrapper [type="checkbox"]:checked + label:after, .tunnel-confirmation .btn-impression-wrapper .u-checkbox-parent label:has(+ [type="checkbox"]):after, .u-checkbox-parent .tunnel-confirmation .btn-impression-wrapper label:has(+ [type="checkbox"]):after, .tunnel-confirmation .btn-impression-wrapper .textarea-wrap::before, .tunnel-confirmation .btn-impression-wrapper .col-left .menu-col a.current-parent::after, .col-left .menu-col .tunnel-confirmation .btn-impression-wrapper a.current-parent::after,
.tunnel-confirmation .btn-impression-wrapper .TPL_RECHERCHE_FACETTE_PRODUIT .menu-col a.current-parent::after, .TPL_RECHERCHE_FACETTE_PRODUIT .menu-col .tunnel-confirmation .btn-impression-wrapper a.current-parent::after,
.tunnel-confirmation .btn-impression-wrapper .TPL_RECHERCHE_FACETTE_DOCUMENT .menu-col a.current-parent::after, .TPL_RECHERCHE_FACETTE_DOCUMENT .menu-col .tunnel-confirmation .btn-impression-wrapper a.current-parent::after,
.tunnel-confirmation .btn-impression-wrapper .TPL_RECHERCHE_ACTUALITE .menu-col a.current-parent::after, .TPL_RECHERCHE_ACTUALITE .menu-col .tunnel-confirmation .btn-impression-wrapper a.current-parent::after,
.tunnel-confirmation .btn-impression-wrapper .TPL_RECHERCHE_FACETTE_TYPEFORM .menu-col a.current-parent::after, .TPL_RECHERCHE_FACETTE_TYPEFORM .menu-col .tunnel-confirmation .btn-impression-wrapper a.current-parent::after, .tunnel-confirmation .btn-impression-wrapper .menu-secondaire .nav0 .openChild::after, .menu-secondaire .nav0 .tunnel-confirmation .btn-impression-wrapper .openChild::after, .tunnel-confirmation .btn-impression-wrapper .menu-category h3 a::before, .menu-category h3 .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .recherche-facette-gauche button::before, .recherche-facette-gauche .tunnel-confirmation .btn-impression-wrapper button::before, .tunnel-confirmation .btn-impression-wrapper .bouton-rechercher span::before, .bouton-rechercher .tunnel-confirmation .btn-impression-wrapper span::before, .tunnel-confirmation .btn-impression-wrapper .btn-ajouter-au-panier::before,
.tunnel-confirmation .btn-impression-wrapper .btn-liste-achat-activate::before, .tunnel-confirmation .btn-impression-wrapper .btn-liste-achat-actif::before, .tunnel-confirmation .btn-impression-wrapper .btn-export::before, .tunnel-confirmation .btn-impression-wrapper .bouton-creer-panier a::after, .bouton-creer-panier .tunnel-confirmation .btn-impression-wrapper a::after, .tunnel-confirmation .btn-impression-wrapper .btn-panier-actif::before,
.tunnel-confirmation .btn-impression-wrapper .btn-definir-panier-actif::before,
.tunnel-confirmation .btn-impression-wrapper .btn-valider-panier::before,
.tunnel-confirmation .btn-impression-wrapper .btn-modifier-panier::before,
.tunnel-confirmation .btn-impression-wrapper .btn-refuser-panier::before,
.tunnel-confirmation .btn-impression-wrapper .btn-dupliquer-liste-achat::before,
.tunnel-confirmation .btn-impression-wrapper .btn-supprimer-liste-achat::before,
.tunnel-confirmation .btn-impression-wrapper .btn-generer-pdf::before,
.tunnel-confirmation .btn-impression-wrapper .btn-print-chifree::before,
.tunnel-confirmation .btn-impression-wrapper .btn-print-nonchifree::before, .tunnel-confirmation .btn-impression-wrapper .c-contacts__mail::before, .tunnel-confirmation .btn-impression-wrapper .c-contacts__tel::before, .tunnel-confirmation .btn-impression-wrapper .c-documents a::before, .c-documents .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .favoris-btn-container a:before, .favoris-btn-container .tunnel-confirmation .btn-impression-wrapper a:before, .tunnel-confirmation .btn-impression-wrapper .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie a:before, .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie .tunnel-confirmation .btn-impression-wrapper a:before, .tunnel-confirmation .btn-impression-wrapper .fiche-retour-header > dl::before, .tunnel-confirmation .btn-impression-wrapper .responsive-table .row.locked .libelle__title::before, .responsive-table .row.locked .tunnel-confirmation .btn-impression-wrapper .libelle__title::before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_LISTE_ACHAT .item-commande[data-type="2"]:before, .TPL_ORCAB_LISTE_ACHAT .tunnel-confirmation .btn-impression-wrapper .item-commande[data-type="2"]:before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_FICHE_DEVIS_BONS .btn-ajouter-panier::before, .TPL_ORCAB_FICHE_DEVIS_BONS .tunnel-confirmation .btn-impression-wrapper .btn-ajouter-panier::before, .tunnel-confirmation .btn-impression-wrapper .TPL_INFOS_COMPTE .table-roles .roleHeader .btn-retirer::before, .TPL_INFOS_COMPTE .table-roles .roleHeader .tunnel-confirmation .btn-impression-wrapper .btn-retirer::before, .tunnel-confirmation .btn-impression-wrapper .TPL_DIAPORAMA_ORCAB .carousel-action.play, .TPL_DIAPORAMA_ORCAB .tunnel-confirmation .btn-impression-wrapper .carousel-action.play, .tunnel-confirmation .btn-impression-wrapper .bloc-titre-pag .pag a::before, .bloc-titre-pag .pag .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .liste-actu-lienplus a::before, .liste-actu-lienplus .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .ressources-associees li a::before, .ressources-associees li .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .TPL_ACTUALITE_ZOOM_SUR .lien-plus::before, .TPL_ACTUALITE_ZOOM_SUR .tunnel-confirmation .btn-impression-wrapper .lien-plus::before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .btn-ajouter::before, .liste-produits .tunnel-confirmation .btn-impression-wrapper .btn-ajouter::before,
.tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .btn-ajouter::before, .TPL_FICHE_PRODUIT .tunnel-confirmation .btn-impression-wrapper .btn-ajouter::before,
.tunnel-confirmation .btn-impression-wrapper .search-suggester-results-produits .btn-ajouter::before, .search-suggester-results-produits .tunnel-confirmation .btn-impression-wrapper .btn-ajouter::before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .actions-declinaison .bouton-vert::before, .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .bouton-vert::before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .actions-declinaison .form-submit button::before, .liste-produits .actions-declinaison .form-submit .tunnel-confirmation .btn-impression-wrapper button::before, .tunnel-confirmation .btn-impression-wrapper .form-submit .liste-produits .actions-declinaison button::before, .form-submit .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper button::before,
.tunnel-confirmation .btn-impression-wrapper .liste-produits .actions-declinaison .form-submit input[type="submit"]::before, .liste-produits .actions-declinaison .form-submit .tunnel-confirmation .btn-impression-wrapper input[type="submit"]::before, .tunnel-confirmation .btn-impression-wrapper .form-submit .liste-produits .actions-declinaison input[type="submit"]::before, .form-submit .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper input[type="submit"]::before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .actions-declinaison .bouton-bleu::before, .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .bouton-bleu::before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer::before, .liste-produits .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .tunnel-confirmation .btn-impression-wrapper .btn-imprimer::before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_FICHE_RETOUR .form-submit .liste-produits .actions-declinaison .btn-imprimer::before, .TPL_ORCAB_FICHE_RETOUR .form-submit .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .btn-imprimer::before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .actions-declinaison .lignes-retour-wrap .form-submit .btn-imprimer::before, .liste-produits .actions-declinaison .lignes-retour-wrap .form-submit .tunnel-confirmation .btn-impression-wrapper .btn-imprimer::before, .tunnel-confirmation .btn-impression-wrapper .lignes-retour-wrap .form-submit .liste-produits .actions-declinaison .btn-imprimer::before, .lignes-retour-wrap .form-submit .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .btn-imprimer::before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .actions-declinaison .TPL_COMPARATEUR .action a.voir-produit::before, .liste-produits .actions-declinaison .TPL_COMPARATEUR .action .tunnel-confirmation .btn-impression-wrapper a.voir-produit::before, .tunnel-confirmation .btn-impression-wrapper .TPL_COMPARATEUR .action .liste-produits .actions-declinaison a.voir-produit::before, .TPL_COMPARATEUR .action .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper a.voir-produit::before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .actions-declinaison .materiel-print-btn a::before, .liste-produits .actions-declinaison .materiel-print-btn .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .materiel-print-btn .liste-produits .actions-declinaison a::before, .materiel-print-btn .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .actions-declinaison .materiel-planning-pdf a::before, .liste-produits .actions-declinaison .materiel-planning-pdf .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .materiel-planning-pdf .liste-produits .actions-declinaison a::before, .materiel-planning-pdf .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .actions-declinaison .bouton-gris::before, .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .bouton-gris::before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .actions-declinaison .bouton-rouge::before, .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .bouton-rouge::before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .actions-declinaison .bouton-retour::before, .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .bouton-retour::before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .actions-declinaison .bouton-rechercher::before, .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .bouton-rechercher::before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .actions-declinaison .btn-ajouter-au-panier::before, .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .btn-ajouter-au-panier::before,
.tunnel-confirmation .btn-impression-wrapper .liste-produits .actions-declinaison .btn-liste-achat-activate::before, .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .btn-liste-achat-activate::before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .actions-declinaison .ressources-associees li.lien-tous a::before, .liste-produits .actions-declinaison .ressources-associees li.lien-tous .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .ressources-associees li.lien-tous .liste-produits .actions-declinaison a::before, .ressources-associees li.lien-tous .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste::before, .liste-produits .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .tunnel-confirmation .btn-impression-wrapper .btn-ajouter-liste::before, .tunnel-confirmation .btn-impression-wrapper .liste-achat-plugin .ajouter-a-la-liste .liste-produits .actions-declinaison .btn-ajouter-liste::before, .liste-achat-plugin .ajouter-a-la-liste .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .btn-ajouter-liste::before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .btn-submit::before, .liste-produits .actions-declinaison .TPL_FICHE_PRODUIT .tunnel-confirmation .btn-impression-wrapper .btn-submit::before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-submit::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .btn-submit::before,
.tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-vert::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .bouton-vert::before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .form-submit button::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .form-submit .tunnel-confirmation .btn-impression-wrapper button::before, .tunnel-confirmation .btn-impression-wrapper .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison button::before, .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper button::before,
.tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .form-submit input[type="submit"]::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .form-submit .tunnel-confirmation .btn-impression-wrapper input[type="submit"]::before, .tunnel-confirmation .btn-impression-wrapper .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison input[type="submit"]::before, .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper input[type="submit"]::before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-bleu::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .bouton-bleu::before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .TPL_ORCAB_FICHE_RETOUR .form-submit .tunnel-confirmation .btn-impression-wrapper .btn-imprimer::before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-imprimer::before, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .btn-imprimer::before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .lignes-retour-wrap .form-submit .btn-imprimer::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .lignes-retour-wrap .form-submit .tunnel-confirmation .btn-impression-wrapper .btn-imprimer::before, .tunnel-confirmation .btn-impression-wrapper .lignes-retour-wrap .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-imprimer::before, .lignes-retour-wrap .form-submit .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .btn-imprimer::before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .TPL_COMPARATEUR .action a.voir-produit::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .TPL_COMPARATEUR .action .tunnel-confirmation .btn-impression-wrapper a.voir-produit::before, .tunnel-confirmation .btn-impression-wrapper .TPL_COMPARATEUR .action .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a.voir-produit::before, .TPL_COMPARATEUR .action .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper a.voir-produit::before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .materiel-print-btn a::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .materiel-print-btn .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .materiel-print-btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a::before, .materiel-print-btn .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .materiel-planning-pdf a::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .materiel-planning-pdf .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .materiel-planning-pdf .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a::before, .materiel-planning-pdf .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-gris::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .bouton-gris::before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-rouge::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .bouton-rouge::before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-retour::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .bouton-retour::before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .bouton-rechercher::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .bouton-rechercher::before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-ajouter-au-panier::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .btn-ajouter-au-panier::before,
.tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-liste-achat-activate::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .btn-liste-achat-activate::before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .ressources-associees li.lien-tous a::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .ressources-associees li.lien-tous .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .ressources-associees li.lien-tous .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison a::before, .ressources-associees li.lien-tous .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste::before, .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .liste-achat-plugin .ajouter-a-la-liste .tunnel-confirmation .btn-impression-wrapper .btn-ajouter-liste::before, .tunnel-confirmation .btn-impression-wrapper .liste-achat-plugin .ajouter-a-la-liste .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .btn-ajouter-liste::before, .liste-achat-plugin .ajouter-a-la-liste .TPL_FICHE_PRODUIT .liste-produits .actions-declinaison .tunnel-confirmation .btn-impression-wrapper .btn-ajouter-liste::before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .bouton-ajout-produit-liste:before, .liste-produits .tunnel-confirmation .btn-impression-wrapper .bouton-ajout-produit-liste:before,
.tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .bouton-ajout-produit-liste:before, .TPL_FICHE_PRODUIT .liste-produits .tunnel-confirmation .btn-impression-wrapper .bouton-ajout-produit-liste:before, .tunnel-confirmation .btn-impression-wrapper .liste-produits .delete-product:before, .liste-produits .tunnel-confirmation .btn-impression-wrapper .delete-product:before,
.tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .liste-produits .delete-product:before, .TPL_FICHE_PRODUIT .liste-produits .tunnel-confirmation .btn-impression-wrapper .delete-product:before, .tunnel-confirmation .btn-impression-wrapper .liste-achat-plugin .ajouter-a-la-liste .listes::before, .liste-achat-plugin .ajouter-a-la-liste .tunnel-confirmation .btn-impression-wrapper .listes::before, .tunnel-confirmation .btn-impression-wrapper .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .slick-arrow::before, .TPL_PRODUIT_CROSS_SELLING_CAROUSEL .tunnel-confirmation .btn-impression-wrapper .slick-arrow::before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .thumb li.video-produit:hover a::after, .TPL_FICHE_PRODUIT .thumb li.video-produit:hover .tunnel-confirmation .btn-impression-wrapper a::after, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .thumb li.video-produit:active a::after, .TPL_FICHE_PRODUIT .thumb li.video-produit:active .tunnel-confirmation .btn-impression-wrapper a::after, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .thumb li.video-produit.selected a::after, .TPL_FICHE_PRODUIT .thumb li.video-produit.selected .tunnel-confirmation .btn-impression-wrapper a::after, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .photos.bloc .bx-controls-direction a::before, .TPL_FICHE_PRODUIT .photos.bloc .bx-controls-direction .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .btnCaddie-List button.bouton-ajout-produit-liste::before, .TPL_FICHE_PRODUIT .bloc-action form#produitAjouterPanier .btnCaddie-List .tunnel-confirmation .btn-impression-wrapper button.bouton-ajout-produit-liste::before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .btn-submit::before, .TPL_FICHE_PRODUIT .tunnel-confirmation .btn-impression-wrapper .btn-submit::before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn:before, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .tunnel-confirmation .btn-impression-wrapper .btn:before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .ico:before, .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .tunnel-confirmation .btn-impression-wrapper .ico:before, .tunnel-confirmation .btn-impression-wrapper .TPL_LOCATION #navCommande .etapes-tunnel .done::after, .TPL_LOCATION #navCommande .etapes-tunnel .tunnel-confirmation .btn-impression-wrapper .done::after, .tunnel-confirmation .btn-impression-wrapper .materiel-print-btn a::before, .materiel-print-btn .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .materiel-planning-pdf a::before, .materiel-planning-pdf .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .materiel-form-container .btn-search span:before, .materiel-form-container .btn-search .tunnel-confirmation .btn-impression-wrapper span:before, .tunnel-confirmation .btn-impression-wrapper .form-recherche .form-submit button span::before, .form-recherche .form-submit button .tunnel-confirmation .btn-impression-wrapper span::before, .tunnel-confirmation .btn-impression-wrapper .liste-doc-plus a::before, .liste-doc-plus .tunnel-confirmation .btn-impression-wrapper a::before, .tunnel-confirmation .btn-impression-wrapper .listes-de-courses .btn-nouvelle-liste::before, .listes-de-courses .tunnel-confirmation .btn-impression-wrapper .btn-nouvelle-liste::before, .tunnel-confirmation .btn-impression-wrapper .listes-de-courses .liste-achat-table .liste-detail .libelle.pictogramme::before, .listes-de-courses .liste-achat-table .liste-detail .tunnel-confirmation .btn-impression-wrapper .libelle.pictogramme::before, .tunnel-confirmation .btn-impression-wrapper .options-selectionnees .btnModifierOptionsPanier::before, .options-selectionnees .tunnel-confirmation .btn-impression-wrapper .btnModifierOptionsPanier::before,
.tunnel-confirmation .btn-impression-wrapper .options-selectionnees .btnModifierOptionsListeAchat::before, .options-selectionnees .tunnel-confirmation .btn-impression-wrapper .btnModifierOptionsListeAchat::before,
.tunnel-confirmation .btn-impression-wrapper .btnModifierOptionsDimensions::before, .tunnel-confirmation .btn-impression-wrapper .fiche-commande-header .btn-petit-blanc::before, .fiche-commande-header .tunnel-confirmation .btn-impression-wrapper .btn-petit-blanc::before, .tunnel-confirmation .btn-impression-wrapper .fiche-commande-header #btnCommandeRapide::before, .fiche-commande-header .tunnel-confirmation .btn-impression-wrapper #btnCommandeRapide::before, .tunnel-confirmation .btn-impression-wrapper .table-actions [class*="bouton-"]::before, .table-actions .tunnel-confirmation .btn-impression-wrapper [class*="bouton-"]::before, .tunnel-confirmation .btn-impression-wrapper .panier-contenu-indisponible .bouton-rouge::before, .panier-contenu-indisponible .tunnel-confirmation .btn-impression-wrapper .bouton-rouge::before, .tunnel-confirmation .btn-impression-wrapper .TPL_TUNNEL .adresse-form-container .bouton-bleu:before, .TPL_TUNNEL .adresse-form-container .tunnel-confirmation .btn-impression-wrapper .bouton-bleu:before, .tunnel-confirmation .btn-impression-wrapper .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .tunnel-confirmation .btn-impression-wrapper .btn-imprimer:before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .tunnel-confirmation .btn-impression-wrapper .btn-imprimer:before, .tunnel-confirmation .btn-impression-wrapper .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .tunnel-confirmation .btn-impression-wrapper .btn-imprimer:before, .tunnel-confirmation .btn-impression-wrapper .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .tunnel-confirmation .btn-impression-wrapper .btn-imprimer:before, .tunnel-confirmation .btn-impression-wrapper .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit:before, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action .tunnel-confirmation .btn-impression-wrapper a.voir-produit:before, .tunnel-confirmation .btn-impression-wrapper .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit:before, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container .tunnel-confirmation .btn-impression-wrapper a.voir-produit:before, .tunnel-confirmation .btn-impression-wrapper .TPL_TUNNEL .adresse-form-container .materiel-print-btn a:before, .TPL_TUNNEL .adresse-form-container .materiel-print-btn .tunnel-confirmation .btn-impression-wrapper a:before, .tunnel-confirmation .btn-impression-wrapper .materiel-print-btn .TPL_TUNNEL .adresse-form-container a:before, .materiel-print-btn .TPL_TUNNEL .adresse-form-container .tunnel-confirmation .btn-impression-wrapper a:before, .tunnel-confirmation .btn-impression-wrapper .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a:before, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf .tunnel-confirmation .btn-impression-wrapper a:before, .tunnel-confirmation .btn-impression-wrapper .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a:before, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container .tunnel-confirmation .btn-impression-wrapper a:before, .tunnel-confirmation .btn-impression-wrapper .TPL_TUNNEL .adresse-form-container .bouton-vert:before, .TPL_TUNNEL .adresse-form-container .tunnel-confirmation .btn-impression-wrapper .bouton-vert:before, .tunnel-confirmation .btn-impression-wrapper .TPL_TUNNEL .adresse-form-container .form-submit button:before, .TPL_TUNNEL .adresse-form-container .form-submit .tunnel-confirmation .btn-impression-wrapper button:before, .tunnel-confirmation .btn-impression-wrapper .form-submit .TPL_TUNNEL .adresse-form-container button:before, .form-submit .TPL_TUNNEL .adresse-form-container .tunnel-confirmation .btn-impression-wrapper button:before,
.tunnel-confirmation .btn-impression-wrapper .TPL_TUNNEL .adresse-form-container .form-submit input[type="submit"]:before, .TPL_TUNNEL .adresse-form-container .form-submit .tunnel-confirmation .btn-impression-wrapper input[type="submit"]:before, .tunnel-confirmation .btn-impression-wrapper .form-submit .TPL_TUNNEL .adresse-form-container input[type="submit"]:before, .form-submit .TPL_TUNNEL .adresse-form-container .tunnel-confirmation .btn-impression-wrapper input[type="submit"]:before, .tunnel-confirmation .btn-impression-wrapper .TPL_TUNNEL .adresse-form-container .bouton-gris:before, .TPL_TUNNEL .adresse-form-container .tunnel-confirmation .btn-impression-wrapper .bouton-gris:before, .tunnel-confirmation .btn-impression-wrapper .TPL_TUNNEL .adresse-form-container .bouton-rouge:before, .TPL_TUNNEL .adresse-form-container .tunnel-confirmation .btn-impression-wrapper .bouton-rouge:before, .tunnel-confirmation .btn-impression-wrapper .TPL_TUNNEL .adresse-form-container .bouton-retour:before, .TPL_TUNNEL .adresse-form-container .tunnel-confirmation .btn-impression-wrapper .bouton-retour:before, .tunnel-confirmation .btn-impression-wrapper .TPL_TUNNEL .adresse-form-container .bouton-rechercher:before, .TPL_TUNNEL .adresse-form-container .tunnel-confirmation .btn-impression-wrapper .bouton-rechercher:before, .tunnel-confirmation .btn-impression-wrapper .TPL_TUNNEL .adresse-form-container .btn-ajouter-au-panier:before, .TPL_TUNNEL .adresse-form-container .tunnel-confirmation .btn-impression-wrapper .btn-ajouter-au-panier:before,
.tunnel-confirmation .btn-impression-wrapper .TPL_TUNNEL .adresse-form-container .btn-liste-achat-activate:before, .TPL_TUNNEL .adresse-form-container .tunnel-confirmation .btn-impression-wrapper .btn-liste-achat-activate:before, .tunnel-confirmation .btn-impression-wrapper .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous a:before, .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous .tunnel-confirmation .btn-impression-wrapper a:before, .tunnel-confirmation .btn-impression-wrapper .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container a:before, .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container .tunnel-confirmation .btn-impression-wrapper a:before, .tunnel-confirmation .btn-impression-wrapper .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste:before, .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .tunnel-confirmation .btn-impression-wrapper .btn-ajouter-liste:before, .tunnel-confirmation .btn-impression-wrapper .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .btn-ajouter-liste:before, .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .tunnel-confirmation .btn-impression-wrapper .btn-ajouter-liste:before, .tunnel-confirmation .btn-impression-wrapper .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .btn-submit:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .tunnel-confirmation .btn-impression-wrapper .btn-submit:before, .tunnel-confirmation .btn-impression-wrapper .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .btn-submit:before, .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .tunnel-confirmation .btn-impression-wrapper .btn-submit:before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir .tunnel-confirmation .btn-impression-wrapper a:before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir .tunnel-confirmation .btn-impression-wrapper button:before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit .tunnel-confirmation .btn-impression-wrapper a:before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit .tunnel-confirmation .btn-impression-wrapper button:before, .tunnel-confirmation .btn-impression-wrapper .TPL_PANIER #panierLibelleForm::before, .TPL_PANIER .tunnel-confirmation .btn-impression-wrapper #panierLibelleForm::before, .tunnel-confirmation .btn-impression-wrapper .liste-panier-commande-rapide .liste-produits-item .btn-icon-delete::before, .liste-panier-commande-rapide .liste-produits-item .tunnel-confirmation .btn-impression-wrapper .btn-icon-delete::before, .tunnel-confirmation .btn-impression-wrapper .form-recherche-paniers-passes .form-submit button span:before, .form-recherche-paniers-passes .form-submit button .tunnel-confirmation .btn-impression-wrapper span:before, .tunnel-confirmation .btn-impression-wrapper .paniers-table .row .nb-article::before, .paniers-table .row .tunnel-confirmation .btn-impression-wrapper .nb-article::before, .tunnel-confirmation .btn-impression-wrapper .commande-rapide-panier .encart-commande-rapide .bouton-fichier span::before, .commande-rapide-panier .encart-commande-rapide .bouton-fichier .tunnel-confirmation .btn-impression-wrapper span::before, .tunnel-confirmation .btn-impression-wrapper .commande-rapide-panier .results .quantite .btn-petit-vert::before, .commande-rapide-panier .results .quantite .tunnel-confirmation .btn-impression-wrapper .btn-petit-vert::before, .tunnel-confirmation .btn-impression-wrapper .commande-rapide-panier .results .quantite .frontModalBoxContainer .btn-submit::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer .tunnel-confirmation .btn-impression-wrapper .btn-submit::before, .tunnel-confirmation .btn-impression-wrapper .frontModalBoxContainer .commande-rapide-panier .results .quantite .btn-submit::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .tunnel-confirmation .btn-impression-wrapper .btn-submit::before, .tunnel-confirmation .btn-impression-wrapper .commande-rapide-panier .results .quantite .frontModalBoxContainer #btn-supprimer-oui::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer .tunnel-confirmation .btn-impression-wrapper #btn-supprimer-oui::before, .tunnel-confirmation .btn-impression-wrapper .frontModalBoxContainer .commande-rapide-panier .results .quantite #btn-supprimer-oui::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .tunnel-confirmation .btn-impression-wrapper #btn-supprimer-oui::before,
.tunnel-confirmation .btn-impression-wrapper .commande-rapide-panier .results .quantite .frontModalBoxContainer .btn-valider::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer .tunnel-confirmation .btn-impression-wrapper .btn-valider::before, .tunnel-confirmation .btn-impression-wrapper .frontModalBoxContainer .commande-rapide-panier .results .quantite .btn-valider::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .tunnel-confirmation .btn-impression-wrapper .btn-valider::before, .tunnel-confirmation .btn-impression-wrapper .commande-rapide-panier .results .quantite .s-editherm-info__form button[type="submit"]::before, .commande-rapide-panier .results .quantite .s-editherm-info__form .tunnel-confirmation .btn-impression-wrapper button[type="submit"]::before, .tunnel-confirmation .btn-impression-wrapper .s-editherm-info__form .commande-rapide-panier .results .quantite button[type="submit"]::before, .s-editherm-info__form .commande-rapide-panier .results .quantite .tunnel-confirmation .btn-impression-wrapper button[type="submit"]::before,
.tunnel-confirmation .btn-impression-wrapper .commande-rapide-panier .results .quantite .btn-petit-bleu::before, .commande-rapide-panier .results .quantite .tunnel-confirmation .btn-impression-wrapper .btn-petit-bleu::before, .tunnel-confirmation .btn-impression-wrapper .commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .changeVue.active::before, .commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .tunnel-confirmation .btn-impression-wrapper .changeVue.active::before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .changeVue.active::before, .TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .tunnel-confirmation .btn-impression-wrapper .changeVue.active::before,
.tunnel-confirmation .btn-impression-wrapper .commande-rapide-panier .results .quantite .btn-petit-gris::before, .commande-rapide-panier .results .quantite .tunnel-confirmation .btn-impression-wrapper .btn-petit-gris::before, .tunnel-confirmation .btn-impression-wrapper .commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .changeVue::before, .commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .tunnel-confirmation .btn-impression-wrapper .changeVue::before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .changeVue::before, .TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .tunnel-confirmation .btn-impression-wrapper .changeVue::before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator p::before, .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator .tunnel-confirmation .btn-impression-wrapper p::before,
.tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .gm-style-iw p::before, .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .gm-style-iw .tunnel-confirmation .btn-impression-wrapper p::before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .form-submit span::before, .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .form-submit .tunnel-confirmation .btn-impression-wrapper span::before, .tunnel-confirmation .btn-impression-wrapper .fiche-adherent__coordonnes p:before, .fiche-adherent__coordonnes .tunnel-confirmation .btn-impression-wrapper p:before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_CARTE_TOURNEE .carte-tournee p::before, .TPL_ORCAB_CARTE_TOURNEE .carte-tournee .tunnel-confirmation .btn-impression-wrapper p::before,
.tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_CARTE_TOURNEE .gm-style-iw p::before, .TPL_ORCAB_CARTE_TOURNEE .gm-style-iw .tunnel-confirmation .btn-impression-wrapper p::before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_CARTE_TOURNEE .form-submit span::before, .TPL_ORCAB_CARTE_TOURNEE .form-submit .tunnel-confirmation .btn-impression-wrapper span::before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_AGENDA .changeVue:before, .TPL_ORCAB_AGENDA .tunnel-confirmation .btn-impression-wrapper .changeVue:before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_AGENDA .bouton-details:before, .TPL_ORCAB_AGENDA .tunnel-confirmation .btn-impression-wrapper .bouton-details:before, .tunnel-confirmation .btn-impression-wrapper .TPL_LISTE_AGENDA_ACCUEIL .bloc-icone:before, .TPL_LISTE_AGENDA_ACCUEIL .tunnel-confirmation .btn-impression-wrapper .bloc-icone:before, .tunnel-confirmation .btn-impression-wrapper .c-agenda__bloc:before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_MES_FAVORIS .liste-detail::before, .TPL_ORCAB_MES_FAVORIS .tunnel-confirmation .btn-impression-wrapper .liste-detail::before, .tunnel-confirmation .btn-impression-wrapper #volet-compte .lien-picto::before, #volet-compte .tunnel-confirmation .btn-impression-wrapper .lien-picto::before, .tunnel-confirmation .btn-impression-wrapper #volet-favoris .lien-picto::before, #volet-favoris .tunnel-confirmation .btn-impression-wrapper .lien-picto::before, .tunnel-confirmation .btn-impression-wrapper #volet-paniers .btnPanierActif::before, #volet-paniers .tunnel-confirmation .btn-impression-wrapper .btnPanierActif::before, .tunnel-confirmation .btn-impression-wrapper #volet-listes-achat .btnPanierActif::before, #volet-listes-achat .tunnel-confirmation .btn-impression-wrapper .btnPanierActif::before, .tunnel-confirmation .btn-impression-wrapper #volet-paniers .lien-picto::after, #volet-paniers .tunnel-confirmation .btn-impression-wrapper .lien-picto::after, .tunnel-confirmation .btn-impression-wrapper #volet-listes-achat .lien-picto::after, #volet-listes-achat .tunnel-confirmation .btn-impression-wrapper .lien-picto::after, .tunnel-confirmation .btn-impression-wrapper #volet-paniers .voletPanier__search div .btn-search::before, #volet-paniers .voletPanier__search div .tunnel-confirmation .btn-impression-wrapper .btn-search::before, .tunnel-confirmation .btn-impression-wrapper #volet-paniers .voletListeAchat__search div .btn-search::before, #volet-paniers .voletListeAchat__search div .tunnel-confirmation .btn-impression-wrapper .btn-search::before, .tunnel-confirmation .btn-impression-wrapper #volet-listes-achat .voletPanier__search div .btn-search::before, #volet-listes-achat .voletPanier__search div .tunnel-confirmation .btn-impression-wrapper .btn-search::before, .tunnel-confirmation .btn-impression-wrapper #volet-listes-achat .voletListeAchat__search div .btn-search::before, #volet-listes-achat .voletListeAchat__search div .tunnel-confirmation .btn-impression-wrapper .btn-search::before, .tunnel-confirmation .btn-impression-wrapper #volet-paniers a.voletPanier__locked::before, #volet-paniers .tunnel-confirmation .btn-impression-wrapper a.voletPanier__locked::before, .tunnel-confirmation .btn-impression-wrapper #volet-listes-achat a.voletPanier__locked::before, #volet-listes-achat .tunnel-confirmation .btn-impression-wrapper a.voletPanier__locked::before, .tunnel-confirmation .btn-impression-wrapper .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-date:before, .TPL_ORCAB_FEED_ET_A_LA_UNE .tunnel-confirmation .btn-impression-wrapper .feed-date:before {
  margin-right: 15px;
  font-size: 22px;
}

/* ===================================================================
 * MEDIAQUERIES
 * =================================================================*/
@media screen and (max-width: 1024px) {
  /* ===================================================================
     * ETAPE 1 - TUNNEL
     * =================================================================*/
  .TPL_PANIER #panierLibelle {
    display: block;
    width: 100%;
    margin-bottom: 20px;
  }
  .TPL_PANIER .intitules {
    display: none;
  }
  .TPL_PANIER .nb-produits,
  .TPL_PANIER .produits-indisponibles {
    display: block;
    width: 100%;
    margin-bottom: 30px;
  }
  .TPL_PANIER .liste-produits {
    padding-top: 5px;
  }
  .TPL_PANIER .liste-produits-item .infos-types {
    display: none;
  }
  .TPL_PANIER .liste-produits-item .comment,
  .TPL_PANIER .liste-produits-item .options-selectionnees,
  .TPL_PANIER .liste-produits-item .dimensions-selectionnees,
  .TPL_PANIER .liste-produits-item .fin-de-vie {
    padding: 0 15px;
  }
  .TPL_PANIER .sub-total {
    width: 74.2%;
  }
  /* ===================================================================
     * ETAPE 2 - TUNNEL
     * =================================================================*/
  .address-block {
    width: 50%;
  }
  .liste-panier-commande-rapide .intitules {
    display: none;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table.avecOptions {
    padding-bottom: 20px;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table > div {
    display: block;
    float: left;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .prix-mobile {
    display: none;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .reference {
    width: 37%;
    padding-bottom: 20px;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .libelle {
    width: 63%;
    padding-bottom: 20px;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .marque {
    width: 0;
    padding-left: 0;
    clear: left;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .cond {
    width: 8%;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .marque, .liste-panier-commande-rapide .liste-produits-item .display-table .cond, .liste-panier-commande-rapide .liste-produits-item .display-table .stock {
    margin-bottom: 3px;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .stock {
    width: 34%;
    overflow: inherit;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .prix {
    width: 17%;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .quantite {
    width: 24%;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .panier-montant {
    width: 13.7%;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .act {
    width: 7.5%;
  }
  .liste-panier-commande-rapide .liste-produits-item .img-prod {
    width: 22%;
  }
  /* ===================================================================
    * GENERALITES PANIER
    * =================================================================*/
  .panier-table.paniers-a-valider-table .head > div, .panier-table.paniers-a-valider-table .row > div {
    width: 15%;
  }
  .panier-table.paniers-a-valider-table .head .reference, .panier-table.paniers-a-valider-table .row .reference {
    width: 12%;
  }
  .panier-table.paniers-a-valider-table .head .client, .panier-table.paniers-a-valider-table .row .client {
    width: 15%;
  }
}

@media screen and (max-width: 767px) {
  /* ===================================================================
    * GENERALITES PANIER
    * =================================================================*/
  .panier-table .libelle,
  .panier-table .nb-article {
    width: 50%;
  }
  .panier-table .adresse,
  .panier-table .options {
    width: 100%;
    float: none;
  }
  .panier-table.paniers-a-valider-table .lib {
    display: inline-block;
    padding-right: 10px;
    color: #82aa37;
  }
  .panier-table.paniers-a-valider-table .row > div {
    float: none;
    width: 100% !important;
    font-weight: bold;
    padding: 10px 20px;
  }
  .panier-table.paniers-a-valider-table .row > div:first-child {
    padding-left: 20px;
  }
  /*
        fieldset.address-block
        e.g. : page créer un panier / choisir adresse
    */
  .address-block {
    width: 100%;
    float: none;
    margin: 0 0 30px 0;
    clear: both;
  }
  /* ===================================================================
     * ETAPE 1 - TUNNEL
     * =================================================================*/
  .TPL_PANIER .reference .img-prod {
    width: 100%;
    float: none;
  }
  .TPL_PANIER .act {
    position: absolute;
    top: 10px;
    right: 0;
  }
  .TPL_PANIER .sub-total {
    width: 100%;
    float: none;
  }
  .TPL_PANIER .sub-total span {
    font-size: 1em;
  }
  .TPL_PANIER .liste-achat-panier .ajouter-a-la-liste {
    left: -78px;
  }
  /* ===================================================================
     * ETAPE 2 - TUNNEL
     * =================================================================*/
  .tunnel-confirmation .frontModalBoxContainer .footer .bouton-vert, .tunnel-confirmation .frontModalBoxContainer .footer .form-submit button, .form-submit .tunnel-confirmation .frontModalBoxContainer .footer button,
  .tunnel-confirmation .frontModalBoxContainer .footer .form-submit input[type="submit"], .form-submit .tunnel-confirmation .frontModalBoxContainer .footer input[type="submit"], .tunnel-confirmation .frontModalBoxContainer .footer .bouton-bleu, .tunnel-confirmation .frontModalBoxContainer .footer .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .tunnel-confirmation .frontModalBoxContainer .footer .btn-imprimer, .tunnel-confirmation .frontModalBoxContainer .footer .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .tunnel-confirmation .frontModalBoxContainer .footer .btn-imprimer, .tunnel-confirmation .frontModalBoxContainer .footer .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .tunnel-confirmation .frontModalBoxContainer .footer a.voir-produit, .tunnel-confirmation .frontModalBoxContainer .footer .materiel-print-btn a, .materiel-print-btn .tunnel-confirmation .frontModalBoxContainer .footer a, .tunnel-confirmation .frontModalBoxContainer .footer .materiel-planning-pdf a, .materiel-planning-pdf .tunnel-confirmation .frontModalBoxContainer .footer a, .tunnel-confirmation .frontModalBoxContainer .footer .bouton-gris, .tunnel-confirmation .frontModalBoxContainer .footer .bouton-rouge, .tunnel-confirmation .frontModalBoxContainer .footer .bouton-retour, .tunnel-confirmation .frontModalBoxContainer .footer .bouton-rechercher, .tunnel-confirmation .frontModalBoxContainer .footer .btn-ajouter-au-panier,
  .tunnel-confirmation .frontModalBoxContainer .footer .btn-liste-achat-activate, .tunnel-confirmation .frontModalBoxContainer .footer .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .tunnel-confirmation .frontModalBoxContainer .footer a, .tunnel-confirmation .frontModalBoxContainer .footer .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .tunnel-confirmation .frontModalBoxContainer .footer .btn-ajouter-liste, .tunnel-confirmation .frontModalBoxContainer .footer .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .tunnel-confirmation .frontModalBoxContainer .footer .btn-submit, .tunnel-confirmation .frontModalBoxContainer .footer .bouton-rouge {
    float: none;
    margin-bottom: 10px;
    min-width: 240px;
  }
  .liste-panier-commande-rapide .liste-produits-item {
    position: relative;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .prix {
    margin-bottom: 20px;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table.avecOptions {
    padding-bottom: 0;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table.avecOptions .marque, .liste-panier-commande-rapide .liste-produits-item .display-table.avecOptions .quantite {
    padding-bottom: 20px;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .marque, .liste-panier-commande-rapide .liste-produits-item .display-table .quantite, .liste-panier-commande-rapide .liste-produits-item .display-table .prix-mobile {
    width: 50%;
    padding-left: 15px;
    padding-top: 0;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .quantite.withCalc {
    width: 100%;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .quantite.withCalc .unite {
    width: 48%;
    text-align: left;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .quantite.withCalc .qte {
    width: 48%;
    float: left;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .quantite.withCalc .calc {
    width: 48%;
    float: right;
    margin-top: -18px;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .prix-mobile {
    word-wrap: break-word;
    display: block;
    padding-bottom: 20px;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .prix-mobile.label-promo .prix-total {
    color: #e05151;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .reference {
    max-width: 110px;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .reference .details, .liste-panier-commande-rapide .liste-produits-item .display-table .panier-montant, .liste-panier-commande-rapide .liste-produits-item .display-table .prix {
    display: none;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .cond {
    display: none;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .stock {
    display: block;
    float: none;
    clear: both;
    padding-left: 15px;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table div.libelle {
    padding-right: 70px;
    font-size: 1.6rem;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .act, .liste-panier-commande-rapide .liste-produits-item .display-table .stock {
    width: auto;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .stock {
    margin: 5px 0 0 0;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .marque {
    text-align: left;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .marque .identifiants, .liste-panier-commande-rapide .liste-produits-item .display-table .marque .stock {
    text-transform: none;
    display: block;
    font-size: 1em;
    font-weight: normal;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .prix-unitaire, .liste-panier-commande-rapide .liste-produits-item .display-table .prix-total {
    font-size: 2.4rem;
    text-align: right;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .taxe-eco {
    text-align: right;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table .btn-icon-delete {
    background: #e05151;
    width: 50px;
    height: 50px;
    color: #fff;
    border-radius: 5px;
  }
  .liste-panier-commande-rapide .liste-produits-item .display-table > div.quantite {
    float: right;
    clear: right;
    width: auto;
  }
  .liste-panier-commande-rapide .liste-produits-item .options-selectionnees,
  .liste-panier-commande-rapide .liste-produits-item .dimensions-selectionnees {
    padding: 0 15px;
  }
  .liste-panier-commande-rapide .liste-produits-item .img-prod {
    width: auto;
  }
  .liste-panier-commande-rapide .liste-produits-item .quantite .unite {
    display: block;
    color: #004462;
    font-size: 1.6rem;
    text-align: center;
  }
  .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir a, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir button, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit a, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit button {
    min-width: 200px;
    width: 100%;
    box-sizing: border-box;
  }
}

/* ===================================================================
 * LISTE PANIERS PASSES
 * =================================================================*/
.form-recherche-paniers-passes .col-50 {
  float: left;
  width: 48.25%;
  margin-bottom: 30px;
}

.form-recherche-paniers-passes .col-50 + .col-50 {
  padding-left: 3.5%;
}

.form-recherche-paniers-passes .col-50 + .col-dates {
  padding-left: 0;
}

.form-recherche-paniers-passes .date-field {
  width: 48%;
  float: left;
  position: relative;
}

.form-recherche-paniers-passes .date-field + .date-field {
  margin-left: 4%;
}

.form-recherche-paniers-passes .form-submit {
  display: inline-block;
  width: 100%;
}

.form-recherche-paniers-passes .form-submit button span {
  display: inline-block;
  position: relative;
  padding-left: 30px;
}

.form-recherche-paniers-passes .form-submit button span:before {
  content: "\e915";
  font-size: 20px;
  position: absolute;
  left: 0;
}

@media screen and (max-width: 767px) {
  .form-recherche-paniers-passes > .col-50 {
    width: 100%;
  }
  .form-recherche-paniers-passes > .col-50 + .col-50 {
    padding-left: 0;
  }
  .form-recherche-paniers-passes .date-field {
    width: 48.25%;
  }
  .form-recherche-paniers-passes .date-field + .date-field {
    margin-left: 3.5%;
  }
}

.TPL_ORCAB_PANIERS_PASSES .top-liste {
  margin-bottom: 12px;
}

.TPL_ORCAB_PANIERS_PASSES h4 {
  color: #004462;
  font-size: 2.1rem;
  font-weight: bold;
}

.TPL_ORCAB_PANIERS_PASSES .liste-achat-table .intitules > div.date {
  font-size: inherit;
  color: inherit;
}

.TPL_ORCAB_PANIERS_PASSES .liste-achat-table .intitules > div.date span {
  color: inherit;
}

.TPL_ORCAB_PANIERS_PASSES .liste-achat-table .intitules > div.action {
  width: 44%;
}

.TPL_ORCAB_PANIERS_PASSES .liste-achat-table .liste-detail > div.action {
  width: 44%;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_PANIERS_PASSES .liste-achat-table .liste-detail > div.action {
    width: 100%;
    padding: 10px;
  }
}

#panierActionDupliquerForm .adresse-container {
  margin-top: 10px;
}

#panierActionDupliquerForm .address-block__parent {
  align-items: normal;
}

#panierActionDupliquerForm .address-block {
  width: calc(50% - 15px);
}

@media screen and (max-width: 767px) {
  #panierActionDupliquerForm .address-block {
    width: 100%;
  }
}

#panierActionDupliquerForm .address-block:nth-child(even) {
  margin-right: 0;
}

#panierActionDupliquerForm .address-block:nth-last-child(1), #panierActionDupliquerForm .address-block:nth-last-child(2) {
  margin-bottom: 0;
}

#panierActionDupliquerForm .address-block-inner {
  height: 100%;
}

#panierActionDupliquerForm .address-block-inner:not(.selected) {
  border: 1px solid #868686;
  border-radius: 5px;
}

#panierActionDupliquerForm .footer {
  display: inline-block;
  width: 100%;
}

#panierActionDupliquerForm #dupliquerOrigineAdresse .field {
  margin-bottom: 0;
}

#panierActionDupliquerForm input#panier_dupliquer_form_dupliquerDansNouveauPanier {
  margin-bottom: 10px;
}

#panierActionDupliquerForm #dupliquerAdresseExistantes .form-field {
  padding-bottom: 0;
}

#panierActionDupliquerForm #dupliquerAdresseExistantes .address-block__parent {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  #panierActionDupliquerForm #panier_dupliquer_form_typeDuplication,
  #panierActionDupliquerForm #panier_dupliquer_form_origineAdresse .radio {
    width: 100%;
  }
}

/* ===================================================================
 * LISTE PANIERS - TABLEAUX
 * =================================================================*/
.paniers-table .liste-detail + div .liste-produits > li {
  border-radius: 0;
  margin-bottom: 0;
}

.paniers-table .libelle {
  width: 24.63054187192118%;
  margin-right: 1.407459535538353%;
}

.paniers-table .right {
  flex: 1;
  width: 73.96199859254046%;
}

.paniers-table .options {
  border-top: 1px solid #c4c4c4;
  padding-top: 20px;
  display: flex;
  justify-content: flex-end;
}

.paniers-table .options > * {
  margin-left: 30px;
  font-weight: 700;
}

.paniers-table .options > :first-child {
  margin-left: 0;
}

.paniers-table .options .btn-export:before {
  color: #ffffff;
  font-size: 1.8rem;
  vertical-align: middle;
}

.paniers-table .top {
  display: flex;
  align-items: flex-start;
  position: relative;
}

.paniers-table .top .cell {
  margin-bottom: 20px;
}

.paniers-table .row .nb-article {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  font-weight: bold;
}

.paniers-table .row .nb-article::before {
  content: '\e917';
  font-size: 20px;
  color: #003160;
  margin-right: 1rem;
}

.paniers-table .nb-article,
.paniers-table .montant-total,
.paniers-table .date {
  width: 17.12654614652712%;
  margin-right: 1.902949571836346%;
}

.paniers-table .adresse-name {
  margin-right: 1.902949571836346%;
}

.paniers-table .adresse,
.paniers-table .adresse-name {
  width: 20.64700285442436%;
}

.paniers-table .date {
  color: #545454;
}

.paniers-table .intitules {
  padding: 0 20px;
}

.paniers-table .intitules > div {
  padding-left: 0;
  padding-right: 0;
  width: 12.63157894736842%;
  margin-right: 1.403508771929825%;
}

.paniers-table .intitules .libelle {
  width: 24.56140350877193%;
}

.paniers-table .intitules .actions,
.paniers-table .intitules .action {
  display: none;
}

.paniers-table .intitules .adresse,
.paniers-table .intitules .adresse-name {
  width: 15.2280701754386%;
}

.paniers-table .intitules .adresse {
  margin: 0;
}

.paniers-table .btn-ajouter-au-panier {
  display: flex;
  align-items: center;
}

.paniers-table .btn-ajouter-au-panier:before {
  content: '\e97d';
  font-size: 2rem;
}

.paniers-table .btn-liste-achat-activate {
  display: flex;
  align-items: center;
}

.paniers-table .btn-liste-achat-activate:before {
  content: '\e967';
  font-size: 2rem;
}

.paniers-table .ecopart {
  font-size: 1.2rem;
}

.paniers-table .bouton-deplier-liste {
  position: absolute;
  right: 10px;
  top: 0;
}

@media screen and (max-width: 1440px) {
  .paniers-table .row {
    flex-direction: column;
  }
  .paniers-table .libelle {
    margin: 0 0 20px;
    width: 100%;
  }
  .paniers-table .right {
    width: 100%;
  }
}

@media screen and (max-width: 1024px) {
  .paniers-table .row {
    flex-direction: column;
    display: flex;
  }
  .paniers-table .row .options {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .paniers-table .row .options > * {
    margin: 0 0 10px;
    max-width: 25rem;
    width: 100%;
    text-align: center;
    justify-content: center;
    line-height: 1;
    align-items: center;
    display: flex;
  }
  .paniers-table .row .top {
    flex-direction: column;
  }
  .paniers-table .row .top > div {
    width: 100%;
    padding: 0 20px;
    margin: 0 0 10px;
    box-sizing: border-box;
  }
  .paniers-table .row .libelle {
    padding: 0 20px;
    width: 100%;
    box-sizing: border-box;
  }
}

@media screen and (max-width: 767px) {
  .paniers-table .row .top .date.cell {
    padding-right: 40px;
  }
  .paniers-table .bouton-deplier-liste {
    right: 10px;
  }
}

.paniers-table .bouton-deplier-liste {
  width: auto !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* ===================================================================
 * COMMANDE RAPIDE
 * =================================================================*/
.commande-rapide-panier {
  border: 1px solid #868686;
  border-radius: 5px;
  background-color: #f6f6f6;
  padding: 20px 30px;
  margin-bottom: 20px;
}

.commande-rapide-panier .titre {
  font-size: 1.7rem;
  line-height: 2.2rem;
  cursor: pointer;
  margin-bottom: 0;
}

.commande-rapide-panier .titre:after {
  content: "\f107";
  margin-left: 0.8rem;
}

.commande-rapide-panier .titre.opened:after {
  content: "\f106";
}

.commande-rapide-panier .bottom {
  display: none;
}

.commande-rapide-panier .text {
  margin: 20px 0;
  width: 57.125%;
  color: #868686;
}

.commande-rapide-panier .text p {
  margin: 0;
}

.commande-rapide-panier .encart-commande-rapide {
  overflow: hidden;
  color: #868686;
}

.commande-rapide-panier .encart-commande-rapide p {
  margin: 0 0 20px;
}

.commande-rapide-panier .encart-commande-rapide .left {
  float: left;
  width: 57.125%;
}

.commande-rapide-panier .encart-commande-rapide .left input[type="text"], .commande-rapide-panier .encart-commande-rapide .left .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field-required .commande-rapide-panier .encart-commande-rapide .left input[type="date"], .commande-rapide-panier .encart-commande-rapide .left .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field input[type="date"], .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field .commande-rapide-panier .encart-commande-rapide .left input[type="date"], .commande-rapide-panier .encart-commande-rapide .left .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field input[type="date"], .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .recherche-facette-produit #eolas_ecommerce_orcab_base_doc_facette .field .commande-rapide-panier .encart-commande-rapide .left input[type="date"] {
  width: 36.6225%;
}

.commande-rapide-panier .encart-commande-rapide .depot-fichier {
  width: 32.125%;
  float: left;
}

.commande-rapide-panier .encart-commande-rapide .bouton-fichier,
.commande-rapide-panier .encart-commande-rapide .bouton-importer,
.commande-rapide-panier .encart-commande-rapide .bouton-rouge,
.commande-rapide-panier .encart-commande-rapide .bouton-vert,
.commande-rapide-panier .encart-commande-rapide .form-submit button,
.form-submit .commande-rapide-panier .encart-commande-rapide button,
.commande-rapide-panier .encart-commande-rapide .form-submit input[type="submit"],
.form-submit .commande-rapide-panier .encart-commande-rapide input[type="submit"],
.commande-rapide-panier .encart-commande-rapide .bouton-bleu,
.commande-rapide-panier .encart-commande-rapide .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer,
.TPL_ORCAB_FICHE_RETOUR .form-submit .commande-rapide-panier .encart-commande-rapide .btn-imprimer,
.commande-rapide-panier .encart-commande-rapide .lignes-retour-wrap .form-submit .btn-imprimer,
.lignes-retour-wrap .form-submit .commande-rapide-panier .encart-commande-rapide .btn-imprimer,
.commande-rapide-panier .encart-commande-rapide .TPL_COMPARATEUR .action a.voir-produit,
.TPL_COMPARATEUR .action .commande-rapide-panier .encart-commande-rapide a.voir-produit,
.commande-rapide-panier .encart-commande-rapide .materiel-print-btn a,
.materiel-print-btn .commande-rapide-panier .encart-commande-rapide a,
.commande-rapide-panier .encart-commande-rapide .materiel-planning-pdf a,
.materiel-planning-pdf .commande-rapide-panier .encart-commande-rapide a,
.commande-rapide-panier .encart-commande-rapide .bouton-gris,
.commande-rapide-panier .encart-commande-rapide .bouton-rouge,
.commande-rapide-panier .encart-commande-rapide .bouton-retour,
.commande-rapide-panier .encart-commande-rapide .bouton-rechercher,
.commande-rapide-panier .encart-commande-rapide .btn-ajouter-au-panier,
.commande-rapide-panier .encart-commande-rapide .btn-liste-achat-activate,
.commande-rapide-panier .encart-commande-rapide .ressources-associees li.lien-tous a,
.ressources-associees li.lien-tous .commande-rapide-panier .encart-commande-rapide a,
.commande-rapide-panier .encart-commande-rapide .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste,
.liste-achat-plugin .ajouter-a-la-liste .commande-rapide-panier .encart-commande-rapide .btn-ajouter-liste,
.commande-rapide-panier .encart-commande-rapide .TPL_FICHE_PRODUIT .btn-submit,
.TPL_FICHE_PRODUIT .commande-rapide-panier .encart-commande-rapide .btn-submit {
  min-width: inherit;
}

.commande-rapide-panier .encart-commande-rapide .upload {
  float: left;
  width: 53%;
  margin-right: 30px;
}

.commande-rapide-panier .encart-commande-rapide .bouton-fichier {
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
  cursor: pointer;
  width: 100%;
  text-align: center;
}

.commande-rapide-panier .encart-commande-rapide .bouton-fichier span {
  display: flex;
  justify-content: center;
  align-items: center;
}

.commande-rapide-panier .encart-commande-rapide .bouton-fichier span::before {
  content: "\e969";
  font-weight: normal;
  margin-right: 8px;
  font-size: 2rem;
}

.commande-rapide-panier .encart-commande-rapide .bouton-fichier input {
  display: block;
  height: 22px;
  left: -15px;
  opacity: 0;
  overflow: hidden;
  padding: 15px;
  position: absolute;
  top: -15px;
  width: 100%;
}

.commande-rapide-panier .encart-commande-rapide .bouton-importer {
  width: 32.5%;
}

.commande-rapide-panier .encart-commande-rapide form {
  padding-bottom: 0;
}

.commande-rapide-panier .encart-commande-rapide form .field-required::after, .commande-rapide-panier .encart-commande-rapide form .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .field::after, .liste-panier-commande-rapide .liste-produits-item .comment-form.comment-obligatoire .commande-rapide-panier .encart-commande-rapide form .field::after {
  content: '';
}

.commande-rapide-panier .encart-commande-rapide #btnCommandeRapideScanCode {
  display: none;
}

@media screen and (max-width: 1600px) {
  .commande-rapide-panier .encart-commande-rapide .left,
  .commande-rapide-panier .encart-commande-rapide .depot-fichier {
    width: 48%;
  }
}

.commande-rapide-panier .display-table > div {
  vertical-align: middle;
  padding: 3rem 0.5rem 3.5rem 0;
}

.commande-rapide-panier .display-table .reference {
  width: 17%;
}

.commande-rapide-panier .display-table .libelle {
  width: 20%;
}

.commande-rapide-panier .display-table .libelle p {
  clear: both;
  margin: 0;
}

.commande-rapide-panier .display-table .libelle .box-type-panier {
  margin-bottom: 0.5rem;
}

.commande-rapide-panier .display-table .marque {
  width: 13.1%;
}

.commande-rapide-panier .display-table .cond {
  width: 6.1%;
}

.commande-rapide-panier .display-table .stock {
  width: 12.4%;
}

.commande-rapide-panier .display-table .prix {
  width: 11.4%;
}

.commande-rapide-panier .display-table .quantite {
  width: 8.5%;
  text-align: left;
}

.commande-rapide-panier .display-table .total {
  width: 8.5%;
}

.commande-rapide-panier .display-table .act {
  width: 6.3%;
}

.commande-rapide-panier .liste-panier-commande-rapide .liste-produits-item .display-table > div {
  padding-right: 5px;
}

.commande-rapide-panier .liste-panier-commande-rapide .liste-produits-item .display-table > div.reference {
  padding-left: 5px;
}

.commande-rapide-panier .intitules {
  margin-top: 10px;
  margin-bottom: 0;
}

.commande-rapide-panier .results {
  background: #e7e7e7;
  margin-top: 20px;
}

.commande-rapide-panier .results > p {
  padding: 0 10px;
}

.commande-rapide-panier .results .display-table > div {
  padding-right: 5px;
}

.commande-rapide-panier .results .display-table > div:first-child, .commande-rapide-panier .results .display-table > div.reference {
  padding-left: 5px;
}

.commande-rapide-panier .results .liste-produits-item {
  background: #e7e7e7;
  border-radius: 0;
  margin: 0;
  padding: 5px 0;
  border-bottom: 1px solid #fff;
}

.commande-rapide-panier .results .liste-produits-item.active {
  background: #bcc5ca;
}

.commande-rapide-panier .results .liste-produits-item .img-prod {
  display: none;
}

.commande-rapide-panier .results .liste-produits-item .img-prod + .details {
  padding-left: 0;
}

.commande-rapide-panier .results .liste-produits-item .identifiants span,
.commande-rapide-panier .results .liste-produits-item .quantite .btn-quantite {
  display: none;
}

.commande-rapide-panier .results .liste-produits-item .libelle, .commande-rapide-panier .results .liste-produits-item .prix-unitaire {
  font-size: 0.941em;
  color: #545454;
}

.commande-rapide-panier .results .liste-produits-item .qte {
  height: auto;
}

.commande-rapide-panier .results .quantite {
  width: 20%;
}

.commande-rapide-panier .results .quantite .btn-petit-vert, .commande-rapide-panier .results .quantite .frontModalBoxContainer .btn-submit, .frontModalBoxContainer .commande-rapide-panier .results .quantite .btn-submit, .commande-rapide-panier .results .quantite .frontModalBoxContainer #btn-supprimer-oui, .frontModalBoxContainer .commande-rapide-panier .results .quantite #btn-supprimer-oui,
.commande-rapide-panier .results .quantite .frontModalBoxContainer .btn-valider, .frontModalBoxContainer .commande-rapide-panier .results .quantite .btn-valider, .commande-rapide-panier .results .quantite .s-editherm-info__form button[type="submit"], .s-editherm-info__form .commande-rapide-panier .results .quantite button[type="submit"],
.commande-rapide-panier .results .quantite .btn-petit-bleu,
.commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .changeVue.active,
.TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .changeVue.active,
.commande-rapide-panier .results .quantite .btn-petit-gris,
.commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .changeVue,
.TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .changeVue {
  padding: 0;
  vertical-align: top;
  min-height: 36px;
  text-indent: -99999px;
  width: 36px;
}

.commande-rapide-panier .results .quantite .btn-petit-vert::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer .btn-submit::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .btn-submit::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer #btn-supprimer-oui::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite #btn-supprimer-oui::before,
.commande-rapide-panier .results .quantite .frontModalBoxContainer .btn-valider::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .btn-valider::before, .commande-rapide-panier .results .quantite .s-editherm-info__form button[type="submit"]::before, .s-editherm-info__form .commande-rapide-panier .results .quantite button[type="submit"]::before,
.commande-rapide-panier .results .quantite .btn-petit-bleu::before,
.commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .changeVue.active::before,
.TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .changeVue.active::before,
.commande-rapide-panier .results .quantite .btn-petit-gris::before,
.commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .changeVue::before,
.TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .changeVue::before {
  content: "\e97e";
  font-size: 1.25em;
  font-weight: normal;
  line-height: 17px;
  vertical-align: middle;
  text-indent: 0;
  float: left;
  width: 36px;
}

.commande-rapide-panier .results .quantite .btn-petit-vert.ajouterALaListeBtn, .commande-rapide-panier .results .quantite .frontModalBoxContainer .ajouterALaListeBtn.btn-submit, .frontModalBoxContainer .commande-rapide-panier .results .quantite .ajouterALaListeBtn.btn-submit, .commande-rapide-panier .results .quantite .frontModalBoxContainer .ajouterALaListeBtn#btn-supprimer-oui, .frontModalBoxContainer .commande-rapide-panier .results .quantite .ajouterALaListeBtn#btn-supprimer-oui,
.commande-rapide-panier .results .quantite .frontModalBoxContainer .ajouterALaListeBtn.btn-valider, .frontModalBoxContainer .commande-rapide-panier .results .quantite .ajouterALaListeBtn.btn-valider, .commande-rapide-panier .results .quantite .s-editherm-info__form button.ajouterALaListeBtn[type="submit"], .s-editherm-info__form .commande-rapide-panier .results .quantite button.ajouterALaListeBtn[type="submit"], .commande-rapide-panier .results .quantite .btn-petit-vert.ajouterALaListeEtiquetteBtn, .commande-rapide-panier .results .quantite .frontModalBoxContainer .ajouterALaListeEtiquetteBtn.btn-submit, .frontModalBoxContainer .commande-rapide-panier .results .quantite .ajouterALaListeEtiquetteBtn.btn-submit, .commande-rapide-panier .results .quantite .frontModalBoxContainer .ajouterALaListeEtiquetteBtn#btn-supprimer-oui, .frontModalBoxContainer .commande-rapide-panier .results .quantite .ajouterALaListeEtiquetteBtn#btn-supprimer-oui,
.commande-rapide-panier .results .quantite .frontModalBoxContainer .ajouterALaListeEtiquetteBtn.btn-valider, .frontModalBoxContainer .commande-rapide-panier .results .quantite .ajouterALaListeEtiquetteBtn.btn-valider, .commande-rapide-panier .results .quantite .s-editherm-info__form button.ajouterALaListeEtiquetteBtn[type="submit"], .s-editherm-info__form .commande-rapide-panier .results .quantite button.ajouterALaListeEtiquetteBtn[type="submit"],
.commande-rapide-panier .results .quantite .btn-petit-bleu.ajouterALaListeBtn,
.commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .ajouterALaListeBtn.changeVue.active,
.TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .ajouterALaListeBtn.changeVue.active,
.commande-rapide-panier .results .quantite .btn-petit-bleu.ajouterALaListeEtiquetteBtn,
.commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .ajouterALaListeEtiquetteBtn.changeVue.active,
.TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .ajouterALaListeEtiquetteBtn.changeVue.active,
.commande-rapide-panier .results .quantite .btn-petit-gris.ajouterALaListeBtn,
.commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .ajouterALaListeBtn.changeVue,
.TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .ajouterALaListeBtn.changeVue,
.commande-rapide-panier .results .quantite .btn-petit-gris.ajouterALaListeEtiquetteBtn,
.commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .ajouterALaListeEtiquetteBtn.changeVue,
.TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .ajouterALaListeEtiquetteBtn.changeVue {
  background-color: #004462;
}

.commande-rapide-panier .results .quantite .btn-petit-vert.ajouterALaListeBtn::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer .ajouterALaListeBtn.btn-submit::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .ajouterALaListeBtn.btn-submit::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer .ajouterALaListeBtn#btn-supprimer-oui::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .ajouterALaListeBtn#btn-supprimer-oui::before,
.commande-rapide-panier .results .quantite .frontModalBoxContainer .ajouterALaListeBtn.btn-valider::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .ajouterALaListeBtn.btn-valider::before, .commande-rapide-panier .results .quantite .s-editherm-info__form button.ajouterALaListeBtn[type="submit"]::before, .s-editherm-info__form .commande-rapide-panier .results .quantite button.ajouterALaListeBtn[type="submit"]::before, .commande-rapide-panier .results .quantite .btn-petit-vert.ajouterALaListeEtiquetteBtn::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer .ajouterALaListeEtiquetteBtn.btn-submit::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .ajouterALaListeEtiquetteBtn.btn-submit::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer .ajouterALaListeEtiquetteBtn#btn-supprimer-oui::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .ajouterALaListeEtiquetteBtn#btn-supprimer-oui::before,
.commande-rapide-panier .results .quantite .frontModalBoxContainer .ajouterALaListeEtiquetteBtn.btn-valider::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .ajouterALaListeEtiquetteBtn.btn-valider::before, .commande-rapide-panier .results .quantite .s-editherm-info__form button.ajouterALaListeEtiquetteBtn[type="submit"]::before, .s-editherm-info__form .commande-rapide-panier .results .quantite button.ajouterALaListeEtiquetteBtn[type="submit"]::before,
.commande-rapide-panier .results .quantite .btn-petit-bleu.ajouterALaListeBtn::before,
.commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .ajouterALaListeBtn.changeVue.active::before,
.TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .ajouterALaListeBtn.changeVue.active::before,
.commande-rapide-panier .results .quantite .btn-petit-bleu.ajouterALaListeEtiquetteBtn::before,
.commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .ajouterALaListeEtiquetteBtn.changeVue.active::before,
.TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .ajouterALaListeEtiquetteBtn.changeVue.active::before,
.commande-rapide-panier .results .quantite .btn-petit-gris.ajouterALaListeBtn::before,
.commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .ajouterALaListeBtn.changeVue::before,
.TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .ajouterALaListeBtn.changeVue::before,
.commande-rapide-panier .results .quantite .btn-petit-gris.ajouterALaListeEtiquetteBtn::before,
.commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .ajouterALaListeEtiquetteBtn.changeVue::before,
.TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .ajouterALaListeEtiquetteBtn.changeVue::before {
  content: "\e913";
}

.commande-rapide-panier .results .quantite .btn-petit-vert.quantiteAlreadyInPanier::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer .quantiteAlreadyInPanier.btn-submit::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .quantiteAlreadyInPanier.btn-submit::before, .commande-rapide-panier .results .quantite .frontModalBoxContainer .quantiteAlreadyInPanier#btn-supprimer-oui::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .quantiteAlreadyInPanier#btn-supprimer-oui::before,
.commande-rapide-panier .results .quantite .frontModalBoxContainer .quantiteAlreadyInPanier.btn-valider::before, .frontModalBoxContainer .commande-rapide-panier .results .quantite .quantiteAlreadyInPanier.btn-valider::before, .commande-rapide-panier .results .quantite .s-editherm-info__form button.quantiteAlreadyInPanier[type="submit"]::before, .s-editherm-info__form .commande-rapide-panier .results .quantite button.quantiteAlreadyInPanier[type="submit"]::before,
.commande-rapide-panier .results .quantite .btn-petit-bleu.quantiteAlreadyInPanier::before,
.commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .quantiteAlreadyInPanier.changeVue.active::before,
.TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .quantiteAlreadyInPanier.changeVue.active::before,
.commande-rapide-panier .results .quantite .btn-petit-gris.quantiteAlreadyInPanier::before,
.commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .quantiteAlreadyInPanier.changeVue::before,
.TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .quantiteAlreadyInPanier.changeVue::before {
  content: "\e94b";
  font-size: 13px;
}

.commande-rapide-panier .results .quantite .btn-petit-gris:before, .commande-rapide-panier .results .quantite .TPL_ORCAB_AGENDA .changeVue:before, .TPL_ORCAB_AGENDA .commande-rapide-panier .results .quantite .changeVue:before {
  content: '\e97b';
}

.commande-rapide-panier .results .quantite .options {
  font-size: 1.2rem;
  display: block;
}

.commande-rapide-panier .results .qte {
  border: none;
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
  margin-bottom: 0;
  height: auto;
}

.commande-rapide-panier .results .qte .amount {
  width: 50px;
  height: 36px;
  font-size: 0.941em;
}

@media screen and (max-width: 1024px) {
  .commande-rapide-panier .text {
    width: 100%;
    float: none;
  }
  .commande-rapide-panier .encart-commande-rapide {
    display: flex;
    flex-direction: column-reverse;
  }
  .commande-rapide-panier .encart-commande-rapide .left {
    width: 100%;
  }
  .commande-rapide-panier .encart-commande-rapide .depot-fichier {
    margin-bottom: 20px;
    width: 100%;
    max-width: 65%;
  }
  .commande-rapide-panier .encart-commande-rapide #btnCommandeRapideScanCode {
    display: inline-block;
  }
  .commande-rapide-panier .liste-produits-item .display-table .reference, .commande-rapide-panier .liste-produits-item .display-table .libelle {
    padding-bottom: 5px;
  }
  .commande-rapide-panier .liste-produits-item .display-table .marque {
    padding-left: 10px;
  }
  .commande-rapide-panier .liste-produits-item .display-table .quantite {
    width: 36.3%;
  }
}

@media screen and (max-width: 767px) {
  .commande-rapide-panier {
    display: none;
  }
  .commande-rapide-panier #btnReinitialiserRechercheCommandeRapide {
    margin: 10px auto;
  }
  .commande-rapide-panier #rechercheCommandeRapide {
    width: 80%;
  }
  .commande-rapide-panier #btnCommandeRapideScanCode {
    display: inline-block;
  }
  .commande-rapide-panier .liste-produits-item .display-table .libelle, .commande-rapide-panier .liste-produits-item .display-table .marque, .commande-rapide-panier .liste-produits-item .display-table .quantite, .commande-rapide-panier .liste-produits-item .display-table .qte-etat {
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 5px;
    margin: 0;
    width: 100%;
  }
  .commande-rapide-panier .liste-produits-item .display-table .reference {
    display: none;
  }
  .commande-rapide-panier .liste-produits-item .display-table .qte-etat::before {
    position: relative;
    right: auto;
    top: auto;
    transform: none;
    margin-left: 0;
  }
  .commande-rapide-panier .liste-produits-item .display-table .qte-etat span {
    margin-right: 10px;
    vertical-align: middle;
  }
}

/* ===================================================================
 * LISTE PANIERS A VALIDER
 * =================================================================*/
.TPL_ORCAB_PANIERS_A_VALIDER .btn-refuser-panier.disabled {
  opacity: 0.5;
}

/* ===================================================================
 * TEMPLATE STATISTIQUES
 * =================================================================*/
.TPL_STATISTIQUES {
  padding: 70px 0;
  background-color: #f6f6f6;
}

.TPL_STATISTIQUES .statistiques {
  margin: 0 auto;
}

.table-stats {
  width: 100%;
  border-spacing: 0 20px;
  border-collapse: separate;
}

.table-stats thead th {
  font-size: 2rem;
  color: #004462;
  vertical-align: bottom;
  text-align: left;
  border-left: 1px solid #004462;
  padding: 10px;
}

.table-stats thead th:first-child {
  border-left: 0 none;
}

.table-stats tbody .bold-row th, .table-stats tbody .bold-row td {
  font-weight: bold;
}

.table-stats tbody th, .table-stats tbody td {
  font-size: 1.8rem;
  text-align: left;
}

.table-stats tbody th {
  color: #82aa37;
  font-weight: normal;
  padding: 10px 10px 0 0;
}

.table-stats tbody th::after {
  content: '';
  display: block;
  width: 50px;
  height: 1px;
  border-bottom: 1px solid #c1c1c1;
  margin-top: 10px;
}

.table-stats tbody td {
  border-left: 1px solid #c1c1c1;
  padding: 5px 10px 0 10px;
}

/* ===================================================================
 * MEDIAQUERIES
 * =================================================================*/
@media screen and (max-width: 1170px) {
  /* ===================================================================
     * TEMPLATE STATISTIQUES
     * =================================================================*/
  .TPL_STATISTIQUES {
    padding-left: 15px;
    padding-right: 15px;
  }
}

/* ===================================================================
 * RECHERCHE DE COLLABORATION
 * =================================================================*/
.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .container-map {
  background: #fff;
  margin: 0 0 100px;
  position: relative;
  padding: 25px;
  border-radius: 5px;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .wrapper {
  display: flex;
  flex-flow: row-reverse wrap;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .wrapper .left {
  height: 770px;
  padding-right: 15px;
  width: 41rem;
  overflow: hidden;
  overflow-y: auto;
  scrollbar-width: thin;
  box-sizing: border-box;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .wrapper .left::-webkit-scrollbar {
  width: 9px;
  height: 9px;
  background: #F0F0F0;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .wrapper .left::-webkit-scrollbar-thumb {
  background: #CDCDCD;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .wrapper .right {
  width: 76.08187134502924%;
  padding-left: 15px;
  box-sizing: border-box;
  flex: 1;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .wrapper .right #map {
  width: 100% !important;
  border: 1px solid #c4c4c4;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator a,
.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .gm-style-iw a {
  color: #004462;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator h3,
.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .gm-style-iw h3 {
  font-size: 1.6rem;
  line-height: 2.4rem;
  color: #82aa37;
  border-bottom: 1px solid #c4c4c4;
  padding-bottom: 12px;
  margin-bottom: 0;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator p,
.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .gm-style-iw p {
  font-size: 1.6rem;
  line-height: 2.4rem;
  font-weight: 700;
  color: #004462;
  padding: 12px 0 12px 40px;
  margin: 0;
  position: relative;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator p::before,
.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .gm-style-iw p::before {
  position: absolute;
  left: 0;
  color: #004462;
  line-height: 24px;
  font-size: 24px;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator p.ville::before,
.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .gm-style-iw p.ville::before {
  content: "\e9272";
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator p.email::before,
.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .gm-style-iw p.email::before {
  content: "\e981";
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator p.tel::before,
.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .gm-style-iw p.tel::before {
  content: '\e987';
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator p.site::before,
.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .gm-style-iw p.site::before {
  content: "\e9c9";
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .bouton-blanc, .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .mise-en-avant .contenu a, .mise-en-avant .contenu .TPL_ORCAB_RECHERCHE_STORE_LOCATOR a, .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement button, .TPL_ORCAB_PANIERS .creationPanierAdresse__creer-uniquement .TPL_ORCAB_RECHERCHE_STORE_LOCATOR button {
  font-size: 1.4rem;
  padding: 0.6rem 15px;
  width: 100%;
  box-sizing: border-box;
  text-align: center;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator {
  border: 1px solid #c4c4c4;
  border-radius: 5px;
  margin-bottom: 12px;
  padding: 24px 15px 15px;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator a {
  line-break: anywhere;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator.selected, .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator:hover {
  background: #f6f6f6;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .store-locator p:not(:last-of-type)::after {
  content: '';
  width: 50px;
  border-bottom: 1px solid #c4c4c4;
  bottom: 0;
  left: 0;
  position: absolute;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .tel-field {
  position: relative;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .tel-field label.ico {
  width: 50px;
  line-height: 40px;
  text-align: center;
  display: block;
  position: absolute;
  right: 0;
  top: 23px;
  padding: 0;
  font-size: 2.4rem;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .tel-field label.ico:before {
  color: #004462;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .tel-field label.ico::after {
  content: "";
  background: #c4c4c4;
  display: block;
  width: 1px;
  height: 30px;
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  left: 0;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .tel-field input {
  padding-right: 55px;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .form-submit {
  clear: none;
  margin: 23px 0 0;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .form-submit button {
  line-height: 20px;
  min-width: 100%;
}

.TPL_ORCAB_RECHERCHE_STORE_LOCATOR .form-submit span::before {
  content: "\e915";
  margin-right: 10px;
}

/* ===================================================================
 * MEDIAQUERIES
 * =================================================================*/
@media screen and (max-width: 1024px) {
  .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .wrapper .left,
  .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .wrapper .right {
    width: 50%;
  }
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_RECHERCHE_STORE_LOCATOR {
    /*.form-fields-wrapper:not(.emplacement) {
            border: 1px solid $grisBordure;
            border-top: 0;
            margin-bottom: 10px;
            .left50 {
                padding: 0;
                label {
                    background: #404040;
                    padding: 15px;
                    cursor: pointer;
                    color: #fff;
                    margin: 0 -1px;
                }
                .select-wrap {
                    display: none;
                    margin: 10px;
                }
            }
            .right50 {
                box-sizing: border-box;
                display: none;
                padding: 0 10px 10px;
            }
        }*/
  }
  .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .wrapper {
    flex-direction: column;
  }
  .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .wrapper .right {
    width: 100%;
    padding: 0;
    border-radius: 0;
    margin: 0 0 20px;
  }
  .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .wrapper .left {
    width: 100%;
    height: auto;
    padding: 0;
  }
  .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .wrapper #map {
    height: 360px !important;
  }
  .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .form-submit {
    float: none;
    margin: 0;
    width: 100%;
  }
  .TPL_ORCAB_RECHERCHE_STORE_LOCATOR .form-submit button {
    min-width: 270px;
  }
}

/* ===================================================================
 * TEMPLATE FICHE ADHERENT
 * =================================================================*/
.fiche-adherent {
  margin-bottom: 7.5rem;
}

.fiche-adherent h1 {
  margin-bottom: 25px;
}

.fiche-adherent__dirigeant {
  margin: 0 0 20px;
}

.fiche-adherent__wrapper, .fiche-adherent__details, .fiche-adherent__top {
  display: flex;
  flex-flow: row wrap;
  gap: 30px;
  flex: 1;
  align-self: flex-start;
}

.fiche-adherent__visuel {
  width: 32.21590909090909%;
  font-size: 1.4rem;
  line-height: 1.9rem;
}

.fiche-adherent__visuel-top {
  margin-bottom: 30px;
}

.fiche-adherent__visuel-thumb {
  padding: 0 58px;
}

.fiche-adherent__visuel-thumb span {
  padding: 0 9px;
  display: flex;
}

.fiche-adherent__visuel .img-fluid {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 5px;
}

@media screen and (max-width: 1440px) {
  .fiche-adherent__visuel {
    width: 40.37878787878788%;
  }
}

@media screen and (max-width: 1024px) {
  .fiche-adherent__visuel {
    width: 48.94067796610169%;
  }
}

@media screen and (max-width: 767px) and (min-width: 568px) {
  .fiche-adherent__visuel {
    width: 448px;
  }
}

@media screen and (max-width: 567px) {
  .fiche-adherent__visuel {
    width: 100%;
  }
  .fiche-adherent__visuel-thumb {
    padding: 0 46px;
    max-width: 308px;
    margin: 0 auto;
  }
}

.fiche-adherent .category {
  padding: 8px 14px;
  font-size: 1.4rem;
  line-height: 1.9rem;
  border-radius: 30px;
  background-color: #003160;
  color: #ffffff;
  font-weight: 700;
}

.fiche-adherent .category-list {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  gap: 10px;
  margin-bottom: 0;
}

.fiche-adherent__activites {
  display: flex;
  flex-direction: column;
  gap: 30px;
  flex: 1;
}

.fiche-adherent__coordonnes {
  padding: 2rem;
  background-color: #ffffff;
  border-radius: 5px;
  color: #003160;
  font-size: 1.4rem;
  line-height: 1.9rem;
  font-weight: 700;
  width: 35.85554600171969%;
  box-sizing: border-box;
  align-self: flex-start;
  word-break: break-all;
}

.fiche-adherent__coordonnes a {
  color: #003160;
}

.fiche-adherent__coordonnes p {
  padding: 1rem 0 1rem 4rem;
  margin: 0;
  border-bottom: 1px solid #e9e9e9;
  position: relative;
}

.fiche-adherent__coordonnes p:last-of-type {
  border-bottom: 0;
}

.fiche-adherent__coordonnes p:before {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  font-size: 2.4rem;
  font-weight: normal;
  left: 0;
}

.fiche-adherent__coordonnes .mail:before {
  content: '\e981';
}

.fiche-adherent__coordonnes .adresse:before {
  content: '\e9272';
}

.fiche-adherent__coordonnes .phone:before {
  content: '\e987';
}

.fiche-adherent__coordonnes .website:before {
  content: '\e986';
}

.fiche-adherent__presentation {
  width: 100%;
}

.fiche-adherent__presentation p {
  margin-top: 0;
}

.fiche-adherent .slick-arrow {
  width: 4rem;
  background-color: #e9e9e9;
  height: 99px;
  border-radius: 3px;
  top: 0;
  transform: none;
}

.fiche-adherent .slick-arrow:before {
  font-size: 1.2rem;
  color: #003160;
}

.fiche-adherent .slick-prev {
  left: 0;
}

.fiche-adherent .slick-prev:before {
  content: '\f053';
}

.fiche-adherent .slick-next {
  right: 0;
}

.fiche-adherent .slick-next:before {
  content: '\f054';
}

.fiche-adherent .slick-slide {
  display: flex;
  justify-content: center;
  word-wrap: anywhere;
}

.fiche-adherent .slick-slide > div {
  width: 100%;
}

.fiche-adherent__big {
  aspect-ratio: 567 / 447;
  margin: 0 0 5px;
  overflow: hidden;
}

.fiche-adherent__thumb {
  aspect-ratio: 99 / 99;
  padding: 0 9px;
  margin: 0 0 5px;
  overflow: hidden;
}

@media screen and (max-width: 1024px) {
  .fiche-adherent__top {
    flex-direction: column;
  }
  .fiche-adherent__coordonnes {
    width: 100%;
  }
}

@media screen and (max-width: 567px) {
  .fiche-adherent__wrapper {
    flex-direction: column;
  }
}

/* ===================================================================
 * RECHERCHE CARTE TOURNEE
 * =================================================================*/
.TPL_ORCAB_CARTE_TOURNEE .container-map {
  background: #fff;
  margin: 0 0 100px;
  position: relative;
  padding: 45px 30px;
}

.TPL_ORCAB_CARTE_TOURNEE .wrapper .left {
  float: left;
  height: 775px;
  overflow: auto;
  padding-right: 15px;
  width: 21.76%;
}

.TPL_ORCAB_CARTE_TOURNEE .wrapper .right {
  float: right;
  width: calc(76.2% - 10px);
  border: 1px solid #c4c4c4;
  border-radius: 0 5px 5px 0;
  margin-left: 10px;
}

.TPL_ORCAB_CARTE_TOURNEE .wrapper .right #map {
  width: 100% !important;
}

.TPL_ORCAB_CARTE_TOURNEE .carte-tournee a,
.TPL_ORCAB_CARTE_TOURNEE .gm-style-iw a {
  color: #004462;
}

.TPL_ORCAB_CARTE_TOURNEE .carte-tournee h3,
.TPL_ORCAB_CARTE_TOURNEE .gm-style-iw h3 {
  font-size: 1.8rem;
  color: #82aa37;
  text-transform: uppercase;
  border-bottom: 1px solid #c4c4c4;
  padding-bottom: 15px;
  margin-bottom: 0;
}

.TPL_ORCAB_CARTE_TOURNEE .carte-tournee p,
.TPL_ORCAB_CARTE_TOURNEE .gm-style-iw p {
  font-size: 1.6rem;
  font-weight: 700;
  color: #004462;
  padding: 15px 0 0 30px;
  margin: 0;
  position: relative;
}

.TPL_ORCAB_CARTE_TOURNEE .carte-tournee p::before,
.TPL_ORCAB_CARTE_TOURNEE .gm-style-iw p::before {
  position: absolute;
  left: 0;
  color: #9e9e9e;
  line-height: 21px;
}

.TPL_ORCAB_CARTE_TOURNEE .carte-tournee p.ville::before,
.TPL_ORCAB_CARTE_TOURNEE .gm-style-iw p.ville::before {
  content: "\e9272";
}

.TPL_ORCAB_CARTE_TOURNEE .carte-tournee p.email::before,
.TPL_ORCAB_CARTE_TOURNEE .gm-style-iw p.email::before {
  content: "\e916";
}

.TPL_ORCAB_CARTE_TOURNEE .carte-tournee p.tel::before,
.TPL_ORCAB_CARTE_TOURNEE .gm-style-iw p.tel::before {
  content: "\e925";
}

.TPL_ORCAB_CARTE_TOURNEE .carte-tournee p.site::before,
.TPL_ORCAB_CARTE_TOURNEE .gm-style-iw p.site::before {
  content: "\e9c9";
}

.TPL_ORCAB_CARTE_TOURNEE .carte-tournee {
  border: 1px solid #c4c4c4;
  border-radius: 5px 0 0 5px;
  margin-bottom: 10px;
  padding: 20px;
}

.TPL_ORCAB_CARTE_TOURNEE .carte-tournee a {
  line-break: anywhere;
}

.TPL_ORCAB_CARTE_TOURNEE .carte-tournee.selected, .TPL_ORCAB_CARTE_TOURNEE .carte-tournee:hover {
  background: #f6f6f6;
}

.TPL_ORCAB_CARTE_TOURNEE .carte-tournee p:not(:last-child) {
  padding-bottom: 15px;
}

.TPL_ORCAB_CARTE_TOURNEE .carte-tournee p:not(:last-child)::after {
  content: '';
  width: 50px;
  border-bottom: 1px solid #c4c4c4;
  bottom: 0;
  left: 0;
  position: absolute;
}

.TPL_ORCAB_CARTE_TOURNEE .tel-field {
  position: relative;
}

.TPL_ORCAB_CARTE_TOURNEE .tel-field label.ico {
  width: 50px;
  line-height: 40px;
  text-align: center;
  display: block;
  position: absolute;
  left: 0;
  top: 23px;
  padding: 0;
}

.TPL_ORCAB_CARTE_TOURNEE .tel-field label.ico::after {
  content: "";
  background: #c4c4c4;
  display: block;
  width: 1px;
  height: 20px;
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  right: 0;
}

.TPL_ORCAB_CARTE_TOURNEE .tel-field input {
  padding-left: 65px;
}

.TPL_ORCAB_CARTE_TOURNEE .emplacement {
  width: 69%;
  float: left;
}

.TPL_ORCAB_CARTE_TOURNEE .form-submit {
  clear: none;
  float: right;
  margin: 26px 0 0;
  width: 28%;
}

.TPL_ORCAB_CARTE_TOURNEE .form-submit button {
  line-height: 20px;
  min-width: 100%;
}

.TPL_ORCAB_CARTE_TOURNEE .form-submit span::before {
  content: "\e915";
  margin-right: 10px;
}

/* ===================================================================
 * MEDIAQUERIES
 * =================================================================*/
@media screen and (max-width: 1024px) {
  .TPL_ORCAB_CARTE_TOURNEE .wrapper .left {
    height: 640px;
    width: 48%;
  }
  .TPL_ORCAB_CARTE_TOURNEE .wrapper .right {
    width: 48%;
  }
  .TPL_ORCAB_CARTE_TOURNEE .wrapper #map {
    height: 640px !important;
    width: 100% !important;
  }
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_CARTE_TOURNEE .wrapper .right {
    float: none;
    width: calc(100% - 2px);
    margin: 0 0 20px;
    border-radius: 0;
  }
  .TPL_ORCAB_CARTE_TOURNEE .wrapper .left {
    float: none;
    width: calc(100% - 20px);
  }
  .TPL_ORCAB_CARTE_TOURNEE .wrapper #map {
    height: 360px !important;
  }
  .TPL_ORCAB_CARTE_TOURNEE .emplacement {
    width: 100%;
    float: none;
  }
  .TPL_ORCAB_CARTE_TOURNEE .form-submit {
    float: none;
    margin: 0;
    width: 100%;
  }
  .TPL_ORCAB_CARTE_TOURNEE .form-submit button {
    min-width: 270px;
  }
  .TPL_ORCAB_CARTE_TOURNEE .form-fields-wrapper:not(.emplacement) {
    border: 1px solid #c4c4c4;
    border-top: 0;
    margin-bottom: 10px;
  }
  .TPL_ORCAB_CARTE_TOURNEE .form-fields-wrapper:not(.emplacement) .left50 {
    padding: 0;
  }
  .TPL_ORCAB_CARTE_TOURNEE .form-fields-wrapper:not(.emplacement) .left50 label {
    background: #404040;
    padding: 15px;
    cursor: pointer;
    color: #fff;
    margin: 0 -1px;
  }
  .TPL_ORCAB_CARTE_TOURNEE .form-fields-wrapper:not(.emplacement) .left50 .select-wrap {
    display: none;
    margin: 10px;
  }
  .TPL_ORCAB_CARTE_TOURNEE .form-fields-wrapper:not(.emplacement) .right50 {
    box-sizing: border-box;
    display: none;
    padding: 0 10px 10px;
  }
}

/* ===================================================================
 * QR CODE
 * =================================================================*/
.code-scanner {
  text-align: center;
  margin-bottom: 30px;
}

.code-scanner h2, .code-scanner .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .code-scanner h1, .code-scanner .fiche-adherent h1, .fiche-adherent .code-scanner h1 {
  text-align: left;
}

.code-scanner #capture {
  width: 100%;
  height: initial;
  position: relative;
  margin: 0 auto 20px;
}

.code-scanner #capture video,
.code-scanner #capture canvas {
  width: 100%;
  height: 100%;
}

.code-scanner #capture > div {
  display: none;
}

.code-scanner #capture.c-scan__capture--dynamsoft > div {
  display: block;
  aspect-ratio: 16/9;
  margin-top: 12px;
}

.code-scanner canvas.drawing, .code-scanner canvas.drawingBuffer {
  position: absolute;
  left: 0;
  top: 0;
}

.code-scanner canvas#canvasQRCode {
  display: none;
}

/* ===================================================================
 * AGENDA
 * =================================================================*/
.TPL_ORCAB_AGENDA {
  margin-bottom: 45px;
}

.TPL_ORCAB_AGENDA .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.TPL_ORCAB_AGENDA .top {
  margin-bottom: 10px;
}

.TPL_ORCAB_AGENDA h2, .TPL_ORCAB_AGENDA .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_ORCAB_AGENDA h1, .TPL_ORCAB_AGENDA .fiche-adherent h1, .fiche-adherent .TPL_ORCAB_AGENDA h1 {
  font-size: 3.5rem;
  width: auto;
}

@media screen and (max-width: 374px) {
  .TPL_ORCAB_AGENDA h2, .TPL_ORCAB_AGENDA .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .TPL_ORCAB_AGENDA h1, .TPL_ORCAB_AGENDA .fiche-adherent h1, .fiche-adherent .TPL_ORCAB_AGENDA h1 {
    font-size: 2.5rem;
    margin: 0;
  }
}

.TPL_ORCAB_AGENDA #switch-vue {
  flex: 1;
  display: flex;
  justify-content: flex-end;
  margin-top: 4px;
}

.TPL_ORCAB_AGENDA .changeVue {
  position: relative;
  background-color: #cecece;
}

.TPL_ORCAB_AGENDA .changeVue:before {
  font-size: 2rem;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  color: #939393;
}

.TPL_ORCAB_AGENDA .changeVue.active:before {
  color: #ffffff;
}

.TPL_ORCAB_AGENDA .changeVue + .changeVue {
  margin-left: 25px;
}

@media screen and (max-width: 374px) {
  .TPL_ORCAB_AGENDA .changeVue {
    width: 38px;
    height: 38px;
  }
}

.TPL_ORCAB_AGENDA .vue-agenda:before {
  content: '\e95f';
}

.TPL_ORCAB_AGENDA .vue-liste:before {
  content: '\e967';
}

.with-btn-favoris .TPL_ORCAB_AGENDA .top {
  max-width: calc(100% - 235px);
  flex-flow: row wrap;
  display: flex;
  align-items: center;
}

@media screen and (max-width: 1024px) {
  .with-btn-favoris .TPL_ORCAB_AGENDA .top {
    max-width: calc(100% - 60px);
  }
}

@media screen and (max-width: 374px) {
  .with-btn-favoris .TPL_ORCAB_AGENDA .top {
    min-height: 48px;
    margin-bottom: 0;
  }
}

.TPL_ORCAB_AGENDA #formVue {
  margin: 20px 0;
}

.TPL_ORCAB_AGENDA #formVue > div {
  display: inline-block;
  width: 31%;
  margin-right: 3%;
}

.TPL_ORCAB_AGENDA #formVue > div:last-child {
  margin-right: 0;
}

.TPL_ORCAB_AGENDA #formVue > div .select-wrap, .TPL_ORCAB_AGENDA #formVue > div button {
  width: 100%;
}

@media screen and (max-width: 800px) {
  .TPL_ORCAB_AGENDA #formVue > div {
    width: 30%;
    margin-right: 1.5%;
  }
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_AGENDA #formVue > div {
    width: 100%;
    margin: 0 0 10px;
  }
}

.TPL_ORCAB_AGENDA .details {
  margin-bottom: 20px;
}

.TPL_ORCAB_AGENDA .bouton-details {
  position: relative;
  padding-left: 2.6rem;
  line-height: 1.9rem;
  margin: 0 0 10px;
}

.TPL_ORCAB_AGENDA .bouton-details:before {
  font-size: 1.6rem;
  color: #004462;
  position: absolute;
  top: 3px;
  left: 0;
}

.TPL_ORCAB_AGENDA .bouton-details.tarif-payant:before {
  width: 1.7rem;
  font-size: 1.3rem;
  text-align: center;
}

.TPL_ORCAB_AGENDA .dates:before {
  content: '\e984';
}

.TPL_ORCAB_AGENDA .lieu:before {
  content: '\e9272';
}

.TPL_ORCAB_AGENDA .horaire:before {
  content: '\e989';
}

.TPL_ORCAB_AGENDA .tarif:before {
  content: '\e988';
}

.TPL_ORCAB_AGENDA .tarif-payant:before {
  content: '\f153';
}

.TPL_ORCAB_AGENDA .voirPlusEvenementsPage {
  font-size: 1.7rem;
  font-weight: 700;
  margin-top: 20px;
  width: 100%;
  max-width: 180px;
}

.TPL_ORCAB_AGENDA .voirPlusEvenementsPage:before {
  font-size: 1.4rem;
  content: '\f067';
  font-weight: normal;
  margin-right: 10px;
}

.TPL_ORCAB_AGENDA #volet-journee .liste li {
  background-color: #F8F7F7;
}

.TPL_ORCAB_AGENDA #volet-journee .bouton-details {
  background: transparent;
}

.agenda-google-link {
  text-decoration: underline;
}

.agenda-google-link:after {
  font-size: 1.3rem;
  content: '\f08e';
  font-weight: normal;
  margin-left: 3px;
  display: inline-block;
  color: #003160;
}

.s-evenement__associe.s-element-associe-volet {
  margin-bottom: 0;
}

/* ===================================================================
 * TEMPLATE AGENDA ACCUEIL
 * =================================================================*/
.TPL_LISTE_AGENDA_ACCUEIL {
  margin-bottom: 90px;
}

@media screen and (max-width: 1024px) {
  .TPL_LISTE_AGENDA_ACCUEIL {
    margin-bottom: 60px;
  }
}

.TPL_LISTE_AGENDA_ACCUEIL .btn-dates {
  background-color: transparent;
  border: 0;
  padding: 0;
}

.TPL_LISTE_AGENDA_ACCUEIL .category {
  padding: 2px 8px;
  font-size: 1.3rem;
  line-height: 1.8rem;
  border-radius: 13px;
}

.TPL_LISTE_AGENDA_ACCUEIL .category-list {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  gap: 5px 8px;
  margin: 0;
}

.TPL_LISTE_AGENDA_ACCUEIL .bloc-actu .description {
  font-size: 1.4rem;
  line-height: 1.9rem;
  margin: 0;
}

.TPL_LISTE_AGENDA_ACCUEIL .bloc-icone {
  margin: 0 0 2rem;
  padding-left: 2.6rem;
  position: relative;
}

.TPL_LISTE_AGENDA_ACCUEIL .bloc-icone:before {
  font-size: 1.6rem;
  position: absolute;
  top: 2px;
  color: #003160;
  left: 0;
}

.TPL_LISTE_AGENDA_ACCUEIL .lieu:before {
  content: '\e9272';
}

.TPL_LISTE_AGENDA_ACCUEIL .dates p {
  margin: 0;
}

.TPL_LISTE_AGENDA_ACCUEIL .dates:before {
  content: '\e984';
}

.TPL_LISTE_AGENDA_ACCUEIL .show-more {
  text-decoration: none;
  cursor: pointer;
}

.TPL_LISTE_AGENDA_ACCUEIL .collapse {
  display: none;
}

.TPL_LISTE_AGENDA_ACCUEIL .collapse.in {
  display: block;
}

/* ===================================================================
 * AGENDA card
 * =================================================================*/
.c-agenda__item {
  background-color: #ffffff;
  border-radius: 8px;
  padding: 25px 30px 25px 15px;
  margin-bottom: 10px;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  gap: 30px;
}

.c-agenda__item--no-img {
  padding-left: 80px;
}

@media screen and (max-width: 767px) {
  .c-agenda__item {
    padding: 15px;
  }
}

.c-agenda__details {
  flex: 1;
}

@media screen and (max-width: 1024px) {
  .c-agenda__details {
    width: 100%;
    flex: inherit;
  }
}

.c-agenda__top {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

.c-agenda__heading {
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 2.5rem;
  margin-bottom: 0;
}

.c-agenda__link {
  color: #003160;
}

.c-agenda__image {
  width: 100%;
  object-fit: cover;
}

.c-agenda__image-wrapper {
  border-radius: 5px;
  width: 29.3rem;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  line-height: 0;
}

.c-agenda__category {
  padding: 2px 8px;
  font-size: 1.3rem;
  line-height: 1.8rem;
  border-radius: 13px;
}

.c-agenda__category-list {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  gap: 5px 8px;
  margin: 25px 0 0;
}

.c-agenda__btn {
  font-weight: 700;
}

.c-agenda__dates {
  display: flex;
  flex-flow: row wrap;
  gap: 10px 20px;
  margin: 0 0 10px;
  font-size: 1.4rem;
  line-height: 1.8rem;
}

@media screen and (max-width: 767px) {
  .c-agenda__dates {
    flex-direction: column;
    margin-bottom: 25px;
  }
}

.c-agenda__bloc {
  padding-left: 2.1rem;
  position: relative;
  margin: 0;
}

.c-agenda__bloc:before {
  font-size: 1.6rem;
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  color: #003160;
  left: 0;
}

.c-agenda__bloc.c-agenda__bloc--tarif-payant:before {
  width: 1.7rem;
  font-size: 1.3rem;
  text-align: center;
}

.c-agenda__bloc--lieu:before {
  content: '\e9272';
}

.c-agenda__bloc--creneau:before {
  content: '\e984';
}

.c-agenda__bloc--tarif:before {
  content: '\e988';
}

.c-agenda__bloc--tarif-payant:before {
  content: '\f153';
}

.c-agenda__bloc--horaire:before {
  content: '\e989';
}

.c-agenda--seance .c-agenda__item {
  margin-bottom: 20px;
}

.c-agenda--seance .c-agenda__dates {
  margin: 0;
  gap: 10px 15px;
}

.c-agenda--seance-lie .c-agenda__dates {
  margin-bottom: 20px;
  align-items: center;
}

.c-agenda--seance-lie .c-agenda__dates-title {
  margin: 0;
}

.c-agenda--seance-lie .c-agenda__description {
  margin-bottom: 0;
}

.o-agenda-etat {
  border: 1px solid #e05151;
  padding: 5px 10px;
  margin: 0;
  font-size: 1.1rem;
  line-height: 1.5rem;
  font-weight: 700;
  color: #e05151;
}

.o-agenda-etat--sheet {
  font-size: 1.6rem;
  line-height: 2.1rem;
  text-transform: uppercase;
  border-radius: 5px;
  padding: 10px;
}

.semaine-mois {
  margin-bottom: 20px;
  background-color: #ffffff;
  border-radius: 10px;
}

.semaine-mois .wrapper {
  background-color: #004462;
  border-radius: 8px;
  color: #ffffff;
  min-height: 64px;
  text-align: center;
  position: relative;
}

.semaine-mois h3 {
  font-size: 1.7rem;
  margin: 0;
  color: #ffffff;
  line-height: 64px;
  display: inline-block;
  cursor: pointer;
  font-weight: 400;
}

.semaine-mois button {
  background-color: transparent;
  border: 0;
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
}

.semaine-mois button:before {
  font-weight: 600;
  font-size: 1.8rem;
}

.semaine-mois button.left {
  left: 30%;
}

.semaine-mois button.left:before {
  content: '\f104';
}

@media screen and (max-width: 767px) {
  .semaine-mois button.left {
    left: 5px;
  }
}

.semaine-mois button.right {
  right: 30%;
}

.semaine-mois button.right:before {
  content: '\f105';
}

@media screen and (max-width: 767px) {
  .semaine-mois button.right {
    right: 5px;
  }
}

.head-mois {
  margin-left: calc(38px + 10px);
}

@media screen and (max-width: 1024px) {
  .tableau-agenda {
    width: 980px;
  }
}

.tableau-agenda .div-row {
  font-size: 0;
}

.tableau-agenda .div-row .col {
  display: inline-block;
  vertical-align: top;
  width: calc((100% - 60px) / 7);
}

.tableau-agenda .div-row .col + li {
  margin-left: 10px;
}

.tableau-agenda.vue-mois .div-row .col {
  width: calc((100% - (60px + 38px + 10px)) / 7);
}

.tableau-agenda.vue-mois .div-row .col.num_semaine {
  background-color: #dfdede;
  width: 38px;
  overflow: hidden;
}

.tableau-agenda.vue-mois .div-row .col.num_semaine .title {
  font-weight: 700;
}

.tableau-agenda .head {
  margin-bottom: 20px;
}

.tableau-agenda .head .libelle-mob {
  display: none;
}

@media screen and (max-width: 767px) {
  .tableau-agenda .head .libelle-mob {
    display: block;
  }
}

.tableau-agenda .div-head {
  font-size: 16px;
  background-color: #ffffff;
  border-radius: 4px;
  color: #004462;
  text-align: center;
  padding: 5px 10px;
  min-height: 34px;
  box-sizing: border-box;
  line-height: 24px;
}

.tableau-agenda .div-col {
  font-size: 16px;
  background-color: #ffffff;
  border-radius: 8px;
  margin-bottom: 10px;
}

.tableau-agenda .div-col.empty {
  background-color: transparent;
}

.tableau-agenda .div-col .title {
  color: #004462;
  text-align: center;
  padding: 10px;
  background-color: #dfdede;
  min-height: 44px;
  border-radius: 8px 8px 0 0;
  line-height: 24px;
  box-sizing: border-box;
}

.tableau-agenda .div-col .o-agenda-with-state {
  margin-bottom: 5px;
}

.tableau-agenda .div-col ul {
  padding: 10px 10px 20px;
  box-sizing: border-box;
  position: relative;
  height: calc(100% - 44px);
  min-height: 155px;
  display: flex;
  flex-direction: column;
}

.tableau-agenda .div-col li:not(.with-button) {
  font-size: 1.3rem;
  line-height: 1.8rem;
  font-weight: 400;
  -webkit-transition: background 0.3s;
  -o-transition: background 0.3s;
  transition: background 0.3s;
  letter-spacing: 0.01em;
  color: #004462;
  padding: 3px 10px;
  border-radius: 4px;
  border: 1px solid #dfdede;
  margin-bottom: 5px;
  cursor: pointer;
  position: relative;
  background-color: #ffffff;
}

.tableau-agenda .div-col li:not(.with-button):hover {
  background-color: #004462;
  color: #ffffff;
  border-color: #004462;
}

.tableau-agenda .div-col li:not(.with-button).with-state {
  border-color: #e05151;
  color: #e05151;
}

.tableau-agenda .div-col li:not(.with-button).with-state:hover {
  background-color: #e05151;
  color: #ffffff;
  border-color: #e05151;
}

.tableau-agenda .div-col li:not(.with-button) .inscrit:before {
  color: #82aa37;
  content: '\f058';
  font-size: 16px;
}

.tableau-agenda .div-col li:not(.with-button) .event-libelle {
  display: flex;
  gap: 0.5rem 1rem;
}

@media screen and (max-width: 767px) {
  .tableau-agenda .div-col li:not(.with-button) {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

.tableau-agenda .div-col li.with-button {
  margin-top: 10px;
  flex: 1;
  display: flex;
  align-items: flex-end;
}

.tableau-agenda .div-col li.with-button .showJournee {
  width: 100%;
  padding: 5px;
  min-height: auto;
}

.tableau-agenda .div-col .event--slot-first {
  position: relative;
  box-sizing: border-box;
  z-index: 1;
}

.tableau-agenda .div-col .event--slot-other {
  visibility: hidden;
  order: -1;
  box-sizing: border-box;
}

.tableau-agenda .div-col .event--slot-other + .event--slot-other {
  margin-top: 0 !important;
}

.tableau-agenda .div-col .showJournee {
  cursor: pointer;
}

#pop-up-month {
  max-width: 370px;
  position: absolute;
  width: 100%;
  padding: 15px;
  background-color: #004462;
  box-sizing: border-box;
  z-index: 2;
  border-radius: 10px;
}

#pop-up-month .changeMonth {
  font-size: 1.5rem;
  width: 25%;
  float: left;
  padding: 10px;
  background-color: transparent;
  border: 0;
  color: #ffffff;
  font-weight: 700;
}

#pop-up-month .changeMonth:hover {
  color: #82aa37;
}

@media screen and (max-width: 767px) {
  #pop-up-month {
    max-width: 290px;
  }
  #pop-up-month .changeMonth {
    float: none;
    padding: 5px 10px;
    width: 100%;
  }
}

.o-agenda-with-state {
  font-size: 1.4rem;
  line-height: 1.6rem;
  font-weight: 700;
  color: #e05151;
  display: block;
}

.with-state:hover .o-agenda-with-state {
  color: #ffffff;
}

/* ===================================================================
 * AGENDA sheet
 * =================================================================*/
.TPL_ORCAB_AGENDA .volet {
  background-color: #f8f8f8;
}

.c-agenda-sheet__top {
  display: flex;
  flex-flow: row wrap;
  gap: 30px;
}

@media screen and (min-width: 768px) {
  .c-agenda-sheet__info, .c-agenda-sheet__image-wrapper {
    width: calc(50% - 15px);
  }
}

.c-agenda-sheet__image-wrapper img {
  border-radius: 5px;
}

.c-agenda-sheet__title {
  color: black;
  margin-bottom: 30px;
  font-weight: 700;
}

.c-agenda-sheet__mb {
  margin-bottom: 50px;
}

.c-agenda-sheet__slot {
  padding: 15px 20px;
  border: 1px solid #e9e9e9;
  font-size: 1.4rem;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
}

.c-agenda-sheet h4 {
  color: black;
  margin-bottom: 20px;
}

@media (min-width: 375px) {
  .c-agenda-sheet h4 {
    font-size: 2.7rem;
    line-height: 2.9rem;
  }
}

.c-agenda-sheet .c-agenda__category-list {
  margin-top: 30px;
}

.c-agenda-sheet .o-agenda-etat--sheet {
  margin-bottom: 10px;
  display: inline-flex;
}

.c-agenda-sheet .btn-petit-bleu, .c-agenda-sheet .TPL_ORCAB_AGENDA .changeVue.active, .TPL_ORCAB_AGENDA .c-agenda-sheet .changeVue.active {
  color: #ffffff;
  text-decoration: none;
}

.s-editherm-info {
  margin-bottom: 50px;
}

@media screen and (max-width: 1024px) {
  .s-editherm-info {
    margin-bottom: 40px;
  }
}

.s-editherm-info__title {
  font-size: 3.2rem;
  line-height: 3.5rem;
  font-weight: 900;
  margin: 0 0 20px;
}

@media (max-width: 374px) {
  .s-editherm-info__title {
    font-size: 2.2rem;
    line-height: 2.4rem;
  }
}

.s-editherm-info__block {
  max-width: 1164px;
  width: 100%;
  padding: 60px;
  margin: 20px auto;
  border-radius: 5px;
  background: #545454;
  box-sizing: border-box;
}

@media screen and (max-width: 1024px) {
  .s-editherm-info__block {
    padding: 24px 16px;
  }
}

.s-editherm-info__subtitle {
  color: #ffffff;
  font-size: 2.7rem;
  font-weight: 700;
  line-height: 110%;
  margin-bottom: 30px;
}

@media screen and (max-width: 1024px) {
  .s-editherm-info__subtitle {
    font-size: 2rem;
  }
}

.s-editherm-info__inner {
  padding-right: 408px;
  background-position: top right;
  background-repeat: no-repeat;
  background-size: 358px;
  background-image: url(/build/images/editherm_white.a0b7e134.png);
}

@media screen and (max-width: 1024px) {
  .s-editherm-info__inner {
    padding-right: 0;
    background-position: bottom center;
    padding-bottom: 100px;
  }
}

@media screen and (max-width: 767px) {
  .s-editherm-info__inner {
    padding-bottom: 80px;
    background-size: 240px;
  }
}

.s-editherm-info__desc {
  color: #ffffff;
  font-size: 2.7rem;
  line-height: 110%;
  margin-bottom: 20px;
  margin-top: 0;
}

@media screen and (max-width: 1024px) {
  .s-editherm-info__desc {
    font-size: 1.8rem;
  }
}

.s-editherm-info__form form {
  padding: 0;
  margin: 0;
}

.s-editherm-info__form button[type="submit"] {
  font-weight: 700;
  letter-spacing: 0.84px;
  padding: 10px 36px;
}

/* ===================================================================
 * MES FAVORIS
 * =================================================================*/
@media screen and (max-width: 767px) {
  .TPL_ORCAB_MES_FAVORIS .form-recherche > div {
    margin-bottom: 0;
  }
}

.TPL_ORCAB_MES_FAVORIS .form-recherche > div > div {
  width: 50%;
}

.TPL_ORCAB_MES_FAVORIS .nombreDeListes {
  font-size: 3rem;
  font-weight: 700;
  color: #004462;
}

.TPL_ORCAB_MES_FAVORIS .liste-favoris {
  margin: 0 0 60px;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

.TPL_ORCAB_MES_FAVORIS .liste-detail {
  background: #fff;
  border-radius: 7px;
  margin-top: 20px;
  padding: 18px 20px 12px 100px;
  min-height: 80px;
  overflow: hidden;
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

@media (min-width: 1025px) {
  .TPL_ORCAB_MES_FAVORIS .liste-detail {
    width: 49%;
  }
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_MES_FAVORIS .liste-detail {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
}

.TPL_ORCAB_MES_FAVORIS .liste-detail::before {
  content: "\e945";
  font-size: 9.3rem;
  color: rgba(130, 170, 55, 0.2);
  left: -42px;
  position: absolute;
  top: -5px;
  pointer-events: none;
}

.TPL_ORCAB_MES_FAVORIS .liste-detail > div.libelle {
  width: 75%;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_MES_FAVORIS .liste-detail > div.libelle {
    width: 100%;
  }
}

.TPL_ORCAB_MES_FAVORIS .liste-detail .texte a {
  font-size: 2rem;
  color: #004462;
  font-weight: 700;
}

.TPL_ORCAB_MES_FAVORIS .liste-detail .type {
  font-size: 1.5rem;
}

.TPL_ORCAB_MES_FAVORIS .action .btn {
  height: 50px;
  text-indent: -9999px;
  width: 50px;
  position: relative;
  border: 0;
  vertical-align: top;
}

.TPL_ORCAB_MES_FAVORIS .action .btn:last-child {
  margin-right: 0;
}

.TPL_ORCAB_MES_FAVORIS .action .btn:before {
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  color: #fff;
  font-size: 1.25em;
  text-indent: 0;
}

.TPL_ORCAB_MES_FAVORIS .action .btn span {
  display: none;
}

.TPL_ORCAB_MES_FAVORIS .wrap-btn-action {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 16px;
}

.TPL_ORCAB_MES_FAVORIS .favori-edit {
  margin-bottom: 2px;
}

.TPL_ORCAB_MES_FAVORIS .btn.icomoon-cross {
  font-size: 1.2rem;
}

#favori-add.modal-orcab .footer {
  margin-top: 0;
}

/* ===================================================================
 * VOLET
 * =================================================================*/
.volet {
  background-color: #ffffff;
  padding: 60px 30px;
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  max-width: 96rem;
  height: 100%;
  z-index: 201;
  box-sizing: border-box;
}

.volet .custom-scrollbar {
  margin-bottom: 20px;
  padding-right: 30px;
}

.volet .actions {
  margin: 30px 0 0;
}

.volet .actions p {
  margin: 0 0 30px;
}

.volet .actions .bouton-vert, .volet .actions .form-submit button, .form-submit .volet .actions button,
.volet .actions .form-submit input[type="submit"], .form-submit .volet .actions input[type="submit"], .volet .actions .bouton-bleu, .volet .actions .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .volet .actions .btn-imprimer, .volet .actions .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .volet .actions .btn-imprimer, .volet .actions .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .volet .actions a.voir-produit, .volet .actions .materiel-print-btn a, .materiel-print-btn .volet .actions a, .volet .actions .materiel-planning-pdf a, .materiel-planning-pdf .volet .actions a, .volet .actions .bouton-gris, .volet .actions .bouton-rouge, .volet .actions .bouton-retour, .volet .actions .bouton-rechercher, .volet .actions .btn-ajouter-au-panier,
.volet .actions .btn-liste-achat-activate, .volet .actions .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .volet .actions a, .volet .actions .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .volet .actions .btn-ajouter-liste, .volet .actions .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .volet .actions .btn-submit {
  margin-bottom: 20px;
  box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  .volet .actions .bouton-vert, .volet .actions .form-submit button, .form-submit .volet .actions button,
  .volet .actions .form-submit input[type="submit"], .form-submit .volet .actions input[type="submit"], .volet .actions .bouton-bleu, .volet .actions .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer, .TPL_ORCAB_FICHE_RETOUR .form-submit .volet .actions .btn-imprimer, .volet .actions .lignes-retour-wrap .form-submit .btn-imprimer, .lignes-retour-wrap .form-submit .volet .actions .btn-imprimer, .volet .actions .TPL_COMPARATEUR .action a.voir-produit, .TPL_COMPARATEUR .action .volet .actions a.voir-produit, .volet .actions .materiel-print-btn a, .materiel-print-btn .volet .actions a, .volet .actions .materiel-planning-pdf a, .materiel-planning-pdf .volet .actions a, .volet .actions .bouton-gris, .volet .actions .bouton-rouge, .volet .actions .bouton-retour, .volet .actions .bouton-rechercher, .volet .actions .btn-ajouter-au-panier,
  .volet .actions .btn-liste-achat-activate, .volet .actions .ressources-associees li.lien-tous a, .ressources-associees li.lien-tous .volet .actions a, .volet .actions .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste, .liste-achat-plugin .ajouter-a-la-liste .volet .actions .btn-ajouter-liste, .volet .actions .TPL_FICHE_PRODUIT .btn-submit, .TPL_FICHE_PRODUIT .volet .actions .btn-submit {
    min-width: inherit;
  }
}

.volet .bouton-retour {
  margin-bottom: 50px;
  font-weight: 700;
  display: flex;
}

.volet .bouton-retour:before {
  font-size: 1rem;
  width: 20px;
  height: 20px;
  display: inline-block;
}

@media screen and (max-width: 1024px) {
  .volet .bouton-retour {
    width: auto;
    text-indent: 0;
    padding: 6px 10px;
  }
  .volet .bouton-retour:before {
    position: relative;
    transform: none;
    top: 0;
    left: 0;
  }
}

.volet .description {
  margin: 30px 0 0;
}

.volet .description img {
  border-radius: 5px;
}

.volet table {
  max-width: 100%;
  margin-top: 30px;
}

.volet table th {
  padding: 5px 0;
}

.volet table td {
  padding: 10px 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.volet .produits-associes {
  margin: 30px 0 20px;
}

.volet .liste-produits > li h2, .volet .liste-produits > li .TPL_FICHE_PRODUIT .titre-produit h1, .TPL_FICHE_PRODUIT .titre-produit .volet .liste-produits > li h1, .volet .liste-produits > li .fiche-adherent h1, .fiche-adherent .volet .liste-produits > li h1 {
  width: 100%;
}

.volet .liste-produits-item {
  padding: 5px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  border-radius: 5px;
}

@media (min-width: 1440px) {
  .volet .liste-produits > li {
    padding: 19px 10px 20px 15px;
  }
  .volet .liste-produits > li .ajout-comparateur,
  .volet .liste-produits > li .devis-bon-infos {
    right: 1rem;
  }
  .volet .liste-produits .image {
    max-width: 12.2rem;
    width: 100%;
  }
  .volet .liste-produits .produit-gauche {
    width: 50%;
  }
  .volet .liste-produits .produit-droite {
    width: 50%;
  }
  .volet .liste-produits .produit-code {
    width: 46%;
    margin-right: 4%;
  }
  .volet .liste-produits .produit-prix {
    width: 46%;
    margin-right: 4%;
  }
  .volet .liste-produits .produit-stock {
    width: 46%;
    margin-right: 4%;
    word-break: break-word;
  }
  .volet .liste-produits .produit-stock .stock-liste {
    width: 100%;
  }
  .volet .liste-produits .produit-actions {
    width: 50%;
    align-items: flex-start;
  }
  .volet .liste-produits .ajouter-produit-au-panier {
    flex-direction: column;
    align-items: center;
  }
  .volet .liste-produits .ajouter-produit-au-panier .box-panier {
    width: 100%;
  }
  .volet .liste-produits .ajouter-produit-au-panier .actions {
    width: 88%;
    padding-top: 0;
  }
}

.volet .liste {
  margin-top: 20px;
}

.volet .liste .item {
  margin-bottom: 20px;
  padding: 0 8px;
  background: #ffffff;
}

.volet .liste .item:has(> .bloc-actu) {
  background-color: transparent;
}

.volet .liste .thumbnail {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  border-radius: 5px;
}

.volet .liste .thumbnail > div {
  display: flex;
  flex-wrap: wrap;
}

.volet .liste .thumbnail .photos {
  width: 30%;
  padding-right: 2.5%;
  background-size: contain;
  background-repeat: no-repeat;
  box-sizing: border-box;
}

.volet .liste .thumbnail .photos .lienVignette {
  display: block;
}

.volet .liste .thumbnail .description {
  width: 70%;
  margin: 10px 0 0;
  box-sizing: border-box;
}

.volet .liste .thumbnail .description h4, .volet .liste .thumbnail .description p {
  margin: 0 0 10px;
}

.volet .liste .thumbnail .clear {
  flex-grow: 1;
  margin-bottom: 10px;
}

.volet .liste .thumbnail .savoirPlus {
  min-width: auto;
}

@media screen and (max-width: 767px) {
  .volet .liste .thumbnail > div {
    flex-direction: column;
  }
  .volet .liste .thumbnail .photos {
    width: 100% !important;
    height: 165px !important;
    padding: 0;
    background-position: center;
    background-size: cover;
  }
  .volet .liste .thumbnail .description {
    width: 100%;
    padding: 0 10px;
  }
}

.volet .lien-picto:hover {
  text-decoration: none;
  border-bottom: 1px solid #003160;
}

.volet .box-type-panier {
  margin-left: 0.8rem;
}

.volet .voletPanier__paniers .box-type-panier, .volet .voletListeAchat__listes .box-type-panier {
  max-width: 150px;
  width: 100%;
}

.volet .voletPanier__paniers .container-type-panier, .volet .voletListeAchat__listes .container-type-panier {
  margin-bottom: 5px;
}

.volet__title {
  font-weight: 700;
}

.promo-ACTION {
  cursor: pointer;
}

#volet-promo-action .photos {
  width: 199px;
  height: 98px;
  float: left;
}

#site-main.bg-opaque:after {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 68, 98, 0.9);
  -webkit-transition: opacity 0.3s;
  -o-transition: opacity 0.3s;
  transition: opacity 0.3s;
  z-index: 200;
}

/* ===================================================================
 * VOLET COMPTE
 * =================================================================*/
#volet-compte {
  font-size: 1.4rem;
}

#volet-compte .nom-login .volet-compte-nom-adh {
  display: block;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 3rem;
}

#volet-compte .nom-login .volet-compte-nom-adh1, #volet-compte .nom-login .volet-compte-nom-adh2 {
  margin-bottom: 1rem;
  display: inline-block;
}

#volet-compte .nom-login .volet-compte-identifiant {
  font-size: 1.6rem;
  line-height: 3rem;
}

#volet-compte .volet-compte-connectedAs {
  padding: 16px;
  border: 1px solid #cecece;
  border-radius: 5px;
  text-align: center;
  margin: 10px 0;
}

#volet-compte .volet-compte-connectedAs .se-connecter-header-info {
  color: #2b2b2b;
  font-weight: 700;
  font-size: 1.6rem;
  margin-bottom: 10px;
}

#volet-compte .lien-picto {
  color: #003160;
}

#volet-compte .lien-picto::before {
  content: "\e912";
  margin-right: 10px;
}

/* ===================================================================
 * VOLET FAVORIS
 * =================================================================*/
#volet-favoris {
  font-size: 1.4rem;
}

#volet-favoris .lien-picto {
  color: #003160;
}

#volet-favoris .lien-picto::before {
  content: "\e954";
  margin-right: 10px;
}

#volet-favoris .singleFavoris {
  padding: 16px;
  border: 1px solid #cecece;
  border-radius: 5px;
  margin-bottom: 10px;
}

#volet-favoris .singleFavoris .singleFavoris__type {
  display: block;
}

#volet-favoris .singleFavoris .singleFavoris__content {
  font-weight: 700;
  color: #003160;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  /* autoprefixer: off */
  -webkit-box-orient: vertical;
  /* autoprefixer: on */
}

/* ===================================================================
 * VOLET PRIX
 * =================================================================*/
#volet-prix .radio {
  margin-bottom: 10px;
}

#volet-prix .radio [type="radio"] + label {
  display: inline-block;
  font-size: 1.4rem;
}

#volet-prix .radio [type="radio"] + label::before {
  border-color: #cecece;
}

#volet-prix .radio [type="radio"]:checked + label:before {
  border-color: #82aa37;
}

/* ===================================================================
 * VOLET PRIX
 * =================================================================*/
#volet-paniers, #volet-listes-achat {
  font-size: 1.4rem;
}

#volet-paniers h4, #volet-listes-achat h4 {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 5px;
  line-height: 2.4rem;
}

#volet-paniers .btnVoletPanier, #volet-listes-achat .btnVoletPanier {
  padding: 10px 19px;
  color: #ffffff;
  display: inline-block;
  border: 0 none;
  border-radius: 5px;
  -webkit-appearance: none;
  font-size: 1.6rem;
  line-height: 2.2rem;
  font-weight: 700;
}

#volet-paniers .btnNouveauPanier, #volet-listes-achat .btnNouveauPanier {
  background-color: #82aa37;
}

#volet-paniers .btnNouveauPanier::before, #volet-listes-achat .btnNouveauPanier::before {
  content: "+";
  font-size: 2rem;
  margin-right: 10px;
}

#volet-paniers .btnPanierActif, #volet-listes-achat .btnPanierActif {
  background-color: #003160;
  margin-bottom: 30px;
}

#volet-paniers .btnPanierActif::before, #volet-listes-achat .btnPanierActif::before {
  content: "\e964";
  margin-right: 10px;
}

#volet-paniers .voletPanier__search, #volet-paniers .voletListeAchat__search, #volet-listes-achat .voletPanier__search, #volet-listes-achat .voletListeAchat__search {
  margin: 30px 0;
}

#volet-paniers .lien-picto, #volet-listes-achat .lien-picto {
  color: #003160;
}

#volet-paniers .lien-picto::after, #volet-listes-achat .lien-picto::after {
  content: "\e954";
  margin-left: 5px;
}

#volet-paniers .voletPanier__search div, #volet-paniers .voletListeAchat__search div, #volet-listes-achat .voletPanier__search div, #volet-listes-achat .voletListeAchat__search div {
  position: relative;
}

#volet-paniers .voletPanier__search div input, #volet-paniers .voletListeAchat__search div input, #volet-listes-achat .voletPanier__search div input, #volet-listes-achat .voletListeAchat__search div input {
  padding-right: 60px;
}

#volet-paniers .voletPanier__search div .btn, #volet-paniers .voletListeAchat__search div .btn, #volet-listes-achat .voletPanier__search div .btn, #volet-listes-achat .voletListeAchat__search div .btn {
  border: none;
  position: absolute;
  top: 8px;
  background-color: #ffffff;
}

#volet-paniers .voletPanier__search div .btn span, #volet-paniers .voletListeAchat__search div .btn span, #volet-listes-achat .voletPanier__search div .btn span, #volet-listes-achat .voletListeAchat__search div .btn span {
  display: none;
}

#volet-paniers .voletPanier__search div .btn-search, #volet-paniers .voletListeAchat__search div .btn-search, #volet-listes-achat .voletPanier__search div .btn-search, #volet-listes-achat .voletListeAchat__search div .btn-search {
  right: 2px;
  border-left: 1px solid #cecece;
}

#volet-paniers .voletPanier__search div .btn-search::before, #volet-paniers .voletListeAchat__search div .btn-search::before, #volet-listes-achat .voletPanier__search div .btn-search::before, #volet-listes-achat .voletListeAchat__search div .btn-search::before {
  content: "\e915";
  color: #003160;
  font-size: 2rem;
}

#volet-paniers .voletPanier__search div .btn-reset, #volet-paniers .voletListeAchat__search div .btn-reset, #volet-listes-achat .voletPanier__search div .btn-reset, #volet-listes-achat .voletListeAchat__search div .btn-reset {
  right: 35px;
  font-size: 1.7rem;
}

#volet-paniers .voletPanier__search div .btn-reset .icomoon:before, #volet-paniers .voletPanier__search div .btn-reset #bandeau-haut .show-tablet .btn:before, #bandeau-haut .show-tablet #volet-paniers .voletPanier__search div .btn-reset .btn:before, #volet-paniers .voletPanier__search div .btn-reset .favoris-btn-container a:before, .favoris-btn-container #volet-paniers .voletPanier__search div .btn-reset a:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie a:before, .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie #volet-paniers .voletPanier__search div .btn-reset a:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_ORCAB_LISTE_ACHAT .item-commande[data-type="2"]:before, .TPL_ORCAB_LISTE_ACHAT #volet-paniers .voletPanier__search div .btn-reset .item-commande[data-type="2"]:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_DIAPORAMA_ORCAB .carousel-action.play:before, .TPL_DIAPORAMA_ORCAB #volet-paniers .voletPanier__search div .btn-reset .carousel-action.play:before, #volet-paniers .voletPanier__search div .btn-reset .liste-produits .bouton-ajout-produit-liste:before, .liste-produits #volet-paniers .voletPanier__search div .btn-reset .bouton-ajout-produit-liste:before, #volet-paniers .voletPanier__search div .btn-reset .liste-produits .delete-product:before, .liste-produits #volet-paniers .voletPanier__search div .btn-reset .delete-product:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn:before, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container #volet-paniers .voletPanier__search div .btn-reset .btn:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .ico:before, .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette #volet-paniers .voletPanier__search div .btn-reset .ico:before, #volet-paniers .voletPanier__search div .btn-reset .materiel-form-container .btn-search span:before, .materiel-form-container .btn-search #volet-paniers .voletPanier__search div .btn-reset span:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-bleu:before, .TPL_TUNNEL .adresse-form-container #volet-paniers .voletPanier__search div .btn-reset .bouton-bleu:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit #volet-paniers .voletPanier__search div .btn-reset .btn-imprimer:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container #volet-paniers .voletPanier__search div .btn-reset .btn-imprimer:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit #volet-paniers .voletPanier__search div .btn-reset .btn-imprimer:before, #volet-paniers .voletPanier__search div .btn-reset .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container #volet-paniers .voletPanier__search div .btn-reset .btn-imprimer:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit:before, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action #volet-paniers .voletPanier__search div .btn-reset a.voir-produit:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit:before, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container #volet-paniers .voletPanier__search div .btn-reset a.voir-produit:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .materiel-print-btn a:before, .TPL_TUNNEL .adresse-form-container .materiel-print-btn #volet-paniers .voletPanier__search div .btn-reset a:before, #volet-paniers .voletPanier__search div .btn-reset .materiel-print-btn .TPL_TUNNEL .adresse-form-container a:before, .materiel-print-btn .TPL_TUNNEL .adresse-form-container #volet-paniers .voletPanier__search div .btn-reset a:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a:before, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf #volet-paniers .voletPanier__search div .btn-reset a:before, #volet-paniers .voletPanier__search div .btn-reset .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a:before, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container #volet-paniers .voletPanier__search div .btn-reset a:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-vert:before, .TPL_TUNNEL .adresse-form-container #volet-paniers .voletPanier__search div .btn-reset .bouton-vert:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .form-submit button:before, .TPL_TUNNEL .adresse-form-container .form-submit #volet-paniers .voletPanier__search div .btn-reset button:before, #volet-paniers .voletPanier__search div .btn-reset .form-submit .TPL_TUNNEL .adresse-form-container button:before, .form-submit .TPL_TUNNEL .adresse-form-container #volet-paniers .voletPanier__search div .btn-reset button:before,
#volet-paniers .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .form-submit input[type="submit"]:before, .TPL_TUNNEL .adresse-form-container .form-submit #volet-paniers .voletPanier__search div .btn-reset input[type="submit"]:before, #volet-paniers .voletPanier__search div .btn-reset .form-submit .TPL_TUNNEL .adresse-form-container input[type="submit"]:before, .form-submit .TPL_TUNNEL .adresse-form-container #volet-paniers .voletPanier__search div .btn-reset input[type="submit"]:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-gris:before, .TPL_TUNNEL .adresse-form-container #volet-paniers .voletPanier__search div .btn-reset .bouton-gris:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-rouge:before, .TPL_TUNNEL .adresse-form-container #volet-paniers .voletPanier__search div .btn-reset .bouton-rouge:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-retour:before, .TPL_TUNNEL .adresse-form-container #volet-paniers .voletPanier__search div .btn-reset .bouton-retour:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-rechercher:before, .TPL_TUNNEL .adresse-form-container #volet-paniers .voletPanier__search div .btn-reset .bouton-rechercher:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .btn-ajouter-au-panier:before, .TPL_TUNNEL .adresse-form-container #volet-paniers .voletPanier__search div .btn-reset .btn-ajouter-au-panier:before,
#volet-paniers .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .btn-liste-achat-activate:before, .TPL_TUNNEL .adresse-form-container #volet-paniers .voletPanier__search div .btn-reset .btn-liste-achat-activate:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous a:before, .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous #volet-paniers .voletPanier__search div .btn-reset a:before, #volet-paniers .voletPanier__search div .btn-reset .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container a:before, .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container #volet-paniers .voletPanier__search div .btn-reset a:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste:before, .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste #volet-paniers .voletPanier__search div .btn-reset .btn-ajouter-liste:before, #volet-paniers .voletPanier__search div .btn-reset .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .btn-ajouter-liste:before, .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container #volet-paniers .voletPanier__search div .btn-reset .btn-ajouter-liste:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .btn-submit:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT #volet-paniers .voletPanier__search div .btn-reset .btn-submit:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .btn-submit:before, .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container #volet-paniers .voletPanier__search div .btn-reset .btn-submit:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir #volet-paniers .voletPanier__search div .btn-reset a:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir #volet-paniers .voletPanier__search div .btn-reset button:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit #volet-paniers .voletPanier__search div .btn-reset a:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit #volet-paniers .voletPanier__search div .btn-reset button:before, #volet-paniers .voletPanier__search div .btn-reset .form-recherche-paniers-passes .form-submit button span:before, .form-recherche-paniers-passes .form-submit button #volet-paniers .voletPanier__search div .btn-reset span:before, #volet-paniers .voletPanier__search div .btn-reset .fiche-adherent__coordonnes p:before, .fiche-adherent__coordonnes #volet-paniers .voletPanier__search div .btn-reset p:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_ORCAB_AGENDA .changeVue:before, .TPL_ORCAB_AGENDA #volet-paniers .voletPanier__search div .btn-reset .changeVue:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_ORCAB_AGENDA .bouton-details:before, .TPL_ORCAB_AGENDA #volet-paniers .voletPanier__search div .btn-reset .bouton-details:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_LISTE_AGENDA_ACCUEIL .bloc-icone:before, .TPL_LISTE_AGENDA_ACCUEIL #volet-paniers .voletPanier__search div .btn-reset .bloc-icone:before, #volet-paniers .voletPanier__search div .btn-reset .c-agenda__bloc:before, #volet-paniers .voletPanier__search div .btn-reset .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-date:before, .TPL_ORCAB_FEED_ET_A_LA_UNE #volet-paniers .voletPanier__search div .btn-reset .feed-date:before, #volet-paniers .voletListeAchat__search div .btn-reset .icomoon:before, #volet-paniers .voletListeAchat__search div .btn-reset #bandeau-haut .show-tablet .btn:before, #bandeau-haut .show-tablet #volet-paniers .voletListeAchat__search div .btn-reset .btn:before, #volet-paniers .voletListeAchat__search div .btn-reset .favoris-btn-container a:before, .favoris-btn-container #volet-paniers .voletListeAchat__search div .btn-reset a:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie a:before, .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie #volet-paniers .voletListeAchat__search div .btn-reset a:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_ORCAB_LISTE_ACHAT .item-commande[data-type="2"]:before, .TPL_ORCAB_LISTE_ACHAT #volet-paniers .voletListeAchat__search div .btn-reset .item-commande[data-type="2"]:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_DIAPORAMA_ORCAB .carousel-action.play:before, .TPL_DIAPORAMA_ORCAB #volet-paniers .voletListeAchat__search div .btn-reset .carousel-action.play:before, #volet-paniers .voletListeAchat__search div .btn-reset .liste-produits .bouton-ajout-produit-liste:before, .liste-produits #volet-paniers .voletListeAchat__search div .btn-reset .bouton-ajout-produit-liste:before, #volet-paniers .voletListeAchat__search div .btn-reset .liste-produits .delete-product:before, .liste-produits #volet-paniers .voletListeAchat__search div .btn-reset .delete-product:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn:before, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container #volet-paniers .voletListeAchat__search div .btn-reset .btn:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .ico:before, .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette #volet-paniers .voletListeAchat__search div .btn-reset .ico:before, #volet-paniers .voletListeAchat__search div .btn-reset .materiel-form-container .btn-search span:before, .materiel-form-container .btn-search #volet-paniers .voletListeAchat__search div .btn-reset span:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-bleu:before, .TPL_TUNNEL .adresse-form-container #volet-paniers .voletListeAchat__search div .btn-reset .bouton-bleu:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit #volet-paniers .voletListeAchat__search div .btn-reset .btn-imprimer:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container #volet-paniers .voletListeAchat__search div .btn-reset .btn-imprimer:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit #volet-paniers .voletListeAchat__search div .btn-reset .btn-imprimer:before, #volet-paniers .voletListeAchat__search div .btn-reset .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container #volet-paniers .voletListeAchat__search div .btn-reset .btn-imprimer:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit:before, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action #volet-paniers .voletListeAchat__search div .btn-reset a.voir-produit:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit:before, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container #volet-paniers .voletListeAchat__search div .btn-reset a.voir-produit:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .materiel-print-btn a:before, .TPL_TUNNEL .adresse-form-container .materiel-print-btn #volet-paniers .voletListeAchat__search div .btn-reset a:before, #volet-paniers .voletListeAchat__search div .btn-reset .materiel-print-btn .TPL_TUNNEL .adresse-form-container a:before, .materiel-print-btn .TPL_TUNNEL .adresse-form-container #volet-paniers .voletListeAchat__search div .btn-reset a:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a:before, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf #volet-paniers .voletListeAchat__search div .btn-reset a:before, #volet-paniers .voletListeAchat__search div .btn-reset .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a:before, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container #volet-paniers .voletListeAchat__search div .btn-reset a:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-vert:before, .TPL_TUNNEL .adresse-form-container #volet-paniers .voletListeAchat__search div .btn-reset .bouton-vert:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .form-submit button:before, .TPL_TUNNEL .adresse-form-container .form-submit #volet-paniers .voletListeAchat__search div .btn-reset button:before, #volet-paniers .voletListeAchat__search div .btn-reset .form-submit .TPL_TUNNEL .adresse-form-container button:before, .form-submit .TPL_TUNNEL .adresse-form-container #volet-paniers .voletListeAchat__search div .btn-reset button:before,
#volet-paniers .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .form-submit input[type="submit"]:before, .TPL_TUNNEL .adresse-form-container .form-submit #volet-paniers .voletListeAchat__search div .btn-reset input[type="submit"]:before, #volet-paniers .voletListeAchat__search div .btn-reset .form-submit .TPL_TUNNEL .adresse-form-container input[type="submit"]:before, .form-submit .TPL_TUNNEL .adresse-form-container #volet-paniers .voletListeAchat__search div .btn-reset input[type="submit"]:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-gris:before, .TPL_TUNNEL .adresse-form-container #volet-paniers .voletListeAchat__search div .btn-reset .bouton-gris:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-rouge:before, .TPL_TUNNEL .adresse-form-container #volet-paniers .voletListeAchat__search div .btn-reset .bouton-rouge:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-retour:before, .TPL_TUNNEL .adresse-form-container #volet-paniers .voletListeAchat__search div .btn-reset .bouton-retour:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-rechercher:before, .TPL_TUNNEL .adresse-form-container #volet-paniers .voletListeAchat__search div .btn-reset .bouton-rechercher:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .btn-ajouter-au-panier:before, .TPL_TUNNEL .adresse-form-container #volet-paniers .voletListeAchat__search div .btn-reset .btn-ajouter-au-panier:before,
#volet-paniers .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .btn-liste-achat-activate:before, .TPL_TUNNEL .adresse-form-container #volet-paniers .voletListeAchat__search div .btn-reset .btn-liste-achat-activate:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous a:before, .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous #volet-paniers .voletListeAchat__search div .btn-reset a:before, #volet-paniers .voletListeAchat__search div .btn-reset .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container a:before, .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container #volet-paniers .voletListeAchat__search div .btn-reset a:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste:before, .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste #volet-paniers .voletListeAchat__search div .btn-reset .btn-ajouter-liste:before, #volet-paniers .voletListeAchat__search div .btn-reset .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .btn-ajouter-liste:before, .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container #volet-paniers .voletListeAchat__search div .btn-reset .btn-ajouter-liste:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .btn-submit:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT #volet-paniers .voletListeAchat__search div .btn-reset .btn-submit:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .btn-submit:before, .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container #volet-paniers .voletListeAchat__search div .btn-reset .btn-submit:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir #volet-paniers .voletListeAchat__search div .btn-reset a:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir #volet-paniers .voletListeAchat__search div .btn-reset button:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit #volet-paniers .voletListeAchat__search div .btn-reset a:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit #volet-paniers .voletListeAchat__search div .btn-reset button:before, #volet-paniers .voletListeAchat__search div .btn-reset .form-recherche-paniers-passes .form-submit button span:before, .form-recherche-paniers-passes .form-submit button #volet-paniers .voletListeAchat__search div .btn-reset span:before, #volet-paniers .voletListeAchat__search div .btn-reset .fiche-adherent__coordonnes p:before, .fiche-adherent__coordonnes #volet-paniers .voletListeAchat__search div .btn-reset p:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_ORCAB_AGENDA .changeVue:before, .TPL_ORCAB_AGENDA #volet-paniers .voletListeAchat__search div .btn-reset .changeVue:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_ORCAB_AGENDA .bouton-details:before, .TPL_ORCAB_AGENDA #volet-paniers .voletListeAchat__search div .btn-reset .bouton-details:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_LISTE_AGENDA_ACCUEIL .bloc-icone:before, .TPL_LISTE_AGENDA_ACCUEIL #volet-paniers .voletListeAchat__search div .btn-reset .bloc-icone:before, #volet-paniers .voletListeAchat__search div .btn-reset .c-agenda__bloc:before, #volet-paniers .voletListeAchat__search div .btn-reset .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-date:before, .TPL_ORCAB_FEED_ET_A_LA_UNE #volet-paniers .voletListeAchat__search div .btn-reset .feed-date:before, #volet-listes-achat .voletPanier__search div .btn-reset .icomoon:before, #volet-listes-achat .voletPanier__search div .btn-reset #bandeau-haut .show-tablet .btn:before, #bandeau-haut .show-tablet #volet-listes-achat .voletPanier__search div .btn-reset .btn:before, #volet-listes-achat .voletPanier__search div .btn-reset .favoris-btn-container a:before, .favoris-btn-container #volet-listes-achat .voletPanier__search div .btn-reset a:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie a:before, .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie #volet-listes-achat .voletPanier__search div .btn-reset a:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_ORCAB_LISTE_ACHAT .item-commande[data-type="2"]:before, .TPL_ORCAB_LISTE_ACHAT #volet-listes-achat .voletPanier__search div .btn-reset .item-commande[data-type="2"]:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_DIAPORAMA_ORCAB .carousel-action.play:before, .TPL_DIAPORAMA_ORCAB #volet-listes-achat .voletPanier__search div .btn-reset .carousel-action.play:before, #volet-listes-achat .voletPanier__search div .btn-reset .liste-produits .bouton-ajout-produit-liste:before, .liste-produits #volet-listes-achat .voletPanier__search div .btn-reset .bouton-ajout-produit-liste:before, #volet-listes-achat .voletPanier__search div .btn-reset .liste-produits .delete-product:before, .liste-produits #volet-listes-achat .voletPanier__search div .btn-reset .delete-product:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn:before, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container #volet-listes-achat .voletPanier__search div .btn-reset .btn:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .ico:before, .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette #volet-listes-achat .voletPanier__search div .btn-reset .ico:before, #volet-listes-achat .voletPanier__search div .btn-reset .materiel-form-container .btn-search span:before, .materiel-form-container .btn-search #volet-listes-achat .voletPanier__search div .btn-reset span:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-bleu:before, .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletPanier__search div .btn-reset .bouton-bleu:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit #volet-listes-achat .voletPanier__search div .btn-reset .btn-imprimer:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletPanier__search div .btn-reset .btn-imprimer:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit #volet-listes-achat .voletPanier__search div .btn-reset .btn-imprimer:before, #volet-listes-achat .voletPanier__search div .btn-reset .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletPanier__search div .btn-reset .btn-imprimer:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit:before, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action #volet-listes-achat .voletPanier__search div .btn-reset a.voir-produit:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit:before, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletPanier__search div .btn-reset a.voir-produit:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .materiel-print-btn a:before, .TPL_TUNNEL .adresse-form-container .materiel-print-btn #volet-listes-achat .voletPanier__search div .btn-reset a:before, #volet-listes-achat .voletPanier__search div .btn-reset .materiel-print-btn .TPL_TUNNEL .adresse-form-container a:before, .materiel-print-btn .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletPanier__search div .btn-reset a:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a:before, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf #volet-listes-achat .voletPanier__search div .btn-reset a:before, #volet-listes-achat .voletPanier__search div .btn-reset .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a:before, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletPanier__search div .btn-reset a:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-vert:before, .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletPanier__search div .btn-reset .bouton-vert:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .form-submit button:before, .TPL_TUNNEL .adresse-form-container .form-submit #volet-listes-achat .voletPanier__search div .btn-reset button:before, #volet-listes-achat .voletPanier__search div .btn-reset .form-submit .TPL_TUNNEL .adresse-form-container button:before, .form-submit .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletPanier__search div .btn-reset button:before,
#volet-listes-achat .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .form-submit input[type="submit"]:before, .TPL_TUNNEL .adresse-form-container .form-submit #volet-listes-achat .voletPanier__search div .btn-reset input[type="submit"]:before, #volet-listes-achat .voletPanier__search div .btn-reset .form-submit .TPL_TUNNEL .adresse-form-container input[type="submit"]:before, .form-submit .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletPanier__search div .btn-reset input[type="submit"]:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-gris:before, .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletPanier__search div .btn-reset .bouton-gris:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-rouge:before, .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletPanier__search div .btn-reset .bouton-rouge:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-retour:before, .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletPanier__search div .btn-reset .bouton-retour:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-rechercher:before, .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletPanier__search div .btn-reset .bouton-rechercher:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .btn-ajouter-au-panier:before, .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletPanier__search div .btn-reset .btn-ajouter-au-panier:before,
#volet-listes-achat .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .btn-liste-achat-activate:before, .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletPanier__search div .btn-reset .btn-liste-achat-activate:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous a:before, .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous #volet-listes-achat .voletPanier__search div .btn-reset a:before, #volet-listes-achat .voletPanier__search div .btn-reset .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container a:before, .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletPanier__search div .btn-reset a:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste:before, .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste #volet-listes-achat .voletPanier__search div .btn-reset .btn-ajouter-liste:before, #volet-listes-achat .voletPanier__search div .btn-reset .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .btn-ajouter-liste:before, .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletPanier__search div .btn-reset .btn-ajouter-liste:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .btn-submit:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT #volet-listes-achat .voletPanier__search div .btn-reset .btn-submit:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .btn-submit:before, .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletPanier__search div .btn-reset .btn-submit:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir #volet-listes-achat .voletPanier__search div .btn-reset a:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir #volet-listes-achat .voletPanier__search div .btn-reset button:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit #volet-listes-achat .voletPanier__search div .btn-reset a:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit #volet-listes-achat .voletPanier__search div .btn-reset button:before, #volet-listes-achat .voletPanier__search div .btn-reset .form-recherche-paniers-passes .form-submit button span:before, .form-recherche-paniers-passes .form-submit button #volet-listes-achat .voletPanier__search div .btn-reset span:before, #volet-listes-achat .voletPanier__search div .btn-reset .fiche-adherent__coordonnes p:before, .fiche-adherent__coordonnes #volet-listes-achat .voletPanier__search div .btn-reset p:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_ORCAB_AGENDA .changeVue:before, .TPL_ORCAB_AGENDA #volet-listes-achat .voletPanier__search div .btn-reset .changeVue:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_ORCAB_AGENDA .bouton-details:before, .TPL_ORCAB_AGENDA #volet-listes-achat .voletPanier__search div .btn-reset .bouton-details:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_LISTE_AGENDA_ACCUEIL .bloc-icone:before, .TPL_LISTE_AGENDA_ACCUEIL #volet-listes-achat .voletPanier__search div .btn-reset .bloc-icone:before, #volet-listes-achat .voletPanier__search div .btn-reset .c-agenda__bloc:before, #volet-listes-achat .voletPanier__search div .btn-reset .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-date:before, .TPL_ORCAB_FEED_ET_A_LA_UNE #volet-listes-achat .voletPanier__search div .btn-reset .feed-date:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .icomoon:before, #volet-listes-achat .voletListeAchat__search div .btn-reset #bandeau-haut .show-tablet .btn:before, #bandeau-haut .show-tablet #volet-listes-achat .voletListeAchat__search div .btn-reset .btn:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .favoris-btn-container a:before, .favoris-btn-container #volet-listes-achat .voletListeAchat__search div .btn-reset a:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie a:before, .TPL_LOGIN .bloc-client-login .lien-mots-de-passe-oublie #volet-listes-achat .voletListeAchat__search div .btn-reset a:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_ORCAB_LISTE_ACHAT .item-commande[data-type="2"]:before, .TPL_ORCAB_LISTE_ACHAT #volet-listes-achat .voletListeAchat__search div .btn-reset .item-commande[data-type="2"]:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_DIAPORAMA_ORCAB .carousel-action.play:before, .TPL_DIAPORAMA_ORCAB #volet-listes-achat .voletListeAchat__search div .btn-reset .carousel-action.play:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .liste-produits .bouton-ajout-produit-liste:before, .liste-produits #volet-listes-achat .voletListeAchat__search div .btn-reset .bouton-ajout-produit-liste:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .liste-produits .delete-product:before, .liste-produits #volet-listes-achat .voletListeAchat__search div .btn-reset .delete-product:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container .btn:before, .TPL_ORCAB_LISTE_ETIQUETTE .etiquette-memorise-container #volet-listes-achat .voletListeAchat__search div .btn-reset .btn:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette .ico:before, .TPL_ORCAB_LISTE_ETIQUETTE .ligne-etiquette #volet-listes-achat .voletListeAchat__search div .btn-reset .ico:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .materiel-form-container .btn-search span:before, .materiel-form-container .btn-search #volet-listes-achat .voletListeAchat__search div .btn-reset span:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-bleu:before, .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletListeAchat__search div .btn-reset .bouton-bleu:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .TPL_ORCAB_FICHE_RETOUR .form-submit #volet-listes-achat .voletListeAchat__search div .btn-reset .btn-imprimer:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .TPL_ORCAB_FICHE_RETOUR .form-submit .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletListeAchat__search div .btn-reset .btn-imprimer:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit .btn-imprimer:before, .TPL_TUNNEL .adresse-form-container .lignes-retour-wrap .form-submit #volet-listes-achat .voletListeAchat__search div .btn-reset .btn-imprimer:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container .btn-imprimer:before, .lignes-retour-wrap .form-submit .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletListeAchat__search div .btn-reset .btn-imprimer:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action a.voir-produit:before, .TPL_TUNNEL .adresse-form-container .TPL_COMPARATEUR .action #volet-listes-achat .voletListeAchat__search div .btn-reset a.voir-produit:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container a.voir-produit:before, .TPL_COMPARATEUR .action .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletListeAchat__search div .btn-reset a.voir-produit:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .materiel-print-btn a:before, .TPL_TUNNEL .adresse-form-container .materiel-print-btn #volet-listes-achat .voletListeAchat__search div .btn-reset a:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .materiel-print-btn .TPL_TUNNEL .adresse-form-container a:before, .materiel-print-btn .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletListeAchat__search div .btn-reset a:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf a:before, .TPL_TUNNEL .adresse-form-container .materiel-planning-pdf #volet-listes-achat .voletListeAchat__search div .btn-reset a:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container a:before, .materiel-planning-pdf .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletListeAchat__search div .btn-reset a:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-vert:before, .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletListeAchat__search div .btn-reset .bouton-vert:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .form-submit button:before, .TPL_TUNNEL .adresse-form-container .form-submit #volet-listes-achat .voletListeAchat__search div .btn-reset button:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .form-submit .TPL_TUNNEL .adresse-form-container button:before, .form-submit .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletListeAchat__search div .btn-reset button:before,
#volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .form-submit input[type="submit"]:before, .TPL_TUNNEL .adresse-form-container .form-submit #volet-listes-achat .voletListeAchat__search div .btn-reset input[type="submit"]:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .form-submit .TPL_TUNNEL .adresse-form-container input[type="submit"]:before, .form-submit .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletListeAchat__search div .btn-reset input[type="submit"]:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-gris:before, .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletListeAchat__search div .btn-reset .bouton-gris:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-rouge:before, .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletListeAchat__search div .btn-reset .bouton-rouge:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-retour:before, .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletListeAchat__search div .btn-reset .bouton-retour:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .bouton-rechercher:before, .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletListeAchat__search div .btn-reset .bouton-rechercher:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .btn-ajouter-au-panier:before, .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletListeAchat__search div .btn-reset .btn-ajouter-au-panier:before,
#volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .btn-liste-achat-activate:before, .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletListeAchat__search div .btn-reset .btn-liste-achat-activate:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous a:before, .TPL_TUNNEL .adresse-form-container .ressources-associees li.lien-tous #volet-listes-achat .voletListeAchat__search div .btn-reset a:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container a:before, .ressources-associees li.lien-tous .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletListeAchat__search div .btn-reset a:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste .btn-ajouter-liste:before, .TPL_TUNNEL .adresse-form-container .liste-achat-plugin .ajouter-a-la-liste #volet-listes-achat .voletListeAchat__search div .btn-reset .btn-ajouter-liste:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container .btn-ajouter-liste:before, .liste-achat-plugin .ajouter-a-la-liste .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletListeAchat__search div .btn-reset .btn-ajouter-liste:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT .btn-submit:before, .TPL_TUNNEL .adresse-form-container .TPL_FICHE_PRODUIT #volet-listes-achat .voletListeAchat__search div .btn-reset .btn-submit:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container .btn-submit:before, .TPL_FICHE_PRODUIT .TPL_TUNNEL .adresse-form-container #volet-listes-achat .voletListeAchat__search div .btn-reset .btn-submit:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir #volet-listes-achat .voletListeAchat__search div .btn-reset a:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .btn-fondnoir #volet-listes-achat .voletListeAchat__search div .btn-reset button:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit a:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit #volet-listes-achat .voletListeAchat__search div .btn-reset a:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit button:before, .TPL_ORCAB_PANIERS .creationPanierAdresse .form-submit #volet-listes-achat .voletListeAchat__search div .btn-reset button:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .form-recherche-paniers-passes .form-submit button span:before, .form-recherche-paniers-passes .form-submit button #volet-listes-achat .voletListeAchat__search div .btn-reset span:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .fiche-adherent__coordonnes p:before, .fiche-adherent__coordonnes #volet-listes-achat .voletListeAchat__search div .btn-reset p:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_ORCAB_AGENDA .changeVue:before, .TPL_ORCAB_AGENDA #volet-listes-achat .voletListeAchat__search div .btn-reset .changeVue:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_ORCAB_AGENDA .bouton-details:before, .TPL_ORCAB_AGENDA #volet-listes-achat .voletListeAchat__search div .btn-reset .bouton-details:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_LISTE_AGENDA_ACCUEIL .bloc-icone:before, .TPL_LISTE_AGENDA_ACCUEIL #volet-listes-achat .voletListeAchat__search div .btn-reset .bloc-icone:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .c-agenda__bloc:before, #volet-listes-achat .voletListeAchat__search div .btn-reset .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-date:before, .TPL_ORCAB_FEED_ET_A_LA_UNE #volet-listes-achat .voletListeAchat__search div .btn-reset .feed-date:before {
  color: #545454;
}

#volet-paniers .voletPanier__listePanier a, #volet-paniers .voletListeAchat__listeAchat a, #volet-listes-achat .voletPanier__listePanier a, #volet-listes-achat .voletListeAchat__listeAchat a {
  color: #003160;
}

#volet-paniers .voletPanier__listePanier a span, #volet-paniers .voletListeAchat__listeAchat a span, #volet-listes-achat .voletPanier__listePanier a span, #volet-listes-achat .voletListeAchat__listeAchat a span {
  color: #868686;
}

#volet-paniers a.voletPanier__locked, #volet-listes-achat a.voletPanier__locked {
  color: #868686;
}

#volet-paniers a.voletPanier__locked::before, #volet-listes-achat a.voletPanier__locked::before {
  content: "\e914";
  margin-right: 10px;
}

#volet-paniers .voletPanier__paniers, #volet-paniers .voletPanier__paniersPartages, #volet-paniers .voletPanier__paniersAValider, #volet-paniers .voletListeAchat__listes, #volet-paniers .voletListeAchat__listesPartages, #volet-listes-achat .voletPanier__paniers, #volet-listes-achat .voletPanier__paniersPartages, #volet-listes-achat .voletPanier__paniersAValider, #volet-listes-achat .voletListeAchat__listes, #volet-listes-achat .voletListeAchat__listesPartages {
  margin-bottom: 30px;
}

.container-type-panier {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
}

.fa-chevron-double-right::before {
  font-weight: bold;
  color: #0e90d2;
  margin-right: 5px;
  content: "\f101";
}

/* ===================================================================
 * VOLET HEAD
 * =================================================================*/
.volet-header {
  max-width: 445px;
  padding: 0;
  z-index: 9999999;
}

.volet-header .volet-inner {
  display: flex;
  position: relative;
  height: 100%;
}

.volet-header .contenu {
  padding: 30px;
  flex: 1;
  margin: 0;
  height: 100%;
  position: relative;
}

.volet-header h3 {
  margin-bottom: 3rem;
  font-size: 2.7rem;
  line-height: 1;
  clear: both;
  font-weight: 700;
}

.volet-header .nav {
  background-color: #e9e9e9;
  display: flex;
  flex-direction: column;
  width: 7.2rem;
}

.volet-header .nav-link {
  width: 100%;
  height: 7.2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 3.2rem;
  color: #003160;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
}

.volet-header .nav .active .nav-link {
  background-color: #cecece;
}

.volet-header .volet-titreEtLien {
  display: flex;
  justify-content: space-between;
}

.volet-header .inner-content {
  padding: 0;
}

.volet-header ul.niv1 {
  margin-top: 20px;
}

.volet-header ul.niv1 li {
  margin-bottom: 5px;
}

.volet-header ul.niv1 li a {
  color: #003160;
  font-weight: 700;
}

.volet-header .toast {
  animation: none;
  box-shadow: none;
  box-sizing: border-box;
  width: 100%;
  padding: 16px 16px 16px 56px;
}

.volet-header .toast button.notification-mark-as-read {
  display: none;
  -webkit-appearance: none;
  border: none;
  background-color: white;
  font-size: 2rem;
  text-align: center;
}

.volet-header .toast.not-read {
  display: inline-block;
}

.volet-header .toast.not-read .toast-message, .volet-header .toast.not-read .toast-time {
  width: 80%;
  float: left;
}

.volet-header .toast.not-read button.notification-mark-as-read {
  display: inline-block;
  width: 20%;
}

.volet-header .hide-volet-header {
  width: 4rem;
  height: 4rem;
  margin-bottom: 0.8rem;
  background-color: #ffffff;
  border: 1px solid #cecece;
  border-radius: 0.8rem;
  display: block;
  margin-left: auto;
}

.volet-header .hide-volet-header i {
  font-size: 1rem;
  color: #000000;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .volet-header {
    max-width: 100%;
  }
  .volet-header .contenu {
    padding: 10px 20px;
  }
  .volet-header .hide-volet-header {
    right: 20px;
  }
  .volet-header .nav {
    width: 6rem;
  }
  .volet-header .nav-link {
    height: 6rem;
    font-size: 2.6rem;
  }
}

/* ===================================================================
 * TEMPLATE FEED ACTUALITES ACCUEIL
 * =================================================================*/
.TPL_ORCAB_FEED_ET_A_LA_UNE {
  margin-bottom: 70px;
  display: flex;
  flex-flow: row-reverse wrap;
  align-items: flex-start;
}

@media screen and (max-width: 1024px) {
  .TPL_ORCAB_FEED_ET_A_LA_UNE {
    margin-bottom: 60px;
    justify-content: space-between;
  }
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_FEED_ET_A_LA_UNE {
    flex-direction: column;
    gap: 20px;
  }
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .feed-primary {
  width: 59.04436860068259%;
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .feed-primary-inner {
  display: flex;
  flex-flow: row wrap;
  gap: 30px 3.58381502890174%;
}

@media screen and (max-width: 1024px) {
  .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-primary-inner {
    gap: 15px;
  }
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .feed-primary-element {
  width: 48.20809248554913%;
  position: relative;
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .feed-primary-element:nth-child(3n) {
  width: 100%;
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .feed-primary .feed-une-img {
  margin-bottom: 20px;
  line-height: 0;
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .feed-primary .feed-une-img img {
  border-radius: 5px;
}

@media screen and (max-width: 1024px) {
  .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-primary .feed-une-img {
    overflow: hidden;
  }
  .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-primary .feed-une-img img {
    width: 100%;
    object-fit: cover;
  }
}

@media screen and (max-width: 1170px) {
  .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-primary {
    width: 40.46610169491525%;
  }
  .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-primary-element {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-primary {
    width: 100%;
  }
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .feed-secondary {
  width: 40.95563139931741%;
  padding-right: 30px;
  box-sizing: border-box;
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .feed-secondary img {
  border-radius: 5px;
}

@media screen and (max-width: 1170px) {
  .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-secondary {
    width: 59.53389830508475%;
    padding-right: 20px;
  }
}

@media screen and (max-width: 1024px) {
  .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-secondary {
    width: 57.41525423728814%;
  }
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-secondary {
    width: 100%;
    padding-right: 0;
  }
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .feed-item {
  border: 1px solid #cecece;
  border-radius: 8px;
  padding: 5px 10px 5px 5px;
  display: none;
  position: relative;
  gap: 20px;
  margin-bottom: 20px;
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .feed-item.shown {
  display: flex;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-item {
    padding: 15px;
  }
}

@media screen and (max-width: 410px) {
  .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-item {
    flex-direction: column;
  }
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .feed-img {
  width: 150px;
}

@media screen and (max-width: 410px) {
  .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-img {
    width: 100%;
  }
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .feed-detail {
  flex: 1;
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .feed-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 5px;
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .feed-type {
  padding: 2px 8px;
  font-size: 1.3rem;
  line-height: 1.8rem;
  border-radius: 13px;
  margin-bottom: 5px;
  color: #ffffff;
  background-color: #545454;
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .feed-affichage, .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-description {
  font-size: 1.3rem;
  line-height: 1.8rem;
  margin-bottom: 5px;
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .feed-affichage p, .TPL_ORCAB_FEED_ET_A_LA_UNE .feed-description p {
  margin-bottom: 0;
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .feed-date {
  font-size: 1.4rem;
  line-height: 2rem;
  padding-left: 2.6rem;
  position: relative;
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .feed-date:before {
  content: '\e984';
  font-size: 1.6rem;
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  color: #003160;
  left: 0;
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .subtitle {
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0 0 20px;
}

@media screen and (max-width: 767px) {
  .TPL_ORCAB_FEED_ET_A_LA_UNE .subtitle {
    margin-bottom: 15px;
  }
}

.TPL_ORCAB_FEED_ET_A_LA_UNE h3 {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 5px;
}

.TPL_ORCAB_FEED_ET_A_LA_UNE h3 a {
  color: #003160;
}

.TPL_ORCAB_FEED_ET_A_LA_UNE h3 a::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.TPL_ORCAB_FEED_ET_A_LA_UNE section {
  margin-bottom: 30px;
}

.TPL_ORCAB_FEED_ET_A_LA_UNE .pastille {
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 5px 0 0 0;
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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L0Q7O0FNMWdCQTtFQUErQyxnQkFBZ0I7QU44Z0IvRDs7QU03Z0JBO0VBQStDLGdCQUFnQjtBTmloQi9EOztBTWhoQkE7RUFBK0MsZ0JBQWdCO0FOb2hCL0Q7O0FNbmhCQTtFQUErQyxnQkFBZ0I7QU51aEIvRDs7QU10aEJBO0VBQStDLGdCQUFnQjtBTjBoQi9EOztBTXpoQkE7RUFBK0MsZ0JBQWdCO0FONmhCL0Q7O0FNNWhCQTtFQUErQyxnQkFBZ0I7QU5naUIvRDs7QU0vaEJBO0VBQStDLGdCQUFnQjtBTm1pQi9EOztBTWxpQkE7RUFBK0MsZ0JBQWdCO0FOc2lCL0Q7O0FNcmlCQTtFQUErQyxnQkFBZ0I7QU55aUIvRDs7QU14aUJBO0VBQStDLGdCQUFnQjtBTjRpQi9EOztBTTNpQkE7RUFBK0MsZ0JBQWdCO0FOK2lCL0Q7O0FNOWlCQTtFQUErQyxnQkFBZ0I7QU5rakIvRDs7QU1qakJBO0VBQStDLGdCQUFnQjtBTnFqQi9EOztBTXBqQkE7RUFBK0MsZ0JBQWdCO0FOd2pCL0Q7O0FNdmpCQTtFQUErQyxnQkFBZ0I7QU4yakIvRDs7QU0xakJBO0VBQStDLGdCQUFnQjtBTjhqQi9EOztBTTdqQkE7RUFBK0MsZ0JBQWdCO0FOaWtCL0Q7O0FNaGtCQTtFQUErQyxnQkFBZ0I7QU5va0IvRDs7QU1ua0JBO0VBQStDLGdCQUFnQjtBTnVrQi9EOztBTXRrQkE7RUFBK0MsZ0JBQWdCO0FOMGtCL0Q7O0FNemtCQTtFQUErQyxnQkFBZ0I7QU42a0IvRDs7QU01a0JBO0VBQStDLGdCQUFnQjtBTmdsQi9EOztBTS9rQkE7RUFBK0MsZ0JBQWdCO0FObWxCL0Q7O0FNbGxCQTtFQUErQyxnQkFBZ0I7QU5zbEIvRDs7QU1ybEJBO0VBQStDLGdCQUFnQjtBTnlsQi9EOztBTXhsQkE7RUFBK0MsZ0JBQWdCO0FONGxCL0Q7O0FNM2xCQTtFQUErQyxnQkFBZ0I7QU4rbEIvRDs7QU05bEJBO0VBQStDLGdCQUFnQjtBTmttQi9EOztBTWptQkE7RUFBK0MsZ0JBQWdCO0FOcW1CL0Q7O0FNcG1CQTtFQUErQyxnQkFBZ0I7QU53bUIvRDs7QU12bUJBO0VBQStDLGdCQUFnQjtBTjJtQi9EOztBTTFtQkE7RUFBK0MsZ0JBQWdCO0FOOG1CL0Q7O0FNN21CQTtFQUErQyxnQkFBZ0I7QU5pbkIvRDs7QU1obkJBO0VBQStDLGdCQUFnQjtBTm9uQi9EOztBTW5uQkE7RUFBK0MsZ0JBQWdCO0FOdW5CL0Q7O0FNdG5CQTtFQUErQyxnQkFBZ0I7QU4wbkIvRDs7QU16bkJBO0VBQStDLGdCQUFnQjtBTjZuQi9EOztBTTVuQkE7RUFBK0MsZ0JBQWdCO0FOZ29CL0Q7O0FNL25CQTtFQUErQyxnQkFBZ0I7QU5tb0IvRDs7QU1sb0JBO0VBQStDLGdCQUFnQjtBTnNvQi9EOztBTXJvQkE7RUFBK0MsZ0JBQWdCO0FOeW9CL0Q7O0FNeG9CQTtFQUErQyxnQkFBZ0I7QU40b0IvRDs7QU0zb0JBO0VBQStDLGdCQUFnQjtBTitvQi9EOztBTTlvQkE7RUFBK0MsZ0JBQWdCO0FOa3BCL0Q7O0FNanBCQTtFQUErQyxnQkFBZ0I7QU5xcEIvRDs7QU1wcEJBO0VBQStDLGdCQUFnQjtBTndwQi9EOztBTXZwQkE7RUFBK0MsZ0JBQWdCO0FOMnBCL0Q7O0FNMXBCQTtFQUErQyxnQkFBZ0I7QU44cEIvRDs7QU03cEJBO0VBQStDLGdCQUFnQjtBTmlxQi9EOztBTWhxQkE7RUFBK0MsZ0JBQWdCO0FOb3FCL0Q7O0FNbnFCQTtFQUErQyxnQkFBZ0I7QU51cUIvRDs7QU10cUJBO0VBQStDLGdCQUFnQjtBTjBxQi9EOztBTXpxQkE7RUFBK0MsZ0JBQWdCO0FONnFCL0Q7O0FNNXFCQTtFQUErQyxnQkFBZ0I7QU5nckIvRDs7QU0vcUJBO0VBQStDLGdCQUFnQjtBTm1yQi9EOztBTWxyQkE7RUFBK0MsZ0JBQWdCO0FOc3JCL0Q7O0FNcnJCQTtFQUErQyxnQkFBZ0I7QU55ckIvRDs7QU14ckJBO0VBQStDLGdCQUFnQjtBTjRyQi9EOztBTTNyQkE7RUFBK0MsZ0JBQWdCO0FOK3JCL0Q7O0FNOXJCQTtFQUErQyxnQkFBZ0I7QU5rc0IvRDs7QU1qc0JBO0VBQStDLGdCQUFnQjtBTnFzQi9EOztBTXBzQkE7RUFBK0MsZ0JBQWdCO0FOd3NCL0Q7O0FNdnNCQTtFQUErQyxnQkFBZ0I7QU4yc0IvRDs7QU0xc0JBO0VBQStDLGdCQUFnQjtBTjhzQi9EOztBTTdzQkE7RUFBK0MsZ0JBQWdCO0FOaXRCL0Q7O0FNaHRCQTtFQUErQyxnQkFBZ0I7QU5vdEIvRDs7QU1udEJBO0VBQStDLGdCQUFnQjtBTnV0Qi9EOztBTXR0QkE7RUFBK0MsZ0JBQWdCO0FOMHRCL0Q7O0FNenRCQTtFQUErQyxnQkFBZ0I7QU42dEIvRDs7QU01dEJBO0VBQStDLGdCQUFnQjtBTmd1Qi9EOztBTS90QkE7RUFBK0MsZ0JBQWdCO0FObXVCL0Q7O0FNbHVCQTtFQUErQyxnQkFBZ0I7QU5zdUIvRDs7QU1ydUJBO0VBQStDLGdCQUFnQjtBTnl1Qi9EOztBTXh1QkE7RUFBK0MsZ0JBQWdCO0FONHVCL0Q7O0FNM3VCQTtFQUErQyxnQkFBZ0I7QU4rdUIvRDs7QU05dUJBO0VBQStDLGdCQUFnQjtBTmt2Qi9EOztBTWp2QkE7RUFBK0MsZ0JBQWdCO0FOcXZCL0Q7O0FNcHZCQTtFQUErQyxnQkFBZ0I7QU53dkIvRDs7QU12dkJBO0VBQStDLGdCQUFnQjtBTjJ2Qi9EOztBTTF2QkE7RUFBK0MsZ0JBQWdCO0FOOHZCL0Q7O0FNN3ZCQTtFQUErQyxnQkFBZ0I7QU5pd0IvRDs7QU1od0JBO0VBQStDLGdCQUFnQjtBTm93Qi9EOztBTW53QkE7RUFBK0MsZ0JBQWdCO0FOdXdCL0Q7O0FNdHdCQTtFQUErQyxnQkFBZ0I7QU4wd0IvRDs7QU16d0JBO0VBQStDLGdCQUFnQjtBTjZ3Qi9EOztBTTV3QkE7RUFBK0MsZ0JBQWdCO0FOZ3hCL0Q7O0FNL3dCQTtFQUErQyxnQkFBZ0I7QU5teEIvRDs7QU1seEJBO0VBQStDLGdCQUFnQjtBTnN4Qi9EOztBTXJ4QkE7RUFBK0MsZ0JBQWdCO0FOeXhCL0Q7O0FNeHhCQTtFQUErQyxnQkFBZ0I7QU40eEIvRDs7QU0zeEJBO0VBQStDLGdCQUFnQjtBTit4Qi9EOztBTTl4QkE7RUFBK0MsZ0JBQWdCO0FOa3lCL0Q7O0FNanlCQTtFQUErQyxnQkFBZ0I7QU5xeUIvRDs7QU1weUJBO0VBQStDLGdCQUFnQjtBTnd5Qi9EOztBTXZ5QkE7RUFBK0MsZ0JBQWdCO0FOMnlCL0Q7O0FNMXlCQTtFQUErQyxnQkFBZ0I7QU44eUIvRDs7QU03eUJBO0VBQStDLGdCQUFnQjtBTml6Qi9EOztBTWh6QkE7RUFBK0MsZ0JBQWdCO0FOb3pCL0Q7O0FNbnpCQTtFQUErQyxnQkFBZ0I7QU51ekIvRDs7QU10ekJBO0VBQStDLGdCQUFnQjtBTjB6Qi9EOztBTXp6QkE7RUFBK0MsZ0JBQWdCO0FONnpCL0Q7O0FNNXpCQTtFQUErQyxnQkFBZ0I7QU5nMEIvRDs7QU0vekJBO0VBQStDLGdCQUFnQjtBTm0wQi9EOztBTWwwQkE7RUFBK0MsZ0JBQWdCO0FOczBCL0Q7O0FNcjBCQTtFQUErQyxnQkFBZ0I7QU55MEIvRDs7QU14MEJBO0VBQStDLGdCQUFnQjtBTjQwQi9EOztBTTMwQkE7RUFBK0MsZ0JBQWdCO0FOKzBCL0Q7O0FNOTBCQTtFQUErQyxnQkFBZ0I7QU5rMUIvRDs7QU1qMUJBO0VBQStDLGdCQUFnQjtBTnExQi9EOztBTXAxQkE7RUFBK0MsZ0JBQWdCO0FOdzFCL0Q7O0FNdjFCQTtFQUErQyxnQkFBZ0I7QU4yMUIvRDs7QU0xMUJBO0VBQStDLGdCQUFnQjtBTjgxQi9EOztBTTcxQkE7RUFBK0MsZ0JBQWdCO0FOaTJCL0Q7O0FNaDJCQTtFQUErQyxnQkFBZ0I7QU5vMkIvRDs7QU1uMkJBO0VBQStDLGdCQUFnQjtBTnUyQi9EOztBTXQyQkE7RUFBK0MsZ0JBQWdCO0FOMDJCL0Q7O0FNejJCQTtFQUErQyxnQkFBZ0I7QU42MkIvRDs7QU01MkJBO0VBQStDLGdCQUFnQjtBTmczQi9EOztBTS8yQkE7RUFBK0MsZ0JBQWdCO0FObTNCL0Q7O0FNbDNCQTtFQUErQyxnQkFBZ0I7QU5zM0IvRDs7QU1yM0JBO0VBQStDLGdCQUFnQjtBTnkzQi9EOztBTXgzQkE7RUFBK0MsZ0JBQWdCO0FONDNCL0Q7O0FNMzNCQTtFQUErQyxnQkFBZ0I7QU4rM0IvRDs7QU05M0JBO0VBQStDLGdCQUFnQjtBTms0Qi9EOztBTWo0QkE7RUFBK0MsZ0JBQWdCO0FOcTRCL0Q7O0FNcDRCQTtFQUErQyxnQkFBZ0I7QU53NEIvRDs7QU12NEJBO0VBQStDLGdCQUFnQjtBTjI0Qi9EOztBTTE0QkE7RUFBK0MsZ0JBQWdCO0FOODRCL0Q7O0FNNzRCQTtFQUErQyxnQkFBZ0I7QU5pNUIvRDs7QU1oNUJBO0VBQStDLGdCQUFnQjtBTm81Qi9EOztBTW41QkE7RUFBK0MsZ0JBQWdCO0FOdTVCL0Q7O0FNdDVCQTtFQUErQyxnQkFBZ0I7QU4wNUIvRDs7QU16NUJBO0VBQStDLGdCQUFnQjtBTjY1Qi9EOztBTTU1QkE7RUFBK0MsZ0JBQWdCO0FOZzZCL0Q7O0FNLzVCQTtFQUErQyxnQkFBZ0I7QU5tNkIvRDs7QU1sNkJBO0VBQStDLGdCQUFnQjtBTnM2Qi9EOztBTXI2QkE7RUFBK0MsZ0JBQWdCO0FOeTZCL0Q7O0FNeDZCQTtFQUErQyxnQkFBZ0I7QU40NkIvRDs7QU0zNkJBO0VBQStDLGdCQUFnQjtBTis2Qi9EOztBTTk2QkE7RUFBK0MsZ0JBQWdCO0FOazdCL0Q7O0FNajdCQTtFQUErQyxnQkFBZ0I7QU5xN0IvRDs7QU1wN0JBO0VBQStDLGdCQUFnQjtBTnc3Qi9EOztBTXY3QkE7RUFBK0MsZ0JBQWdCO0FOMjdCL0Q7O0FNMTdCQTtFQUErQyxnQkFBZ0I7QU44N0IvRDs7QU03N0JBO0VBQStDLGdCQUFnQjtBTmk4Qi9EOztBTWg4QkE7RUFBK0MsZ0JBQWdCO0FObzhCL0Q7O0FNbjhCQTtFQUErQyxnQkFBZ0I7QU51OEIvRDs7QU10OEJBO0VBQStDLGdCQUFnQjtBTjA4Qi9EOztBTXo4QkE7RUFBK0MsZ0JBQWdCO0FONjhCL0Q7O0FNNThCQTtFQUErQyxnQkFBZ0I7QU5nOUIvRDs7QU0vOEJBO0VBQStDLGdCQUFnQjtBTm05Qi9EOztBTWw5QkE7RUFBK0MsZ0JBQWdCO0FOczlCL0Q7O0FNcjlCQTtFQUErQyxnQkFBZ0I7QU55OUIvRDs7QU14OUJBO0VBQStDLGdCQUFnQjtBTjQ5Qi9EOztBTTM5QkE7RUFBK0MsZ0JBQWdCO0FOKzlCL0Q7O0FNOTlCQTtFQUErQyxnQkFBZ0I7QU5rK0IvRDs7QU1qK0JBO0VBQStDLGdCQUFnQjtBTnErQi9EOztBTXArQkE7RUFBK0MsZ0JBQWdCO0FOdytCL0Q7O0FNditCQTtFQUErQyxnQkFBZ0I7QU4yK0IvRDs7QU0xK0JBO0VBQStDLGdCQUFnQjtBTjgrQi9EOztBTTcrQkE7RUFBK0MsZ0JBQWdCO0FOaS9CL0Q7O0FNaC9CQTtFQUErQyxnQkFBZ0I7QU5vL0IvRDs7QU1uL0JBO0VBQStDLGdCQUFnQjtBTnUvQi9EOztBTXQvQkE7RUFBK0MsZ0JBQWdCO0FOMC9CL0Q7O0FNei9CQTtFQUErQyxnQkFBZ0I7QU42L0IvRDs7QU01L0JBO0VBQStDLGdCQUFnQjtBTmdnQy9EOztBTS8vQkE7RUFBK0MsZ0JBQWdCO0FObWdDL0Q7O0FNbGdDQTtFQUErQyxnQkFBZ0I7QU5zZ0MvRDs7QU1yZ0NBO0VBQStDLGdCQUFnQjtBTnlnQy9EOztBTXhnQ0E7RUFBK0MsZ0JBQWdCO0FONGdDL0Q7O0FNM2dDQTtFQUErQyxnQkFBZ0I7QU4rZ0MvRDs7QU05Z0NBO0VBQStDLGdCQUFnQjtBTmtoQy9EOztBTWpoQ0E7RUFBK0MsZ0JBQWdCO0FOcWhDL0Q7O0FNcGhDQTtFQUErQyxnQkFBZ0I7QU53aEMvRDs7QU12aENBO0VBQStDLGdCQUFnQjtBTjJoQy9EOztBTTFoQ0E7RUFBK0MsZ0JBQWdCO0FOOGhDL0Q7O0FNN2hDQTtFQUErQyxnQkFBZ0I7QU5paUMvRDs7QU1oaUNBO0VBQStDLGdCQUFnQjtBTm9pQy9EOztBTW5pQ0E7RUFBK0MsZ0JBQWdCO0FOdWlDL0Q7O0FNdGlDQTtFQUErQyxnQkFBZ0I7QU4waUMvRDs7QU16aUNBO0VBQStDLGdCQUFnQjtBTjZpQy9EOztBTTVpQ0E7RUFBK0MsZ0JBQWdCO0FOZ2pDL0Q7O0FNL2lDQTtFQUErQyxnQkFBZ0I7QU5takMvRDs7QU1sakNBO0VBQStDLGdCQUFnQjtBTnNqQy9EOztBTXJqQ0E7RUFBK0MsZ0JBQWdCO0FOeWpDL0Q7O0FNaGpDQTtFQUErQyxnQkFBZ0I7QU5vakMvRDs7QU1uakNBO0VBQStDLGdCQUFnQjtBTnVqQy9EOztBTXRqQ0E7RUFBK0MsZ0JBQWdCO0FOMGpDL0Q7O0FNempDQTtFQUErQyxnQkFBZ0I7QU42akMvRDs7QU01akNBO0VBQStDLGdCQUFnQjtBTmdrQy9EOztBTS9qQ0E7RUFBK0MsZ0JBQWdCO0FObWtDL0Q7O0FNbGtDQTtFQUErQyxnQkFBZ0I7QU5za0MvRDs7QU1ya0NBO0VBQStDLGdCQUFnQjtBTnlrQy9EOztBTXhrQ0E7RUFBK0MsZ0JBQWdCO0FONGtDL0Q7O0FNM2tDQTtFQUErQyxnQkFBZ0I7QU4ra0MvRDs7QU05a0NBO0VBQStDLGdCQUFnQjtBTmtsQy9EOztBTWpsQ0E7RUFBK0MsZ0JBQWdCO0FOcWxDL0Q7O0FNcGxDQTtFQUErQyxnQkFBZ0I7QU53bEMvRDs7QU12bENBO0VBQStDLGdCQUFnQjtBTjJsQy9EOztBTTFsQ0E7RUFBK0MsZ0JBQWdCO0FOOGxDL0Q7O0FNN2xDQTtFQUErQyxnQkFBZ0I7QU5pbUMvRDs7QU1obUNBO0VBQStDLGdCQUFnQjtBTm9tQy9EOztBTW5tQ0E7RUFBK0MsZ0JBQWdCO0FOdW1DL0Q7O0FNdG1DQTtFQUErQyxnQkFBZ0I7QU4wbUMvRDs7QU16bUNBO0VBQStDLGdCQUFnQjtBTjZtQy9EOztBTTVtQ0E7RUFBK0MsZ0JBQWdCO0FOZ25DL0Q7O0FNL21DQTtFQUErQyxnQkFBZ0I7QU5tbkMvRDs7QU1sbkNBO0VBQStDLGdCQUFnQjtBTnNuQy9EOztBTXJuQ0E7RUFBK0MsZ0JBQWdCO0FOeW5DL0Q7O0FNeG5DQTtFQUErQyxnQkFBZ0I7QU40bkMvRDs7QU0zbkNBO0VBQStDLGdCQUFnQjtBTituQy9EOztBTTluQ0E7RUFBK0MsZ0JBQWdCO0FOa29DL0Q7O0FNam9DQTtFQUErQyxnQkFBZ0I7QU5xb0MvRDs7QU1wb0NBO0VBQStDLGdCQUFnQjtBTndvQy9EOztBTXZvQ0E7RUFBK0MsZ0JBQWdCO0FOMm9DL0Q7O0FNMW9DQTtFQUErQyxnQkFBZ0I7QU44b0MvRDs7QU03b0NBO0VBQStDLGdCQUFnQjtBTmlwQy9EOztBTWhwQ0E7RUFBK0MsZ0JBQWdCO0FOb3BDL0Q7O0FNbnBDQTtFQUErQyxnQkFBZ0I7QU51cEMvRDs7QU10cENBO0VBQStDLGdCQUFnQjtBTjBwQy9EOztBTXpwQ0E7RUFBK0MsZ0JBQWdCO0FONnBDL0Q7O0FNNXBDQTtFQUErQyxnQkFBZ0I7QU5ncUMvRDs7QU0vcENBO0VBQStDLGdCQUFnQjtBTm1xQy9EOztBTWxxQ0E7RUFBK0MsZ0JBQWdCO0FOc3FDL0Q7O0FNcnFDQTtFQUErQyxnQkFBZ0I7QU55cUMvRDs7QU14cUNBO0VBQStDLGdCQUFnQjtBTjRxQy9EOztBTTNxQ0E7RUFBK0MsZ0JBQWdCO0FOK3FDL0Q7O0FNOXFDQTtFQUErQyxnQkFBZ0I7QU5rckMvRDs7QU1qckNBO0VBQStDLGdCQUFnQjtBTnFyQy9EOztBTXByQ0E7RUFBK0MsZ0JBQWdCO0FOd3JDL0Q7O0FNdnJDQTtFQUErQyxnQkFBZ0I7QU4yckMvRDs7QU0xckNBO0VBQStDLGdCQUFnQjtBTjhyQy9EOztBTTdyQ0E7RUFBK0MsZ0JBQWdCO0FOaXNDL0Q7O0FNaHNDQTtFQUErQyxnQkFBZ0I7QU5vc0MvRDs7QU1uc0NBO0VBQStDLGdCQUFnQjtBTnVzQy9EOztBTXRzQ0E7RUFBK0MsZ0JBQWdCO0FOMHNDL0Q7O0FNenNDQTtFQUErQyxnQkFBZ0I7QU42c0MvRDs7QU01c0NBO0VBQStDLGdCQUFnQjtBTmd0Qy9EOztBTS9zQ0E7RUFBK0MsZ0JBQWdCO0FObXRDL0Q7O0FNbHRDQTtFQUErQyxnQkFBZ0I7QU5zdEMvRDs7QU1ydENBO0VBQStDLGdCQUFnQjtBTnl0Qy9EOztBSTMvQ0E7Ozs7OztnRUptZ0RnRTtBSTEvQ2hFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OzhESjhnRDhEO0FJeC9DOUQ7O2lFSjIvQ2lFO0FPcGlEakU7RUFDRSxrQkFBa0I7QVBzaURwQjs7QU9uaURBO0VBQ0Usa0JBQWtCO0VBQ2xCLFdBQVc7QVBzaURiOztBT3hpREE7RUFLSSxhQUFhO0VBQ2Isa0JBQWtCO0VDeUtwQix5Q0R4SzBDO0VDeUtyQyxvQ0R6S3FDO0VDMEtsQyxpQ0QxS2tDO0FQeWlENUM7O0FPaGpEQTs7RUVORSxjQURtQztFQUVuQyxlQUFlO0VBQ2YsWUFBWTtFRmlCUixjQUFjO0FQMmlEcEI7O0FPdmlESTtFQWpCSjtJQ29NRSxzRERsTGtEO0lDbUwvQyxnRERuTCtDO0lDb0w3Qyw0Q0RwTDZDO0lDcUwxQyxzQ0RyTDBDO0lDNkJsRCxtQ0Q1QnVDO0lDNkJwQyxnQ0Q3Qm9DO0lDOEIvQiwyQkQ5QitCO0lDd0l2QywyQkR2SStCO0lDd0k1Qix3QkR4STRCO0lDeUl2QixtQkR6SXVCO0VQa2pEL0I7RU90a0RGO0lDcUlFLDBDQUEwQztJQUNsQyxrQ0FBa0M7SUQ3R3BDLE9BQU87RVBrakRiO0VPM2tERjtJQ3FJRSwyQ0FBMEM7SUFDbEMsbUNBQWtDO0lEeEdwQyxPQUFPO0VQa2pEYjtFT2hsREY7SUNxSUUsdUNBQTBDO0lBQ2xDLCtCQUFrQztJRGxHcEMsT0FBTztFUGlqRGI7QUFDRjs7QU90bERBOzs7RUE0Q0ksY0FBYztBUGdqRGxCOztBTzVsREE7RUFnREksT0FBTztBUGdqRFg7O0FPaG1EQTs7RUFxREksa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixXQUFXO0FQZ2pEZjs7QU92bURBO0VBMkRJLFVBQVU7QVBnakRkOztBTzNtREE7RUE4REksV0FBVztBUGlqRGY7O0FPL21EQTs7RUFrRUksT0FBTztBUGtqRFg7O0FPcG5EQTtFQXNFSSxXQUFXO0FQa2pEZjs7QU94bkRBO0VBeUVJLFVBQVU7QVBtakRkOztBT3JpREE7RUFHRTs7OztJQUtJLFdBQTBDO0lBQzFDLFlBQTJDO0lBQzNDLGlCQUE4QztJQUM5QyxlQUE4QztFUHFpRGxEO0VPN2lEQTs7SUFZSSxrQkFBK0M7RVBxaURuRDtFT2pqREE7O0lBZ0JJLG1CQUFnRDtFUHFpRHBEO0VPaGlEQTtJQUNFLFNBQVM7SUFDVCxVQUFVO0lBQ1Ysb0JBQW9CO0VQa2lEdEI7RU85aERBO0lBQ0UsWUFBWTtFUGdpRGQ7QUFDRjs7QVUxcERBO0VBQ0UsZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixnQkFBZ0I7QVY2cERsQjs7QVczcERFO0VBRUUsY0FBYztFQUNkLFlBQVk7QVg2cERoQjs7QVczcERFO0VBQ0UsV0FBVztBWDhwRGY7O0FVenFEQTtFQU9JLGtCQUFrQjtFQUNsQixjQUFjO0FWc3FEbEI7O0FVOXFEQTtFQVdNLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2Qsa0JFcVorQztBWmt4Q3JEOztBVXByREE7RUFnQlEscUJBQXFCO0VBQ3JCLHlCRVYyQztBWmtyRG5EOztBVXpyREE7RUF1Qk0sY0VqQjZDO0FadXJEbkQ7O0FVN3JEQTtFQTJCUSxjRXJCMkM7RUZzQjNDLHFCQUFxQjtFQUNyQixtQkVrTW9DO0VGak1wQyw2QkFBNkI7QVZzcURyQzs7QVVwc0RBO0VBd0NNLHlCRWpDNkM7RUZrQzdDLHFCRWhDdUM7QVpnc0Q3Qzs7QVV6c0RBO0VHSEUsV0FBVztFQUNYLGFBQTJDO0VBQzNDLGdCQUFnQjtFQUNoQix5QkFKZ0M7QWJvdERsQzs7QVVodERBO0VBMERJLGVBQWU7QVYwcERuQjs7QVVqcERBO0VBQ0UsNkJFcVc4QztBWit5Q2hEOztBVXJwREE7RUFHSSxXQUFXO0VBRVgsbUJBQW1CO0FWcXBEdkI7O0FVMXBEQTtFQVNNLGlCQUFpQjtFQUNqQixvQkV0QitCO0VGdUIvQiw2QkFBNkI7RUFDN0IsMEJBQTBEO0FWcXBEaEU7O0FVanFEQTtFQWNRLGtDRXdWd0M7QVorekNoRDs7QVVycURBO0VBdUJRLGNFckYyQztFRnNGM0MsZUFBZTtFQUNmLHNCRXZFb0I7RUZ3RXBCLHNCRWtWd0M7RUZqVnhDLGdDQUFnQztBVmtwRHhDOztBVXBvREE7RUFFSSxXQUFXO0FWc29EZjs7QVV4b0RBO0VBTU0sa0JFYnlCO0FabXBEL0I7O0FVNW9EQTtFQVNNLGdCQUFnQjtBVnVvRHRCOztBVWhwREE7RUFpQlEsV0VuQndCO0VGb0J4Qix5QkVySHFDO0Fad3ZEN0M7O0FVM25EQTtFQUVJLFdBQVc7QVY2bkRmOztBVS9uREE7RUFJTSxlQUFlO0VBQ2YsY0FBYztBVituRHBCOztBVW5uREE7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STtFQXpCSjtJQTBCUSxlQUFlO0UxRDhsZXJCO0FBQ0Y7O0EwRDVsZUk7RUE3Qko7SUE4QlEsc0JBQXNCO0lBQ3RCLFNBQVM7RTFEZ21lZjtBQUNGOztBMkRub2VBOztxRTNEdW9lcUU7QTREdm9lckU7O3FFNUQwb2VxRTtBNER2b2VyRTs7O0VBSVEsYzNEV087QUQ2bmVmOztBNEQ1b2VBOzs7RUFPUSxjM0RBVztBRDJvZW5COztBNERscGVBOzs7RTFEaUlJLGlCQUFXO0UwRHRIUCxjM0RQVztBRHFwZW5COztBNER6cGVBOzs7RTFEaUlJLGlCQUFXO0UwRGxIUCxtQkFBbUI7RUFDbkIsbUJBQW1CO0VBQ25CLGNBQWM7QTVEaXBldEI7O0E0RGxxZUE7OztFMURpSUksaUJBQVc7RTBENUdQLGMzRGpCVztFMkRrQlgsZ0JBQWdCO0E1RG9wZXhCOztBNEQxcWVBOzs7RUF5QlEsaUJBQWlCO0VBQ2pCLGMzRHRCVztFMkR1QlgsaUJBQWlCO0E1RHVwZXpCOztBNERscmVBOzs7RUE2QlksYzNEZEc7QUR5cWVmOztBNER4cmVBOzs7RUFpQ1EsYzNEL0JNO0FENHJlZDs7QTREOXJlQTs7O0UxRGlJSSxpQkFBVztFMEQ1RkgsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtBNURncWU5Qjs7QTREdHNlQTs7Ozs7RUF3QzRCLHFCQUFxQjtBNURzcWVqRDs7QTREOXNlQTs7O0VBMkNRLGMzRDVCTztFMkQ2QlAseUJBQXlCO0VBQ3pCLGlCQUFpQjtFQUNqQixlQUFlO0E1RHlxZXZCOztBNER2dGVBOzs7Ozs7Ozs7RUFrRFksYUFBYTtBNURpcmV6Qjs7QTREbnVlQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFxRFkseUIzRHRDRztBRG92ZWY7O0E0RG53ZUE7OztFMURpSUksaUJBQVc7RTBEdkVQLGMzRDNDTztFMkQ0Q1AsZ0JBQWdCO0E1RGd0ZXhCOztBNEQzd2VBOzs7RUErRFksZ0JBQWdCO0E1RGt0ZTVCOztBNEQ5c2VBOztFQUdRLG1CQUFtQjtFQUNuQixtQkFBbUI7RUFDbkIsMEJBQTBCO0E1RGd0ZWxDOztBNERy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R21tK0JoQyIsInNvdXJjZXMiOlsid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHJpdmF0ZS9jc3MvbWFzdGVyT3JjYWIuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL19mb250cy5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9fYm9vdHN0cmFwLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL2Jvb3RzdHJhcC9fbm9ybWFsaXplLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy92ZW5kb3IvYm9vdHN0cmFwL2Jvb3RzdHJhcC9fZ2x5cGhpY29ucy5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvdmVuZG9yL2Jvb3RzdHJhcC9ib290c3RyYXAvX2Nhcm91c2VsLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3ZlbmRvci1wcmVmaXhlcy5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19pbWFnZS5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX25hdnMuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fY2xlYXJmaXguc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3ZlbmRvci9ib290c3RyYXAvYm9vdHN0cmFwL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvdmVuZG9yL3RvYXN0ci90b2FzdHIuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL29yY2FiLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9jb21wb25lbnRzL190aXRsZXMuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL2NvbXBvbmVudHMvX21vZGFsLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9fbGF5b3V0LnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9oZWFkZXIvX2hlYWRlci5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvaGVhZGVyL19taW5pLXBhbmllci5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvaGVhZGVyL19tZW51LnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9mb290ZXIvX2Zvb3Rlci5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvY29tcG9uZW50cy9fc2VhcmNoLXN1Z2dlc3Rlci1wYW5lbC5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvY29tcG9uZW50cy9fbm90aWZpY2F0aW9ucy5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvY29tcG9uZW50cy9fcmFuZ2Utc2xpZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9jb21wb25lbnRzL19icmVhZGNydW1iLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9jb21wb25lbnRzL19mb3Jtcy5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvY29tcG9uZW50cy9fYXNpZGUuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL2NvbXBvbmVudHMvX2ZpbHRlcnMuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL2NvbXBvbmVudHMvX3RhYmxlcy5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvY29tcG9uZW50cy9fY29udGFjdC5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvY29tcG9uZW50cy9fZG9jdW1lbnQuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL2hvbWVwYWdlL19ob21lcGFnZS5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvcGFnZXMvaG9tZXBhZ2UvX2Zvcm1hdGlvbi5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvcGFnZXMvaG9tZXBhZ2UvX2NvbW11bmljYXRpb24uc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL3N1aXZpL19zdWl2aS5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvcGFnZXMvc3VpdmkvX2xvZ2luLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX29wYWNpdHkuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL3N1aXZpL19jb21tb24uc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL3N1aXZpL19wZXJzb25uYWxpc2F0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9wYWdlcy9zdWl2aS9fbGlzdGUtYWNoYXQuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL3N1aXZpL19ib24tZGV2aXMuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL3N1aXZpL19mYWN0dXJlLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9wYWdlcy9zdWl2aS9fcmV0b3VyLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9wYWdlcy9jb21wdGUvX2NvbXB0ZS5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvcGFnZXMvY29tcHRlL19pbmZvcm1hdGlvbi5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvcGFnZXMvY29tcHRlL19ub3V2ZWF1LXJvbGUuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL2NvbXB0ZS9fYWRyZXNzZS1saXZyYWlzb24uc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL2NvbXB0ZS9fdG91cm5lZXMuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL19jb25uZXhpb24tZW4tdGFudC1xdWUuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL2RpYXBvcmFtYS9kaWFwb3JhbWEuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL2RpYXBvcmFtYS9fZGlhcG8tb3JjYWIuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL2RpYXBvcmFtYS9fZGlhcG8tbXVsdGlwbGUuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL2FjdHVhbGl0ZS9fYWN0dWFsaXRlLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9wYWdlcy9hY3R1YWxpdGUvX2xpc3RlLWhwLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9wYWdlcy9hY3R1YWxpdGUvX3pvb20tc3VyLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9wYWdlcy9wcm9kdWl0cy9fcHJvZHVpdC5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvcGFnZXMvcHJvZHVpdHMvX2NvbW1vbi5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvcGFnZXMvcHJvZHVpdHMvX2xpc3RlLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9wYWdlcy9wcm9kdWl0cy9fbGlzdGUtYWNoYXQuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL3Byb2R1aXRzL19wcm9kdWl0cy1wYW5pZXIuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL3Byb2R1aXRzL19jb21tYW5kZS5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvcGFnZXMvcHJvZHVpdHMvX21pc2UtZW5fYXZhbnQuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL3Byb2R1aXRzL19yZWNvbW1hbmRlLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9wYWdlcy9wcm9kdWl0cy9fcHJpY2UtdGFibGUuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL3Byb2R1aXRzL19saXN0ZS1ldGlxdWV0dGVzLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9jb21wYXJhdGV1ci5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvcGFnZXMvbG9jYXRpb24vbG9jYXRpb24uc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL2xvY2F0aW9uL19zZWxlY3Rpb24uc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL2xvY2F0aW9uL19hZHJlc3NlLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9wYWdlcy9iYXNlZG9jL19iYXNlLWRvY3VtZW50YWlyZS5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvcGFnZXMvYmFzZWRvYy9fbGlzdGUuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL2Jhc2Vkb2MvX2xpc3RlLWhwLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9wYWdlcy9iYXNlZG9jL19maWNoZS5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvbGlzdGVzLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9wYWdlcy90dW5uZWwvX3R1bm5lbC5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvcGFnZXMvdHVubmVsL19oZWFkZXIuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL3R1bm5lbC9fY29tbW9uLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9wYWdlcy90dW5uZWwvX2xpdnJhaXNvbi5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvcGFnZXMvdHVubmVsL19wYW5pZXIuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL3R1bm5lbC9fbGlzdGUtcGFuaWVycy5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvcGFnZXMvdHVubmVsL19jb21tYW5kZS1yYXBpZGUuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL3R1bm5lbC9fcGFuaWVyLWEtdmFsaWRlci5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvdGFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9wYWdlcy9zdG9yZWxvY2F0b3IvcmVjaGVyY2hlLWNvbGxhYm9yYXRpb24uc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL3N0b3JlbG9jYXRvci9fZmljaGUtYWRoZXJlbnQuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL2NhcnRlLXRvdXJuZWUuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3NjYW5Db2RlLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9wYWdlcy9hZ2VuZGEvYWdlbmRhLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9wYWdlcy9hZ2VuZGEvX2xpc3RlLWhwLnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9wYWdlcy9hZ2VuZGEvX2NhcmQuc2NzcyIsIndlYnBhY2s6Ly9zbWFydC1vcmNhYi8uL3NyYy9Fb2xhcy9FQ29tbWVyY2UvT3JjYWJCdW5kbGUvUmVzb3VyY2VzL3B1YmxpYy9nYWJhcml0L0dBQl9PUkNBQi9zYXNzL3BhZ2VzL2FnZW5kYS9fY2FsZW5kcmllci5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvcGFnZXMvYWdlbmRhL19zaGVldC5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvcGFnZXMvZWRpdGhlcm0vZWRpdGhlcm0taW5mby5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvZmF2b3Jpcy5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3Mvdm9sZXQvX3ZvbGV0LnNjc3MiLCJ3ZWJwYWNrOi8vc21hcnQtb3JjYWIvLi9zcmMvRW9sYXMvRUNvbW1lcmNlL09yY2FiQnVuZGxlL1Jlc291cmNlcy9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy92b2xldC9fdm9sZXQtaGVhZC5zY3NzIiwid2VicGFjazovL3NtYXJ0LW9yY2FiLy4vc3JjL0VvbGFzL0VDb21tZXJjZS9PcmNhYkJ1bmRsZS9SZXNvdXJjZXMvcHVibGljL2dhYmFyaXQvR0FCX09SQ0FCL3Nhc3MvcGFnZXMvZmVlZC9fZmVlZC1ocC5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCIuLi8uLi9wdWJsaWMvZ2FiYXJpdC9HQUJfT1JDQUIvc2Fzcy9tYXN0ZXIuc2Nzc1wiO1xuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVkFSSUFCTEVTXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbi8vIENvdWxldXJzIHByaW5jaXBhbGVzXG4kYmxldTogIzAwNDQ2MjtcbiRibGV1VHVycXVvaXNlOiAjMDBiMWZmO1xuJGJsZXVPcmNhYjogIzAwMzE2MDtcbiR2ZXJ0OiAjODJhYTM3O1xuJHZlcnQyOiAjNmI4ZDJjO1xuJGNvbG9yQmFzZTogIzU0NTQ1NDtcbiRncmlzRm9uY2U6ICM4Njg2ODY7XG4kZ3Jpc0NsYWlyOiAjZjZmNmY2O1xuJGdyaXNVSTogI2Y4ZjhmODtcbiRncmlzQm9yZHVyZTogI2M0YzRjNDtcbiRncmlzQm9yZDogI2NlY2VjZTtcbiRncmlzTWVudTogI2U5ZTllOTtcbiRqYXVuZTogI2U4Y2YyMztcbiRyb3VnZTogI2UwNTE1MTtcbiRyb3VnZVRvbWF0ZTogI2ZmMDEwOTtcbiRvcmFuZ2U6ICNmNTkyMzU7XG4kYmxhbmM6ICNmZmZmZmY7XG4kb3JhbmdlQ2FubmVsbGUgOiAjZTM1NDE3O1xuXG46cm9vdCB7XG4gIC0tYm9yZGVyLWNvbG9yLWdyYXk6ICRncmlzQm9yZHVyZTtcbn1cblxuLy8gVGFpbGxlIGRlIHBvbGljZSBpbml0aWFsZVxuJGJhc2VTaXplOiAxNnB4O1xuXG4vLyBQb2ludHMgZGUgcnVwdHVyZVxuJHdpZGU6IDEwMCU7XG4kZGVza3RvcDogMTQ0MHB4O1xuJGRlc2t0b3Atc21hbGw6IDExNzBweDtcbiR0YWJsZXQ6IDEwMjRweDtcbiR0YWJsZXRQbHVzT25lOiAxMDI1cHg7XG4kbW9iaWxlOiA3NjdweDtcbiRtb2JpbGUtc21hbGw6IDM3NHB4O1xuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogQ0xBU1MgU1RBTkRBUkRcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi53aXRoSlMgLmpzX2hpZGRlbiB7IFxuICAgIGRpc3BsYXk6IG5vbmU7IFxufVxuLmNsZWFyIHsgXG4gICAgY2xlYXIgOiBib3RoOyBcbn1cbi5pbnZpc2libGUgeyBcbiAgICBkaXNwbGF5OiBub25lOyBcbn1cbi5hbGlnbmxlZnQgeyBcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyBcbn1cbi5hbGlnbnJpZ2h0IHsgXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IFxufVxuLmFsaWduY2VudGVyIHsgXG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyBcbn1cbi5hbGlnbmp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IFxufVxuLmNsZWFyZml4IHtcbiAgICB6b29tOiAxO1xuICAgICY6OmJlZm9yZSwgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIi5cIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG59XG4uc3Itb25seSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjbGlwOiByZWN0KDAsMCwwLDApO1xuICAgIGJvcmRlcjogMDtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBHRVNUSU9OIEFGRklDSEFHRSBUQUJMRVRURSAvIE1PQklMRVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuYm9keS5wc2V1ZG8ge1xuICAgIC5jbXMtaGlkZS1mb3ItZGVza3RvcCxcbiAgICAuY21zLWhpZGUtZm9yLW1vYmlsZSxcbiAgICAuY21zLWhpZGUtZm9yLXRhYmxldCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cbi5zdHlsZS10YWJsZXQsXG4uY21zLWhpZGUtZm9yLWRlc2t0b3Age1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgKG1heC13aWR0aDoxMDI0cHgpIHtcbiAgICAudGFibGV0LWhpZGRlbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmNtcy1oaWRlLWZvci10YWJsZXQsXG4gICAgLmNtcy1oaWRlLWZvci1kZXNrdG9wLmNtcy1oaWRlLWZvci10YWJsZXQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuc3R5bGUtdGFibGV0LFxuICAgIC5jbXMtaGlkZS1mb3ItZGVza3RvcCB7IGRpc3BsYXk6IGJsb2NrOyB9XG59XG5AbWVkaWEgKG1heC13aWR0aDo3NjdweCkge1xuICAgIC5tb2JpbGUtaGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuY21zLWhpZGUtZm9yLW1vYmlsZSxcbiAgICAuY21zLWhpZGUtZm9yLXRhYmxldC5jbXMtaGlkZS1mb3ItbW9iaWxlXG5cbiAgICB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5jbXMtaGlkZS1mb3ItdGFibGV0LFxuICAgIC5jbXMtaGlkZS1mb3ItZGVza3RvcC5jbXMtaGlkZS1mb3ItdGFibGV0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFBPTElDRVMgRCdJQ09ORVNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5mYSB7XG4gICAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZScsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIHpvb206IDE7XG4gICAgc3BlYWs6IG5vbmU7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuLmljb21vb24ge1xuICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gICAgc3BlYWs6IG5vbmU7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBNSVhJTlMgU0FTU1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuQG1peGluIGZvbnQtZmFjZSgkZmFtaWx5LCAkcG9saWNlLCAkZm9udC13ZWlnaHQ6IG5vcm1hbCwgJGZvbnQtc3R5bGU6IG5vcm1hbCkge1xuICAgIGZvbnQtZmFtaWx5OlwiI3skZmFtaWx5fVwiO1xuICAgIHNyYzogdXJsKFwiLi4vcG9saWNlcy8jeyRwb2xpY2V9LmVvdFwiKTtcbiAgICBzcmM6IHVybChcIi4uL3BvbGljZXMvI3skcG9saWNlfS5lb3Q/I2llZml4XCIpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgXG4gICAgICAgICB1cmwoXCIuLi9wb2xpY2VzLyN7JHBvbGljZX0ud29mZlwiKSBmb3JtYXQoJ3dvZmYnKSwgXG4gICAgICAgICB1cmwoJy4uL3BvbGljZXMvI3skcG9saWNlfS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgIHVybChcIi4uL3BvbGljZXMvI3skcG9saWNlfS50dGZcIikgZm9ybWF0KCd0cnVldHlwZScpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQ7XG4gICAgZm9udC1zdHlsZTogJGZvbnQtc3R5bGU7XG59XG5cbi8qXG4gKiAgIENhbGN1bCBkZSBsYSB0YWlsbGUgZGUgcG9saWNlIGVuIGVtIMOgIHBhcnRpciBkZSBsYSB0YWlsbGUgZW4gcHhcbiAqICAgZXggOiAuZm9udFNpemUoMjBweClcbiAqL1xuQG1peGluIGZvbnRTaXplKCRweCkge1xuICAgIGZvbnQtc2l6ZTogI3tzdHJpcFVuaXQoJHB4KSAvIDEwfXJlbTtcbn1cblxuLypcbiAqICAgUmV0aXJlIHB4IGRlIGxhIHZhbGV1clxuICovXG5AZnVuY3Rpb24gc3RyaXBVbml0KCR2YWx1ZSkge1xuICAgIEByZXR1cm4gJHZhbHVlIC8gKCR2YWx1ZSAqIDAgKyAxKTtcbn1cblxuLypcbiAqICAgRWZmZXRzIGdyYXBoaXF1ZXMgc2ltcGxlcyA6XG4gKi9cbkBtaXhpbiBvcGFjaXR5KCRhbHBoYSkge1xuICAgICRhbHBoYUlFOiAkYWxwaGEgKiAxMDA7XG4gICAgLyogSUUgOCAqL1xuICAgIC1tcy1maWx0ZXI6XCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEob3BhY2l0eT0oJHthbHBoYUlFfSkpXCI7XG4gICAgLyogR29vZCBicm93c2VycyAqL1xuICAgIG9wYWNpdHk6ICRhbHBoYTtcbn1cblxuQG1peGluIGxpbmVhckdyYWRpZW50KCRjb2xvcjEsICRjb2xvcjIpIHtcbiAgICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgJGNvbG9yMSAwJSwgJGNvbG9yMiAxMDAlKTsgLyogSUUxMCsgKi9cbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkY29sb3IxIDAlLCAkY29sb3IyIDEwMCUpOyAvKiBJRTYtOSAqL1xuICAgIC8qIEF0dGVudGlvbiBwb3VyIElFOSBpbCBmYXV0IGTDqXNhY3RpdmVyIGxlIGZpbHRlciBlbiBtZXR0YW50IHVuIGZpbHRlcjogbm9uZTsgc291cyBwZWluZSBkZSBjdW11bGVyIGxlcyBkZXV4IGTDqWdyYWTDqXMgKGxpbmVhci1ncmFkaWVudCArIGZpbHRlciBtaWNyb3NvZnQpICovXG59XG5cbkBtaXhpbiB0cmFuc2Zvcm0oJGEpIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogJGE7XG4gICAgLW1vei10cmFuc2Zvcm06ICRhO1xuICAgIC1tcy10cmFuc2Zvcm06ICRhO1xuICAgIC1vLXRyYW5zZm9ybTogJGE7XG4gICAgdHJhbnNmb3JtOiAkYTtcbn1cblxuQG1peGluIHRyYW5zaXRpb24oJGEpIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICRhO1xuICAgIC1tb3otdHJhbnNpdGlvbjogJGE7XG4gICAgLW1zLXRyYW5zaXRpb246ICRhO1xuICAgIC1vLXRyYW5zaXRpb246ICRhO1xuICAgIHRyYW5zaXRpb246ICRhO1xufVxuXG4vKlxuICogICBBbGlnbmVtZW50IDpcbiAqICAgUGVybWV0IGQnYWxpZ25lciBlbiBwb3VyY2VudGFnZSB1biDDqWzDqW1lbnQgdmlhIGFic29sdXRlIGV0IHRyYW5mb3JtXG4gKiAgICEhIEF0dGVudGlvbiAhISBJbCBmYXV0IHF1ZSBsZSBibG9jIGNvbnRhaW5lciBzb2l0IGVuIHBvc2l0aW9uIHJlbGF0aXZlIG91IGFic29sdXRlLlxuICogICA9PiAkeDogIGFsaWduZW1lbnQgc3VyIGwnYXhlIHhcbiAqICAgPT4gJHk6ICBhbGlnbmVtZW50IHN1ciBsJ2F4ZSB5XG4gKi9cbkBtaXhpbiBhbGlnbmVtZW50WCgkeDogNTAlKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIGxlZnQ6ICR4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbkBtaXhpbiBhbGlnbmVtZW50WSgkeTogNTAlKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHRvcDogJHk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xufVxuQG1peGluIGFsaWduZW1lbnQoJHg6IDUwJSwkeTogNTAlKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbiAgICB0b3A6ICR5O1xuICAgIGxlZnQ6ICR4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLyogQ2xhc3MgdXRpbGUgcG91ciByZXNwb25zaXZlICovXG5AbWl4aW4gcmVzZXRDb2xvbm5lKCkge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi8qXG4gKiAgRm9ybXVsYWlyZXMgOlxuICovXG5cbi8qXG4gKiAgIENoZWNrYm94IDpcbiAqICAgPT4gJGNvY2hlOiBtb3RpZiDDoCBhZmZpY2hlciBwb3VyIGxhIGNvY2hlLCBjb2RlIGhleGEgb3UgaW1hZ2UpO1xuICogICA9PiAkZm9udHNpemU6IHRhaWxsZSBkZSBsYSBjb2NoZSBlbiBwaXhlbHNcbiAqICAgPT4gJHNpemU6IGxhcmdldXIgZXQgaGF1dGV1ciBkZSBsYSBjYXNlXG4gKiAgID0+ICRsZWZ0OiBwb3NpdGlvbiBhYnNvbHVlIGxlZnQgZGUgbGEgY29jaGVcbiAqICAgPT4gJHRvcDogcG9zaXRpb24gYWJzb2x1ZSB0b3AgZGUgbGEgY29jaGVcbiAqICAgPT4gJGNvbG9yOiBjb3VsZXVyIGRlIGxhIGNvY2hlO1xuICogICA9PiAkYm9yZGVyQ29sb3I6IGNvdWxldXIgZHUgY29udG91ciBkZSBsYSBjYXNlO1xuICogICA9PiAkYmFja2dyb3VuZENvbG9yOiBjb3VsZXVyIGRlIGZvbmQgZGUgbGEgY2FzZTtcbiAqICAgPT4gJGhvdmVyQ29sb3I6IGNvdWxldXIgZHUgY29udG91ciBkZSBsYSBjYXNlIGF1IHN1cnZvbDtcbiAqL1xuQG1peGluIGNoZWNrQm94KCRjb2NoZTogJ1xcZTk0ZicsICRmb250c2l6ZTogMjJweCwgJHNpemU6IDEycHgsICRsZWZ0OiAtM3B4LCAkdG9wOiAtM3B4LCAkY29sb3I6ICM4Njg2ODYsICRib3JkZXJDb2xvcjogI2NlY2VjZSwgJGJhY2tncm91bmRDb2xvcjogdHJhbnNwYXJlbnQsICRob3ZlckNvbG9yOiAkYm9yZGVyQ29sb3IpIHtcbiAgICBbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cbiAgICAvKiBDYWNob25zIGxhIGNhc2Ugw6AgY29jaGVyICovXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpLFxuICAgIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbiAgICAvKiBvbiBwcsOpcGFyZSBsZSBsYWJlbCAqL1xuICAgIFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSArIGxhYmVsLFxuICAgIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyAvKiBwZXJtZXQgZGUgcG9zaXRpb25uZXIgbGVzIHBzZXVkby3DqWzDqW1lbnRzICovXG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDI2cHg7IC8qIGZhaXQgdW4gcGV1IGQnZXNwYWNlIHBvdXIgbm90cmUgY2FzZSDDoCB2ZW5pciAqL1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7ICAgIC8qIGFmZmljaGUgdW4gY3Vyc2V1ciBhZGFwdMOpICovXG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGNhbGMoI3skc2l6ZX0gKyA0cHgpOyAvKiBwb3VyIGJpZW4gYWxpZ27DqSBsZSB0ZXh0ZSBhdmVjIGwnaWNvbmUgKi9cbiAgICB9XG5cbiAgICAvKiBBc3BlY3QgZGVzIGNoZWNrYm94ZXMgKi9cbiAgICAvKiA6YmVmb3JlIHNlcnQgw6AgY3LDqWVyIGxhIGNhc2Ugw6AgY29jaGVyICovXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YmVmb3JlLFxuICAgIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6ICRzaXplO1xuICAgICAgICBoZWlnaHQ6ICRzaXplOyAvKiBkaW0uIGRlIGxhIGNhc2UgKi9cbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJvcmRlckNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZENvbG9yO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7IC8qIGFuZ2xlcyBhcnJvbmRpcyAqL1xuICAgICAgICAvL2JveC1zaGFkb3c6IGluc2V0IDAgMXB4IDNweCByZ2JhKDAsMCwwLC4zKTsgLyogbMOpZ8OocmUgb21icmUgaW50ZXJuZSAqL1xuICAgIH1cbiAgICBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgICBib3JkZXItY29sb3I6ICR2ZXJ0O1xuICAgIH1cbiAgICAvKiBBc3BlY3QgZ8OpbsOpcmFsIGRlIGxhIGNvY2hlICovXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIsXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICBjb250ZW50OiAkY29jaGU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAkdG9wO1xuICAgICAgICBsZWZ0OiAkbGVmdDtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udHNpemU7XG4gICAgICAgIGNvbG9yOiAkdmVydDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4yczsgLyogb24gcHLDqXZvaXQgdW5lIGFuaW1hdGlvbiAqL1xuICAgIH1cbiAgICAvKiBBc3BlY3Qgc2kgXCJwYXMgY29jaMOpZVwiICovXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIge1xuICAgICAgICBvcGFjaXR5OiAwOyAvKiBjb2NoZSBpbnZpc2libGUgKi9cbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTsgLyogbWlzZSDDoCBsJ8OpY2hlbGxlIMOgIDAgKi9cbiAgICB9XG4gICAgLyogQXNwZWN0IHNpIFwiY29jaMOpZVwiICovXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICAgICAgICBvcGFjaXR5OiAxOyAvKiBjb2NoZSBvcGFxdWUgKi9cbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgLyogbWlzZSDDoCBsJ8OpY2hlbGxlIDE6MSAqL1xuICAgIH1cblxuICAgIC8qIGFzcGVjdCBkw6lzYWN0aXbDqWUgKi9cbiAgICBbdHlwZT1cImNoZWNrYm94XCJdOmRpc2FibGVkOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUsXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXTpkaXNhYmxlZDpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjYmJiO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xuICAgIH1cbiAgICAvKiBzdHlsZXMgZGUgbGEgY29jaGUgKHNpIGNvY2jDqWUvZMOpc2FjdGl2w6llKSAqL1xuICAgIFt0eXBlPVwiY2hlY2tib3hcIl06ZGlzYWJsZWQ6Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgfVxuICAgIC8qIG9uIHN0eWxlIGF1c3NpIGxlIGxhYmVsIHF1YW5kIGTDqXNhY3RpdsOpICovXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXTpkaXNhYmxlZCArIGxhYmVsIHtcbiAgICAgICAgY29sb3I6ICNhYWE7XG4gICAgfVxuXG4gICAgLyogYXNwZWN0IGF1IGhvdmVyIGRlIGwnw6lsw6ltZW50ICovXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkOm5vdCg6ZGlzYWJsZWQpOmhvdmVyICsgbGFiZWw6YmVmb3JlLFxuICAgIFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKTpub3QoOmRpc2FibGVkKTpob3ZlciArIGxhYmVsOmJlZm9yZSB7XG4gICAgICAgIC8vYm9yZGVyLWNvbG9yOiAkaG92ZXJDb2xvcjtcbiAgICB9XG59XG5cbi8qXG4gKiAgIENoZWNrYm94IHBhcmVudCwgcXVhbmQgb24gbmUgcGV1eCBwYXMgbWV0dHJlIGwnaW5wdXQgQVZBTlQgbGUgbGFiZWxcbiAqL1xuQG1peGluIGNoZWNrQm94LXBhcmVudCgkY29jaGU6ICdcXGU5NGYnLCAkZm9udHNpemU6IDIycHgsICRzaXplOiAxMnB4LCAkbGVmdDogLTNweCwgJHRvcDogLTNweCwgJGNvbG9yOiAjODY4Njg2LCAkYm9yZGVyQ29sb3I6ICNjZWNlY2UsICRiYWNrZ3JvdW5kQ29sb3I6IHRyYW5zcGFyZW50LCAkaG92ZXJDb2xvcjogJGJvcmRlckNvbG9yKSB7XG4gICAgLyogQ2FjaG9ucyBsYSBjYXNlIMOgIGNvY2hlciAqL1xuICAgIC51LWNoZWNrYm94LXBhcmVudCBbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCksXG4gICAgLnUtY2hlY2tib3gtcGFyZW50IFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbiAgICAvKiBvbiBwcsOpcGFyZSBsZSBsYWJlbCAqL1xuICAgIC51LWNoZWNrYm94LXBhcmVudCBsYWJlbDpoYXMoKyBbdHlwZT1cImNoZWNrYm94XCJdKSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLyogcGVybWV0IGRlIHBvc2l0aW9ubmVyIGxlcyBwc2V1ZG8tw6lsw6ltZW50cyAqL1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAyNnB4OyAvKiBmYWl0IHVuIHBldSBkJ2VzcGFjZSBwb3VyIG5vdHJlIGNhc2Ugw6AgdmVuaXIgKi9cbiAgICAgICAgY3Vyc29yOiBwb2ludGVyOyAgICAvKiBhZmZpY2hlIHVuIGN1cnNldXIgYWRhcHTDqSAqL1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBjYWxjKCN7JHNpemV9ICsgNHB4KTsgLyogcG91ciBiaWVuIGFsaWduw6kgbGUgdGV4dGUgYXZlYyBsJ2ljb25lICovXG4gICAgfVxuXG4gICAgLyogQXNwZWN0IGRlcyBjaGVja2JveGVzICovXG4gICAgLyogOmJlZm9yZSBzZXJ0IMOgIGNyw6llciBsYSBjYXNlIMOgIGNvY2hlciAqL1xuICAgIC51LWNoZWNrYm94LXBhcmVudCBsYWJlbDpoYXMoKyBbdHlwZT1cImNoZWNrYm94XCJdKTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgICAgaGVpZ2h0OiAkc2l6ZTsgLyogZGltLiBkZSBsYSBjYXNlICovXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRib3JkZXJDb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmRDb2xvcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4OyAvKiBhbmdsZXMgYXJyb25kaXMgKi9cbiAgICAgICAgLy9ib3gtc2hhZG93OiBpbnNldCAwIDFweCAzcHggcmdiYSgwLDAsMCwuMyk7IC8qIGzDqWfDqHJlIG9tYnJlIGludGVybmUgKi9cbiAgICB9XG4gICAgLnUtY2hlY2tib3gtcGFyZW50IGxhYmVsOmhhcygrIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCk6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkdmVydDtcbiAgICB9XG4gICAgLyogQXNwZWN0IGfDqW7DqXJhbCBkZSBsYSBjb2NoZSAqL1xuICAgIC51LWNoZWNrYm94LXBhcmVudCBsYWJlbDpoYXMoKyBbdHlwZT1cImNoZWNrYm94XCJdKTphZnRlciB7XG4gICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgIGNvbnRlbnQ6ICRjb2NoZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6ICR0b3A7XG4gICAgICAgIGxlZnQ6ICRsZWZ0O1xuICAgICAgICBmb250LXNpemU6ICRmb250c2l6ZTtcbiAgICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzOyAvKiBvbiBwcsOpdm9pdCB1bmUgYW5pbWF0aW9uICovXG4gICAgfVxuICAgIC8qIEFzcGVjdCBzaSBcInBhcyBjb2Now6llXCIgKi9cbiAgICAudS1jaGVja2JveC1wYXJlbnQgbGFiZWw6aGFzKCsgW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpKTphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IDA7IC8qIGNvY2hlIGludmlzaWJsZSAqL1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApOyAvKiBtaXNlIMOgIGwnw6ljaGVsbGUgw6AgMCAqL1xuICAgIH1cbiAgICAvKiBBc3BlY3Qgc2kgXCJjb2Now6llXCIgKi9cbiAgICAudS1jaGVja2JveC1wYXJlbnQgbGFiZWw6aGFzKCsgW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkKTphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7IC8qIGNvY2hlIG9wYXF1ZSAqL1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyAvKiBtaXNlIMOgIGwnw6ljaGVsbGUgMToxICovXG4gICAgfVxuXG4gICAgLyogYXNwZWN0IGTDqXNhY3RpdsOpZSAqL1xuICAgIC51LWNoZWNrYm94LXBhcmVudCBsYWJlbDpoYXMoKyBbdHlwZT1cImNoZWNrYm94XCJdOmRpc2FibGVkOm5vdCg6Y2hlY2tlZCkpOmJlZm9yZSxcbiAgICAudS1jaGVja2JveC1wYXJlbnQgbGFiZWw6aGFzKCsgW3R5cGU9XCJjaGVja2JveFwiXTpkaXNhYmxlZDpjaGVja2VkKTpiZWZvcmUge1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBib3JkZXItY29sb3I6ICNiYmI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7XG4gICAgfVxuICAgIC8qIHN0eWxlcyBkZSBsYSBjb2NoZSAoc2kgY29jaMOpZS9kw6lzYWN0aXbDqWUpICovXG4gICAgLnUtY2hlY2tib3gtcGFyZW50IGxhYmVsOmhhcygrIFt0eXBlPVwiY2hlY2tib3hcIl06ZGlzYWJsZWQ6Y2hlY2tlZCk6YWZ0ZXIge1xuICAgICAgICBjb2xvcjogIzk5OTtcbiAgICB9XG4gICAgLyogb24gc3R5bGUgYXVzc2kgbGUgbGFiZWwgcXVhbmQgZMOpc2FjdGl2w6kgKi9cbiAgICAudS1jaGVja2JveC1wYXJlbnQgbGFiZWw6aGFzKCsgW3R5cGU9XCJjaGVja2JveFwiXTpkaXNhYmxlZCkge1xuICAgICAgICBjb2xvcjogI2FhYTtcbiAgICB9XG5cbiAgICAvKiBhc3BlY3QgYXUgaG92ZXIgZGUgbCfDqWzDqW1lbnQgKi9cbiAgICAudS1jaGVja2JveC1wYXJlbnQgbGFiZWw6aGFzKCsgW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkOm5vdCg6ZGlzYWJsZWQpOmhvdmVyKTpiZWZvcmUsXG4gICAgLnUtY2hlY2tib3gtcGFyZW50IGxhYmVsOmhhcygrIFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKTpub3QoOmRpc2FibGVkKTpob3Zlcik6YmVmb3JlIHtcbiAgICAgICAgLy9ib3JkZXItY29sb3I6ICRob3ZlckNvbG9yO1xuICAgIH1cbn1cblxuXG5AbWl4aW4gbGllbi1mbGVjaGUtYmxldSAoJGxmYi1icmVha3BvaW50OiAkbW9iaWxlKSB7XG4gICAgQGluY2x1ZGUgZm9udFNpemUoMTRweCk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zcyk7XG4gICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAxMHB4IDAgMTBweCAyMHB4O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudFk7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTgyXCI7XG4gICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgLypAaWYgJGxmYi1icmVha3BvaW50ID09ICRtb2JpbGUge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxmYi1icmVha3BvaW50KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSovXG59XG5cbkBtaXhpbiBpbnRyby1pbWctZGVzY3JpcHRpb24oKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC50aHVtYm5haWwge1xuICAgICAgICAucGhvdG9zIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweCAwIDAgMTBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICBhIHtcblxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhbGlnbmVtZW50KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMDBweCk7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgcGFkZGluZzogMjVweDtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuXG4gICAgICAgIC50aHVtYm5haWwge1xuICAgICAgICAgICAgLnBob3RvcyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMTBweCAwIDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJi1tb2JpbGUtbm9wYWRkaW5nIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxufVxuXG5AbWl4aW4gdGl0cmUtZ2F1Y2hlLWJvdXRvbi1kcm9pdGUoKSB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgLnRpdHJlIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuICAgIC5ib3V0b24ge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgfVxufVxuXG5cbkBtaXhpbiBsaXN0ZS1wcm9kdWl0cy1tb2JpbGUoKSB7XG4gICAgLy9saXN0ZSBwcm9kdWl0c1xuICAgIC5saXN0ZS1wcm9kdWl0cyB7XG4gICAgICAgIC5kZXRhaWxzLXByb2R1aXRze1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5lbmNhZHJlIHtcbiAgICAgICAgICAgIG1hcmdpbjogNXB4IDIuNSUgMCAwO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgfVxuICAgICAgICAuY2FwdGlvbntcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLmRldGFpbHMtYmFze1xuICAgICAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDE1cHggMCAxMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIC5xdHktcmlnaHQge1xuICAgICAgICAgICAgd2lkdGg6IDE0MHB4O1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgLmJ0bi1hY3Rpb24ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5tZXNzYWdle1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnpvbmVpbmZvIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLmluZm90eXBlcy13cmFwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBQT0xDRVNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi8vc2F0b3NoaVxuQGZvbnQtZmFjZSB7XG4gICAgQGluY2x1ZGUgZm9udC1mYWNlKCdTYXRvc2hpJywgJ1NhdG9zaGktUmVndWxhcicsIDQwMCk7XG59XG5AZm9udC1mYWNlIHtcbiAgICBAaW5jbHVkZSBmb250LWZhY2UoJ1NhdG9zaGknLCAnU2F0b3NoaS1NZWRpdW0nLCA2MDApO1xufVxuQGZvbnQtZmFjZSB7XG4gICAgQGluY2x1ZGUgZm9udC1mYWNlKCdTYXRvc2hpJywgJ1NhdG9zaGktQm9sZCcsIDcwMCk7XG59XG5AZm9udC1mYWNlIHtcbiAgICBAaW5jbHVkZSBmb250LWZhY2UoJ1NhdG9zaGknLCAnU2F0b3NoaS1CbGFjaycsIDgwMCk7XG59XG5cbi8vaWNvbmVzXG5AZm9udC1mYWNlIHtcbiAgICBAaW5jbHVkZSBmb250LWZhY2UoJ0ZvbnRBd2Vzb21lJywgJ2ZvbnRhd2Vzb21lLXdlYmZvbnQnKTtcbn1cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gICAgc3JjOiAgdXJsKCcuLi9wb2xpY2VzL2ljb21vb24uZW90Jyk7XG4gICAgc3JjOiAgdXJsKCcuLi9wb2xpY2VzL2ljb21vb24uZW90I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgIHVybCgnLi4vcG9saWNlcy9pY29tb29uLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICB1cmwoJy4uL3BvbGljZXMvaWNvbW9vbi53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCcuLi9wb2xpY2VzL2ljb21vb24uc3ZnI2ljb21vb24nKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufSIsIi8qIVxuICogQm9vdHN0cmFwIHYzLjMuNyAoaHR0cDovL2dldGJvb3RzdHJhcC5jb20pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE2IFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXG4gKi9cblxuLy8gQ29yZSB2YXJpYWJsZXMgYW5kIG1peGluc1xuQGltcG9ydCBcImJvb3RzdHJhcC92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbWl4aW5zXCI7XG5cbi8vIFJlc2V0IGFuZCBkZXBlbmRlbmNpZXNcbkBpbXBvcnQgXCJib290c3RyYXAvbm9ybWFsaXplXCI7XG4vL0BpbXBvcnQgXCJ+Ym9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9wcmludFwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9nbHlwaGljb25zXCI7XG5cbi8vIGNvcmUgY3NzXG4vKkBpbXBvcnQgXCJ+Ym9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9zY2FmZm9sZGluZ1wiO1xuQGltcG9ydCBcIn5ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL3R5cGVcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9jb2RlXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvZ3JpZFwiO1xuQGltcG9ydCBcIn5ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL3RhYmxlc1wiO1xuQGltcG9ydCBcIn5ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2Zvcm1zXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvYnV0dG9uc1wiOyovXG5cbi8vIGNvbXBvbmVudHNcbi8qQGltcG9ydCBcIn5ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2NvbXBvbmVudC1hbmltYXRpb25zXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvZHJvcGRvd25zXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvYnV0dG9uLWdyb3Vwc1wiO1xuQGltcG9ydCBcIn5ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2lucHV0LWdyb3Vwc1wiO1xuQGltcG9ydCBcIn5ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL25hdmJhclwiO1xuQGltcG9ydCBcIn5ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2JyZWFkY3J1bWJzXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIn5ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL3BhZ2VyXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbGFiZWxzXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvYmFkZ2VzXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvanVtYm90cm9uXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvdGh1bWJuYWlsc1wiO1xuQGltcG9ydCBcIn5ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2FsZXJ0c1wiO1xuQGltcG9ydCBcIn5ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL3Byb2dyZXNzLWJhcnNcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9tZWRpYVwiO1xuQGltcG9ydCBcIn5ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9wYW5lbHNcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9yZXNwb25zaXZlLWVtYmVkXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvd2VsbHNcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9jbG9zZVwiOyovXG5cbi8vIGNvbXBvbmVudHMgdy8gamF2YXNjcmlwdFxuLypAaW1wb3J0IFwifmJvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbW9kYWxzXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvdG9vbHRpcFwiO1xuQGltcG9ydCBcIn5ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL3BvcG92ZXJzXCI7Ki9cbkBpbXBvcnQgXCJib290c3RyYXAvY2Fyb3VzZWxcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9uYXZzXCI7XG5cbi8vIFV0aWxpdHkgY2xhc3Nlc1xuLy9AaW1wb3J0IFwifmJvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvdXRpbGl0aWVzXCI7XG4vL0BpbXBvcnQgXCJ+Ym9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9yZXNwb25zaXZlLXV0aWxpdGllc1wiO1xuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4zIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vL1xuLy8gMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cbi8vIDIuIFByZXZlbnQgaU9TIGFuZCBJRSB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIGRldmljZSBvcmllbnRhdGlvbiBjaGFuZ2UsXG4vLyAgICB3aXRob3V0IGRpc2FibGluZyB1c2VyIHpvb20uXG4vL1xuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDFcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG59XG5cbi8vXG4vLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG4vL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLyBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4vLyBhbmQgRmlyZWZveC5cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXG4vL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4vLyAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4vL1xuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvLyAyXG59XG5cbi8vXG4vLyBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuLy8gUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbi8vXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbi8vIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbi8vXG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyBMaW5rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuLy9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vL1xuLy8gSW1wcm92ZSByZWFkYWJpbGl0eSBvZiBmb2N1c2VkIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgYWxzbyBpbiBhblxuLy8gYWN0aXZlL2hvdmVyIHN0YXRlLlxuLy9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gVGV4dC1sZXZlbCBzZW1hbnRpY3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4vL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4vLyBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbi8vXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLy9cbi8vIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbi8vIEVtYmVkZGVkIGNvbnRlbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbi8vXG5cbmltZyB7XG4gIGJvcmRlcjogMDtcbn1cblxuLy9cbi8vIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuLy9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLyBHcm91cGluZyBjb250ZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4vL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vL1xuLy8gQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuLy9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vL1xuLy8gQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLy9cbi8vIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbi8vXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLy8gRm9ybXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuLy8gc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxuLy9cblxuLy9cbi8vIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbi8vICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuLy8gMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbi8vIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuLy9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDFcbiAgZm9udDogaW5oZXJpdDsgLy8gMlxuICBtYXJnaW46IDA7IC8vIDNcbn1cblxuLy9cbi8vIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuLy9cblxuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4vLyBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuLy8gQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cbi8vIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cbi8vXG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vL1xuLy8gMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2Bcbi8vICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuLy8gMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuLy8gMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbi8vICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbi8vXG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG4gIGN1cnNvcjogcG9pbnRlcjsgLy8gM1xufVxuXG4vL1xuLy8gUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbi8vXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLy9cbi8vIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbi8vXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuLy8gdGhlIFVBIHN0eWxlc2hlZXQuXG4vL1xuXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi8vXG4vLyBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXG4vLyBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxuLy9cbi8vIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4vLyAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuLy9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICBwYWRkaW5nOiAwOyAvLyAyXG59XG5cbi8vXG4vLyBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuLy8gYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbi8vIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbi8vXG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vL1xuLy8gMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4vLyAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuLy9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLzJcbn1cblxuLy9cbi8vIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxuLy8gU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xuLy8gcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxuLy9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4vL1xuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbi8vIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbi8vXG5cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDsgLy8gMVxuICBwYWRkaW5nOiAwOyAvLyAyXG59XG5cbi8vXG4vLyBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxuLy9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLy9cbi8vIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbi8vIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuLy9cblxub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLy8gVGFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuLy9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7XG59XG4iLCIvL1xuLy8gR2x5cGhpY29ucyBmb3IgQm9vdHN0cmFwXG4vL1xuLy8gU2luY2UgaWNvbnMgYXJlIGZvbnRzLCB0aGV5IGNhbiBiZSBwbGFjZWQgYW55d2hlcmUgdGV4dCBpcyBwbGFjZWQgYW5kIGFyZVxuLy8gdGh1cyBhdXRvbWF0aWNhbGx5IHNpemVkIHRvIG1hdGNoIHRoZSBzdXJyb3VuZGluZyBjaGlsZC4gVG8gdXNlLCBjcmVhdGUgYW5cbi8vIGlubGluZSBlbGVtZW50IHdpdGggdGhlIGFwcHJvcHJpYXRlIGNsYXNzZXMsIGxpa2Ugc286XG4vL1xuLy8gPGEgaHJlZj1cIiNcIj48c3BhbiBjbGFzcz1cImdseXBoaWNvbiBnbHlwaGljb24tc3RhclwiPjwvc3Bhbj4gU3RhcjwvYT5cblxuQGF0LXJvb3Qge1xuICAvLyBJbXBvcnQgdGhlIGZvbnRzXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xuICAgIHNyYzogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90JyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90JykpO1xuICAgIHNyYzogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90PyNpZWZpeCcpLCAnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LmVvdD8jaWVmaXgnKSkgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICAgdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKCcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0ud29mZjInKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmMicpKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmJyksICcjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0ud29mZicpKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgIHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aCgnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnR0ZicpLCAnI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnR0ZicpKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5zdmcjI3skaWNvbi1mb250LXN2Zy1pZH0nKSwgJyN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5zdmcjI3skaWNvbi1mb250LXN2Zy1pZH0nKSkgZm9ybWF0KCdzdmcnKTtcbiAgfVxufVxuXG4vLyBDYXRjaGFsbCBiYXNlY2xhc3Ncbi5nbHlwaGljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLy8gSW5kaXZpZHVhbCBpY29uc1xuLmdseXBoaWNvbi1hc3RlcmlzayAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMDAyYVwiOyB9IH1cbi5nbHlwaGljb24tcGx1cyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDAwMmJcIjsgfSB9XG4uZ2x5cGhpY29uLWV1cm8sXG4uZ2x5cGhpY29uLWV1ciAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMGFjXCI7IH0gfVxuLmdseXBoaWNvbi1taW51cyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjIxMlwiOyB9IH1cbi5nbHlwaGljb24tY2xvdWQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDI2MDFcIjsgfSB9XG4uZ2x5cGhpY29uLWVudmVsb3BlICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNzA5XCI7IH0gfVxuLmdseXBoaWNvbi1wZW5jaWwgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjcwZlwiOyB9IH1cbi5nbHlwaGljb24tZ2xhc3MgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDFcIjsgfSB9XG4uZ2x5cGhpY29uLW11c2ljICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDAyXCI7IH0gfVxuLmdseXBoaWNvbi1zZWFyY2ggICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwM1wiOyB9IH1cbi5nbHlwaGljb24taGVhcnQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDVcIjsgfSB9XG4uZ2x5cGhpY29uLXN0YXIgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA2XCI7IH0gfVxuLmdseXBoaWNvbi1zdGFyLWVtcHR5ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwN1wiOyB9IH1cbi5nbHlwaGljb24tdXNlciAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDhcIjsgfSB9XG4uZ2x5cGhpY29uLWZpbG0gICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA5XCI7IH0gfVxuLmdseXBoaWNvbi10aC1sYXJnZSAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxMFwiOyB9IH1cbi5nbHlwaGljb24tdGggICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTFcIjsgfSB9XG4uZ2x5cGhpY29uLXRoLWxpc3QgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEyXCI7IH0gfVxuLmdseXBoaWNvbi1vayAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxM1wiOyB9IH1cbi5nbHlwaGljb24tcmVtb3ZlICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTRcIjsgfSB9XG4uZ2x5cGhpY29uLXpvb20taW4gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE1XCI7IH0gfVxuLmdseXBoaWNvbi16b29tLW91dCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxNlwiOyB9IH1cbi5nbHlwaGljb24tb2ZmICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTdcIjsgfSB9XG4uZ2x5cGhpY29uLXNpZ25hbCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE4XCI7IH0gfVxuLmdseXBoaWNvbi1jb2cgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxOVwiOyB9IH1cbi5nbHlwaGljb24tdHJhc2ggICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjBcIjsgfSB9XG4uZ2x5cGhpY29uLWhvbWUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIxXCI7IH0gfVxuLmdseXBoaWNvbi1maWxlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyMlwiOyB9IH1cbi5nbHlwaGljb24tdGltZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjNcIjsgfSB9XG4uZ2x5cGhpY29uLXJvYWQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI0XCI7IH0gfVxuLmdseXBoaWNvbi1kb3dubG9hZC1hbHQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyNVwiOyB9IH1cbi5nbHlwaGljb24tZG93bmxvYWQgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjZcIjsgfSB9XG4uZ2x5cGhpY29uLXVwbG9hZCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI3XCI7IH0gfVxuLmdseXBoaWNvbi1pbmJveCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyOFwiOyB9IH1cbi5nbHlwaGljb24tcGxheS1jaXJjbGUgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjlcIjsgfSB9XG4uZ2x5cGhpY29uLXJlcGVhdCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMwXCI7IH0gfVxuLmdseXBoaWNvbi1yZWZyZXNoICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzMVwiOyB9IH1cbi5nbHlwaGljb24tbGlzdC1hbHQgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzJcIjsgfSB9XG4uZ2x5cGhpY29uLWxvY2sgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMzXCI7IH0gfVxuLmdseXBoaWNvbi1mbGFnICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzNFwiOyB9IH1cbi5nbHlwaGljb24taGVhZHBob25lcyAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzVcIjsgfSB9XG4uZ2x5cGhpY29uLXZvbHVtZS1vZmYgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM2XCI7IH0gfVxuLmdseXBoaWNvbi12b2x1bWUtZG93biAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzN1wiOyB9IH1cbi5nbHlwaGljb24tdm9sdW1lLXVwICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzhcIjsgfSB9XG4uZ2x5cGhpY29uLXFyY29kZSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM5XCI7IH0gfVxuLmdseXBoaWNvbi1iYXJjb2RlICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0MFwiOyB9IH1cbi5nbHlwaGljb24tdGFnICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDFcIjsgfSB9XG4uZ2x5cGhpY29uLXRhZ3MgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQyXCI7IH0gfVxuLmdseXBoaWNvbi1ib29rICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0M1wiOyB9IH1cbi5nbHlwaGljb24tYm9va21hcmsgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDRcIjsgfSB9XG4uZ2x5cGhpY29uLXByaW50ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ1XCI7IH0gfVxuLmdseXBoaWNvbi1jYW1lcmEgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0NlwiOyB9IH1cbi5nbHlwaGljb24tZm9udCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDdcIjsgfSB9XG4uZ2x5cGhpY29uLWJvbGQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ4XCI7IH0gfVxuLmdseXBoaWNvbi1pdGFsaWMgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0OVwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC1oZWlnaHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTBcIjsgfSB9XG4uZ2x5cGhpY29uLXRleHQtd2lkdGggICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUxXCI7IH0gfVxuLmdseXBoaWNvbi1hbGlnbi1sZWZ0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1MlwiOyB9IH1cbi5nbHlwaGljb24tYWxpZ24tY2VudGVyICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTNcIjsgfSB9XG4uZ2x5cGhpY29uLWFsaWduLXJpZ2h0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU0XCI7IH0gfVxuLmdseXBoaWNvbi1hbGlnbi1qdXN0aWZ5ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1NVwiOyB9IH1cbi5nbHlwaGljb24tbGlzdCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTZcIjsgfSB9XG4uZ2x5cGhpY29uLWluZGVudC1sZWZ0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU3XCI7IH0gfVxuLmdseXBoaWNvbi1pbmRlbnQtcmlnaHQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1OFwiOyB9IH1cbi5nbHlwaGljb24tZmFjZXRpbWUtdmlkZW8gICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTlcIjsgfSB9XG4uZ2x5cGhpY29uLXBpY3R1cmUgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYwXCI7IH0gfVxuLmdseXBoaWNvbi1tYXAtbWFya2VyICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2MlwiOyB9IH1cbi5nbHlwaGljb24tYWRqdXN0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjNcIjsgfSB9XG4uZ2x5cGhpY29uLXRpbnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY0XCI7IH0gfVxuLmdseXBoaWNvbi1lZGl0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2NVwiOyB9IH1cbi5nbHlwaGljb24tc2hhcmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjZcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZWNrICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY3XCI7IH0gfVxuLmdseXBoaWNvbi1tb3ZlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2OFwiOyB9IH1cbi5nbHlwaGljb24tc3RlcC1iYWNrd2FyZCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjlcIjsgfSB9XG4uZ2x5cGhpY29uLWZhc3QtYmFja3dhcmQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDcwXCI7IH0gfVxuLmdseXBoaWNvbi1iYWNrd2FyZCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3MVwiOyB9IH1cbi5nbHlwaGljb24tcGxheSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzJcIjsgfSB9XG4uZ2x5cGhpY29uLXBhdXNlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDczXCI7IH0gfVxuLmdseXBoaWNvbi1zdG9wICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3NFwiOyB9IH1cbi5nbHlwaGljb24tZm9yd2FyZCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzVcIjsgfSB9XG4uZ2x5cGhpY29uLWZhc3QtZm9yd2FyZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc2XCI7IH0gfVxuLmdseXBoaWNvbi1zdGVwLWZvcndhcmQgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3N1wiOyB9IH1cbi5nbHlwaGljb24tZWplY3QgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzhcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZXZyb24tbGVmdCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc5XCI7IH0gfVxuLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4MFwiOyB9IH1cbi5nbHlwaGljb24tcGx1cy1zaWduICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODFcIjsgfSB9XG4uZ2x5cGhpY29uLW1pbnVzLXNpZ24gICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgyXCI7IH0gfVxuLmdseXBoaWNvbi1yZW1vdmUtc2lnbiAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4M1wiOyB9IH1cbi5nbHlwaGljb24tb2stc2lnbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODRcIjsgfSB9XG4uZ2x5cGhpY29uLXF1ZXN0aW9uLXNpZ24gICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg1XCI7IH0gfVxuLmdseXBoaWNvbi1pbmZvLXNpZ24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4NlwiOyB9IH1cbi5nbHlwaGljb24tc2NyZWVuc2hvdCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODdcIjsgfSB9XG4uZ2x5cGhpY29uLXJlbW92ZS1jaXJjbGUgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg4XCI7IH0gfVxuLmdseXBoaWNvbi1vay1jaXJjbGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4OVwiOyB9IH1cbi5nbHlwaGljb24tYmFuLWNpcmNsZSAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTBcIjsgfSB9XG4uZ2x5cGhpY29uLWFycm93LWxlZnQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkxXCI7IH0gfVxuLmdseXBoaWNvbi1hcnJvdy1yaWdodCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5MlwiOyB9IH1cbi5nbHlwaGljb24tYXJyb3ctdXAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTNcIjsgfSB9XG4uZ2x5cGhpY29uLWFycm93LWRvd24gICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk0XCI7IH0gfVxuLmdseXBoaWNvbi1zaGFyZS1hbHQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5NVwiOyB9IH1cbi5nbHlwaGljb24tcmVzaXplLWZ1bGwgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTZcIjsgfSB9XG4uZ2x5cGhpY29uLXJlc2l6ZS1zbWFsbCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk3XCI7IH0gfVxuLmdseXBoaWNvbi1leGNsYW1hdGlvbi1zaWduICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwMVwiOyB9IH1cbi5nbHlwaGljb24tZ2lmdCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDJcIjsgfSB9XG4uZ2x5cGhpY29uLWxlYWYgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTAzXCI7IH0gfVxuLmdseXBoaWNvbi1maXJlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwNFwiOyB9IH1cbi5nbHlwaGljb24tZXllLW9wZW4gICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDVcIjsgfSB9XG4uZ2x5cGhpY29uLWV5ZS1jbG9zZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA2XCI7IH0gfVxuLmdseXBoaWNvbi13YXJuaW5nLXNpZ24gICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwN1wiOyB9IH1cbi5nbHlwaGljb24tcGxhbmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDhcIjsgfSB9XG4uZ2x5cGhpY29uLWNhbGVuZGFyICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA5XCI7IH0gfVxuLmdseXBoaWNvbi1yYW5kb20gICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExMFwiOyB9IH1cbi5nbHlwaGljb24tY29tbWVudCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTFcIjsgfSB9XG4uZ2x5cGhpY29uLW1hZ25ldCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTEyXCI7IH0gfVxuLmdseXBoaWNvbi1jaGV2cm9uLXVwICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExM1wiOyB9IH1cbi5nbHlwaGljb24tY2hldnJvbi1kb3duICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTRcIjsgfSB9XG4uZ2x5cGhpY29uLXJldHdlZXQgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE1XCI7IH0gfVxuLmdseXBoaWNvbi1zaG9wcGluZy1jYXJ0ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExNlwiOyB9IH1cbi5nbHlwaGljb24tZm9sZGVyLWNsb3NlICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTdcIjsgfSB9XG4uZ2x5cGhpY29uLWZvbGRlci1vcGVuICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE4XCI7IH0gfVxuLmdseXBoaWNvbi1yZXNpemUtdmVydGljYWwgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExOVwiOyB9IH1cbi5nbHlwaGljb24tcmVzaXplLWhvcml6b250YWwgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjBcIjsgfSB9XG4uZ2x5cGhpY29uLWhkZCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIxXCI7IH0gfVxuLmdseXBoaWNvbi1idWxsaG9ybiAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyMlwiOyB9IH1cbi5nbHlwaGljb24tYmVsbCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjNcIjsgfSB9XG4uZ2x5cGhpY29uLWNlcnRpZmljYXRlICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI0XCI7IH0gfVxuLmdseXBoaWNvbi10aHVtYnMtdXAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyNVwiOyB9IH1cbi5nbHlwaGljb24tdGh1bWJzLWRvd24gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjZcIjsgfSB9XG4uZ2x5cGhpY29uLWhhbmQtcmlnaHQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI3XCI7IH0gfVxuLmdseXBoaWNvbi1oYW5kLWxlZnQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyOFwiOyB9IH1cbi5nbHlwaGljb24taGFuZC11cCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjlcIjsgfSB9XG4uZ2x5cGhpY29uLWhhbmQtZG93biAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMwXCI7IH0gfVxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctcmlnaHQgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzMVwiOyB9IH1cbi5nbHlwaGljb24tY2lyY2xlLWFycm93LWxlZnQgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzJcIjsgfSB9XG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy11cCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMzXCI7IH0gfVxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctZG93biAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzNFwiOyB9IH1cbi5nbHlwaGljb24tZ2xvYmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzVcIjsgfSB9XG4uZ2x5cGhpY29uLXdyZW5jaCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM2XCI7IH0gfVxuLmdseXBoaWNvbi10YXNrcyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzN1wiOyB9IH1cbi5nbHlwaGljb24tZmlsdGVyICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzhcIjsgfSB9XG4uZ2x5cGhpY29uLWJyaWVmY2FzZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM5XCI7IH0gfVxuLmdseXBoaWNvbi1mdWxsc2NyZWVuICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0MFwiOyB9IH1cbi5nbHlwaGljb24tZGFzaGJvYXJkICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDFcIjsgfSB9XG4uZ2x5cGhpY29uLXBhcGVyY2xpcCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQyXCI7IH0gfVxuLmdseXBoaWNvbi1oZWFydC1lbXB0eSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0M1wiOyB9IH1cbi5nbHlwaGljb24tbGluayAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDRcIjsgfSB9XG4uZ2x5cGhpY29uLXBob25lICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ1XCI7IH0gfVxuLmdseXBoaWNvbi1wdXNocGluICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0NlwiOyB9IH1cbi5nbHlwaGljb24tdXNkICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDhcIjsgfSB9XG4uZ2x5cGhpY29uLWdicCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ5XCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1MFwiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1hbHBoYWJldCAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTFcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktYWxwaGFiZXQtYWx0ICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUyXCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LW9yZGVyICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1M1wiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1vcmRlci1hbHQgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTRcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktYXR0cmlidXRlcyAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU1XCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LWF0dHJpYnV0ZXMtYWx0IHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1NlwiOyB9IH1cbi5nbHlwaGljb24tdW5jaGVja2VkICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTdcIjsgfSB9XG4uZ2x5cGhpY29uLWV4cGFuZCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU4XCI7IH0gfVxuLmdseXBoaWNvbi1jb2xsYXBzZS1kb3duICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1OVwiOyB9IH1cbi5nbHlwaGljb24tY29sbGFwc2UtdXAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjBcIjsgfSB9XG4uZ2x5cGhpY29uLWxvZy1pbiAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYxXCI7IH0gfVxuLmdseXBoaWNvbi1mbGFzaCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2MlwiOyB9IH1cbi5nbHlwaGljb24tbG9nLW91dCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjNcIjsgfSB9XG4uZ2x5cGhpY29uLW5ldy13aW5kb3cgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY0XCI7IH0gfVxuLmdseXBoaWNvbi1yZWNvcmQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2NVwiOyB9IH1cbi5nbHlwaGljb24tc2F2ZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjZcIjsgfSB9XG4uZ2x5cGhpY29uLW9wZW4gICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY3XCI7IH0gfVxuLmdseXBoaWNvbi1zYXZlZCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2OFwiOyB9IH1cbi5nbHlwaGljb24taW1wb3J0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjlcIjsgfSB9XG4uZ2x5cGhpY29uLWV4cG9ydCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTcwXCI7IH0gfVxuLmdseXBoaWNvbi1zZW5kICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3MVwiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LWRpc2sgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzJcIjsgfSB9XG4uZ2x5cGhpY29uLWZsb3BweS1zYXZlZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTczXCI7IH0gfVxuLmdseXBoaWNvbi1mbG9wcHktcmVtb3ZlICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3NFwiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LXNhdmUgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzVcIjsgfSB9XG4uZ2x5cGhpY29uLWZsb3BweS1vcGVuICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc2XCI7IH0gfVxuLmdseXBoaWNvbi1jcmVkaXQtY2FyZCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3N1wiOyB9IH1cbi5nbHlwaGljb24tdHJhbnNmZXIgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzhcIjsgfSB9XG4uZ2x5cGhpY29uLWN1dGxlcnkgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc5XCI7IH0gfVxuLmdseXBoaWNvbi1oZWFkZXIgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4MFwiOyB9IH1cbi5nbHlwaGljb24tY29tcHJlc3NlZCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODFcIjsgfSB9XG4uZ2x5cGhpY29uLWVhcnBob25lICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgyXCI7IH0gfVxuLmdseXBoaWNvbi1waG9uZS1hbHQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4M1wiOyB9IH1cbi5nbHlwaGljb24tdG93ZXIgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODRcIjsgfSB9XG4uZ2x5cGhpY29uLXN0YXRzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg1XCI7IH0gfVxuLmdseXBoaWNvbi1zZC12aWRlbyAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4NlwiOyB9IH1cbi5nbHlwaGljb24taGQtdmlkZW8gICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODdcIjsgfSB9XG4uZ2x5cGhpY29uLXN1YnRpdGxlcyAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg4XCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC1zdGVyZW8gICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4OVwiOyB9IH1cbi5nbHlwaGljb24tc291bmQtZG9sYnkgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTBcIjsgfSB9XG4uZ2x5cGhpY29uLXNvdW5kLTUtMSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkxXCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC02LTEgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5MlwiOyB9IH1cbi5nbHlwaGljb24tc291bmQtNy0xICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTNcIjsgfSB9XG4uZ2x5cGhpY29uLWNvcHlyaWdodC1tYXJrICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk0XCI7IH0gfVxuLmdseXBoaWNvbi1yZWdpc3RyYXRpb24tbWFyayAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5NVwiOyB9IH1cbi5nbHlwaGljb24tY2xvdWQtZG93bmxvYWQgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTdcIjsgfSB9XG4uZ2x5cGhpY29uLWNsb3VkLXVwbG9hZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk4XCI7IH0gfVxuLmdseXBoaWNvbi10cmVlLWNvbmlmZXIgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5OVwiOyB9IH1cbi5nbHlwaGljb24tdHJlZS1kZWNpZHVvdXMgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDBcIjsgfSB9XG4uZ2x5cGhpY29uLWNkICAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAxXCI7IH0gfVxuLmdseXBoaWNvbi1zYXZlLWZpbGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwMlwiOyB9IH1cbi5nbHlwaGljb24tb3Blbi1maWxlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDNcIjsgfSB9XG4uZ2x5cGhpY29uLWxldmVsLXVwICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA0XCI7IH0gfVxuLmdseXBoaWNvbi1jb3B5ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwNVwiOyB9IH1cbi5nbHlwaGljb24tcGFzdGUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDZcIjsgfSB9XG4vLyBUaGUgZm9sbG93aW5nIDIgR2x5cGhpY29ucyBhcmUgb21pdHRlZCBmb3IgdGhlIHRpbWUgYmVpbmcgYmVjYXVzZVxuLy8gdGhleSBjdXJyZW50bHkgdXNlIFVuaWNvZGUgY29kZXBvaW50cyB0aGF0IGFyZSBvdXRzaWRlIHRoZVxuLy8gQmFzaWMgTXVsdGlsaW5ndWFsIFBsYW5lIChCTVApLiBPbGRlciBidWdneSB2ZXJzaW9ucyBvZiBXZWJLaXQgY2FuJ3QgaGFuZGxlXG4vLyBub24tQk1QIGNvZGVwb2ludHMgaW4gQ1NTIHN0cmluZyBlc2NhcGVzLCBhbmQgdGh1cyBjYW4ndCBkaXNwbGF5IHRoZXNlIHR3byBpY29ucy5cbi8vIE5vdGFibHksIHRoZSBidWcgYWZmZWN0cyBzb21lIG9sZGVyIHZlcnNpb25zIG9mIHRoZSBBbmRyb2lkIEJyb3dzZXIuXG4vLyBNb3JlIGluZm86IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTAxMDZcbi8vIC5nbHlwaGljb24tZG9vciAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDFmNmFhXCI7IH0gfVxuLy8gLmdseXBoaWNvbi1rZXkgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMWY1MTFcIjsgfSB9XG4uZ2x5cGhpY29uLWFsZXJ0ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA5XCI7IH0gfVxuLmdseXBoaWNvbi1lcXVhbGl6ZXIgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxMFwiOyB9IH1cbi5nbHlwaGljb24ta2luZyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTFcIjsgfSB9XG4uZ2x5cGhpY29uLXF1ZWVuICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjEyXCI7IH0gfVxuLmdseXBoaWNvbi1wYXduICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxM1wiOyB9IH1cbi5nbHlwaGljb24tYmlzaG9wICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTRcIjsgfSB9XG4uZ2x5cGhpY29uLWtuaWdodCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE1XCI7IH0gfVxuLmdseXBoaWNvbi1iYWJ5LWZvcm11bGEgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxNlwiOyB9IH1cbi5nbHlwaGljb24tdGVudCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDI2ZmFcIjsgfSB9XG4uZ2x5cGhpY29uLWJsYWNrYm9hcmQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE4XCI7IH0gfVxuLmdseXBoaWNvbi1iZWQgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxOVwiOyB9IH1cbi5nbHlwaGljb24tYXBwbGUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGY4ZmZcIjsgfSB9XG4uZ2x5cGhpY29uLWVyYXNlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjIxXCI7IH0gfVxuLmdseXBoaWNvbi1ob3VyZ2xhc3MgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjMxYlwiOyB9IH1cbi5nbHlwaGljb24tbGFtcCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjNcIjsgfSB9XG4uZ2x5cGhpY29uLWR1cGxpY2F0ZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI0XCI7IH0gfVxuLmdseXBoaWNvbi1waWdneS1iYW5rICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyNVwiOyB9IH1cbi5nbHlwaGljb24tc2Npc3NvcnMgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjZcIjsgfSB9XG4uZ2x5cGhpY29uLWJpdGNvaW4gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI3XCI7IH0gfVxuLmdseXBoaWNvbi1idGMgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyN1wiOyB9IH1cbi5nbHlwaGljb24teGJ0ICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjdcIjsgfSB9XG4uZ2x5cGhpY29uLXllbiAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwwMGE1XCI7IH0gfVxuLmdseXBoaWNvbi1qcHkgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMDBhNVwiOyB9IH1cbi5nbHlwaGljb24tcnVibGUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIwYmRcIjsgfSB9XG4uZ2x5cGhpY29uLXJ1YiAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMGJkXCI7IH0gfVxuLmdseXBoaWNvbi1zY2FsZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzMFwiOyB9IH1cbi5nbHlwaGljb24taWNlLWxvbGx5ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzFcIjsgfSB9XG4uZ2x5cGhpY29uLWljZS1sb2xseS10YXN0ZWQgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjMyXCI7IH0gfVxuLmdseXBoaWNvbi1lZHVjYXRpb24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzM1wiOyB9IH1cbi5nbHlwaGljb24tb3B0aW9uLWhvcml6b250YWwgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzRcIjsgfSB9XG4uZ2x5cGhpY29uLW9wdGlvbi12ZXJ0aWNhbCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM1XCI7IH0gfVxuLmdseXBoaWNvbi1tZW51LWhhbWJ1cmdlciAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzNlwiOyB9IH1cbi5nbHlwaGljb24tbW9kYWwtd2luZG93ICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzdcIjsgfSB9XG4uZ2x5cGhpY29uLW9pbCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM4XCI7IH0gfVxuLmdseXBoaWNvbi1ncmFpbiAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzOVwiOyB9IH1cbi5nbHlwaGljb24tc3VuZ2xhc3NlcyAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDBcIjsgfSB9XG4uZ2x5cGhpY29uLXRleHQtc2l6ZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQxXCI7IH0gfVxuLmdseXBoaWNvbi10ZXh0LWNvbG9yICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0MlwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC1iYWNrZ3JvdW5kICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDNcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi10b3AgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ0XCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tYm90dG9tICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0NVwiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLWhvcml6b250YWx7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDZcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1sZWZ0ICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ3XCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tdmVydGljYWwgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0OFwiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLXJpZ2h0ICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDlcIjsgfSB9XG4uZ2x5cGhpY29uLXRyaWFuZ2xlLXJpZ2h0ICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjUwXCI7IH0gfVxuLmdseXBoaWNvbi10cmlhbmdsZS1sZWZ0ICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1MVwiOyB9IH1cbi5nbHlwaGljb24tdHJpYW5nbGUtYm90dG9tICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTJcIjsgfSB9XG4uZ2x5cGhpY29uLXRyaWFuZ2xlLXRvcCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjUzXCI7IH0gfVxuLmdseXBoaWNvbi1jb25zb2xlICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1NFwiOyB9IH1cbi5nbHlwaGljb24tc3VwZXJzY3JpcHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTVcIjsgfSB9XG4uZ2x5cGhpY29uLXN1YnNjcmlwdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU2XCI7IH0gfVxuLmdseXBoaWNvbi1tZW51LWxlZnQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1N1wiOyB9IH1cbi5nbHlwaGljb24tbWVudS1yaWdodCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNThcIjsgfSB9XG4uZ2x5cGhpY29uLW1lbnUtZG93biAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU5XCI7IH0gfVxuLmdseXBoaWNvbi1tZW51LXVwICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI2MFwiOyB9IH1cbiIsIi8vXG4vLyBDYXJvdXNlbFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBXcmFwcGVyIGZvciB0aGUgc2xpZGUgY29udGFpbmVyIGFuZCBpbmRpY2F0b3JzXG4uY2Fyb3VzZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAuaXRlbSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbiguNnMgZWFzZS1pbi1vdXQgbGVmdCk7XG5cbiAgICAvLyBBY2NvdW50IGZvciBqYW5raXR1ZGUgb24gaW1hZ2VzXG4gICAgPiBpbWcsXG4gICAgPiBhID4gaW1nIHtcbiAgICAgIEBpbmNsdWRlIGltZy1yZXNwb25zaXZlO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgLy8gV2ViS2l0IENTUzMgdHJhbnNmb3JtcyBmb3Igc3VwcG9ydGVkIGRldmljZXNcbiAgICBAbWVkaWEgYWxsIGFuZCAodHJhbnNmb3JtLTNkKSwgKC13ZWJraXQtdHJhbnNmb3JtLTNkKSB7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXRyYW5zZm9ybSgwLjZzIGVhc2UtaW4tb3V0KTtcbiAgICAgIEBpbmNsdWRlIGJhY2tmYWNlLXZpc2liaWxpdHkoaGlkZGVuKTtcbiAgICAgIEBpbmNsdWRlIHBlcnNwZWN0aXZlKDEwMDBweCk7XG5cbiAgICAgICYubmV4dCxcbiAgICAgICYuYWN0aXZlLnJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgICAmLnByZXYsXG4gICAgICAmLmFjdGl2ZS5sZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgICAgJi5uZXh0LmxlZnQsXG4gICAgICAmLnByZXYucmlnaHQsXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gID4gLmFjdGl2ZSxcbiAgPiAubmV4dCxcbiAgPiAucHJldiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICA+IC5hY3RpdmUge1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICA+IC5uZXh0LFxuICA+IC5wcmV2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgPiAubmV4dCB7XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuICA+IC5wcmV2IHtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgfVxuICA+IC5uZXh0LmxlZnQsXG4gID4gLnByZXYucmlnaHQge1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICA+IC5hY3RpdmUubGVmdCB7XG4gICAgbGVmdDogLTEwMCU7XG4gIH1cbiAgPiAuYWN0aXZlLnJpZ2h0IHtcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG5cbn1cblxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBIaWRkZW4gYnkgZGVmYXVsdCBmb3Igc21hbGxlciB2aWV3cG9ydHNcbi5jYXJvdXNlbC1jYXB0aW9uIHtcblxufVxuXG5cbi8vIFNjYWxlIHVwIGNvbnRyb2xzIGZvciB0YWJsZXRzIGFuZCB1cFxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcblxuICAvLyBTY2FsZSB1cCB0aGUgY29udHJvbHMgYSBzbWlkZ2VcbiAgLmNhcm91c2VsLWNvbnRyb2wge1xuICAgIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0LFxuICAgIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCxcbiAgICAuaWNvbi1wcmV2LFxuICAgIC5pY29uLW5leHQge1xuICAgICAgd2lkdGg6ICgkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemUgKiAxLjUpO1xuICAgICAgaGVpZ2h0OiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplICogMS41KTtcbiAgICAgIG1hcmdpbi10b3A6ICgkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemUgLyAtMik7XG4gICAgICBmb250LXNpemU6ICgkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemUgKiAxLjUpO1xuICAgIH1cbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCxcbiAgICAuaWNvbi1wcmV2IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAoJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplIC8gLTIpO1xuICAgIH1cbiAgICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQsXG4gICAgLmljb24tbmV4dCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICgkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemUgLyAtMik7XG4gICAgfVxuICB9XG5cbiAgLy8gU2hvdyBhbmQgbGVmdCBhbGlnbiB0aGUgY2FwdGlvbnNcbiAgLmNhcm91c2VsLWNhcHRpb24ge1xuICAgIGxlZnQ6IDIwJTtcbiAgICByaWdodDogMjAlO1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgLy8gTW92ZSB1cCB0aGUgaW5kaWNhdG9yc1xuICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gICAgYm90dG9tOiAyMHB4O1xuICB9XG59XG4iLCIvLyBWZW5kb3IgUHJlZml4ZXNcbi8vXG4vLyBBbGwgdmVuZG9yIG1peGlucyBhcmUgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgZHVlIHRvIHRoZSBpbnRyb2R1Y3Rpb24gb2Zcbi8vIEF1dG9wcmVmaXhlciBpbiBvdXIgR3J1bnRmaWxlLiBUaGV5IGhhdmUgYmVlbiByZW1vdmVkIGluIHY0LlxuXG4vLyAtIEFuaW1hdGlvbnNcbi8vIC0gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gLSBCb3ggc2hhZG93XG4vLyAtIEJveCBzaXppbmdcbi8vIC0gQ29udGVudCBjb2x1bW5zXG4vLyAtIEh5cGhlbnNcbi8vIC0gUGxhY2Vob2xkZXIgdGV4dFxuLy8gLSBUcmFuc2Zvcm1hdGlvbnNcbi8vIC0gVHJhbnNpdGlvbnNcbi8vIC0gVXNlciBTZWxlY3RcblxuXG4vLyBBbmltYXRpb25zXG5AbWl4aW4gYW5pbWF0aW9uKCRhbmltYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgLW8tYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tbmFtZSgkbmFtZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogJG5hbWU7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWR1cmF0aW9uKCRkdXJhdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZGVsYXkoJGRlbGF5KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCgkaXRlcmF0aW9uLWNvdW50KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcbiAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xufVxuQG1peGluIGFuaW1hdGlvbi1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZmlsbC1tb2RlKCRmaWxsLW1vZGUpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG59XG5cbi8vIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIFByZXZlbnQgYnJvd3NlcnMgZnJvbSBmbGlja2VyaW5nIHdoZW4gdXNpbmcgQ1NTIDNEIHRyYW5zZm9ybXMuXG4vLyBEZWZhdWx0IHZhbHVlIGlzIGB2aXNpYmxlYCwgYnV0IGNhbiBiZSBjaGFuZ2VkIHRvIGBoaWRkZW5gXG5cbkBtaXhpbiBiYWNrZmFjZS12aXNpYmlsaXR5KCR2aXNpYmlsaXR5KSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG59XG5cbi8vIERyb3Agc2hhZG93c1xuLy9cbi8vIE5vdGU6IERlcHJlY2F0ZWQgYC5ib3gtc2hhZG93KClgIGFzIG9mIHYzLjEuMCBzaW5jZSBhbGwgb2YgQm9vdHN0cmFwJ3Ncbi8vIHN1cHBvcnRlZCBicm93c2VycyB0aGF0IGhhdmUgYm94IHNoYWRvdyBjYXBhYmlsaXRpZXMgbm93IHN1cHBvcnQgaXQuXG5cbkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3cuLi4pIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAkc2hhZG93OyAvLyBpT1MgPDQuMyAmIEFuZHJvaWQgPDQuMVxuICAgICAgICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG59XG5cbi8vIEJveCBzaXppbmdcbkBtaXhpbiBib3gtc2l6aW5nKCRib3htb2RlbCkge1xuICAtd2Via2l0LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgLW1vei1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgICAgICAgYm94LXNpemluZzogJGJveG1vZGVsO1xufVxuXG4vLyBDU1MzIENvbnRlbnQgQ29sdW1uc1xuQG1peGluIGNvbnRlbnQtY29sdW1ucygkY29sdW1uLWNvdW50LCAkY29sdW1uLWdhcDogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC13ZWJraXQtY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgICAtbW96LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgICAgICAgICBjb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gIC13ZWJraXQtY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgIC1tb3otY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgICAgICAgY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG59XG5cbi8vIE9wdGlvbmFsIGh5cGhlbmF0aW9uXG5AbWl4aW4gaHlwaGVucygkbW9kZTogYXV0bykge1xuICAtd2Via2l0LWh5cGhlbnM6ICRtb2RlO1xuICAgICAtbW96LWh5cGhlbnM6ICRtb2RlO1xuICAgICAgLW1zLWh5cGhlbnM6ICRtb2RlOyAvLyBJRTEwK1xuICAgICAgIC1vLWh5cGhlbnM6ICRtb2RlO1xuICAgICAgICAgIGh5cGhlbnM6ICRtb2RlO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbi8vIFBsYWNlaG9sZGVyIHRleHRcbkBtaXhpbiBwbGFjZWhvbGRlcigkY29sb3I6ICRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcikge1xuICAvLyBGaXJlZm94XG4gICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgb3BhY2l0eTogMTsgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjZcbiAgfVxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkY29sb3I7IH0gLy8gSW50ZXJuZXQgRXhwbG9yZXIgMTArXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBTYWZhcmkgYW5kIENocm9tZVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvbnNcbkBtaXhpbiBzY2FsZSgkcmF0aW8uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG59XG5cbkBtaXhpbiBzY2FsZVgoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbn1cbkBtaXhpbiBzY2FsZVkoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbn1cbkBtaXhpbiBza2V3KCR4LCAkeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzQ4ODU7IElFOStcbiAgICAgICAtby10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZSgkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XG59XG5AbWl4aW4gcm90YXRlKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVgoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVkoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xufVxuQG1peGluIHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xufVxuQG1peGluIHBlcnNwZWN0aXZlLW9yaWdpbigkcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgLW1vei1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbn1cbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjsgLy8gSUU5IG9ubHlcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xufVxuXG5cbi8vIFRyYW5zaXRpb25zXG5cbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1wcm9wZXJ0eSgkdHJhbnNpdGlvbi1wcm9wZXJ0eS4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xufVxuQG1peGluIHRyYW5zaXRpb24tZGVsYXkoJHRyYW5zaXRpb24tZGVsYXkpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCR0cmFuc2l0aW9uLWR1cmF0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdHJhbnNmb3JtKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbn1cblxuXG4vLyBVc2VyIHNlbGVjdFxuLy8gRm9yIHNlbGVjdGluZyB0ZXh0IG9uIHRoZSBwYWdlXG5cbkBtaXhpbiB1c2VyLXNlbGVjdCgkc2VsZWN0KSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7IC8vIElFMTArXG4gICAgICAgICAgdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cbkBtaXhpbiBpbWctcmVzcG9uc2l2ZSgkZGlzcGxheTogYmxvY2spIHtcbiAgZGlzcGxheTogJGRpc3BsYXk7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgaGVpZ2h0OiBhdXRvOyAvLyBQYXJ0IDI6IFNjYWxlIHRoZSBoZWlnaHQgYWNjb3JkaW5nIHRvIHRoZSB3aWR0aCwgb3RoZXJ3aXNlIHlvdSBnZXQgc3RyZXRjaGluZ1xufVxuXG5cbi8vIFJldGluYSBpbWFnZVxuLy9cbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS4gTm90ZSB0aGF0IHRoZVxuLy8gc3BlbGxpbmcgb2YgYG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpb2AgaXMgaW50ZW50aW9uYWwuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1pbWFnZS1wYXRoKFwiI3skZmlsZS0xeH1cIiksIFwiI3skZmlsZS0xeH1cIikpO1xuXG4gIEBtZWRpYVxuICBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoIG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIvMSksXG4gIG9ubHkgc2NyZWVuIGFuZCAoIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCBtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSxcbiAgb25seSBzY3JlZW4gYW5kICggbWluLXJlc29sdXRpb246IDJkcHB4KSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMnh9XCIpLCBcIiN7JGZpbGUtMnh9XCIpKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aC0xeCAkaGVpZ2h0LTF4O1xuICB9XG59XG4iLCIvL1xuLy8gTmF2c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubmF2IHtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IHVsL29sXG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gID4gbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgID4gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nO1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdGF0ZSBzZXRzIHRleHQgdG8gZ3JheSBhbmQgbnVrZXMgaG92ZXIvdGFiIGVmZmVjdHNcbiAgICAmLmRpc2FibGVkID4gYSB7XG4gICAgICBjb2xvcjogJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2LWRpc2FibGVkLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBPcGVuIGRyb3Bkb3duc1xuICAub3BlbiA+IGEge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtbGluay1ob3Zlci1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJGxpbmstY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gTmF2IGRpdmlkZXJzIChkZXByZWNhdGVkIHdpdGggdjMuMC4xKVxuICAvL1xuICAvLyBUaGlzIHNob3VsZCBoYXZlIGJlZW4gcmVtb3ZlZCBpbiB2MyB3aXRoIHRoZSBkcm9wcGluZyBvZiBgLm5hdi1saXN0YCwgYnV0XG4gIC8vIHdlIG1pc3NlZCBpdC4gV2UgZG9uJ3QgY3VycmVudGx5IHN1cHBvcnQgdGhpcyBhbnl3aGVyZSwgYnV0IGluIHRoZSBpbnRlcmVzdFxuICAvLyBvZiBtYWludGFpbmluZyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IGluIGNhc2UgeW91IHVzZSBpdCwgaXQncyBkZXByZWNhdGVkLlxuICAubmF2LWRpdmlkZXIge1xuICAgIEBpbmNsdWRlIG5hdi1kaXZpZGVyO1xuICB9XG5cbiAgLy8gUHJldmVudCBJRTggZnJvbSBtaXNwbGFjaW5nIGltZ3NcbiAgLy9cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2lzc3Vlcy85ODQjaXNzdWVjb21tZW50LTM5ODU5ODlcbiAgPiBsaSA+IGEgPiBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxufVxuXG5cbi8vIFRhYnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gR2l2ZSB0aGUgdGFicyBzb21ldGhpbmcgdG8gc2l0IG9uXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLy8gTWFrZSB0aGUgbGlzdC1pdGVtcyBvdmVybGF5IHRoZSBib3R0b20gYm9yZGVyXG4gICAgbWFyZ2luLWJvdHRvbTogLTFweDtcblxuICAgIC8vIEFjdHVhbCB0YWJzIChhcyBsaW5rcylcbiAgICA+IGEge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZSAwIDA7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlLCBhbmQgaXRzIDpob3ZlciB0byBvdmVycmlkZSBub3JtYWwgOmhvdmVyXG4gICAgJi5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gcHVsbGluZyB0aGlzIGluIG1haW5seSBmb3IgbGVzcyBzaG9ydGhhbmRcbiAgJi5uYXYtanVzdGlmaWVkIHtcbiAgICBAZXh0ZW5kIC5uYXYtanVzdGlmaWVkO1xuICAgIEBleHRlbmQgLm5hdi10YWJzLWp1c3RpZmllZDtcbiAgfVxufVxuXG5cbi8vIFBpbGxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubmF2LXBpbGxzIHtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAvLyBMaW5rcyByZW5kZXJlZCBhcyBwaWxsc1xuICAgID4gYSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuICAgICsgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAmLmFjdGl2ZSA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gU3RhY2tlZCBwaWxsc1xuLm5hdi1zdGFja2VkIHtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgKyBsaSB7XG4gICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgLy8gbm8gbmVlZCBmb3IgdGhpcyBnYXAgYmV0d2VlbiBuYXYgaXRlbXNcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXYgdmFyaWF0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gSnVzdGlmaWVkIG5hdiBsaW5rc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gbGkge1xuICAgIGZsb2F0OiBub25lO1xuICAgID4gYSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgPiAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgPiBhIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gTW92ZSBib3JkZXJzIHRvIGFuY2hvcnMgaW5zdGVhZCBvZiBib3R0b20gb2YgbGlzdFxuLy9cbi8vIE1peGluIGZvciBhZGRpbmcgb24gdG9wIHRoZSBzaGFyZWQgYC5uYXYtanVzdGlmaWVkYCBzdHlsZXMgZm9yIG91ciB0YWJzXG4ubmF2LXRhYnMtanVzdGlmaWVkIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICA+IGxpID4gYSB7XG4gICAgLy8gT3ZlcnJpZGUgbWFyZ2luIGZyb20gLm5hdi10YWJzXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIH1cblxuICA+IC5hY3RpdmUgPiBhLFxuICA+IC5hY3RpdmUgPiBhOmhvdmVyLFxuICA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuICAgIH1cbiAgICA+IC5hY3RpdmUgPiBhLFxuICAgID4gLmFjdGl2ZSA+IGE6aG92ZXIsXG4gICAgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5cbi8vIERyb3Bkb3duc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBTcGVjaWZpYyBkcm9wZG93bnNcbi5uYXYtdGFicyAuZHJvcGRvd24tbWVudSB7XG4gIC8vIG1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICBtYXJnaW4tdG9wOiAtMXB4O1xuICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbn1cbiIsIi8vIENsZWFyZml4XG4vL1xuLy8gRm9yIG1vZGVybiBicm93c2Vyc1xuLy8gMS4gVGhlIHNwYWNlIGNvbnRlbnQgaXMgb25lIHdheSB0byBhdm9pZCBhbiBPcGVyYSBidWcgd2hlbiB0aGVcbi8vICAgIGNvbnRlbnRlZGl0YWJsZSBhdHRyaWJ1dGUgaXMgaW5jbHVkZWQgYW55d2hlcmUgZWxzZSBpbiB0aGUgZG9jdW1lbnQuXG4vLyAgICBPdGhlcndpc2UgaXQgY2F1c2VzIHNwYWNlIHRvIGFwcGVhciBhdCB0aGUgdG9wIGFuZCBib3R0b20gb2YgZWxlbWVudHNcbi8vICAgIHRoYXQgYXJlIGNsZWFyZml4ZWQuXG4vLyAyLiBUaGUgdXNlIG9mIGB0YWJsZWAgcmF0aGVyIHRoYW4gYGJsb2NrYCBpcyBvbmx5IG5lY2Vzc2FyeSBpZiB1c2luZ1xuLy8gICAgYDpiZWZvcmVgIHRvIGNvbnRhaW4gdGhlIHRvcC1tYXJnaW5zIG9mIGNoaWxkIGVsZW1lbnRzLlxuLy9cbi8vIFNvdXJjZTogaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svXG5cbkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAyXG4gICAgY29udGVudDogXCIgXCI7IC8vIDFcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuIiwiJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlcjogZmFsc2UgIWRlZmF1bHQ7XG4vL1xuLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vPT0gQ29sb3JzXG4vL1xuLy8jIyBHcmF5IGFuZCBicmFuZCBjb2xvcnMgZm9yIHVzZSBhY3Jvc3MgQm9vdHN0cmFwLlxuXG4kZ3JheS1iYXNlOiAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRncmF5LWRhcmtlcjogICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDEzLjUlKSAhZGVmYXVsdDsgLy8gIzIyMlxuJGdyYXktZGFyazogICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMjAlKSAhZGVmYXVsdDsgICAvLyAjMzMzXG4kZ3JheTogICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAzMy41JSkgIWRlZmF1bHQ7IC8vICM1NTVcbiRncmF5LWxpZ2h0OiAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDQ2LjclKSAhZGVmYXVsdDsgLy8gIzc3N1xuJGdyYXktbGlnaHRlcjogICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgOTMuNSUpICFkZWZhdWx0OyAvLyAjZWVlXG5cbiRicmFuZC1wcmltYXJ5OiAgICAgICAgIGRhcmtlbigjNDI4YmNhLCA2LjUlKSAhZGVmYXVsdDsgLy8gIzMzN2FiN1xuJGJyYW5kLXN1Y2Nlc3M6ICAgICAgICAgIzVjYjg1YyAhZGVmYXVsdDtcbiRicmFuZC1pbmZvOiAgICAgICAgICAgICM1YmMwZGUgIWRlZmF1bHQ7XG4kYnJhbmQtd2FybmluZzogICAgICAgICAjZjBhZDRlICFkZWZhdWx0O1xuJGJyYW5kLWRhbmdlcjogICAgICAgICAgI2Q5NTM0ZiAhZGVmYXVsdDtcblxuXG4vLz09IFNjYWZmb2xkaW5nXG4vL1xuLy8jIyBTZXR0aW5ncyBmb3Igc29tZSBvZiB0aGUgbW9zdCBnbG9iYWwgc3R5bGVzLlxuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIGA8Ym9keT5gLlxuJGJvZHktYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogR2xvYmFsIHRleHQgY29sb3Igb24gYDxib2R5PmAuXG4kdGV4dC1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuXG4vLyoqIEdsb2JhbCB0ZXh0dWFsIGxpbmsgY29sb3IuXG4kbGluay1jb2xvcjogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogTGluayBob3ZlciBjb2xvciBzZXQgdmlhIGBkYXJrZW4oKWAgZnVuY3Rpb24uXG4kbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4vLyoqIExpbmsgaG92ZXIgZGVjb3JhdGlvbi5cbiRsaW5rLWhvdmVyLWRlY29yYXRpb246IHVuZGVybGluZSAhZGVmYXVsdDtcblxuXG4vLz09IFR5cG9ncmFwaHlcbi8vXG4vLyMjIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1zZXJpZjogICAgICAgR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmICFkZWZhdWx0O1xuLy8qKiBEZWZhdWx0IG1vbm9zcGFjZSBmb250cyBmb3IgYDxjb2RlPmAsIGA8a2JkPmAsIGFuZCBgPHByZT5gLlxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxhcmdlOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcbiRmb250LXNpemUtc21hbGw6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxuXG4kZm9udC1zaXplLWgxOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjYpKSAhZGVmYXVsdDsgLy8gfjM2cHhcbiRmb250LXNpemUtaDI6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuMTUpKSAhZGVmYXVsdDsgLy8gfjMwcHhcbiRmb250LXNpemUtaDM6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS43KSkgIWRlZmF1bHQ7IC8vIH4yNHB4XG4kZm9udC1zaXplLWg0OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcbiRmb250LXNpemUtaDU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1oNjogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAwLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbi8vKiogVW5pdC1sZXNzIGBsaW5lLWhlaWdodGAgZm9yIHVzZSBpbiBjb21wb25lbnRzIGxpa2UgYnV0dG9ucy5cbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgMS40Mjg1NzE0MjkgIWRlZmF1bHQ7IC8vIDIwLzE0XG4vLyoqIENvbXB1dGVkIFwibGluZS1oZWlnaHRcIiAoYGZvbnQtc2l6ZWAgKiBgbGluZS1oZWlnaHRgKSBmb3IgdXNlIHdpdGggYG1hcmdpbmAsIGBwYWRkaW5nYCwgZXRjLlxuJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOiAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UpKSAhZGVmYXVsdDsgLy8gfjIwcHhcblxuLy8qKiBCeSBkZWZhdWx0LCB0aGlzIGluaGVyaXRzIGZyb20gdGhlIGA8Ym9keT5gLlxuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgIDEuMSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcblxuXG4vLz09IEljb25vZ3JhcGh5XG4vL1xuLy8jIyBTcGVjaWZ5IGN1c3RvbSBsb2NhdGlvbiBhbmQgZmlsZW5hbWUgb2YgdGhlIGluY2x1ZGVkIEdseXBoaWNvbnMgaWNvbiBmb250LiBVc2VmdWwgZm9yIHRob3NlIGluY2x1ZGluZyBCb290c3RyYXAgdmlhIEJvd2VyLlxuXG4vLyoqIExvYWQgZm9udHMgZnJvbSB0aGlzIGRpcmVjdG9yeS5cblxuLy8gW2NvbnZlcnRlcl0gSWYgJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciBpZiB1c2VkLCBwcm92aWRlIHBhdGggcmVsYXRpdmUgdG8gdGhlIGFzc2V0cyBsb2FkIHBhdGguXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGJlY2F1c2Ugc29tZSBhc3NldCBoZWxwZXJzLCBzdWNoIGFzIFNwcm9ja2V0cywgZG8gbm90IHdvcmsgd2l0aCBmaWxlLXJlbGF0aXZlIHBhdGhzLlxuJGljb24tZm9udC1wYXRoOiBpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCBcImJvb3RzdHJhcC9cIiwgXCIuLi9mb250cy9ib290c3RyYXAvXCIpICFkZWZhdWx0O1xuXG4vLyoqIEZpbGUgbmFtZSBmb3IgYWxsIGZvbnQgZmlsZXMuXG4kaWNvbi1mb250LW5hbWU6ICAgICAgICAgIFwiZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhclwiICFkZWZhdWx0O1xuLy8qKiBFbGVtZW50IElEIHdpdGhpbiBTVkcgaWNvbiBmaWxlLlxuJGljb24tZm9udC1zdmctaWQ6ICAgICAgICBcImdseXBoaWNvbnNfaGFsZmxpbmdzcmVndWxhclwiICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29tcG9uZW50c1xuLy9cbi8vIyMgRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLiBWYWx1ZXMgYmFzZWQgb24gMTRweCB0ZXh0IGFuZCAxLjQyOCBsaW5lLWhlaWdodCAofjIwcHggdG8gc3RhcnQpLlxuXG4kcGFkZGluZy1iYXNlLXZlcnRpY2FsOiAgICAgNnB4ICFkZWZhdWx0O1xuJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsOiAgIDEycHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsOiAgICAxMHB4ICFkZWZhdWx0O1xuJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDogIDE2cHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsOiAgICA1cHggIWRlZmF1bHQ7XG4kcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsOiAgMTBweCAhZGVmYXVsdDtcblxuJHBhZGRpbmcteHMtdmVydGljYWw6ICAgICAgIDFweCAhZGVmYXVsdDtcbiRwYWRkaW5nLXhzLWhvcml6b250YWw6ICAgICA1cHggIWRlZmF1bHQ7XG5cbiRsaW5lLWhlaWdodC1sYXJnZTogICAgICAgICAxLjMzMzMzMzMgIWRlZmF1bHQ7IC8vIGV4dHJhIGRlY2ltYWxzIGZvciBXaW4gOC4xIENocm9tZVxuJGxpbmUtaGVpZ2h0LXNtYWxsOiAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgIDRweCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICA2cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAgM3B4ICFkZWZhdWx0O1xuXG4vLyoqIEdsb2JhbCBjb2xvciBmb3IgYWN0aXZlIGl0ZW1zIChlLmcuLCBuYXZzIG9yIGRyb3Bkb3ducykuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogR2xvYmFsIGJhY2tncm91bmQgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4vLyoqIFdpZHRoIG9mIHRoZSBgYm9yZGVyYCBmb3IgZ2VuZXJhdGluZyBjYXJldHMgdGhhdCBpbmRpY2F0ZSBkcm9wZG93bnMuXG4kY2FyZXQtd2lkdGgtYmFzZTogICAgICAgICAgNHB4ICFkZWZhdWx0O1xuLy8qKiBDYXJldHMgaW5jcmVhc2Ugc2xpZ2h0bHkgaW4gc2l6ZSBmb3IgbGFyZ2VyIGNvbXBvbmVudHMuXG4kY2FyZXQtd2lkdGgtbGFyZ2U6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVGFibGVzXG4vL1xuLy8jIyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbi8vKiogUGFkZGluZyBmb3IgYDx0aD5gcyBhbmQgYDx0ZD5gcy5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgICAgOHB4ICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGZvciBjZWxscyBpbiBgLnRhYmxlLWNvbmRlbnNlZGAuXG4kdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZzogIDVweCAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYWxsIHRhYmxlcy5cbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1zdHJpcGVkYC5cbiR0YWJsZS1iZy1hY2NlbnQ6ICAgICAgICAgICAgICAgI2Y5ZjlmOSAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLWhvdmVyYC5cbiR0YWJsZS1iZy1ob3ZlcjogICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR0YWJsZS1iZy1hY3RpdmU6ICAgICAgICAgICAgICAgJHRhYmxlLWJnLWhvdmVyICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGFibGUgYW5kIGNlbGwgYm9yZGVycy5cbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09IEJ1dHRvbnNcbi8vXG4vLyMjIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgIG5vcm1hbCAhZGVmYXVsdDtcblxuJGJ0bi1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4kYnRuLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1wcmltYXJ5LWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXN1Y2Nlc3MtYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1pbmZvLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4taW5mby1iZzogICAgICAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJvcmRlcjogICAgICAgICAgICAgICAgZGFya2VuKCRidG4taW5mby1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4kYnRuLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi13YXJuaW5nLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tZGFuZ2VyLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRhbmdlci1iZzogICAgICAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKCRidG4tZGFuZ2VyLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuXG4vLz09IEZvcm1zXG4vL1xuLy8jI1xuXG4vLyoqIGA8aW5wdXQ+YCBiYWNrZ3JvdW5kIGNvbG9yXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBgPGlucHV0IGRpc2FibGVkPmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnLWRpc2FibGVkOiAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIGZvciBgPGlucHV0PmBzXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dD5gIGJvcmRlciBjb2xvclxuJGlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuLy8gVE9ETzogUmVuYW1lIGAkaW5wdXQtYm9yZGVyLXJhZGl1c2AgdG8gYCRpbnB1dC1ib3JkZXItcmFkaXVzLWJhc2VgIGluIHY0XG4vLyoqIERlZmF1bHQgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbi8vIFRoaXMgaGFzIG5vIGVmZmVjdCBvbiBgPHNlbGVjdD5gcyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuLy8qKiBTbWFsbCBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciBpbnB1dHMgb24gZm9jdXNcbiRpbnB1dC1ib3JkZXItZm9jdXM6ICAgICAgICAgICAgICM2NmFmZTkgIWRlZmF1bHQ7XG5cbi8vKiogUGxhY2Vob2xkZXIgdGV4dCBjb2xvclxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtYmFzZTogICAgICAgICAgICAgICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtbGFyZ2U6ICAgICAgICAgICAgIChjZWlsKCRmb250LXNpemUtbGFyZ2UgKiAkbGluZS1oZWlnaHQtbGFyZ2UpICsgKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1zbWFsbDogICAgICAgICAgICAgKGZsb29yKCRmb250LXNpemUtc21hbGwgKiAkbGluZS1oZWlnaHQtc21hbGwpICsgKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcblxuLy8qKiBgLmZvcm0tZ3JvdXBgIG1hcmdpblxuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgMTVweCAhZGVmYXVsdDtcblxuJGxlZ2VuZC1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRsZWdlbmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXIgIWRlZmF1bHQ7XG5cbi8vKiogRGlzYWJsZWQgY3Vyc29yIGZvciBmb3JtIGNvbnRyb2xzIGFuZCBidXR0b25zLlxuJGN1cnNvci1kaXNhYmxlZDogICAgICAgICAgICAgICAgbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cblxuLy89PSBEcm9wZG93bnNcbi8vXG4vLyMjIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuLy8qKiBCYWNrZ3JvdW5kIGZvciB0aGUgZHJvcGRvd24gbWVudS5cbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAuXG4kZHJvcGRvd24tYm9yZGVyOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4xNSkgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAgKipmb3IgSUU4KiouXG4kZHJvcGRvd24tZmFsbGJhY2stYm9yZGVyOiAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBEaXZpZGVyIGNvbG9yIGZvciBiZXR3ZWVuIGRyb3Bkb3duIGl0ZW1zLlxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgI2U1ZTVlNSAhZGVmYXVsdDtcblxuLy8qKiBEcm9wZG93biBsaW5rIHRleHQgY29sb3IuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBjb2xvciBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGdyYXktZGFyaywgNSUpICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBiYWNrZ3JvdW5kIGZvciBkcm9wZG93biBsaW5rcy5cbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgaGVhZGVycyB3aXRoaW4gZHJvcGRvd24gbWVudXMuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBEZXByZWNhdGVkIGAkZHJvcGRvd24tY2FyZXQtY29sb3JgIGFzIG9mIHYzLjEuMFxuJGRyb3Bkb3duLWNhcmV0LWNvbG9yOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcblxuXG4vLy0tIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cbi8vXG4vLyBOb3RlOiBUaGVzZSB2YXJpYWJsZXMgYXJlIG5vdCBnZW5lcmF0ZWQgaW50byB0aGUgQ3VzdG9taXplci5cblxuJHppbmRleC1uYXZiYXI6ICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtbmF2YmFyLWZpeGVkOiAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tncm91bmQ6ICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcblxuXG4vLz09IE1lZGlhIHF1ZXJpZXMgYnJlYWtwb2ludHNcbi8vXG4vLyMjIERlZmluZSB0aGUgYnJlYWtwb2ludHMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIEV4dHJhIHNtYWxsIHNjcmVlbiAvIHBob25lXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHNgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi14czogICAgICAgICAgICAgICAgICA0ODBweCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14cy1taW5gIGFzIG9mIHYzLjIuMFxuJHNjcmVlbi14cy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXhzICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXBob25lYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tcGhvbmU6ICAgICAgICAgICAgICAgJHNjcmVlbi14cy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXNtYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tc206ICAgICAgICAgICAgICAgICAgNzY4cHggIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tc20gIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tdGFibGV0YCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tdGFibGV0OiAgICAgICAgICAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG5cbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbWRgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1tZDogICAgICAgICAgICAgICAgICA5OTJweCAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1tZCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tZGVza3RvcDogICAgICAgICAgICAgJHNjcmVlbi1tZC1taW4gIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGc6ICAgICAgICAgICAgICAgICAgMTIwMHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1sZy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLWxnICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1sZy1kZXNrdG9wOiAgICAgICAgICAkc2NyZWVuLWxnLW1pbiAhZGVmYXVsdDtcblxuLy8gU28gbWVkaWEgcXVlcmllcyBkb24ndCBvdmVybGFwIHdoZW4gcmVxdWlyZWQsIHByb3ZpZGUgYSBtYXhpbXVtXG4kc2NyZWVuLXhzLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLXNtLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1tZC1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbGctbWluIC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBHcmlkIHN5c3RlbVxuLy9cbi8vIyMgRGVmaW5lIHlvdXIgY3VzdG9tIHJlc3BvbnNpdmUgZ3JpZC5cblxuLy8qKiBOdW1iZXIgb2YgY29sdW1ucyBpbiB0aGUgZ3JpZC5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBiZXR3ZWVuIGNvbHVtbnMuIEdldHMgZGl2aWRlZCBpbiBoYWxmIGZvciB0aGUgbGVmdCBhbmQgcmlnaHQuXG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgMzBweCAhZGVmYXVsdDtcbi8vIE5hdmJhciBjb2xsYXBzZVxuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlY29tZXMgdW5jb2xsYXBzZWQuXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50OiAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVnaW5zIGNvbGxhcHNpbmcuXG4kZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heDogKCRncmlkLWZsb2F0LWJyZWFrcG9pbnQgLSAxKSAhZGVmYXVsdDtcblxuXG4vLz09IENvbnRhaW5lciBzaXplc1xuLy9cbi8vIyMgRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XG4kY29udGFpbmVyLXRhYmxldDogICAgICAgICAgICAgKDcyMHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLXNtLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1zbTogICAgICAgICAgICAgICAgICRjb250YWluZXItdGFibGV0ICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuJGNvbnRhaW5lci1kZXNrdG9wOiAgICAgICAgICAgICg5NDBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1tZC1taW5gIGFuZCB1cC5cbiRjb250YWluZXItbWQ6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWRlc2t0b3AgIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wOiAgICAgICgxMTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbGctbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLWxnOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1sYXJnZS1kZXNrdG9wICFkZWZhdWx0O1xuXG5cbi8vPT0gTmF2YmFyXG4vL1xuLy8jI1xuXG4vLyBCYXNpY3Mgb2YgYSBuYXZiYXJcbiRuYXZiYXItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcbiRuYXZiYXItbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICFkZWZhdWx0O1xuJG5hdmJhci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICBmbG9vcigoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAoKCRuYXZiYXItaGVpZ2h0IC0gJGxpbmUtaGVpZ2h0LWNvbXB1dGVkKSAvIDIpICFkZWZhdWx0O1xuJG5hdmJhci1jb2xsYXBzZS1tYXgtaGVpZ2h0OiAgICAgICAzNDBweCAhZGVmYXVsdDtcblxuJG5hdmJhci1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAjNzc3ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJnOiAgICAgICAgICAgICAgICAjZjhmOGY4ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJnLCA2LjUlKSAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIGxpbmtzXG4kbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIGJyYW5kIGxhYmVsXG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvciwgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gTmF2YmFyIHRvZ2dsZVxuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ob3Zlci1iZzogICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWljb24tYmFyLWJnOiAgICAgICAgIzg4OCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT09IEludmVydGVkIG5hdmJhclxuLy8gUmVzZXQgaW52ZXJ0ZWQgbmF2YmFyIGJhc2ljc1xuJG5hdmJhci1pbnZlcnNlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWxpZ2h0LCAxNSUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAjMjIyICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCAxMCUpICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgbGlua3NcbiRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1pbnZlcnNlLWJnLCAxMCUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGJyYW5kIGxhYmVsXG4kbmF2YmFyLWludmVyc2UtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIHRvZ2dsZVxuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ob3Zlci1iZzogICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ib3JkZXItY29sb3I6ICAgICAgICAjMzMzICFkZWZhdWx0O1xuXG5cbi8vPT0gTmF2c1xuLy9cbi8vIyNcblxuLy89PT0gU2hhcmVkIG5hdiBzdHlsZXNcbiRuYXYtbGluay1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTBweCAxNXB4ICFkZWZhdWx0O1xuJG5hdi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4kbmF2LWRpc2FibGVkLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJG5hdi1kaXNhYmxlZC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy89PSBUYWJzXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgICNkZGQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRuYXYtdGFicy1qdXN0aWZpZWQtYWN0aXZlLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG5cbi8vPT0gUGlsbHNcbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnaW5hdGlvblxuLy9cbi8vIyNcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyOiAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBQYWdlclxuLy9cbi8vIyNcblxuJHBhZ2VyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYmcgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFnZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kcGFnZXItaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHBhZ2VyLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG4kcGFnZXItZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IEp1bWJvdHJvblxuLy9cbi8vIyNcblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWNvbG9yOiAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tZm9udC1zaXplOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNSkpICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1oZWFkaW5nLWZvbnQtc2l6ZTogICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogNC41KSkgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3JtIHN0YXRlcyBhbmQgYWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgY29sb3JzIGZvciBmb3JtIGZlZWRiYWNrIHN0YXRlcyBhbmQsIGJ5IGRlZmF1bHQsIGFsZXJ0cy5cblxuJHN0YXRlLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgICAgIzNjNzYzZCAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICNkZmYwZDggIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtc3VjY2Vzcy1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtaW5mby10ZXh0OiAgICAgICAgICAgICAgICAjMzE3MDhmICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgI2Q5ZWRmNyAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1pbmZvLWJnLCAtMTApLCA3JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS13YXJuaW5nLXRleHQ6ICAgICAgICAgICAgICM4YTZkM2IgIWRlZmF1bHQ7XG4kc3RhdGUtd2FybmluZy1iZzogICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXdhcm5pbmctYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWRhbmdlci10ZXh0OiAgICAgICAgICAgICAgI2E5NDQ0MiAhZGVmYXVsdDtcbiRzdGF0ZS1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICNmMmRlZGUgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtZGFuZ2VyLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cblxuLy89PSBUb29sdGlwc1xuLy9cbi8vIyNcblxuLy8qKiBUb29sdGlwIG1heCB3aWR0aFxuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgdGV4dCBjb2xvclxuJHRvb2x0aXAtY29sb3I6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBiYWNrZ3JvdW5kIGNvbG9yXG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG5cbi8vKiogVG9vbHRpcCBhcnJvdyB3aWR0aFxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIGFycm93IGNvbG9yXG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuXG4vLz09IFBvcG92ZXJzXG4vL1xuLy8jI1xuXG4vLyoqIFBvcG92ZXIgYm9keSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgbWF4aW11bSB3aWR0aFxuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBib3JkZXIgY29sb3JcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgZmFsbGJhY2sgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciB0aXRsZSBiYWNrZ3JvdW5kIGNvbG9yXG4kcG9wb3Zlci10aXRsZS1iZzogICAgICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgYXJyb3cgd2lkdGhcbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDogICAgICAgICAgICgkcG9wb3Zlci1hcnJvdy13aWR0aCArIDEpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICAgIGZhZGVfaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAwLjA1KSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBmYWxsYmFjayBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItZmFsbGJhY2stY29sb3I6ICBkYXJrZW4oJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yLCAyMCUpICFkZWZhdWx0O1xuXG5cbi8vPT0gTGFiZWxzXG4vL1xuLy8jI1xuXG4vLyoqIERlZmF1bHQgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRlZmF1bHQtYmc6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIFByaW1hcnkgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXByaW1hcnktYmc6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIFN1Y2Nlc3MgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4vLyoqIEluZm8gbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWluZm8tYmc6ICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG4vLyoqIFdhcm5pbmcgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLXdhcm5pbmctYmc6ICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgbGFiZWwgdGV4dCBjb2xvclxuJGxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIGEgbGlua2VkIGxhYmVsXG4kbGFiZWwtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gTW9kYWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIHRpdGxlXG4kbW9kYWwtdGl0bGUtcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCB0aXRsZSBsaW5lLWhlaWdodFxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBjb250ZW50IGFyZWFcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3JcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMikgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yICoqZm9yIElFOCoqXG4kbW9kYWwtY29udGVudC1mYWxsYmFjay1ib3JkZXItY29sb3I6ICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogTW9kYWwgYmFja2Ryb3AgYmFja2dyb3VuZCBjb2xvclxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgYmFja2Ryb3Agb3BhY2l0eVxuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgLjUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGhlYWRlciBib3JkZXIgY29sb3JcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICNlNWU1ZTUgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGZvb3RlciBib3JkZXIgY29sb3JcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICA5MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgIDYwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBBbGVydHNcbi8vXG4vLyMjIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZzogICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgIGJvbGQgIWRlZmF1bHQ7XG5cbiRhbGVydC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LWluZm8tYmc6ICAgICAgICAgICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XG4kYWxlcnQtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtd2FybmluZy1iZzogICAgICAgICAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcbiRhbGVydC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1kYW5nZXItYmc6ICAgICAgICAgICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcblxuXG4vLz09IFByb2dyZXNzIGJhcnNcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgd2hvbGUgcHJvZ3Jlc3MgY29tcG9uZW50XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBQcm9ncmVzcyBiYXIgdGV4dCBjb2xvclxuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogVmFyaWFibGUgZm9yIHNldHRpbmcgcm91bmRlZCBjb3JuZXJzIG9uIHByb2dyZXNzIGJhci5cbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1zdWNjZXNzLWJnOiAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4vLyoqIFdhcm5pbmcgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLXdhcm5pbmctYmc6ICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbi8vKiogRGFuZ2VyIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1kYW5nZXItYmc6ICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbi8vKiogSW5mbyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItaW5mby1iZzogICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuXG5cbi8vPT0gTGlzdCBncm91cFxuLy9cbi8vIyNcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9uIGAubGlzdC1ncm91cC1pdGVtYFxuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBgLmxpc3QtZ3JvdXAtaXRlbWAgYm9yZGVyIGNvbG9yXG4kbGlzdC1ncm91cC1ib3JkZXI6ICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4vLyoqIExpc3QgZ3JvdXAgYm9yZGVyIHJhZGl1c1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2Ygc2luZ2xlIGxpc3QgaXRlbXMgb24gaG92ZXJcbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vKiogQm9yZGVyIGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGVsZW1lbnRzXG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyOiAgICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS10ZXh0LWNvbG9yOiAgbGlnaHRlbigkbGlzdC1ncm91cC1hY3RpdmUtYmcsIDQwJSkgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBkaXNhYmxlZCBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtbGluay1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjogICAkbGlzdC1ncm91cC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1oZWFkaW5nLWNvbG9yOiAjMzMzICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFuZWxzXG4vL1xuLy8jI1xuXG4kcGFuZWwtYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhbmVsLWJvZHktcGFkZGluZzogICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRwYW5lbC1oZWFkaW5nLXBhZGRpbmc6ICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRwYW5lbC1mb290ZXItcGFkZGluZzogICAgICAgICRwYW5lbC1oZWFkaW5nLXBhZGRpbmcgIWRlZmF1bHQ7XG4kcGFuZWwtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgZWxlbWVudHMgd2l0aGluIHBhbmVsc1xuJHBhbmVsLWlubmVyLWJvcmRlcjogICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYW5lbC1mb290ZXItYmc6ICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1kZWZhdWx0LXRleHQ6ICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kcGFuZWwtZGVmYXVsdC1ib3JkZXI6ICAgICAgICAjZGRkICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtaGVhZGluZy1iZzogICAgI2Y1ZjVmNSAhZGVmYXVsdDtcblxuJHBhbmVsLXByaW1hcnktdGV4dDogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWJvcmRlcjogICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhbmVsLXByaW1hcnktaGVhZGluZy1iZzogICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYW5lbC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtc3VjY2Vzcy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1pbmZvLWhlYWRpbmctYmc6ICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXdhcm5pbmctaGVhZGluZy1iZzogICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItYm9yZGVyOiAgICAgICAgICRzdGF0ZS1kYW5nZXItYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnOiAgICAgJHN0YXRlLWRhbmdlci1iZyAhZGVmYXVsdDtcblxuXG4vLz09IFRodW1ibmFpbHNcbi8vXG4vLyMjXG5cbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBpbWFnZVxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgNHB4ICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYmFja2dyb3VuZCBjb2xvclxuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBib3JkZXIgY29sb3JcbiR0aHVtYm5haWwtYm9yZGVyOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBib3JkZXIgcmFkaXVzXG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEN1c3RvbSB0ZXh0IGNvbG9yIGZvciB0aHVtYm5haWwgY2FwdGlvbnNcbiR0aHVtYm5haWwtY2FwdGlvbi1jb2xvcjogICAgICR0ZXh0LWNvbG9yICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgdGh1bWJuYWlsIGNhcHRpb25cbiR0aHVtYm5haWwtY2FwdGlvbi1wYWRkaW5nOiAgIDlweCAhZGVmYXVsdDtcblxuXG4vLz09IFdlbGxzXG4vL1xuLy8jI1xuXG4kd2VsbC1iZzogICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHdlbGwtYm9yZGVyOiAgICAgICAgICAgICAgICAgZGFya2VuKCR3ZWxsLWJnLCA3JSkgIWRlZmF1bHQ7XG5cblxuLy89PSBCYWRnZXNcbi8vXG4vLyMjXG5cbiRiYWRnZS1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIExpbmtlZCBiYWRnZSB0ZXh0IGNvbG9yIG9uIGhvdmVyXG4kYmFkZ2UtbGluay1ob3Zlci1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xuJGJhZGdlLWJnOiAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogQmFkZ2UgdGV4dCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtY29sb3I6ICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBCYWRnZSBiYWNrZ3JvdW5kIGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xuJGJhZGdlLWFjdGl2ZS1iZzogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1saW5lLWhlaWdodDogICAgICAgICAgIDEgIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAxMHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gQnJlYWRjcnVtYnNcbi8vXG4vLyMjXG5cbiRicmVhZGNydW1iLXBhZGRpbmctdmVydGljYWw6ICAgOHB4ICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy1ob3Jpem9udGFsOiAxNXB4ICFkZWZhdWx0O1xuLy8qKiBCcmVhZGNydW1iIGJhY2tncm91bmQgY29sb3JcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiB0ZXh0IGNvbG9yXG4kYnJlYWRjcnVtYi1jb2xvcjogICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgY3VycmVudCBwYWdlIGluIHRoZSBicmVhZGNydW1iXG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBUZXh0dWFsIHNlcGFyYXRvciBmb3IgYmV0d2VlbiBicmVhZGNydW1iIGVsZW1lbnRzXG4kYnJlYWRjcnVtYi1zZXBhcmF0b3I6ICAgICAgICAgIFwiL1wiICFkZWZhdWx0O1xuXG5cbi8vPT0gQ2Fyb3VzZWxcbi8vXG4vLyMjXG5cbiRjYXJvdXNlbC10ZXh0LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgwLDAsMCwuNikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IENsb3NlXG4vL1xuLy8jI1xuXG4kY2xvc2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRjbG9zZS10ZXh0LXNoYWRvdzogICAgICAgICAgIDAgMXB4IDAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IENvZGVcbi8vXG4vLyMjXG5cbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICNjNzI1NGUgIWRlZmF1bHQ7XG4kY29kZS1iZzogICAgICAgICAgICAgICAgICAgICAjZjlmMmY0ICFkZWZhdWx0O1xuXG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuJHByZS1iZzogICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kcHJlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgMzQwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBUeXBlXG4vL1xuLy8jI1xuXG4vLyoqIEhvcml6b250YWwgb2Zmc2V0IGZvciBmb3JtcyBhbmQgbGlzdHMuXG4kY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsOiAxODBweCAhZGVmYXVsdDtcbi8vKiogVGV4dCBtdXRlZCBjb2xvclxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEFiYnJldmlhdGlvbnMgYW5kIGFjcm9ueW1zIGJvcmRlciBjb2xvclxuJGFiYnItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEhlYWRpbmdzIHNtYWxsIGNvbG9yXG4kaGVhZGluZ3Mtc21hbGwtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBzbWFsbCBjb2xvclxuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgZm9udCBzaXplXG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgYm9yZGVyIGNvbG9yXG4kYmxvY2txdW90ZS1ib3JkZXItY29sb3I6ICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBQYWdlIGhlYWRlciBib3JkZXIgY29sb3JcbiRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFdpZHRoIG9mIGhvcml6b250YWwgZGVzY3JpcHRpb24gbGlzdCB0aXRsZXNcbiRkbC1ob3Jpem9udGFsLW9mZnNldDogICAgICAgICRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWwgIWRlZmF1bHQ7XG4vLyoqIFBvaW50IGF0IHdoaWNoIC5kbC1ob3Jpem9udGFsIGJlY29tZXMgaG9yaXpvbnRhbFxuJGRsLWhvcml6b250YWwtYnJlYWtwb2ludDogICAgJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAhZGVmYXVsdDtcbi8vKiogSG9yaXpvbnRhbCBsaW5lIGNvbG9yLlxuJGhyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogI2U1ZTVlNSkge1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpIC0gMSkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xufVxuIiwiLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRPQVNURVJcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi50b2FzdCB7XG4gIC8vdGl0bGVcbiAgJi10aXRsZSB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgfVxuXG4gIC8vbWVzc2FnZVxuICAmLW1lc3NhZ2Uge1xuICAgIC1tcy13b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIGEsXG4gICAgbGFiZWwge1xuICAgICAgY29sb3I6ICRjb2xvckJhc2U7XG4gICAgfVxuICAgIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy90aW1lXG4gICYtdGltZSB7XG4gICAgY29sb3I6ICRncmlzRm9uY2U7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuN3JlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG5cbiAgLy9jbG9zZSBidXR0b25cbiAgJi1jbG9zZS1idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMi40cmVtO1xuICAgIHRvcDogMi40cmVtO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBsaW5lLWhlaWdodDogMTNweDtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBvcGFjaXR5OiAwLjg7XG4gICAgfVxuICB9XG5cbiAgLy9wb3NpdGlvbnNcbiAgJi10b3AtY2VudGVyIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgJi1ib3R0b20tY2VudGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgJi10b3AtZnVsbC13aWR0aCB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gICYtYm90dG9tLWZ1bGwtd2lkdGgge1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAmLXRvcC1sZWZ0IHtcbiAgICB0b3A6IDEycHg7XG4gICAgbGVmdDogMTJweDtcbiAgfVxuICAmLXRvcC1yaWdodCB7XG4gICAgdG9wOiAxMnB4O1xuICAgIHJpZ2h0OiAxMnB4O1xuICB9XG4gICYtYm90dG9tLXJpZ2h0IHtcbiAgICByaWdodDogMTJweDtcbiAgICBib3R0b206IDEycHg7XG4gIH1cbiAgJi1ib3R0b20tbGVmdCB7XG4gICAgYm90dG9tOiAxMnB4O1xuICAgIGxlZnQ6IDEycHg7XG4gIH1cblxuICAvL3Byb2dyZXNzXG4gICYtcHJvZ3Jlc3Mge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgIG9wYWNpdHk6IDAuNDtcbiAgICAtbXMtZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT00MCk7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTQwKTtcbiAgfVxufVxuXG4vKkFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cbiBpT1MgcmVxdWlyZXMgdGhlIGJ1dHRvbiBlbGVtZW50IGluc3RlYWQgb2YgYW4gYW5jaG9yIHRhZy5cbiBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC4qL1xuYnV0dG9uLnRvYXN0LWNsb3NlLWJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL3RvYXN0ZXIgY29udGFpbmVyXG4jdG9hc3QtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk5OTk7XG4gICoge1xuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuICA+IDpob3ZlciB7XG4gICAgLW1vei1ib3gtc2hhZG93OiAwIDAgMTJweCAjOTk5OTk5O1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDEycHggIzk5OTk5OTtcbiAgICBib3gtc2hhZG93OiAwIDAgMTJweCAjOTk5OTk5O1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1zLWZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MTAwKTtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MTAwKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbiAgXG4gICYudG9hc3QtdG9wLWNlbnRlciA+IGRpdixcbiAgJi50b2FzdC1ib3R0b20tY2VudGVyID4gZGl2IHtcbiAgICAmID4gZGl2IHtcbiAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG4gIH1cbiAgJi50b2FzdC10b3AtZnVsbC13aWR0aCxcbiAgJi50b2FzdC1ib3R0b20tZnVsbC13aWR0aCB7XG4gICAgJiA+IGRpdiB7XG4gICAgICB3aWR0aDogOTYlO1xuICAgICAgbWFyZ2luOiBhdXRvXG4gICAgfVxuICB9XG59XG5cbi50b2FzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYW5pbWF0aW9uOiBmYWRlaW5SaWdodCAwLjVzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW46IDAgMCAxNnB4O1xuICBwYWRkaW5nOiAxNnB4IDU2cHg7XG4gIHdpZHRoOiAzMDBweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAzcHggM3B4IDNweCAzcHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4IDNweCAzcHggM3B4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJveC1zaGFkb3c6IDAgMCAxMnB4ICRncmlzQm9yZDtcbiAgY29sb3I6ICRncmlzRm9uY2U7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRncmlzQm9yZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJsYW5jO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuOXJlbTtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMTZweDtcbiAgICB0b3A6IDE2cHg7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGV1T3JjYWI7XG4gIH1cbiAgJi5ub3QtcmVhZCB7XG4gICAgY29sb3I6ICRjb2xvckJhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgd2lkdGg6IDlweDtcbiAgICAgIGhlaWdodDogOXB4O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJGJsYW5jO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMy4ycmVtO1xuICAgICAgdG9wOiAxLjJyZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxldU9yY2FiO1xuICAgIH1cbiAgfVxufVxuLnRvYXN0LXN1Y2Nlc3Mge1xuICAmOmJlZm9yZSxcbiAgJi5ub3QtcmVhZDphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHZlcnQ7XG4gIH1cbn1cbi50b2FzdC1lcnJvciB7XG4gICY6YmVmb3JlLFxuICAmLm5vdC1yZWFkOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcm91Z2U7XG4gIH1cbn1cbi50b2FzdC1pbmZvIHtcbiAgJjpiZWZvcmUsXG4gICYubm90LXJlYWQ6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGV1T3JjYWI7XG4gIH1cbn1cblxuLy8gV2ViS2l0XG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZWluUmlnaHQge1xuICBmcm9tIHtcbiAgICByaWdodDogLTMxMnB4O1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIHJpZ2h0OiAxNXB4O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLy8gU3BlYyBhbmQgSUUxMCtcbkBrZXlmcmFtZXMgZmFkZWluUmlnaHQge1xuICBmcm9tIHtcbiAgICByaWdodDogLTMxMnB4O1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIHJpZ2h0OiAxNXB4O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuI3RvYXN0LWNvbnRhaW5lciAudG9hc3QtbWVzc2FnZTo6YWZ0ZXIge1xuICBAZXh0ZW5kIC5pY29tb29uO1xuICBjb250ZW50OiAnXFxlOTUwJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDI1JTtcbiAgcmlnaHQ6IDMwcHg7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBjb2xvcjogIzAwMDAwMDtcbn1cblxuI3RvYXN0LWNvbnRhaW5lciAuanMtY2xvc2luZzpob3ZlciB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5qcy1jbG9zaW5nIHtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiBvcGFjaXR5MCAuNXMgZWFzZS1vdXQ7XG59XG5cbkBrZXlmcmFtZXMgb3BhY2l0eTAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbi50b2FzdC13YXJuaW5nIHtcbiAgJjpiZWZvcmUsXG4gICYubm90LXJlYWQ6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRqYXVuZTtcbiAgfVxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogSU5JVElBTElTQVRJT04gREUgTEEgQ0hBUlRFIEdSQVBISVFVRVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuaHRtbCB7XG4gICAgZm9udC1zaXplOiA2Mi41JTtcbn1cbmJvZHkge1xuICAgIGJhY2tncm91bmQ6ICRncmlzQ2xhaXI7XG4gICAgZm9udC1mYW1pbHk6IFNhdG9zaGksIHNhbnMtc2VyaWY7XG4gICAgY29sb3I6ICRjb2xvckJhc2U7XG4gICAgZm9udC1zaXplOiAxLjZyZW07IC8qIDE2cHggKi9cbiAgICBsaW5lLWhlaWdodDogMi40cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgICYubm9TY3JvbGwgeyBvdmVyZmxvdzogaGlkZGVuOyB9XG59XG5cbmJvZHkucHNldWRvIHtcbiAgICAuY21zLXNsb3QtcmVvcmRlci1jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxufVxuXG5hIHtcbiAgICBjb2xvcjogJGNvbG9yQmFzZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbn1cbnVsLCBvbCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbmltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgICBtYXJnaW46IDAgMCAzMHB4IDMwcHg7XG4gICAgfVxuICAgICYuYWxpZ24tbGVmdCB7XG4gICAgICAgIG1hcmdpbjogMCAzMHB4IDMwcHggMDtcbiAgICB9XG59XG5pZnJhbWUge1xuICAgIG1heC13aWR0aDogMTAwJTtcbn1cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4ucHJpbnQtb25seSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLy90aXRsZXNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvX3RpdGxlcyc7XG5cbi8vbW9kYWxzXG5AaW1wb3J0ICdjb21wb25lbnRzL19tb2RhbCc7XG5cbi8vbGF5b3V0XG5AaW1wb3J0ICdfbGF5b3V0JztcblxuLy9oZWFkZXJcbkBpbXBvcnQgJ2hlYWRlci9faGVhZGVyJztcbkBpbXBvcnQgXCJoZWFkZXIvX21lbnVcIjtcblxuLy9mb290ZXJcbkBpbXBvcnQgXCJmb290ZXIvX2Zvb3RlclwiO1xuXG4vL1BBTk5FQVUgUFJPUE9TSVRJT05TIERFIFJFQ0hFUkNIRVxuQGltcG9ydCBcImNvbXBvbmVudHMvc2VhcmNoLXN1Z2dlc3Rlci1wYW5lbFwiO1xuXG4vL25vdGlmaWNhdGlvbnNcbkBpbXBvcnQgXCJjb21wb25lbnRzL25vdGlmaWNhdGlvbnNcIjtcblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogQk9VVE9OIEhBVVQgREUgUEFHRVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmJhY2stdG8tdG9wIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHJpZ2h0OiA0JTtcbiAgICBib3R0b206IDQlO1xuICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgIC5wYXRoMSB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDQwcHgpO1xuICAgIH1cbiAgICAucGF0aDIsIC5wYXRoMyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogU1RZTEVTIEdFTkVSSVFVRVNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi50aXRyZS1ibG9jLWJ1bGxldCB7XG4gICAgY29sb3I6ICRjb2xvckJhc2U7XG4gICAgZm9udC1zaXplOiAyLjdyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luOiAwIDAgMzBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgfVxufVxuXG4udGl0cmUtdmVydCB7XG4gICAgY29sb3I6ICR2ZXJ0O1xuICAgIEBpbmNsdWRlIGZvbnRTaXplKDIxcHgpO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIExpZW4gaWNvbmUgZGUgbW9kaWZpY2F0aW9uXG4ubGluay1lZGl0IHtcbiAgICBjb2xvcjogJHZlcnQ7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6OmJlZm9yZXtcbiAgICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGYxNGInO1xuICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICAgICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZle1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxufVxuXG4ubGluay1lZGl0LWJsZXUge1xuICAgIGNvbG9yOiAkYmxldTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjo6YmVmb3Jle1xuICAgICAgICBAZXh0ZW5kIC5mYTtcbiAgICAgICAgY29udGVudDogJ1xcZjA0MCc7XG4gICAgfVxuICAgICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZlIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBzcGFuIHtcblxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG59XG5cbi8vIERhdGVcbi5kYXRlIHtcbiAgICBjb2xvcjogJGJsZXU7XG4gICAgQGluY2x1ZGUgZm9udFNpemUoMTVweCk7XG5cbiAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6ICRjb2xvckJhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgfVxufVxuXG4vLyBRdWFudGl0ZSBib3V0b25zICsgZXQgbW9pbnNcbi5xdWFudGl0ZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIC5xdGUtbGFiZWwge1xuICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNHB4KTtcbiAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgfVxuICAgIC5xdGUge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM4cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxuICAgIC51bml0LW9ubHkge1xuICAgICAgICAuYW1vdW50IHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyaXNDbGFpcjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgYS5taW51cywgYS5wbHVzIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5OTk5cHg7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIsICY6YWN0aXZlIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDIwcHgpO1xuICAgICAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnQoKTtcbiAgICAgICAgICAgIGNvbG9yOiAkdmVydDtcbiAgICAgICAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIGEubWludXM6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlOTE5XCI7IH1cbiAgICBhLnBsdXM6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlOTFhXCI7IH1cbiAgICAuYW1vdW50IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDFweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBoZWlnaHQ6IDM4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzOHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICYubm9uLWVkaXRhYmxlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBFdGF0IHF1YW50aXRlIGRlIHByb2R1aXRcbi5xdGUtZXRhdCB7XG4gICAgQGluY2x1ZGUgZm9udFNpemUoMTRweCk7XG4gICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogNXB4XG4gICAgfVxuICAgICYuSEFVVEU6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR2ZXJ0O1xuICAgIH1cbiAgICAmLk1PWUVOTkU6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRqYXVuZTtcbiAgICB9XG4gICAgJi5GQUlCTEU6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRyb3VnZTtcbiAgICB9XG4gICAgLnF0eS1zdG9jayxcbiAgICAuc3RvY2stdGVybWUge1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgICB9XG4gICAgLnN0b2NrLXRlcm1lIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIC5saWJlbGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6ICRjb2xvckJhc2U7XG4gICAgfVxuXG4gICAgJi0tbGlnaHQge1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGNvbG9yOiAkY29sb3JCYXNlO1xuICAgIH1cbn1cblxuLy8gUGFzdGlsbGUgcG91ciBsZXMgYWN0dWFsaXTDqXNcbi5wYXN0aWxsZSB7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuOXJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBwYWRkaW5nOiA0cHggMTBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAmLm5vdXZlbGxlLCAmLm5vdXZlYXUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdmVydDtcbiAgICB9XG4gICAgJi5yZWNlbnRlLCAmLnJlY2VudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRqYXVuZTtcbiAgICAgICAgY29sb3I6ICMwMjFCMzM7XG4gICAgfVxufVxuXG4vLyBJY29uZXMgcG91ciBsZXMgZG9jdW1lbnRzXG4uaWNvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgZm9udFNpemUoMTdweCk7XG4gICAgY29sb3I6ICRibGV1O1xuICAgIHRleHQtaW5kZW50OiAtMTAwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudFk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgY29sb3I6ICRncmlzRm9uY2U7XG4gICAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgIH1cbiAgICAmQVVUUkUge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTkzMCc7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJkVYQ0VMIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5MzQnO1xuICAgICAgICB9XG4gICAgfVxuICAgICZQREYge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTkyMic7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJldPUkQge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTkzYyc7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJlBQVCxcbiAgICAmUFBUWCB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlOTI4JztcbiAgICAgICAgfVxuICAgIH1cbiAgICAmUE5HIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5MGYnO1xuICAgICAgICB9XG4gICAgfVxuICAgICZNUDQge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTkxMCc7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50aXRyZS1ib3V0b24ge1xuICAgIEBpbmNsdWRlIHRpdHJlLWdhdWNoZS1ib3V0b24tZHJvaXRlO1xufVxuXG4vLyBCb3V0b24gYmxvYyBnZW5lcmlxdWUgLSBwYWdlIGxpc3RlIHBhbmllcnMgcGFyIGV4ZW1wbGVcbi8vIHBhciBkw6lmYXV0LCBjZSBnZW5yZSBkZSBib3V0b24gY29udGllbnQgdW5lIGljb25lIGRhbnMgdW4gOjpiZWZvcmVcbi5idG4tYmxvYyB7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDVweCAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICYgPiBzcGFuLCAmID4gYSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnQoKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudFkoKTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJiA+IGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxufVxuXG5cbi50ZXh0LWludHJvIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbn1cblxuLmhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vLyB1aSBzbGlkZXIgYmFyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9yYW5nZS1zbGlkZXJcIjtcblxuLy9wcml4IHByb21vXG4ubGlzdGVQcm9kdWl0UHJpeEJhcnJlLFxuLnByaXhCYXJyZSB7XG4gICAgQGluY2x1ZGUgZm9udFNpemUoMTNweCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcHg7XG59XG5cbi5tZXNzYWdlLXByb21vIHtcbiAgICBjb2xvcjogJGJsYW5jO1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjhyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAuaW5uZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcm91Z2U7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAycmVtO1xuICAgIH1cblxuICAgIC8vZmluIGRlIHZpZVxuICAgICYtZmluLXZpZSB7XG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCYXNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5ERVNUT0NLQUdFIHtcbiAgICAgICAgY29sb3I6ICMyQjJCMkI7XG5cbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRqYXVuZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuTk9VVkVBVVRFIHtcbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR2ZXJ0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1yZWNvbW1hbmRlIHtcbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5waWVjZS1qb2ludGUge1xuICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgLnRpdHJlIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMjJweCk7XG4gICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICAgIC5maWVsZC10aXRsZSxcbiAgICAudGl0cmUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgIH1cbiAgICAuYWRkRmlsZSB7XG4gICAgICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTRweCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgfVxuICAgIC5jb2xsZWN0aW9uLXBsdXMge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICB9XG4gICAgLmZpY2hpZXJKb2ludHMge1xuICAgICAgICBkaXYge1xuICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgICAgICAgICY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJ1dHRvbi5idG4tZGVsZXRlLXBqIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkYmxldTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDZweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiAwIG5vbmU7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnQoKTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IDAgbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTNweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjNzU3NTc1O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLmV4dC1kb2M6OmJlZm9yZSwgJi5leHQtZG9jeDo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJ1xcZTkzYyc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYuZXh0LXBwdDo6YmVmb3JlLCAmLmV4dC1wcHR4OjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOTI4JztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5leHQtY3N2OjpiZWZvcmUsICYuZXh0LXhsczo6YmVmb3JlLCAmLmV4dC14bHN4OjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOTM0JztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5leHQtcGRmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOTIyJztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5leHQtcG5nOjpiZWZvcmUsICYuZXh0LWpwZzo6YmVmb3JlLCAmLmV4dC1qcGVnOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOTBmJztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5leHQtdHh0OjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOTM2JztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vYm94IHBhbmllclxuLmJveC10eXBlLXBhbmllciB7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI0MzQzNDMztcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nOiAycHggMTBweCAycHggMzBweDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggYXV0bztcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA3cHggY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhbmM7XG4gICAgY29sb3I6ICRjb2xvckJhc2UgO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgbWluLWhlaWdodDogMThweDtcblxuICAgICYtLXB3YSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgICAgICBjb2xvcjogJGJsYW5jO1xuICAgIH1cbn1cblxuLy90dW5uZWwtc2VsZWN0aW9uXG4uYm94LXR1bm5lbC1zZWxlY3Rpb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGV1T3JjYWI7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuOHJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgcGFkZGluZzogNHB4IDEwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMzBweDtcbn1cblxuLy8gQnJlYWRjcnVtYlxuQGltcG9ydCBcImNvbXBvbmVudHMvYnJlYWRjcnVtYlwiO1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFBBR0lOQVRJT05cbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5wYWdpbmF0b3ItbmJyZSB7XG4gICAgbWFyZ2luOiAwIDAgNDBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBjbGVhcjogYm90aDtcbiAgICAucGFnaW5hdG9yIHtcbiAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudFgoKTtcbiAgICAgICAgcGFkZGluZzogOHB4IDA7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5saXN0ZV9wcm9kdWl0X2Zvcm1fdHJpIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDlweCA1OHB4IDlweCAxMHB4O1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOHJlbTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA2MHB4IDAgMDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuLnBhZ2luYXRvciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICYgPiBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIH1cbiAgICAubnVtIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGdyaXNGb25jZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE2cHgpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMxcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAzMXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMXB4O1xuICAgICAgICB9XG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmlzQm9yZHVyZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5wcmV2LCAubmV4dCxcbiAgICAuZmlyc3QsIC5sYXN0IHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC0xMDAwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLmZhO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5wcmV2IGE6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGYxMDQnO1xuICAgIH1cbiAgICAubmV4dCBhOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnXFxmMTA1JztcbiAgICB9XG4gICAgLmZpcnN0IGE6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGYxMDAnO1xuICAgIH1cbiAgICAubGFzdCBhOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnXFxmMTAxJztcbiAgICB9XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogREFURVBJQ0tFUlxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLnVpLWRhdGVwaWNrZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgcGFkZGluZy1yaWdodDogOHB4O1xuICAgIHotaW5kZXg6IDExMSAhaW1wb3J0YW50O1xuICAgIC51aS1kYXRlcGlja2VyLXByZXYsXG4gICAgLnVpLWRhdGVwaWNrZXItbmV4dCB7XG4gICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnRZO1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudWktZGF0ZXBpY2tlci1wcmV2IHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgICYgKyAudWktZGF0ZXBpY2tlci1wcmV2IHtcbiAgICAgICAgICAgIGxlZnQ6IDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnVpLWRhdGVwaWNrZXItbmV4dCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICYgKyAudWktZGF0ZXBpY2tlci1uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiA0MHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIHRhYmxlICB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgfVxufVxuLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdmVydDtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udWktZGF0ZXBpY2tlci10aXRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxNXB4O1xufVxuLnVpLWRhdGVwaWNrZXItdHJpZ2dlciB7XG4gICAgd2lkdGg6IDIxcHg7XG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbn1cbi51aS1kYXRlcGlja2VyLWNhbGVuZGFyIHtcbiAgICB0aGVhZCB0aCB7XG4gICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgfVxuICAgIHRib2R5IHRkIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBhLCBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2M1YzVjNTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICAgICAgJi51aS1zdGF0ZS1kZWZhdWx0IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYudWktc3RhdGUtaGlnaGxpZ2h0LFxuICAgICAgICAgICAgJi51aS1zdGF0ZS1ob3ZlcixcbiAgICAgICAgICAgICYudWktc3RhdGUtYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxldTtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNjNWM1YzU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi51aS1zdGF0ZS1kaXNhYmxlZCB7XG4gICAgICAgICAgICAudWktc3RhdGUtZGVmYXVsdCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2RkZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBMSVNURSBHRU5FUklRVUVcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi8vIGxpc3RlIGdlbmVyaXF1ZSwgYXZlYyB0aHVtYm5haWwgYSBnYXVjaGVcbi5saXN0ZS1nZW5lcmlxdWUge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIC5pdGVtIHtcbiAgICAgICAgbWluLWhlaWdodDogMjI1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgIEBpbmNsdWRlIGludHJvLWltZy1kZXNjcmlwdGlvbjtcbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgyMXB4KTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHZlcnQ7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmRhdGUge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5yZXN1bWUge1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmdhdWNoZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDcyJTtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmRyb2l0ZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI4JTtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5yZXBvbmR1IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTMwLDE3MCw1NSwgMC4xKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBDT0xPTkFHRVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmNtcy1ibG9jIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICAmLmZsLWwtNTAsXG4gICAgJi5mbC1yLTUwIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG4gICAgJi5mbC1sLTMzLFxuICAgICYuZmwtYy0zMyxcbiAgICAmLmZsLXItMzMge1xuICAgICAgICB3aWR0aDogMzIlO1xuICAgIH1cbiAgICAmLmZsLWwtNTAge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgfVxuICAgICYuZmwtci01MCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgY2xlYXI6IG5vbmU7XG4gICAgfVxuICAgICYuZmwtbCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyBjbGVhcjogbm9uZTtcbiAgICB9XG4gICAgJi5mbC1yIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyBjbGVhcjogbm9uZTtcbiAgICB9XG4gICAgJi5mbC1sLTMzIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDElO1xuICAgIH1cbiAgICAmLmZsLWMtMzMge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDElO1xuICAgICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG4gICAgJi5mbC1yLTMzIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBjbGVhcjogcmlnaHQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxJTtcbiAgICB9XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogUEFSQUdSQVBIRVNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5wYXJhZ3JhcGhlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5UUExfUkVEQUNUSU9ORUwsIC5UUExfUEFSVEFHRSB7XG4gICAgbWFyZ2luLWJvdHRvbTogOTBweDtcblxuICAgIC8vYWNjdWVpbFxuICAgIC5hY2N1ZWlsICYge1xuICAgICAgICBoMyB7XG4gICAgICAgICAgICBAZXh0ZW5kIC50aXRyZS1ibG9jLWJ1bGxldDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBwLCB1bCwgb2wge1xuICAgICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICB9XG4gICAgdWwgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZjExMVwiO1xuICAgICAgICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSg1cHgpO1xuICAgICAgICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IC0zcHg7XG4gICAgICAgIH1cbiAgICAgICAgdWwsIG9sIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyOHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIG9sIHtcbiAgICAgICAgY291bnRlci1yZXNldDogaTtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IGk7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBjb3VudGVycyhpLCBcIi5cIilcIi5cIjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxMXB4KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHZlcnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIG9sIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyOHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMzBweCAzMHB4O1xuICAgICAgICB9XG4gICAgICAgICYuYWxpZ24tbGVmdCB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMzBweCAzMHB4IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgdGFibGUge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0aGVhZCB0ZCwgdGgge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMjBweCk7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxldTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0ZCB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxOHB4KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE3cHggMTBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjYzFjMWMxO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IDE3cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHZlcnQ7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2MxYzFjMTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRhYmxlLm5vLWJvcmRlciB7XG4gICAgICAgIHRoZWFkIHRkLCB0aCB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0ZCB7XG4gICAgICAgICAgICAmOjphZnRlcixcbiAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuQGltcG9ydCBcImNvbXBvbmVudHMvZm9ybXNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2FzaWRlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy90YWJsZXNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2J1dHRvbnNcIjtcblxuLmFkZFRvUGFuaWVyTW9kYWxfX3RpdGxlIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xufVxuXG4jYWRkVG9QYW5pZXJNb2RhbEJvZHkge1xuICAgIC5hZGRUb1Bhbmllck1vZGFsX19kYXRhUHJvZHVjdCB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICAgICAgLmFkZFRvUGFuaWVyTW9kYWxfX3RpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuYWRkVG9QYW5pZXJNb2RhbF9fY29udGVudCBzcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5maWVsZCBsYWJlbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuXG4gICAgLmZpZWxkIHRleHRhcmVhIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyaXNCb3JkdXJlO1xuICAgIH1cbn1cblxuLmFkZFRvUGFuaWVyTW9kYWxfX2Zvb3RlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDIwcHg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMTBweDtcbiAgICB9XG5cbiAgICAuYnRuLXZhbGlkZXIsXG4gICAgLmJ0bi1hbm51bGVyIHtcbiAgICAgICAgbWluLXdpZHRoOiAyMTBweDtcbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIExJR0hUQk9YXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uZmFuY3lib3gtb3ZlcmxheXtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2Nzcy9pbWFnZXMvZmFuY3lib3hfb3ZlcmxheS5wbmcnKTtcbiAgICAjZmFuY3lib3gtbG9hZGluZyxcbiAgICAuZmFuY3lib3gtY2xvc2UsXG4gICAgLmZhbmN5Ym94LXByZXYgc3BhbixcbiAgICAuZmFuY3lib3gtbmV4dCBzcGFuIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9jc3MvaW1hZ2VzL2ZhbmN5Ym94X3Nwcml0ZS5wbmcnKTtcbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIGJsb2MgcGxhcXVldHRlIG9yY2FiXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4vKlxuICAgIGUueCA6IHBhZ2UgZCdhY2N1ZWlsXG4qL1xuLnBsYXF1ZXR0ZS1vcmNhYiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyaXNDbGFpcjtcbiAgICBwYWRkaW5nOiAzMHB4IDMwcHggMzBweCAxMTVweDtcbiAgICAuaW5uZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2Nzcy9pbWFnZXMvcGxhcXVldHRlLW9yY2FiLnBuZycpIG5vLXJlcGVhdCByaWdodCBib3R0b207XG4gICAgICAgIHBhZGRpbmc6IDcwcHggMjBweCA3MHB4IDIwMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgYm9yZGVyOiAwIG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMjdweCk7XG4gICAgICAgICAgICBjb2xvcjogJHZlcnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIGJsb2MgY29udGFjdFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9DT05UQUNUIHtcbiAgICAucGllY2Utam9pbnRlIHtcbiAgICAgICAgLmNvbGxlY3Rpb24tcGx1cyB7XG4gICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgfVxuICAgICAgICAuZmljaGllckpvaW50cyAge1xuICAgICAgICAgICAgZGl2IHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgybikge1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuQGltcG9ydCBcImNvbXBvbmVudHMvY29udGFjdFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZG9jdW1lbnRcIjtcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIEJvdXRvbiBGYXZvcmlzXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4udGl0cmUtYXZlYy1mYXZvcmlzIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMzVweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbWluLWhlaWdodDogNDhweDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNjVweDtcbiAgICAgICAgdG9wOiBpbmhlcml0O1xuICAgIH1cblxuICAgICYuZmF2b3Jpc0xpc3RlUHJvZHVpdCB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgIHRvcDogLThweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmZhdm9yaXNQYWdlQ29tbWFuZGUge1xuICAgICAgICB0b3A6IC0yM3B4O1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICB0b3A6IC0xOHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgI3ZvbGV0LWFjdHVhbGl0ZSAmIHtcbiAgICAgICAgcmlnaHQ6IDYwcHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuLmZhdm9yaXMtYnRuLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgYWxpZ25lbWVudFk7XG4gICAgcmlnaHQ6IDA7XG4gICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS43cmVtO1xuICAgICAgICBib3JkZXItY29sb3I6ICRncmlzQm9yZDtcbiAgICAgICAgcGFkZGluZzogOXB4IDIwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgYmFja2dyb3VuZDogJGJsYW5jO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgY29sb3I6JGJsZXVPcmNhYjtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5NmFcIjtcbiAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gICAgICAgICAgICBjb2xvcjokYmxldU9yY2FiO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgY29sb3I6ICRibGFuYztcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXI6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICB3aWR0aDogMzhweDtcbiAgICAgICAgICAgIGhlaWdodDogMzhweDtcbiAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudDtcbiAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5sb2FkZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG4gICAgfVxufVxuLmNvbC1tYWluLmlubmVyLWNvbnRlbnQge1xuICAgICYgPiAudGl0cmUtYXZlYy1mYXZvcmlzIHtcbiAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgfVxufVxuLndpdGgtYnRuLWZhdm9yaXMge1xuICAgICNzbG90X21haW4gPiAuY21zLWJsb2M6Zmlyc3QtY2hpbGQgPiAuY21zLXRwbCA+IC5UUExfUkVEQUNUSU9ORUwge1xuICAgICAgICBoMywgaDQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogN3B4O1xuICAgICAgICB9XG4gICAgfVxufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogU0VSVklDRSBFWFRFUk5FXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uVFBMX1NFUlZJQ0VfRVhURVJORSB7XG4gICAgaWZyYW1lIHtcbiAgICAgICAgbWluLWhlaWdodDogNTB2aDtcbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFNVUkNIQVJHRSBTRUxFQ1QyIFBTRVVET1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLyogSEVBREVSIHNlbGVjdDIgKi9cbiNtaExpc3RlQm91dGlxdWUgLnNlbGVjdDItY29udGFpbmVyOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBNRURJQVFVRVJJRVNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGRlc2t0b3ApIHtcblxufVxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRkZXNrdG9wLXNtYWxsKSB7XG59XG5cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgKiBTVFJVQ1RVUkVcbiAgICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLmlubmVyLWNvbnRlbnQgeyBwYWRkaW5nOiAgMCAyMHB4O31cbiAgICAud2l0aC1jb2wtbGVmdCAuY29sLW1haW4geyB3aWR0aDogMTAwJTsgfVxuICAgIC53aXRoLWNvbC1sZWZ0IC50aXRyZS1wYWdlIHsgbWFyZ2luLWxlZnQ6IDA7IH1cblxuXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAqIFNUWUxFUyBHRU5FUklRVUVTXG4gICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC8vYm91dG9uIHJldG91clxuICAgIC5ib3V0b24tcmV0b3VyIHtcbiAgICAgICAgcGFkZGluZzogNnB4IDA7XG4gICAgICAgIHRleHQtaW5kZW50OiAtOTk5OTlweDtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnQoKTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgKiBGT1JNVUxBSVJFIERFIENPTlRBQ1RcbiAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiAgICAuVFBMX0NPTlRBQ1Qge1xuICAgICAgICAubGVmdDUwLFxuICAgICAgICAucmlnaHQ1MCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5waWVjZS1qb2ludGUge1xuICAgICAgICAgICAgLmZpY2hpZXJKb2ludHMgIHtcbiAgICAgICAgICAgICAgICBkaXYge1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICogQUNDVUVJTFxuICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5hY2N1ZWlsIHtcbiAgICAgICAgLmNtcy1ibG9jIHtcbiAgICAgICAgICAgICYuZmwtbC01MCxcbiAgICAgICAgICAgICYuZmwtci01MCxcbiAgICAgICAgICAgICYuZmwtbC0zMyxcbiAgICAgICAgICAgICYuZmwtYy0zMyxcbiAgICAgICAgICAgICYuZmwtci0zMyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb3JtLWJ0bi1ncm91cCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICogU1RZTEVTIEdFTkVSSVFVRVNcbiAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiAgICAubGlzdGUtZ2VuZXJpcXVlIHtcbiAgICAgICAgLml0ZW0ge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICAuZ2F1Y2hlLFxuICAgICAgICAgICAgICAgIC5kcm9pdGUge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmRyb2l0ZSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC00NXB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuOCk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweCA1cHggMCAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMCAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtNDVweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5nYXVjaGUge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYgPiBkaXY6bm90KC50aHVtYm5haWwpIC5kZXNjcmlwdGlvbiAuZHJvaXRlIHtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ib3V0b24tY3JlZXItcGFuaWVyIGEgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLypcbiAgICBncm91cGUgZGUgYm91dG9ucyBtdWx0aXBsZXMgc3VyIGxhIG1lbWUgbGlnbmVcbiAgICBlLnggOiBwYWdlIGNyZWVyIHBhbmllclxuICAgICovXG4gICAgLmZvcm0tYnRuLWdyb3VwIHtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgKiBDT0xPTkFHRVxuICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5jbXMtYmxvYyB7XG4gICAgICAgICYuZmwtbC01MCxcbiAgICAgICAgJi5mbC1yLTUwLFxuICAgICAgICAmLmZsLWwtMzMsXG4gICAgICAgICYuZmwtYy0zMyxcbiAgICAgICAgJi5mbC1yLTMzIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAmLmZsLWwsXG4gICAgICAgICYuZmwtciB7XG4gICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICogcGxhcXVldHRlLW9yY2FiXG4gICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5mbC1sLTUwIC5wbGFxdWV0dGUtb3JjYWIsXG4gICAgLnBsYXF1ZXR0ZS1vcmNhYiB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMTVweDtcbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAzMHB4IDA7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgKiBEQVRFUElDS0VSXG4gICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC51aS1kYXRlcGlja2VyIHtcbiAgICAgICAgd2lkdGg6IDgwLjM1JTtcbiAgICB9XG5cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRJVExFU1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuaDEge1xuICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgIGZvbnQtc2l6ZTogMy4ycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAzLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbW9iaWxlLXNtYWxsKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMi40cmVtO1xuICAgIH1cbn1cbmgyIHtcbiAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICBmb250LXNpemU6IDIuN3JlbTtcbiAgICBsaW5lLWhlaWdodDogM3JlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtb2JpbGUtc21hbGwpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICAgIH1cbn1cbmgzIHtcbiAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICBmb250LXNpemU6IDIuN3JlbTtcbiAgICBsaW5lLWhlaWdodDogMi45cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1vYmlsZS1zbWFsbCkge1xuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgfVxufVxuaDQge1xuICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgIGZvbnQtc2l6ZTogMi42cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjlyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbW9iaWxlLXNtYWxsKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICB9XG59XG5oNSB7XG4gICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjZyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbW9iaWxlLXNtYWxsKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS45cmVtO1xuICAgIH1cbn1cbmg2IHtcbiAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICBsaW5lLWhlaWdodDogMi4ycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1vYmlsZS1zbWFsbCkge1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuOHJlbTtcbiAgICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogTU9EQUxcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5mcm9udE1vZGFsQm94Q29udGFpbmVyIHtcbiAgICAubW9kYWwsIC5tb2RhbC1vcmNhYiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIHBhZGRpbmc6IDQ1cHggMCAyMHB4IDIwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICRncmlzRm9uY2U7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgLnRpdGxlLCAuZmllbGQge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgfVxuICAgIC5maWVsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuICAgIC50aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuN3JlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMi43cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXXtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICB9XG4gICAgbGFiZWwge1xuICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgfVxuICAgIC5tZXNzYWdlIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMjBweCk7XG4gICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICB9XG4gICAgLmNvbnRlbnQge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgICAuZm9vdGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG4gICAgLy9ib3V0b24gYWN0aW9uc1xuICAgIC5hY3Rpb25zIHsgQGV4dGVuZCAuY2xlYXJmaXg7IH1cbiAgICAuYnRuLXN1Ym1pdHtcbiAgICAgICAgQGV4dGVuZCAuYnRuLXBldGl0LXZlcnQ7XG4gICAgfVxuICAgICNidG4tc3VwcHJpbWVyLW91aSxcbiAgICAuYnRuLXZhbGlkZXIse1xuICAgICAgICBAZXh0ZW5kIC5idG4tcGV0aXQtdmVydDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB3aWR0aDogNDclO1xuICAgIH1cbiAgICAuYnRuLWFubnVsZXItcGFuaWVyIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB3aWR0aDogNDclO1xuICAgIH1cbiAgICAjYnRuLXN1cHByaW1lci1ub24sXG4gICAgLmJ0bi1hbm51bGVyIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIEBleHRlbmQgLmJ0bi1wZXRpdC1yb3VnZTtcbiAgICAgICAgd2lkdGg6IDQ3JTtcbiAgICB9XG5cbiAgICAudGhyZWUtY29scyB7XG4gICAgICAgIC5idG4tdmFsaWRlcixcbiAgICAgICAgLmJ0bi1hbm51bGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgIG1pbi13aWR0aDogdW5zZXQ7XG4gICAgICAgICAgICAmLmNlbnRyZSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvL2JvdXRvbiBmZXJtZXJcbiAgICAuYnRuLWZlcm1lciwgLnRpdGxlIGEge1xuICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZXtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubW9kYWwtb3JjYWIge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgLTMzMHB4O1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgdG9wOiAyNSU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgd2lkdGg6IDY2MHB4O1xuICAgICAgICB6LWluZGV4OiAxMDUwO1xuXG4gICAgICAgICYtLW1heGhlaWdodCB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA3NWR2aDtcbiAgICAgICAgICAgIHdpZHRoOiA3NDBweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBsZWZ0OiBjYWxjKDUwJSArIDMzMHB4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tc2dDb25maXJtQWRkSXRlbUFnYWluIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6ICRyb3VnZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICB9XG4gICAgc2VsZWN0IHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi9jc3MvaW1hZ2VzL2ZsLXNlbGVjdC5wbmcnKSBuby1yZXBlYXQgOTclIDUwJSAjZmZmO1xuICAgIH1cbiAgICAuc2VsZWN0LXdyYXAgc2VsZWN0IHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG5cbiAgICAjdm9sZXQtYWN0dWFsaXRlICY6aGFzKCNmYXZvcmktYWRkOm5vdCguaGlkZGVuKSk6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IC0xMDAwdnc7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgNjgsIDk4LCAwLjkpO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgIC5tb2RhbDpoYXMoLmZvcm1BZGRMaXN0ZUFjaGF0KSB7XG4gICAgICAgIHotaW5kZXg6IDEwMDAwMDAwO1xuICAgIH1cblxuICAgIGJvZHk6aGFzKC5tb2RhbCAuZm9ybUFkZExpc3RlQWNoYXQpIC5tb2RhbC1iYWNrZHJvcCB7XG4gICAgICAgIHotaW5kZXg6IDk5OTk5OTk7XG4gICAgfVxufVxuXG4ubXNnLXBhbmllci1hLXZhbGlkZXIge1xuICAgIC5mcm9udE1vZGFsQm94Q29udGFpbmVyIHtcbiAgICAgICAgLm1vZGFsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMzBweDtcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZm9vdGVyIHtcbiAgICAgICAgICAgIC5ib3V0b24tdmVydCB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJvdXRvbi1yb3VnZSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAyMHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgIC5mcm9udE1vZGFsQm94Q29udGFpbmVyIHtcbiAgICAgICAgLm1vZGFsLCAubW9kYWwtb3JjYWIge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA5MCU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgICAgICAgICAgJi0tbWF4aGVpZ2h0IHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICAgICAgICAgICAgICB0b3A6IDEwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogODBkdmg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgI2J0bi1zdXBwcmltZXItb3VpLFxuICAgICAgICAuYnRuLXZhbGlkZXIsXG4gICAgICAgICNidG4tc3VwcHJpbWVyLW5vbixcbiAgICAgICAgLmJ0bi1hbm51bGVyLFxuICAgICAgICAuYnRuLXN1Ym1pdHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMjQwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAudGhyZWUtY29scyB7XG4gICAgICAgICAgICAuYnRuLXZhbGlkZXIsXG4gICAgICAgICAgICAuYnRuLWFubnVsZXIge1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMjQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubXNnLXBhbmllci1hLXZhbGlkZXIge1xuICAgICAgICAuZnJvbnRNb2RhbEJveENvbnRhaW5lciB7XG4gICAgICAgICAgICAuZm9vdGVyIHtcbiAgICAgICAgICAgICAgICAuYm91dG9uLXZlcnQge1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAyNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmJvdXRvbi1yb3VnZSB7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgI2Zvcm11bGFpcmUtaW1wcmVzc2lvbi1yYXBwb3J0IC5lbkxpZ25lIGxhYmVsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4XG4gICAgfVxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogTEFZT1VUXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uaW5uZXItY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiAkZGVza3RvcC1zbWFsbDtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGFibGV0UGx1c09uZSkge1xuICAgICAgICBtYXgtd2lkdGg6ICR3aWRlO1xuICAgICAgICBwYWRkaW5nOiAwIDYwcHg7XG4gICAgICAgICYud2l0aC1jb2wtbGVmdCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5tYWluIHtcbiAgICBtYXgtd2lkdGg6ICRkZXNrdG9wO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGFibGV0UGx1c09uZSkge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgICYucGFnZS1yZWNoZXJjaGUge1xuICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgfVxufVxuLmNvbC1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzAlO1xuICAgIG1heC13aWR0aDogMzQ4cHg7XG4gICAgcGFkZGluZzogMCAzcmVtIDAgMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZGVza3RvcCkge1xuICAgICAgICB3aWR0aDogMjUuNXJlbTtcbiAgICB9XG5cbiAgICAmOmhhcyguYy10b29sdGlwLmlzLWFjdGl2ZSkge1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG59XG5cbiNzbG90X2xlZnQge1xuICAgIC5wYXJhZ3JhcGhlOm5vdCguVFBMX01FTlVfR0FVQ0hFX0NBVEVHT1JJRV9MSVNURSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMuNXJlbTtcbiAgICAgICAgLnRleHQtb25seSAmIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNnJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5jb2wtbWFpbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLndpdGgtY29sLWxlZnQgLmNvbC1tYWluIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMzc4cHgpO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZGVza3RvcCkge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjg1cHgpO1xuICAgIH1cbn1cbi8qLndpdGgtY29sLWxlZnQgLnRpdHJlLXBhZ2UgeyBtYXJnaW4tbGVmdDogMTkuMSU7IH0qL1xuXG4uY29udGFpbmVyOTcwIHtcbiAgICAvL21heC13aWR0aDogODIuOTUlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgLmlubmVyLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgfVxuICAgIC53aXRoLWNvbC1sZWZ0IC5jb2wtbWFpbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC53aXRoLWNvbC1sZWZ0IC50aXRyZS1wYWdlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgLmlubmVyLWNvbnRlbnQgeyBwYWRkaW5nOiAgMCAxNXB4OyB9XG4gICAgLndpdGgtY29sLWxlZnQgLnRpdHJlLXBhZ2UgeyBtYXJnaW46IDIwcHggMDsgfVxuICAgIG1haW4gLmlubmVyLWNvbnRlbnQgeyBtYXJnaW4tdG9wOiAyMHB4O31cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIEJBTkRFQVUgSEFVVFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuI2JhbmRlYXUtaGF1dCB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTE7XG5cbiAgICAvL3RvcCBoZWFkZXJcbiAgICAudG9wLWhlYWRlciB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuM3MpO1xuICAgICAgICBjb2xvcjogJGdyaXNGb25jZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyaXNDbGFpcjtcbiAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjhyZW07XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGFibGV0UGx1c09uZSkge1xuICAgICAgICAgICAgLmlubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNjBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yQmFzZTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzOXB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDIwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS45cmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBhbGlnbmVtZW50WTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAub3B0aW9ucy1hZmZpY2hhZ2Uge1xuICAgICAgICAuYWZmaWNoYWdlLXByaXgge1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTk3M1wiO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3JCYXNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5zaG93LXRhYmxldCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIC5idG4ge1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuYnRuLXJhY2NvdXJjaXMge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTk3MlwiO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJ0bi1saXN0ZXMtYWNoYXQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTk2N1wiO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy9oZWFkZXJcbiAgICAuaGVhZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmID4uaW5uZXItY29udGVudCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjZzIGVhc2UtaW4tb3V0KTtcbiAgICAgICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0YWJsZXRQbHVzT25lKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjhweCA2MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICNsb2dvIHtcbiAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zcyk7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA2OHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIE1vdGV1ciBkZSByZWNoZXJjaGVcbiAgICAucmVjaGVyY2hlLWhlYWRlciB7XG4gICAgICAgIHdpZHRoOiAzNSU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMSU7XG4gICAgICAgIGZvcm0ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgfVxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOXJlbTtcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmlzRm9uY2U7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDY1cHggMTBweCAyMHB4O1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHZlcnQ7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDhweCA4cHggMDtcbiAgICAgICAgICAgIHdpZHRoOiA1NHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTE1XCI7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICNidG4tcmVjaGVyY2hlLW1vYmlsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbXB0ZS1wYW5pZXIge1xuICAgICAgICB3aWR0aDogNDMlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDElO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1vYmlsZSArIDEpIHtcbiAgICAgICAgICAgICYubW0tcGFnZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucHVzaCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvL2J1dHRvbiBoZWFkZXJcbiAgICAuYnV0dG9uLWhlYWRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICAgIG1pbi13aWR0aDogNy41cmVtO1xuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNnB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICAgICAgJi5ub3QtcmVhZCB7XG4gICAgICAgICAgICBpOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICB3aWR0aDogMXJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDFyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRqYXVuZTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMzlweDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJsYW5jO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5zaG93LW5vdGlmIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLnNob3ctbm90aWYuaGFzVW5yZWFkTm90aWYge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgd2lkdGg6IDlweDtcbiAgICAgICAgICAgIGhlaWdodDogOXB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMjZweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYmxhbmM7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG4gICAgICAgICYuZXJyb3Ige1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRyb3VnZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLndhcm5pbmcge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRqYXVuZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLnN1Y2Nlc3Mge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR2ZXJ0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuaW5mbyB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuc2hvdy1wYW5pZXItYWN0aWYge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICBwYWRkaW5nOiAwLjhyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgd2lkdGg6IDE5cmVtO1xuICAgICAgICBjb2xvcjogJGJsYW5jO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAmLndpdGgtdHlwZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICAgICAgfVxuICAgICAgICAubnVtIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDJweDtcbiAgICAgICAgICAgIGxlZnQ6IGNhbGMoNTAlICsgMXB4KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNHJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYmxvYy10eXBlLXBhbmllciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDIwLjZyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgIC5tZW51LW1vYmlsZV9fdGVtcG9yYXJ5IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNjIwcHgpIHtcbiAgICAgICAgLnJlY2hlcmNoZS1oZWFkZXIge1xuICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgfVxuICAgICAgICAuY29tcHRlLXBhbmllciB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGRlc2t0b3ApIHtcblxuICAgICAgICAuc2hvdy1wYW5pZXItYWN0aWYge1xuICAgICAgICAgICAgd2lkdGg6IDEwLjRyZW07XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB9XG4gICAgICAgIC5ibG9jLXR5cGUtcGFuaWVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMnJlbTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTI3NXB4KSB7XG5cbiAgICAgICAgLmhlYWRlciB7XG4gICAgICAgICAgICA+IC5pbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucmVjaGVyY2hlLWhlYWRlciB7XG4gICAgICAgICAgICB3aWR0aDogNDkuNzc4NzYxMDYxOTQ2OSU7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbXB0ZS1wYW5pZXIge1xuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBmbGV4OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgLnB1c2gge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYmxvYy10eXBlLXBhbmllciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IC0wLjhyZW07XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcblxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyaXNCb3JkdXJlO1xuXG4gICAgICAgIC50b3AtaGVhZGVyIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuICAgICAgICAjYmxvYy1wYW5pZXIge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmhlYWRlciB7XG4gICAgICAgICAgICAjbWVudU1vYmlsZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiAuaW5uZXItY29udGVudCB7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jb21wdGUtcGFuaWVyIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbXB0ZS1wYW5pZXIgLnB1c2gge1xuICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLnNob3ctdGFibGV0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICB3aWR0aDogOTVweDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAgICAgJjpoYXMoLmJ0bi1saXN0ZXMtYWNoYXQpIHtcbiAgICAgICAgICAgICAgICBnYXA6IDE1cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICNidG4tcmFjY291cmNpcy1tb2JpbGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGVyLXR3b2J1dHRvbnMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHdpZHRoOiA5NXB4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB9XG4gICAgICAgIC5ibG9jLXR5cGUtcGFuaWVyIHtcbiAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgYm90dG9tOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgIC5yZWNoZXJjaGUtaGVhZGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDgwJSAtIDEwNXB4KTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFkZXIgPiAuaW5uZXItY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTJweDtcbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uLWhlYWRlciB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgLmJ1dHRvbi1oZWFkZXIgaSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5idXR0b24taGVhZGVyIC5oZWFkZXItbGliZWxsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5idXR0b24taGVhZGVyLnNob3ctbm90aWYsXG4gICAgICAgIC5idXR0b24taGVhZGVyLnNob3ctZmF2b3JpcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1lbnUtbW9iaWxlX190ZW1wb3JhcnksXG4gICAgICAgIC5tZW51LnN0eWxlLXRhYmxldCB7XG4gICAgICAgICAgICBvcmRlcjogLTE7XG4gICAgICAgIH1cblxuICAgICAgICAuY29tcHRlLXBhbmllciAgLm1lbnUuc3R5bGUtdGFibGV0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAucmVjaGVyY2hlLWhlYWRlciAjYnRuLXJlY2hlcmNoZS1tb2JpbGUge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHZlcnQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yZWNoZXJjaGUtaGVhZGVyIGZvcm0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc2VhcmNoLW1vYmlsZS1vcGVuIHtcbiAgICAgICAgICAgIC5oZWFkZXIgPiAuaW5uZXItY29udGVudCAucmVjaGVyY2hlLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwdncgLSAxMTNweCk7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDhweCA4cHggMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAjc2VhcmNoLXN1Z2dlc3Rlci1yZXN1bHRzIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwdncgLSA0MHB4KTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC04MHB4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDgwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDEyMHB4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubWVudS5zdHlsZS10YWJsZXQsIC5yZWNoZXJjaGUtaGVhZGVyLCAuc2hvdy10YWJsZXQge1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAjbG9nbyB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTYwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNob3ctdGFibGV0IHtcbiAgICAgICAgICAgIC5vcHRpb25zLWFmZmljaGFnZSwgLnNob3ctdGFibGV0IC5idG4tcmFjY291cmNpcyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ0bi1saXN0ZXMtYWNoYXQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICNidG4tcmFjY291cmNpcy1tb2JpbGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI2J0bi1yYWNjb3VyY2lzLW1vYmlsZTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIi4uLlwiO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgICAgIHRvcDogMzAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaGVhZGVyLXR3b2J1dHRvbnMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYucmFjY291cmNpcy1tb2JpbGUtb3BlbiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFuYztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAub3B0aW9ucy1hZmZpY2hhZ2UsIC5idG4tcmFjY291cmNpcyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaGVhZGVyLXR3b2J1dHRvbnMge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGdhcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGVyLm92ZXJsYXktcmFjY291cmNpcywgJi5zZWFyY2gtbW9iaWxlLW9wZW4gLmhlYWRlciB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgNjgsIDk4LCAwLjkpO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRlci5vdmVybGF5LXJhY2NvdXJjaXMge1xuICAgICAgICAgICAgLnJhY2NvdXJjaXMtbW9iaWxlLW9wZW4ge1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnNlYXJjaC1tb2JpbGUtb3BlbiAuaGVhZGVyIHtcbiAgICAgICAgICAgICNidG4tcmVjaGVyY2hlLW1vYmlsZSB7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29tcHRlLXBhbmllciAucHVzaCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuY29tcHRlLXBhbmllciAuYnV0dG9uLWhlYWRlciB7XG4gICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICB9XG4gICAgICAgIC5ibG9jLXR5cGUtcGFuaWVyIHtcbiAgICAgICAgICAgIHJpZ2h0OiAtMTVweDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgYm90dG9tOiAtNXB4XG4gICAgICAgIH1cblxuICAgICAgICAubWVudS1tb2JpbGVfX3RlbXBvcmFyeSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgJjpoYXMoIH4gLm1lbnUuc3R5bGUtdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxufVxuXG4jc2l0ZS1tYWluLnNjcm9sbGZpeCB7XG4gICAgLy9zY3JvbGxmaXhcbiAgICAjYmFuZGVhdS1oYXV0IHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB6LWluZGV4OiAxMTA7XG4gICAgfVxuICAgIGhlYWRlciNiYW5kZWF1LWhhdXQuaGVhZGVyX19nb2luZy11cCB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDExMDtcbiAgICB9XG5cbiAgICBoZWFkZXIjYmFuZGVhdS1oYXV0LmhlYWRlcl9fZ29pbmctdXA6bm90KC5oZWFkZXItc2ltcGxpZmllLWF2ZWMtZGVmaWxlbWVudCkge1xuICAgICAgICBhbmltYXRpb246IG1lbnVzbGlkZVRvcCAuNXM7XG4gICAgfVxuXG4gICAgaGVhZGVyI2JhbmRlYXUtaGF1dC5oZWFkZXJfX2dvaW5nLWRvd246bm90KC5oZWFkZXItc2ltcGxpZmllLWF2ZWMtZGVmaWxlbWVudCkge1xuICAgICAgICB0b3A6IC0zMDBweDtcbiAgICAgICAgdG9wOiB2YXIoLS1oYXV0ZXVyLWhlYWRlci1uZWdhdGlmKTtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgLjVzO1xuICAgIH1cblxuICAgICNiYW5kZWF1LWhhdXQuaGVhZGVyLWNvbXBsZXQtc2Fucy1kZWZpbGVtZW50Om5vdCguaGVhZGVyX19nb2luZy11cCk6bm90KC5oZWFkZXJfX2dvaW5nLWRvd24pLFxuICAgICNiYW5kZWF1LWhhdXQuaGVhZGVyLWNvbXBsZXQtc2Fucy1kZWZpbGVtZW50Lm5vdC1hZmZpY2hhZ2UtdG9wLWhlYWRlci1kZWZpbGVtZW50Om5vdCguaGVhZGVyX19nb2luZy11cCk6bm90KC5oZWFkZXJfX2dvaW5nLWRvd24pIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkZGVza3RvcCkge1xuICAgICAgICAvLyBTdGlja3kgaGVhZGVyXG4gICAgICAgIC8vIHNpbXBsaWZpZSBhdSBzY3JvbGwgc3VyIGRlc2t0b3BcbiAgICAgICAgJi5zY3JvbGxlZCB7XG4gICAgICAgICAgICAjYmFuZGVhdS1oYXV0LmhlYWRlci1zaW1wbGlmaWUtYXZlYy1kZWZpbGVtZW50Om5vdCguaGVhZGVyX19nb2luZy11cCkge1xuICAgICAgICAgICAgICAgIC5tZW51LXN0eWxlLWRlc2t0b3Age1xuICAgICAgICAgICAgICAgICAgICB1bC5tZW51LW5pdjEgPiBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjUuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgIC8vIFN0aWNreSBoZWFkZXJcbiAgICAgICAgLy8gc2ltcGxpZmllIGF1IHNjcm9sbCBzdXIgZGVza3RvcFxuICAgICAgICAmLnNjcm9sbGVkIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMzVweDtcblxuICAgICAgICAgICAgJi53aXRoLXRvcC1oZWFkZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxODBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC51cHBlci1wcmljZS1oZWFkZXIge1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBoZWFkZXIubm90LWFmZmljaGFnZS10b3AtaGVhZGVyLWRlZmlsZW1lbnQge1xuICAgICAgICAgICAgICAgIC51cHBlci1wcmljZS1oZWFkZXIge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoZWFkZXIubm90LWFmZmljaGFnZS10b3AtaGVhZGVyLWRlZmlsZW1lbnQ6bm90KC5oZWFkZXItY29tcGxldC1zYW5zLWRlZmlsZW1lbnQpIC50b3AtaGVhZGVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNDNweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI2JhbmRlYXUtaGF1dC5oZWFkZXItc2ltcGxpZmllLWF2ZWMtZGVmaWxlbWVudDpub3QoLmhlYWRlcl9fZ29pbmctdXApIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyaXNCb3JkdXJlO1xuXG4gICAgICAgICAgICAgICAgLmJ1dHRvbi1oZWFkZXIge1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmJ1dHRvbi1oZWFkZXIgLmhlYWRlci1saWJlbGxlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuY29tcHRlLXBhbmllciAucHVzaCAuYnV0dG9uLWhlYWRlci5zaG93LXBhbmllci1hY3RpZiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jb21wdGUtcGFuaWVyIC5wdXNoIC5idXR0b24taGVhZGVyLnNob3ctcGFuaWVyLWFjdGlmIGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuc2hvdy1ub3RpZi5oYXNVbnJlYWROb3RpZjo6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmhlYWRlciB7XG4gICAgICAgICAgICAgICAgICAgICYgPiAuaW5uZXItY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggNjBweCA1cHggMjUlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgI2xvZ28gaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vd2lkdGg6IDc1JTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm1lbnUtc3R5bGUtZGVza3RvcCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC00N3B4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjQlO1xuXG4gICAgICAgICAgICAgICAgICAgICNtZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmlubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHVsLm1lbnUtbml2MSA+IGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHVsLm1lbnUtbml2MSA+IGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuaGVhZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgJiA+IC5pbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBTdGlja3kgaGVhZGVyIGF2ZWMgdG9wLWhlYWRlclxuICAgICAgICAgICAgLnN0aWNreS1iYW5kZWF1LWhhdXQge1xuICAgICAgICAgICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgJiA+IC5pbm5lci1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweCA1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAudG9wLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1lbnVzbGlkZVRvcCB7XG4gICAgZnJvbSB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAtMzAwcHg7XG4gICAgICAgIHRvcDogdmFyKC0taGF1dGV1ci1oZWFkZXItbmVnYXRpZik7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6MDtcbiAgICB9XG59XG5cbi8vIE92ZXJsYXkgw6AgbCdvdXZlcnR1cmUgZGVzIHBhbm5lYXV4IGR1IGhlYWRlclxuI292ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDQ5LCA5NiwgMC44KTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDAuM3MpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgei1pbmRleDogLTE7XG4gICAgJi52aXNpYmxlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgfVxufVxuXG4vL21pbmkgcGFuaWVyXG5AaW1wb3J0ICdtaW5pLXBhbmllcic7XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBQQU5ORUFVIFBBTklFUlxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuI21pbmktcGFuaWVyIHtcbiAgICAuaW5uZXItY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDNyZW0gNnJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjA2M2VtO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgICAuaW5mb3MtbGliIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXgtd2lkdGg6IDQ2JTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICB9XG4gICAgLnBhbmllci1saWJlbGxlIHtcbiAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgyMHB4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuICAgIC5uYi1hcnRpY2xlcyB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE2cHgpO1xuICAgICAgICBjb2xvcjogJHZlcnQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAmLm1vYmlsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIC50b3RhbC1wYW5pZXIge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1MHB4O1xuICAgIH1cbiAgICAudG90YWwge1xuICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgyOXB4KTtcbiAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gICAgfVxuICAgIC5lY28tdGF4ZSB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDExcHgpO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgLmRlcm5pZXJzLXByb2R1aXRzIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTZweCk7XG4gICAgICAgIGNvbG9yOiAjODM4MzgzO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICB9XG4gICAgLmJ0bi1jb21tYW5kZXIge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG4gICAgLnBhbmllci1kZXRhaWwtaXRlbSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiA0OC43JTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIuNiU7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJjpudGgtY2hpbGQoMm4rMSkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBjbGVhcjogbGVmdDtcbiAgICAgICAgfVxuICAgICAgICAuZW5jYWRyZSB7XG4gICAgICAgICAgICB3aWR0aDogMTYuNCU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgJiArIC5jYXB0aW9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTYuNCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDgzLjYlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jYXB0aW9uIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICAgICAgLmxpYi1wcm9kdWl0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDIxcHgpO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgfVxuICAgICAgICAuc3RvY2sge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmluZm9zIHtcbiAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5tb2JpbGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnByaXgtdG90YWwge1xuICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgfVxuICAgICAgICAubWFycXVlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE2cHgpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG4gICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxM3B4KTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgfVxuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNnB4KTtcbiAgICAgICAgfVxuICAgICAgICAucXRlIC5pbmZvIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG4gICAgICAgIC5wcml4IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDIwcHgpO1xuICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAmLmxhYmVsLXByb21vIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHJvdWdlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pbmZvcy10eXBlcyB7XG4gICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDEzcHgpO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjdyZW07XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYnRuLWljb24tZGVsZXRlIHtcbiAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMjBweCk7XG4gICAgICAgICAgICBjb2xvcjogJHJvdWdlO1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTkwOVwiO1xuICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAjbWluaS1wYW5pZXIge1xuICAgICAgICAuaW5uZXItY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnRvdGFsLXBhbmllciAuZWNvLXRheGUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgICAuYnRuLWNvbW1hbmRlciB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDE2NXB4O1xuICAgICAgICB9XG4gICAgICAgIC5wYW5pZXItZGV0YWlsLWl0ZW0ge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIC5lbmNhZHJlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTUlO1xuICAgICAgICAgICAgICAgICYgKyAuY2FwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNSU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4NSU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpudGgtY2hpbGQobiszKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wcml4IHtcbiAgICAgICAgICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAjYmxvYy1wYW5pZXIgLm1vbi1wYW5pZXIge1xuICAgICAgICAvL21heC1oZWlnaHQ6IDI2MHB4O1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIH1cbiAgICAjbWluaS1wYW5pZXIge1xuICAgICAgICAuaW5uZXItY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnBhbmllci1saWJlbGxlLCAubmItYXJ0aWNsZXMge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAubmItYXJ0aWNsZXMubW9iaWxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgIH1cbiAgICAgICAgLmJ0bi1jb21tYW5kZXIge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxNDBweDtcbiAgICAgICAgfVxuICAgICAgICAudG90YWwtcGFuaWVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgIC5kZXJuaWVycy1wcm9kdWl0cyB7XG4gICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgfVxuICAgICAgICAucGFuaWVyLWRldGFpbC1pdGVtIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAuZW5jYWRyZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgICAgICAgICAmICsgLmNhcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjUlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jYXB0aW9uIC5pbmZvcyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jYXB0aW9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmxpYi1wcm9kdWl0IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxOHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wcml4LXRvdGFsIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5lY28tdGF4ZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pbmZvcy10eXBlcyB7XG4gICAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHggMCAwO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaW5mb3MubW9iaWxlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyaXNCb3JkdXJlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIE1FTlUgUFJJTkNJUEFMXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4ubWVudSwgLm1tLW1lbnV7XG4gIC5tZW51LXN0eWxlLW1vYmlsZSxcbiAgLm1tLWNsb3Nle1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyaXNCb3JkO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudDtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlOTdhXCI7XG4gICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgfVxuICB9XG4gIC5tbS1uYXZiYXJzLXRvcCAubW0tdGl0bGU6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgYWxpZ25lbWVudFk7XG4gICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICBjb250ZW50OiBcIlxcZTk1MVwiO1xuICAgIGhlaWdodDogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICB3aWR0aDogMjRweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxlZnQ6IDFyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICB9XG59XG5cbiNtZW51TW9iaWxlIHtcbiAgLm1lbnUtbml2IHtcbiAgICAubGluayB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudFk7XG4gICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTUyXCI7XG4gICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgcmlnaHQ6IDFyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNtZW51IHtcbiAgYmFja2dyb3VuZDogJGJsYW5jO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyaXNCb3JkdXJlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgLmlubmVyLWNvbnRlbnQge1xuICAgIC8vbWF4LXdpZHRoOiAxMjMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkZGVza3RvcCkgYW5kIChtaW4td2lkdGg6ICR0YWJsZXRQbHVzT25lKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgIH1cbiAgfVxuICBhIHtcbiAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaW1nIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgc3Bhbjo6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgfVxuICAgICAgaW1ne1xuICAgICAgICBmaWx0ZXI6IGludmVydCg1NyUpIHNlcGlhKDYxJSkgc2F0dXJhdGUoNDA4JSkgaHVlLXJvdGF0ZSgzOWRlZykgYnJpZ2h0bmVzcyg5MyUpIGNvbnRyYXN0KDk1JSk7XG4gICAgICB9XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIH1cbiAgfVxuICAubWVudS1uaXYxIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm5hdjEge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgbWFyZ2luOiAwIDZweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGRlc2t0b3ApIGFuZCAobWluLXdpZHRoOiAkdGFibGV0UGx1c09uZSkge1xuICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICB9XG4gICAgJiA+IGEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4IDVweCAwIDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkZGVza3RvcCkgYW5kIChtaW4td2lkdGg6ICR0YWJsZXRQbHVzT25lKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgfVxuICAgIH1cbiAgICAvKiYuYWN0aXZlID4gYSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmNmY2ZjY7XG4gICAgICAgIGNvbG9yOiAkdmVydDtcbiAgICB9Ki9cbiAgICAubWVudS1waWN0byB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICAgICAgLm1lbnUtcGljdG8tY29sb3Ige1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAtd2Via2l0LW1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAtd2Via2l0LW1hc2stc2l6ZTogY29udGFpbjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBhOmhvdmVyIC5tZW51LXBpY3RvLWNvbG9yIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR2ZXJ0ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLy9vdmVyZmxvdyBub3QgbWVudSBwcm9kdWl0XG4gICAgJjpub3QoLm1lbnUtcHJvZHVpdCkge1xuICAgICAgLmlubmVyLWNvbnRlbnQge1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgIHNjcm9sbGJhci13aWR0aDogdGhpbjtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgIHdpZHRoOiA5cHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogI0YwRjBGMDtcbiAgICAgICAgfVxuICAgICAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI0NEQ0RDRDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc291cy1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMjBweDtcbiAgICB0b3A6IGNhbGMoMTAwJSArIDFweCk7XG4gICAgYmFja2dyb3VuZDogJGJsYW5jO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDJweCAzcHggcmdiYSgwLDAsMCwuMikpO1xuICAgICYgPiBkaXYge1xuICAgICAgcGFkZGluZzogMzBweCAyNXB4IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cbiAgICAmLm9wZW4sIC52aXNpYmxlIHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuICAgIGEge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkdmVydDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmpzLXBhZGRpbmcwIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5tZW51LW5pdjIge1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG4gIC5uYXYyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgICYgPiBhIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgfVxuICB9XG4gIC5tZW51LW5pdjMge1xuICAgIGJhY2tncm91bmQ6ICRibGFuYztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgd2lkdGg6IDM0OHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSA0MHB4IC0gNDBweCAtIDEwcHgpO1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KDJweCAycHggM3B4IHJnYmEoMCwwLDAsLjIpKTtcbiAgICB1bCB7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgc2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xuICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICB3aWR0aDogOXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRjBGMEYwO1xuICAgICAgfVxuICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjQ0RDRENEO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAubWVudS1uaXY0IHtcbiAgICBiYWNrZ3JvdW5kOiAkYmxhbmM7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAzNDhweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMjBweCAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRncmlzQm9yZHVyZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMnB4IDJweCAzcHggcmdiYSgwLDAsMCwuMikpO1xuICAgIHVsIHtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICBzY3JvbGxiYXItd2lkdGg6IHRoaW47XG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIHdpZHRoOiA5cHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNGMEYwRjA7XG4gICAgICB9XG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNDRENEQ0Q7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5pbWctY2F0ZWcge1xuICAgIGJhY2tncm91bmQ6ICNmNmY2ZjY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDY2LjYlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMzMuMyU7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIC8vbWVudS1wcm9kdWl0XG4gIC5tZW51LXByb2R1aXQge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IDMwJTtcbiAgICBtYXgtd2lkdGg6IDM0OHB4O1xuICAgIG1hcmdpbjogMCAyNnB4IDAgMDtcbiAgICBiYWNrZ3JvdW5kOiAkYmxldU9yY2FiICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMCA1cHggMCAwICFpbXBvcnRhbnQ7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRkZXNrdG9wKSB7XG4gICAgICB3aWR0aDogMjUuNXJlbTtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGRlc2t0b3ApIGFuZCAobWluLXdpZHRoOiAkdGFibGV0UGx1c09uZSkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgICA+IGEge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBjb2xvcjogJGJsYW5jICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAubWVudS1waWN0byAubWVudS1waWN0by1jb2xvciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgICAuYWN0aXZlIHtcbiAgICAgID4gYSB7XG4gICAgICAgIGNvbG9yOiAkdmVydDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnBhcmVudCB7XG4gICAgICA+IGEge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMjVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5zb3VzLW1lbnUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGhlaWdodDogMTAwdmg7IC8vIG1pbnVzIGhlYWRlciBoZWlnaHQgaW4gSlNcbiAgICAgIHdpZHRoOiBpbmhlcml0O1xuICAgICAgbWF4LXdpZHRoOiBpbmhlcml0O1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYmFja2dyb3VuZDogJGdyaXNDbGFpcjtcbiAgICAgID4gZGl2IHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIH1cbiAgICAgIC50aXRyZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi43cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgICAgfVxuICAgICAgLmFsbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3JCYXNlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWVudS1uaXYyIHtcbiAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0MHB4IC0gMjhweCk7XG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgc2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgd2lkdGg6IDlweDtcbiAgICAgICAgYmFja2dyb3VuZDogI0YwRjBGMDtcbiAgICAgIH1cbiAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICAgICAgYmFja2dyb3VuZDogI0NEQ0RDRDtcbiAgICAgIH1cbiAgICB9XG4gICAgLm5hdjItbGluayB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cbiAgfVxufVxuXG4jbWVudU1vYmlsZSB7IGRpc3BsYXk6IG5vbmU7IH1cblxuYm9keSB7XG4gICYub3ZlcmZsb3ctaGlkZGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHRhYmxldFBsdXNPbmUpIHtcbiAgICAmLmFjY3VlaWwge1xuICAgICAgI21lbnUge1xuICAgICAgICAubWVudS1wcm9kdWl0IHtcbiAgICAgICAgICAubmF2MS1saW5rIHtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgICA+IC5zb3VzLW1lbnUge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICYub3ZlcmxheS1vcGVuZWQ6YmVmb3JlIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDAuM3MpO1xuICAgICAgICAgICAgICBjb250ZW50OiAnJyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDQ5LCA5NiwgMC44KTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICNiYW5kZWF1LWJhcyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTEwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jb3ZlcmxheS5tZW51LW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDQ5LCA5NiwgMC44KTtcbn1cblxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICNtZW51TW9iaWxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kOiAkZ3Jpc1VJO1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMTAwMDA7XG4gICAgdHJhbnNpdGlvbjogMC40cztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIGxlZnQ6IC0xMDAlO1xuXG4gICAgJi5tbS1vcGVuZWQge1xuICAgICAgdHJhbnNpdGlvbjogMC40cztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgIC5tbS1saXN0dmlldyA+IGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxuXG4gICAgLm1lbnUtbml2IHtcbiAgICAgIHBhZGRpbmc6IDAgMjBweCAwO1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMi40cmVtO1xuICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgbGk6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgfVxuXG4gICAgICAubGluayB7XG4gICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgcGFkZGluZzogMXJlbSA0LjRyZW0gMXJlbSAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5pdi0wIHtcbiAgICAgIC5saW5rIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcblxuICAgICAgICAucGljdG8ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5uaXYtMiAubGluayB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG5cbiAgICAudG9wLWhlYWRlci1zZWNvbmQge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmlzQm9yZHVyZTtcbiAgICAgIHBhZGRpbmc6IDM1cHggNzBweDtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgJi5TZWxlY3RlZCBhIHtcbiAgICAgICAgICBjb2xvcjogJHZlcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAjODM4MzgzO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogJHZlcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAubW0tY2xvc2Uge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYW5jO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnXFxlOTUwJztcbiAgICAgICAgYm9yZGVyOiAwIG5vbmU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAwcHgpO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tbS1uYXZiYXJzLXRvcCAubW0tdGl0bGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDIuMnJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgcGFkZGluZzogMS4xcmVtIDFyZW0gMS4xcmVtIDQuNHJlbTtcbiAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubW0tcGFuZWxzIHtcbiAgICAgIHRvcDogMDtcblxuICAgICAgLm1tLW5hdmJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5tbS1wYW5lbCB7XG4gICAgICAgIHRvcDogMTI0cHg7XG5cbiAgICAgICAgJiNtbS0xIHtcbiAgICAgICAgICB0b3A6IDcwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm1tLWhhc25hdmJhciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICAmID4gLm1tLXBhbmVsIHtcbiAgICAgICAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5tbS1uYXZiYXIge1xuICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICAmLm1tLWhhc2J0bnMge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLm1tLW5hdmJhcnMtdG9wIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbiAgICAubW0tc2VsZWN0ZWQgLmxpbmsge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGNvbG9yOiAkdmVydDtcbiAgICB9XG5cbiAgICAubW0tbmV4dDo6YWZ0ZXIsXG4gICAgLm1tLWxpc3R2aWV3ID4gbGkgLm1tLW5leHQge1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIEJBTkRFQVUgQkFTXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4jYmFuZGVhdS1iYXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGV1T3JjYWI7XG4gICAgLmZvb3RlcjEge1xuICAgICAgICBwYWRkaW5nOiA1cmVtIDZyZW07XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG1heC13aWR0aDogMTQ3cmVtO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBjb2xvcjogJGJsYW5jO1xuICAgICAgICB9XG4gICAgICAgICYgPiB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgfVxuICAgICAgICAubml2MSB7XG4gICAgICAgICAgICB3aWR0aDogMTguMzY3MzQ2OTM4Nzc1NTElO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyLjA0MDgxNjMyNjUzMDYxMiU7XG4gICAgICAgICAgICAmID4gYSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuM3JlbTtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubml2MiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjdyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogMTVweDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRncmlzTWVudTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5mb290ZXItaGFzcGljdG8ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGdhcDogMTVweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mb290ZXItcGljdG97XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgbWluLXdpZHRoOiAyMHB4O1xuXG4gICAgICAgICAgICAuZm9vdGVyLXBpY3RvLWNvbG9yIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1tYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAtd2Via2l0LW1hc2stc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3Jpc01lbnU7XG4gICAgICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyaXNNZW51O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuZm9vdGVyMiB7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbSA0cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMjFCMzM7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMCAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRibGFuYztcbiAgICAgICAgfVxuICAgIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAjYmFuZGVhdS1iYXMge1xuICAgICAgICAuZm9vdGVyMSB7XG4gICAgICAgICAgICAubml2MSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIlO1xuICAgICAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDZyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlLXNtYWxsKSB7XG4gICAgI2JhbmRlYXUtYmFzIHtcbiAgICAgICAgLmZvb3RlcjEge1xuICAgICAgICAgICAgLm5pdjEge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc2V0Q29sb25uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBQQU5ORUFVIFBST1BPU0lUSU9OUyBERSBSRUNIRVJDSEVcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5oZWFkZXIge1xuICAmOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xuICB9XG4gICYuc3VnZ2VzdGVyLW9wZW4ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgNjgsIDk4LCAwLjkpO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRvcDogLTQuM3JlbTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDQuM3JlbSk7XG4gICAgfVxuICAgIC5yZWNoZXJjaGUtaGVhZGVyID4gZm9ybSB7XG4gICAgICB6LWluZGV4OiAzICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbiNzZWFyY2gtc3VnZ2VzdGVyLXJlc3VsdHMge1xuICAtLWJvcmRlci1jb2xvci1ncmF5OiAjY2VjZWNlO1xuXG4gIGJhY2tncm91bmQ6ICRncmlzQ2xhaXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAxMDAlO1xuICB3aWR0aDogOTclO1xuICB6LWluZGV4OiAxMTtcbiAgbWFyZ2luLXRvcDogLTQ5cHg7XG4gIG1hcmdpbi1sZWZ0OiAxLjUlO1xuICBtYXJnaW4tcmlnaHQ6IDEuNSU7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICA+IC50aXRyZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5vdXRlciB7XG4gICAgJi1sZWZ0IHtcbiAgICAgIHdpZHRoOiAzMS44cmVtO1xuICAgICAgcGFkZGluZzogMS41cmVtIDNyZW0gMS41cmVtIDVyZW07XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQ6ICNlOWU5ZTk7XG4gICAgICBjb2xvcjogJGJsZXU7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRkZXNrdG9wKSB7XG4gICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbSAzcmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtcmlnaHQge1xuICAgICAgZmxleDogMTtcbiAgICAgIHBhZGRpbmc6IDVyZW0gM3JlbSAzLjRyZW07XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDE0OHB4KTtcbiAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLy9saXN0c1xuICAuc2VhcmNoLWFsbC1yZXN1bHRzIHtcbiAgICAmLWxpc3Qge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgbGkge1xuICAgICAgICBwYWRkaW5nOiAycmVtIDIuM3JlbTtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWdyYXkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIuM3JlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlOTU0XCI7XG4gICAgICBAaW5jbHVkZSBhbGlnbmVtZW50WTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLmNvbnQtd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICAubGVmdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGRlc2t0b3ApIHtcbiAgICAgIHdpZHRoOiA0OCU7XG4gICAgfVxuICB9XG5cbiAgLmxpc3QtY2F0ZWcge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNi44cmVtO1xuICAgIG1hcmdpbi1yaWdodDogM3JlbTtcbiAgICBsaSB7XG4gICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWdyYXkpO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkYmxldTtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRkZXNrdG9wKSB7XG4gICAgICB3aWR0aDogNDYlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiA0JTtcbiAgICB9XG4gIH1cblxuICAuZGFucy1jYXRlZ29yaWVzIHtcbiAgICBjb2xvcjogJGNvbG9yQmFzZTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gIH1cbiAgLm5vbS1jYXRlZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuICAgIGNvbG9yOiAkYmxldTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgIH1cbiAgfVxuXG4gIC5yaWdodCB7XG4gICAgZmxleDogMTtcbiAgfVxuXG4gIC5zZWFyY2gtc3VnZ2VzdGVyLXJlc3VsdHMge1xuICAgIG1hcmdpbjogMCAtMS40cmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbGkge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHBhZGRpbmc6IDAgMS40cmVtO1xuICAgICAgbWFyZ2luOiAwIDAgM3JlbTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxuICAgICYtaXRlbSB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgYmFja2dyb3VuZDogJGJsYW5jO1xuICAgICAgYm9yZGVyLXJhZGl1czogLjVyZW07XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItZ3JheSk7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMjUuMSU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICAgICAgfVxuICAgICAgJi1pbWFnZSB7XG4gICAgICAgIHdpZHRoOiAyNS4xJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBpbWcge1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDguOHJlbTtcbiAgICAgICAgfVxuICAgICAgICAmICsgLnNlYXJjaC1zdWdnZXN0ZXItcmVzdWx0cy1pdGVtLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMjUuMSU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtZGVzY3JpcHRpb24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICAgICYtbGliZWxsZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogN3B4O1xuICAgICAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuMnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgfVxuICAgICAgLm1hcnF1ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcHg7XG4gICAgICB9XG4gICAgICAubGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgfVxuICAgICAgLmluZm8ge1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgIH1cbiAgICAgIC5tZXNzYWdlLXByb21vLXdyYXBwZXIge1xuICAgICAgICBtYXJnaW46IC0xLjFyZW0gLTEuMXJlbSAxcmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHggNXB4IDAgMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIH1cbiAgICAgIC5tZXNzYWdlLXByb21vIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vYnRuc1xuICAuYnRuLXdyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDRyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5idG4tc2VhcmNoLWFsbC1yZXN1bHRzIHtcbiAgICBtaW4td2lkdGg6IHVuc2V0O1xuICAgIHBhZGRpbmc6IDEuNjVyZW0gMy41NXJlbTtcbiAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgfVxuICAubGluay1jbG9zZSB7XG4gICAgbWluLXdpZHRoOiB1bnNldDtcbiAgICBwYWRkaW5nOiAxLjE1cmVtIDIuMTVyZW07XG4gICAgbWFyZ2luLXRvcDogLjlyZW07XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgY29udGVudDogXCJcXGU5MDlcIjtcbiAgICAgIG1hcmdpbi1yaWdodDogLjk1cmVtO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7XG4gICAgbWFyZ2luOiAwIDJyZW07XG5cbiAgICAub3V0ZXItbGVmdCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gICAgfVxuXG4gICAgLnNlYXJjaC1hbGwtcmVzdWx0cy1saXN0IGxpIHtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMC41cmVtO1xuICAgIH1cblxuICAgIC5saXN0LWNhdGVnIHtcbiAgICAgIGxpOm50aC1jaGlsZChuKzMpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYnRuLXdyYXBwZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gICAgLmxpbmstY2xvc2Uge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSArIDEpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBhZGRpbmc6IDIuNXJlbSAxLjVyZW07XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgPiAudGl0cmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgLm91dGVyIHtcbiAgICAgICYtbGVmdCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAmLXJpZ2h0IHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGVmdCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5ub20tY2F0ZWcge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuc2VhcmNoLXN1Z2dlc3Rlci1yZXN1bHRzIHtcbiAgICAgIGxpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgJjpudGgtY2hpbGQobiszKSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLWl0ZW0ge1xuICAgICAgICAmLWxpYmVsbGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICB9XG4gICAgICAgIC5tYXJxdWUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuYnRuLXdyYXBwZXIge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICB9XG59XG5cbi5oZWFkZXItc2ltcGxpZmllLWF2ZWMtZGVmaWxlbWVudCB7XG4gICNzZWFyY2gtc3VnZ2VzdGVyLXJlc3VsdHMge1xuICAgIG1hcmdpbi10b3A6IHJldmVydDtcbiAgfVxufVxuIiwiLypcbiAgICBibG9jIGFsZXJ0IFwibmJyIHBhbmllciBhIHZhbGlkZXJcIiBvcmNhYlxuICAgIHVuaXF1ZW1lbnQgc3VyIHBhZ2UgZCdhY2N1ZWlsXG4qL1xuI3RvYXN0LWNvbnRhaW5lci10b3AuYmFza2V0LXZhbGlkYXRpb24ge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luOiAyMHB4IGF1dG87XG4gICAgd2lkdGg6IDg1JTtcblxuICAgID4gZGl2IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgIC50b2FzdCB7XG4gICAgICAgICYtZXJyb3Ige1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweCAzcHggM3B4IDNweDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMnB4ICM5OTk5OTk7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMnB4ICMwMDAwMDA7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtbWVzc2FnZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAycHggMCAycHggMzVweDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQmdBQUFBWUNBWUFBQURnZHozNEFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUFKY0VoWmN3QUFEc01BQUE3REFjZHZxR1FBQUFIT1NVUkJWRWhMclphL1NnTkJFTVp6aDBXS0NDbFNDS2FJWU9FRCtBQUtlUVFMRzhIV3p0TENJbUJyWWFkZ0lkWStnSUtOWWtCRlN3dTdDQW9xQ2dra29HQkkvRTI4UGRiTFptZURMZ3paemN4ODMveloyU1NYQzFqOWZyK0kxSHE5M2cyeXhINGl3TTF2a29CV0FkeENtcHpUeGZrTjJSY3laTmFIRklrU28xMCs4a2d4a1hJVVJWNUhHeFRtRnVjNzVCMlJmUWtweEhHOGFBZ2FBRmEwdEFIcVlGZlE3SXdlMnloT0RrOCtKNEM3eUFvUlRXSTN3LzRrbEdSZ1I0bE83UnBuOStndk15V3ArdXhGaDgrSCtBUmxnTjFuSnVKdVFBWXZOa0Vud0dGY2sxOEVyNHEzZWdFYy9vTyttaExkS2dSeWhkTkZpYWNDMHJsT0NiaE5WejRIOUZuQVlnREJ2VTNRSWlvWmxKRkxKdHNvSFlSRGZpWm9VeUl4cUN0UnBWbEFOcTBFVTRkQXBqcnRnZXpQRmFkNVMxOVdnamtjMGhOVm51RjRIalZBNkM3UXJTSWJ5bEIrb1plM2FIZ0JzcWxOcUtZSDQ4alh5SktNdUFiaXlWSjhLemFCM2VSYzBwZzlWd1E0bmlGcnlJNjhxaU9pM0Fiandkc2ZuQXRrMGJDalRMSktyNm1yRDlnOGlxL1MvQjgxaGd1T01sUVRuVnlHNDB3QWNqbm1nc0NORVNEcmptZTd3ZmZ0UDRQN1NQNE4zQ0paZHZ6b055R3EyYy9IV09YSkdzdlZnK1JBL2syTUMvd042STJZQTJQdDhHa0FBQUFBU1VWT1JLNUNZSUk9XCIpIDAgMCBuby1yZXBlYXQ7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgIHdpZHRoOiA5NSU7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgICAgICBtYXJnaW46IDE1cHggMjBweDtcbiAgICB9XG59XG5cbi8qXG4gICAgTWVzc2FnZSBkJ2FsZXJ0ZSBzdXIgdG91dGVzIGxlcyBwYWdlc1xuKi9cbi5hbGVydE1zZ3tcbiAgICAudG9hc3Qge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xuICAgIH1cblxuICAgIGJ1dHRvbiB7XG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhbmM7XG4gICAgICAgIGNvbG9yOiAkY29sb3JCYXNlO1xuICAgIH1cbn1cblxuLmFjY3VlaWwgLmFsZXJ0TXNnIHtcbiAgICBtYXJnaW46IDI1cHg7XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVUkgUkFOR0UgU0xJREVSXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uc2xpZGVyLXByaXgge1xuICAgIHBhZGRpbmc6IDEuNXJlbSAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItZ3JheSk7XG4gICAgJi1sYWJlbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gICAgI3ByaXhSYW5nZSB7XG4gICAgICAgIGhlaWdodDogNHJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogJGNvbG9yQmFzZTtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyaXNDbGFpcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3ItZ3JheSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IC44cmVtO1xuICAgIH1cbn1cblxuLmZsYXQtc2xpZGVyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjODY4Njg2O1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMnJlbSk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgaGVpZ2h0OiAwLjhlbTtcbiAgICAudWktc2xpZGVyLWhhbmRsZSB7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICRibGV1T3JjYWI7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0uNmVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIHRvdWNoLWFjdGlvbjogbm9uZTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgb3BhY2l0eTogLjg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnVpLXNsaWRlci1yYW5nZSB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogN3B4O1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICRncmlzQm9yZDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43ZW07XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgIC5zbGlkZXItcHJpeCB7XG4gICAgICAgIHBhZGRpbmc6ICAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAmLWxhYmVsIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJvcmRlci1jb2xvci1ncmF5KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgcGFkZGluZzogMS41cmVtIC41cmVtO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAjcHJpeFJhbmdlIHtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICB9XG5cbiAgICAuZmxhdC1zbGlkZXIge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgIC5zbGlkZXItcHJpeC1sYWJlbCB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIEZJTCBBUklBTkVcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5hcmlhbmUge1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgY29sb3I6ICRncmlzRm9uY2U7XG4gIG1hcmdpbjogMS41cmVtIDAgMS41cmVtO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICB9XG5cbiAgdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHRhYmxldFBsdXNPbmUpIHtcbiAgICAgIHBhZGRpbmc6IDAgNjBweDtcbiAgICB9XG4gIH1cbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKTo6YmVmb3JlIHtcbiAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICBjb250ZW50OiBcIlxcZTk1MlwiO1xuICAgICAgbWFyZ2luOiAwIC40cmVtO1xuICAgICAgZm9udC1zaXplOiAuN3JlbTtcbiAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgd2lkdGg6IDEuNHJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyLjRyZW07XG4gICAgfVxuICAgICYuZmlyc3Qge1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgIHdpZHRoOiAycmVtO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBpbml0aWFsO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICZfX2J0biB7XG4gICAgcGFkZGluZzogMDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB3aWR0aDogMzBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMnB4O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC44NHB4O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gIH1cblxuICAmX19zdWJpdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXJpZ2h0OiAtM3B4O1xuICB9XG5cbiAgJl9fbGlzdCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgPiBsaTpub3QoLmZpcnN0KSA+IGEge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5hcmlhbmVfX3N1Ymxpc3Qge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZ2FwOiA0cHg7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHBhZGRpbmc6IDhweCAwO1xuICAgICAgdG9wOiAxMjAlO1xuICAgICAgbGVmdDogMjFweDtcbiAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNEQ0RERTA7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmxhbmM7XG4gICAgICBib3gtc2hhZG93OiAwIDhweCAyNHB4IC00cHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgICAgIHotaW5kZXg6IDEwO1xuXG4gICAgICAmLmlzLW9wZW4ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgfVxuXG4gICAgICBsaTo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgIH1cblxuICAgICAgYSxcbiAgICAgIGxpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIGxpIGEge1xuICAgICAgICBwYWRkaW5nOiA2cHggMTZweDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIHRleHQtdW5kZXJsaW5lLW9mZnNldDogNnB4O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgLy9zdXIgbW9iaWxlIG9uIG4nYWZmaWNoZSBwYXMgbGUgZGVybmllclxuICAgIC5pbm5lci1jb250ZW50ID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC8vc3VyIG1vYmlsZSBvbiBjb3VwZSBsJ2F2YW50IGRlcm5pZXIgYSBsYSBmaW5cbiAgICAuaW5uZXItY29udGVudCA+IGxpOm50aC1sYXN0LWNoaWxkKDIpIGEge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMGR2dyAtIDI2NXB4KTtcblxuICAgICAgJi5hcmlhbmVfX2ZpcnN0LWxpbmsge1xuICAgICAgICBvdmVyZmxvdzogdW5zZXQ7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IHVuc2V0O1xuICAgICAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICByaWdodDogMDtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgbGVmdDogOTAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy1vcGVuIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vYXZhbnQgZGVybmllciBldCBhdmFudCBhdmFudCBkZXJuaWVyXG4gICAgLmlubmVyLWNvbnRlbnQgPiBsaTpudGgtbGFzdC1jaGlsZCgyKSxcbiAgICAuaW5uZXItY29udGVudCA+IGxpOm50aC1sYXN0LWNoaWxkKDMpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gIH1cblxuICAuYXJpYW5lX19maXJzdC1saW5rLFxuICAuYXJpYW5lX19zZWNvbmQtbGluayB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTQwcHg7XG4gICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvckJhc2U7XG4gICAgICBib3gtc2hhZG93OiAwIDhweCAyNHB4IC00cHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICBsaW5lLWhlaWdodDogMTQwJTtcbiAgICAgIHotaW5kZXg6IDEwMDA7XG5cbiAgICAgICYuaXMtb3BlbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgICAgICBib3JkZXItd2lkdGg6IDVweDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3JCYXNlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5hcmlhbmVfX3NlY29uZC1saW5rIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIHRleHQtdW5kZXJsaW5lLW9mZnNldDogNHB4O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2ZpcnN0LWJ0bixcbiAgJl9fc2Vjb25kLWJ0biB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgJl9fc2Vjb25kLWJ0biB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICB9XG5cbiAgJl9fZmlyc3QtYnRuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMGR2dyAtIDI2NXB4KTtcbiAgfVxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogRk9STVVMQUlSRVNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbm1haW4gZm9ybSB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG59XG5sYWJlbCB7XG4gICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjhyZW07XG4gICAgJi5yZXF1aXJlZCB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyonO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkcm91Z2U7XG4gICAgICAgIH1cbiAgICB9XG59XG5idXR0b24sIGlucHV0LCBvcHRncm91cCwgc2VsZWN0LCB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IFNhdG9zaGksIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5idXR0b24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zcyk7XG4gICAgfVxufVxuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5zZWxlY3QsXG50ZXh0YXJlYSxcbmlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG5pbnB1dFt0eXBlPVwidGV4dFwiXXtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmlzRm9uY2U7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBsaW5lLWhlaWdodDogMS43cmVtO1xuICAgIGNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgICZbcmVhZG9ubHk9XCJyZWFkb25seVwiXSB7XG4gICAgICAgIGNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgfVxuICAgICZbZGlzYWJsZWQ9XCJkaXNhYmxlZFwiXSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgfVxuICAgICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgIH1cbiAgICAmOi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJGdyaXNGb25jZTtcbiAgICB9XG59XG5zZWxlY3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi8vcmV0aXJlciBsZSBzcGlubmVyIHN1ciBsZXMgbmF2aWdhdGV1cnMgd2Via2l0XG5pbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbn1cblxuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0ge1xuICAgIHBhZGRpbmc6IDlweCAxNXB4IDlweCAxNXB4O1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjdyZW07XG4gICAgY29sb3I6ICRncmlzRm9uY2U7XG4gICAgaGVpZ2h0OiA0MHB4O1xufVxuXG5zZWxlY3QsIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0aW9uIHtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuN3JlbTtcbiAgICBjb2xvcjogJGdyaXNGb25jZTtcbiAgICBwYWRkaW5nOiA5cHggNTVweCA5cHggMTVweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgJjo6LW1zLWV4cGFuZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4uc2VsZWN0Mi1jb250YWluZXIge1xuICAgIC5zZWxlY3Rpb24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgYm9yZGVyOiAwO1xuICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJGdyaXNGb25jZTtcbiAgICB9XG4gICAgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgICAgd2lkdGg6IDIyNXB4O1xuICAgIH1cbn1cblxuLmNtcy1ibG9jLWNvbmYgc2VsZWN0IHtcbiAgICB3aWR0aDogYXV0bztcbn1cblxudGV4dGFyZWEge1xuICAgIHBhZGRpbmc6IDlweCAxNXB4O1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjdyZW07XG4gICAgY29sb3I6ICRncmlzRm9uY2U7XG4gICAgaGVpZ2h0OiAxMjVweDtcbn1cblxuLy9jaGVja2JveFxuQGluY2x1ZGUgY2hlY2tCb3goKTtcbkBpbmNsdWRlIGNoZWNrQm94LXBhcmVudCgpO1xuXG4vL3JhZGlvXG4ucmFkaW8ge1xuICAgIG1hcmdpbjogMCAyMHB4IDVweCAwO1xuICAgIC5maWVsZC1yZXF1aXJlZCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICArIGxhYmVsIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuOXJlbSAxLjdyZW0gMC45cmVtIDMuNnJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0ZvbmNlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBjb2xvcjogJGdyaXNGb25jZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhbGlnbmVtZW50WTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMXJlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMS4xcmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMS4xcmVtOyAvKiBkaW0uIGRlIGxhIGNhc2UgKi9cbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkdmVydDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7IC8qIGFuZ2xlcyBhcnJvbmRpcyAqL1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgICAgICArIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkdmVydDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMC44cmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjhyZW07XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdmVydDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgICArIGxhYmVsOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZ3Jpc0JvcmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmlzQm9yZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuZmllbGRzZXQge1xuICAgIGJvcmRlcjogMCBub25lO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBsZWdlbmQge1xuICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgzMHB4KTtcbiAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgfVxuICAgICYubWVzc2FnZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgfVxufVxuXG4uZW5MaWduZSB7XG4gICAgJiA+IGRpdiwgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIGxhYmVsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgIH1cbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICB9XG4gICAgbGFiZWwucmVxdWlyZWQ6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gICAgLnJhZGlvIHtcbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb3JtLWZpZWxkcy13cmFwcGVyIHtcbiAgICBAZXh0ZW5kIC5jbGVhcmZpeDtcbiAgICAmLmxlZnQ4NyB7XG4gICAgICAgIHdpZHRoOiA4Ny45NTQ1NDU0NTQ1NDU0NSU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYyg3NSUgLSAxNXB4KTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuLmZvcm0tZmllbGQge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICAgIEBleHRlbmQgLmNsZWFyZml4O1xuXG4gICAgJi5sZWZ0NTAge1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAxNXB4KTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuICAgICYucmlnaHQ1MCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDE1cHgpO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICAgICYubm8tbGFiZWwgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuc2VsZWN0LXdyYXAsIC5zZWxlY3QyLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZmllbGQtcmVxdWlyZWQ6OmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgfVxuXG4gICAgJi0tbGlnaHQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG59XG5cbi5mb3JtLWNoZWNrIHtcbiAgICBAZXh0ZW5kIC5jbGVhcmZpeDtcblxuICAgICYubGVmdDUwIHtcbiAgICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICAgIH1cbiAgICAmLnJpZ2h0NTAge1xuICAgICAgICB3aWR0aDogNDglO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICAgIH1cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgfVxuICAgIGxhYmVsIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTZweCk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG59XG5cbi5zZWxlY3Qtd3JhcCwgLnNlbGVjdDItY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlcntcbiAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBAZXh0ZW5kIC5mYTtcbiAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudFk7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogNDJweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNiYWJhYmE7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgIH1cbiAgICBzZWxlY3Qge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgLmZpZWxkLXJlcXVpcmVkIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgcmlnaHQ6IDcwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50ZXh0YXJlYS13cmFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMThweCk7XG4gICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgY29sb3I6ICRjb2xvckJhc2U7XG4gICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgIHRvcDogMjBweDtcbiAgICAgICAgY29udGVudDogXCJcXGU5MjNcIjtcbiAgICB9XG4gICAgdGV4dGFyZWEge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMnB4O1xuICAgIH1cbn1cblxuLmRhdGUtZmllbGQge1xuICAgICYgLndyYXAtZGF0ZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNiYWJhYmE7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogNTBweDtcbiAgICAgICAgICAgIHRvcDogNXB4O1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA5cHggNDhweCA5cHggMTVweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB0b3A6IDlweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZmllbGQtcmVxdWlyZWQge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICB9XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIHJpZ2h0OiA2MHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgICYucmVjaGVyY2hlRmFjZXR0ZVByb2R1aXQtb3B0aW9uR3JvdXB7XG4gICAgICAgIC5yZWNoZXJjaGVGYWNldHRlUHJvZHVpdC1vcHRpb25Hcm91cCA+IGxhYmVsIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAudWktZGF0ZXBpY2tlci10cmlnZ2VyIHtcbiAgICAgICAgICAgIHRvcDogaW5oZXJpdDtcbiAgICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuICAgICAgICAud3JhcC1kYXRlOmFmdGVyIHtcbiAgICAgICAgICAgIHRvcDogaW5oZXJpdDtcbiAgICAgICAgICAgIGJvdHRvbTogNXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9ybS1zdWJtaXQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjbGVhcjogYm90aDtcbiAgICBidXR0b24sXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIEBleHRlbmQgLmJvdXRvbi12ZXJ0O1xuICAgICAgICBAZXh0ZW5kIC5ib3V0b24tbWVkaXVtO1xuICAgIH1cblxuICAgICYucmlnaHQxMCB7XG4gICAgICAgIHdpZHRoOiAxMC45MDkwOTA5MDkwOTA5MSU7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMTVweCk7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZvcm0tbm90aWNlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6ICNjMzNhMjc7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbn1cblxuLm5vLWxhYmVsIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uZm9ybS1lcnJvciB7XG4gICAgY29sb3I6ICRyb3VnZTtcbn1cbi5mb3JtLXN1Y2Nlc3Mge1xuICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKlxuICAgIGdyb3VwZSBkZSBib3V0b25zIG11bHRpcGxlcyBzdXIgbGEgbWVtZSBsaWduZVxuICAgIGUueCA6IHBhZ2UgY3JlZXIgcGFuaWVyXG4qL1xuLmZvcm0tYnRuLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYy1zd2l0Y2gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAyNHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmX19pbnB1dCB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgICZfX2xhYmVsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1OHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgY29sb3I6ICRncmlzRm9uY2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuXG4gICAgICAgICY6OmJlZm9yZSwgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc2xpZGVyLFxuICAgICZfX2lucHV0IHtcbiAgICAgICAgd2lkdGg6IDQ4cHg7XG4gICAgfVxuXG4gICAgJl9fc2xpZGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC40cztcbiAgICAgICAgdHJhbnNpdGlvbjogLjRzO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzNHB4O1xuICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgfVxuXG4gICAgJl9fc2xpZGVyOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgbGVmdDogM3B4O1xuICAgICAgICBib3R0b206IDNweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYW5jO1xuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC40cztcbiAgICAgICAgdHJhbnNpdGlvbjogLjRzO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgfVxuXG4gICAgJl9faW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaF9fc2xpZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHZlcnQ7XG4gICAgfVxuXG4gICAgJl9faW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaF9fc2xpZGVyOmJlZm9yZSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI0cHgpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI0cHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjRweCk7XG4gICAgfVxuXG4gICAgJi0tdmVydGljYWwtc20ge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICAuYy1zd2l0Y2hfX2lucHV0IHtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jLXN3aXRjaF9fbGFiZWwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyOHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmMtc3dpdGNoX19zbGlkZXIge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAqIEZPUk1VTEFJUkVTXG4gICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLmZvcm0tZmllbGQsXG4gICAgLmZvcm0tY2hlY2sge1xuICAgICAgICAmLmxlZnQ1MCxcbiAgICAgICAgJi5yaWdodDUwIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvL2lucHV0IGVuTGlnbmVcbiAgICAuZW5MaWduZSB7XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0rbGFiZWw6OmFmdGVyLFxuICAgICAgICAuZmllbGQtcmVxdWlyZWQrbGFiZWw6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgLnJhZGlvIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIENPTE9OTkUgR0FVQ0hFXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uY29sLWxlZnQsXG4uVFBMX1JFQ0hFUkNIRV9GQUNFVFRFX1BST0RVSVQsXG4uVFBMX1JFQ0hFUkNIRV9GQUNFVFRFX0RPQ1VNRU5ULFxuLlRQTF9SRUNIRVJDSEVfQUNUVUFMSVRFLFxuLlRQTF9SRUNIRVJDSEVfRkFDRVRURV9UWVBFRk9STSB7XG4gIGgzLCAuaDMge1xuICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgfVxuICB9XG4gIC5tZW51LWNvbCB7XG4gICAgcGFkZGluZzogM3JlbSAzcmVtIDNyZW0gMy41cmVtO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogMCA1cHggNXB4IDA7XG4gICAgaDMge1xuICAgIH1cbiAgICBhLmN1cnJlbnQtcGFyZW50IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXGU5MTlcIjtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMjBweCk7XG4gICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgIGNvbG9yOiAkYmxldVR1cnF1b2lzZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiA3cHg7XG4gICAgICB9XG4gICAgICAmLnNsaWRlVXAge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIzcHg7XG4gICAgICAgICY6OmFmdGVye1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTFhXCI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgfVxufVxuXG4ubWVudS1zZWNvbmRhaXJlIHtcbiAgLS1ib3JkZXItY29sb3ItZ3JheTogI2U5ZTllOTtcblxuICBAaW5jbHVkZSBmb250U2l6ZSgxNnB4KTtcbiAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG4gIHNwYW4ucGFnZU5vbkFjY2Vzc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGN1cnNvcjogaW5pdGlhbDtcbiAgfVxuICAubml2MSB7XG4gICAgZm9udC1zaXplOiAwLjg3NWVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItZ3JheSk7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICB9XG4gIC5uYXYwIHtcbiAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgLmhhc0NoaWxkIHtcbiAgICAgIC8vcGFkZGluZy1sZWZ0OiAzLjFyZW07XG4gICAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIH1cbiAgICAmIGxpID4gYSxcbiAgICAmID4gYSB7XG4gICAgICAvL2NvbG9yOiAkYmxldU9yY2FiO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBub25lO1xuICAgIH1cbiAgICAub3BlbkNoaWxkIHtcbiAgICAgIGNvbG9yOiAkYmxldVR1cnF1b2lzZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMnB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTE5XCI7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDIwcHgpO1xuICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgfVxuICAgICAgJi5zbGlkZVVwIHtcbiAgICAgICAgJjo6YWZ0ZXJ7XG4gICAgICAgICAgY29udGVudDogXCJcXGU5MWFcIjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAubmF2MSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAmID4gYSB7XG4gICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItZ3JheSk7XG5cbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJHZlcnQ7XG4gICAgICB9XG4gICAgfVxuICAgICYgPiBzcGFuLnBhZ2VOb25BY2Nlc3NpYmxlIHtcbiAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1ncmF5KTtcbiAgICB9XG4gICAgJi5zZWxlY3RlZCA+IGEsXG4gICAgJi5zZWxlY3RlZCA+IHNwYW4ge1xuICAgICAgcGFkZGluZzogMXJlbSAuNXJlbTtcbiAgICAgIGJhY2tncm91bmQ6ICRncmlzQ2xhaXI7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbiAgICAmLnNlbGVjdGVkID4gLm9wZW5DaGlsZCB7XG4gICAgICB0b3A6IDFweDtcbiAgICB9XG4gICAgJjpub3QoLnNlbGVjdGVkKSA+IC5vcGVuQ2hpbGQge1xuICAgICAgdG9wOiAxM3B4O1xuICAgIH1cbiAgICAub3BlbkNoaWxkIHtcbiAgICAgIHRvcDogN3B4O1xuICAgICAgbGVmdDogMXB4O1xuICAgICAgcGFkZGluZzogMCAuNXJlbTtcbiAgICB9XG4gIH1cbiAgLm5hdjIge1xuICAgIC8vbWFyZ2luLWxlZnQ6IDhweDtcbiAgICAmID4gYSB7XG4gICAgICBmb250LXNpemU6IDAuOTM4ZW07XG4gICAgICBwYWRkaW5nOiA4cHggMCA4cHggMjVweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItZ3JheSk7XG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICB9XG4gICAgfVxuICAgICYgPiBzcGFuLnBhZ2VOb25BY2Nlc3NpYmxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45MzhlbTtcbiAgICAgIHBhZGRpbmc6IDhweCAwIDhweCAyNXB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1ncmF5KTtcbiAgICB9XG4gICAgJi5zZWxlY3RlZCA+IGEsXG4gICAgJi5zZWxlY3RlZCA+IHNwYW4ucGFnZU5vbkFjY2Vzc2libGUge1xuICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQgeyBib3JkZXItYm90dG9tOiAwOyB9XG4gIH1cbiAgLm5hdjMsIC5uYXY0LCAubmF2NSwgLm5hdjYge1xuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgJiA+IGEge1xuICAgICAgZm9udC1zaXplOiAwLjkzOGVtO1xuICAgICAgcGFkZGluZzogOHB4IDAgOHB4IDMxcHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWdyYXkpO1xuXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICB9XG4gICAgfVxuICAgICYgPiBzcGFuLnBhZ2VOb25BY2Nlc3NpYmxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45MzhlbTtcbiAgICAgIHBhZGRpbmc6IDhweCAwIDhweCAzMXB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1ncmF5KTtcbiAgICB9XG4gICAgJi5zZWxlY3RlZCA+IGEsXG4gICAgJi5zZWxlY3RlZCA+IHNwYW4ge1xuICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbiAgfVxuXG4gIC8vc3VyY2hhcmdlIG1lbnUgY29tcHRlXG4gICYubWVudS1jb21wdGUge1xuICAgIC5uaXZlYXUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgIHVsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLm1lbnUtY2F0ZWdvcmllLWxpc3RlIC5uYXYwIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJi5iYXNlLWRvYy1zaWRlLW1lbnUge1xuICAgIC5uYXYwIC5uaXYxIHVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5uYXYxLnBhcmVudC5zZWxlY3RlZCA+IHVsLFxuICAgIC5uYXYyLnBhcmVudC5zZWxlY3RlZCA+IHVsLFxuICAgIC5uYXYzLnBhcmVudC5zZWxlY3RlZCA+IHVsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG4vKiogQSBlbmxldmVyIHNpIHBlcm1ldHRyZSBsZSBmaWx0cmUgc3VyIGxhIGRhdGUgZGVzIGFjdHVhbGl0ZXMgKi9cbi5UUExfUkVDSEVSQ0hFX0FDVFVBTElURSAucmVjaGVyY2hlLWZhY2V0dGUtcHJvZHVpdCB7IGRpc3BsYXk6IG5vbmU7IH1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBNRU5VIFNFQ09OREFJUkUgOiBMSVNURSBERVMgQ0FURUdPUklFXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4ubWVudS1jYXRlZ29yeSB7XG4gIC0tYm9yZGVyLWNvbG9yLWdyYXk6ICNlOWU5ZTk7XG5cbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgcGFkZGluZzogM3JlbSAzcmVtIDNyZW0gMy41cmVtO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAwIDVweCA1cHggMDtcblxuICBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS40cmVtO1xuICAgIGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyLjdyZW07XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICBjb250ZW50OiBcIlxcZTk1MVwiO1xuICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogLjhyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItZ3JheSk7XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDFyZW0gMi43cmVtO1xuICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6ICRncmlzRm9uY2U7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgfVxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZ3Jpc0NsYWlyO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgfVxuICAgICAgJi5hY3RpdmUgc3BhbiB7XG4gICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgfVxuICAgIH1cbiAgICAmLnNlbGVjdGVkIHtcbiAgICAgIGEge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZ3Jpc0NsYWlyO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYubml2MSB7XG4gICAgaDMgYSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICBsaSB7XG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgcGFkZGluZzogMXJlbSAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuc2VsZWN0ZWQge1xuICAgICAgICBhIHtcbiAgICAgICAgICBwYWRkaW5nOiAxcmVtIC41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuQGltcG9ydCBcImZpbHRlcnNcIjsiLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBGSUxUUkVTIDogRkFDRVRURVMgQ09MIEdBVUNIRVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLnJlY2hlcmNoZS1mYWNldHRlLXByb2R1aXQge1xuICAtLWJvcmRlci1jb2xvci1ncmF5OiAjZTllOWU5O1xuXG4gIHBhZGRpbmc6IDA7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICR0YWJsZXRQbHVzT25lKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAuZmFjZXR0ZS13cmFwcGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGgzIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxNTAwcHgpIHtcbiAgICAuZmlsdHJlLWRlY29jaGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5mYWNldHRlIHtcbiAgICBAaW5jbHVkZSBmb250U2l6ZSgxNHB4KTtcbiAgICAucmVjaGVyY2hlRmFjZXR0ZVByb2R1aXQtb3B0aW9uR3JvdXAge1xuICAgICAgJiA+IGxhYmVsLFxuICAgICAgLnJlY2hlcmNoZUZhY2V0dGVQcm9kdWl0LW9wdGlvbiB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItZ3JheSk7XG4gICAgICAgIHBhZGRpbmc6ICAxMnB4IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICYtbmItcHJvZHVpdCB7XG4gICAgICAgICAgbWFyZ2luOiAwIDFyZW0gMCAuNXJlbTtcbiAgICAgICAgICBjb2xvcjogJGdyaXNGb25jZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aGFzKC5yZWNoZXJjaGUtZmFjZXR0ZS1wcm9kdWl0X19pbWcpIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmID4gbGFiZWwge1xuICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5yZWNoZXJjaGVfZmFjZXR0ZV9wcm9kdWl0X2Zvcm0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG5cbiAgLnJlY2hlcmNoZV9mYWNldHRlcyB7XG4gICAgbWF4LWhlaWdodDogMjByZW07XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgLy9maXJlZm94IHNjcm9sbGJhciBzdHlsZSBzcGVjaWZpYyB0byB0aGUgZGl2XG4gICAgc2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xuICAgIC8vY2hyb21lIHNjcm9sbGJhciBzdHlsZSBzcGVjaWZpYyB0byB0aGUgZGl2XG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgd2lkdGg6IDlweDsgIC8vd2lkdGggZm9yIHktYXhpc1xuICAgICAgaGVpZ2h0OiA5cHg7ICAvL2hlaWdodCBmb3IgeC1heGlzXG4gICAgICBiYWNrZ3JvdW5kOiAjRjBGMEYwO1xuICAgIH1cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kOiAjQ0RDRENEO1xuICAgIH1cblxuICAgICY6aGFzKC5jLXN3aXRjaCkge1xuICAgICAgcGFkZGluZy1ib3R0b206IDEycHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWdyYXkpO1xuXG4gICAgICAucmVjaGVyY2hlRmFjZXR0ZVByb2R1aXQtb3B0aW9uIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhhcyguYy1zd2l0Y2gpOmhhcyguYy10b29sdGlwKSB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIG1heC1oZWlnaHQ6IGluaXRpYWw7XG5cbiAgICAgIC5yZWNoZXJjaGVGYWNldHRlUHJvZHVpdC1vcHRpb24tbmItcHJvZHVpdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fc2VhcmNoIHtcbiAgICBpbnB1dCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmQ7XG4gICAgfVxuICB9XG5cbiAgJl9faW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgYXNwZWN0LXJhdGlvOiAxO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxlZnQ6IDA7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICBsZWZ0OiAxNXB4O1xuICAgIH1cbiAgfVxuXG4gIC5yZWNoZXJjaGVGYWNldHRlUHJvZHVpdC1vcHRpb246aGFzKC5yZWNoZXJjaGUtZmFjZXR0ZS1wcm9kdWl0X19pbWcpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBsYWJlbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgIGlucHV0Om5vdCg6Y2hlY2tlZCkgKyBsYWJlbDo6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgbGFiZWw6OmJlZm9yZSB7XG4gICAgICB3aWR0aDogNTBweDtcbiAgICAgIGhlaWdodDogNTBweDtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxuXG4gICAgbGFiZWw6OmFmdGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgIHRvcDogNXB4O1xuICAgICAgbGVmdDogNXB4O1xuICAgIH1cbiAgfVxuXG4gICZfX3NlYXJjaCB7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWdyYXkpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgcGFkZGluZzogNXB4IDE1cHg7XG4gICAgfVxuICB9XG5cbiAgI2VvbGFzX2Vjb21tZXJjZV9vcmNhYl9iYXNlX2RvY19mYWNldHRlIHtcbiAgICAuZmllbGQtcmVxdWlyZWQge1xuICAgICAgbWFyZ2luOiAwIDAgMTVweDtcbiAgICAgIGlucHV0W3R5cGU9XCJkYXRlXCJdIHtcbiAgICAgICAgQGV4dGVuZCBpbnB1dFt0eXBlPVwidGV4dFwiXTtcbiAgICAgIH1cbiAgICAgICY6OmFmdGVyIHsgcmlnaHQ6IDIwJTsgfVxuICAgIH1cbiAgfVxuXG4gIC5yZWNoZXJjaGVGYWNldHRlUHJvZHVpdC1vcHRpb24gbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgaW5wdXQuZGF0ZXBpY2tlckZpZWxkIHtcbiAgICBib3JkZXItY29sb3I6ICRncmlzQm9yZHVyZTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIH1cbn1cblxuLmZhY2V0dGUtd3JhcHBlciB7XG4gIGgzIHtcbiAgICAmLm1vYmlsZS1zdHlsZS5zbGlkZVVwOmFmdGVyLFxuICAgICYubW9iaWxlLXN0eWxlOm5vdCguc2xpZGVVcCk6YWZ0ZXIge1xuICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICBmb250LXNpemU6IDAuODgyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIC5maWx0cmUtZGVjb2NoZXIge1xuICAgIGNvbG9yOiAkdmVydDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIC5yZWNoZXJjaGVGYWNldHRlUHJvZHVpdC1vcHRpb25Hcm91cCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJiA+IGxhYmVsLFxuICAgIC5yZWNoZXJjaGVGYWNldHRlUHJvZHVpdC1vcHRpb24ge1xuICAgICAgcGFkZGluZzogIDEwcHggMDtcbiAgICB9XG4gICAgJiA+IGxhYmVsIHtcbiAgICAgIGNvbG9yOiAkYmxldTtcbiAgICB9XG4gIH1cbn1cblxuLy8gUGxpZXIvZGVwbGllclxuLnJlY2hlcmNoZV9mYWNldHRlX3Byb2R1aXRfZm9ybSB7XG4gIC5yZWNoZXJjaGVGYWNldHRlUHJvZHVpdC1vcHRpb25Hcm91cCB7XG4gICAgJiA+IGxhYmVsIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB9XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gICAgICAgIEBleHRlbmQgLmZhO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIH1cbiAgICAgICYuc2xpZGVEb3duOjphZnRlcntcbiAgICAgICAgY29udGVudDogXCJcXGYxMDZcIjtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJlY2hlcmNoZS1mYWNldHRlLXByb2R1aXRfX3NlYXJjaCwgLnJlY2hlcmNoZV9mYWNldHRlcyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICY6aGFzKC5yZWNoZXJjaGUtZmFjZXR0ZS1wcm9kdWl0X19zZWFyY2gpIHtcbiAgICAgID4gbGFiZWwge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5yZWNoZXJjaGUtZmFjZXR0ZS1nYXVjaGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCAwIDE4cHg7XG4gIGlucHV0IHtcbiAgICBjb2xvcjogJGJsZXU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcGFkZGluZzogMTBweCA2NXB4IDEwcHggMjBweDtcbiAgfVxuICBidXR0b24ge1xuICAgIGJhY2tncm91bmQ6ICR2ZXJ0O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwIDhweCA4cHggMDtcbiAgICB3aWR0aDogNTRweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGU5MTVcIjtcbiAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gICYgPiBkaXY6bnRoLWNoaWxkKDEpIHtcbiAgICAuZm9ybS1yZWNoZXJjaGUgJiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLnJlY2hlcmNoZS1mYWNldHRlLWdhdWNoZSxcbi5yZWNoZXJjaGVfZmFjZXR0ZV9wcm9kdWl0X2Zvcm0gLndyYXAtZGF0ZSBpbnB1dCB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICBtYXJnaW46IDFyZW0gMC41cmVtIDJyZW07XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDFyZW0pO1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICBtYXJnaW46IDFyZW0gMCAycmVtO1xuICB9XG59XG5cbi8vIGZhY2V0dGVzIHRhYmxldHRlXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gIC5mYWNldHRlLXdyYXBwZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG5cbiAgICAmID4gaDMge1xuICAgICAgYmFja2dyb3VuZDogJHZlcnQ7XG4gICAgICBAaW5jbHVkZSBmb250U2l6ZSgxN3B4KTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgbWluLWhlaWdodDogNDBweDtcbiAgICAgIHdpZHRoOiAxNzBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgJi5tb2JpbGUtc3R5bGU6bm90KC5zbGlkZVVwKTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGYxMDYnO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgICAmLm1vYmlsZS1zdHlsZS5zbGlkZVVwOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBjb250ZW50OiBcIlxcZjEwN1wiO1xuICAgICAgfVxuICAgICAgJi5zbGlkZVVwIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIHBhZGRpbmc6IDAgMS41cmVtO1xuICAgIH1cblxuICAgIC5maWx0cmUtZGVjb2NoZXIge1xuICAgICAgbWFyZ2luOiAxcmVtIC41cmVtO1xuICAgIH1cblxuICAgIC5mYWNldHRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBtYXgtd2lkdGg6IDE2OHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogMztcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR2ZXJ0O1xuICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDVweCA1cHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07XG5cbiAgICAgIC5yZWNoZXJjaGVGYWNldHRlUHJvZHVpdC1vcHRpb25Hcm91cCB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICYgPiBsYWJlbCB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJvcmRlci1jb2xvci1ncmF5KTtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogLjVyZW07XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgcmlnaHQ6IC44cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5yZWNoZXJjaGVGYWNldHRlUHJvZHVpdC1vcHRpb24ge1xuICAgICAgICAgIHBhZGRpbmc6IDFyZW0gLjVyZW07XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5yZWNoZXJjaGVfZmFjZXR0ZXMge1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAucmVjaGVyY2hlLWZhY2V0dGUtcHJvZHVpdCB7XG4gIH1cbn1cblxuLy9mYWNldHRlcyBtb2JpbGVcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgLmZhY2V0dGUtd3JhcHBlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDVweCA1cHg7XG5cbiAgICBoMyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICAgICYubW9iaWxlLXN0eWxlLnNsaWRlVXA6YWZ0ZXIsXG4gICAgICAmLm1vYmlsZS1zdHlsZTpub3QoLnNsaWRlVXApOmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMjBweCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmZhY2V0dGUge1xuICAgICAgYm9yZGVyLXdpZHRoOiA1cHg7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgbWF4LXdpZHRoOiBpbmhlcml0O1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDEuMnJlbSk7XG5cbiAgICAgIC5yZWNoZXJjaGVGYWNldHRlUHJvZHVpdC1vcHRpb25Hcm91cCB7XG4gICAgICAgID4gbGFiZWwge1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucmVjaGVyY2hlRmFjZXR0ZVByb2R1aXQtb3B0aW9uIHtcbiAgICAgICAgICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5yZWNoZXJjaGUtZmFjZXR0ZS1wcm9kdWl0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAucmVjaGVyY2hlX2ZhY2V0dGVzIHtcbiAgICAgIG1heC1oZWlnaHQ6IDIxcmVtO1xuICAgIH1cbiAgfVxufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIEZJTFRSRVMgOiBMSVNURSBERVMgRklUUkVTIFNFTEVDVElPTk5FU1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmZpbHRlci1saXN0LXNlbGVjdGVkIHtcbiAgLS1ib3JkZXItY29sb3ItZ3JheTogI2U5ZTllOTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbjogMXJlbSAtLjZyZW0gMCAtLjZyZW07XG5cbiAgbGkge1xuICAgIHBhZGRpbmc6IDAgLjZyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuXG4gIC5idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMXJlbSAxLjlyZW07XG4gICAgY29sb3I6ICRncmlzRm9uY2U7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuOHJlbTtcbiAgICBiYWNrZ3JvdW5kOiAkYmxhbmM7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyaXNNZW51O1xuICAgIGJvcmRlci1yYWRpdXM6IC41cmVtO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRibGFuYywgMS41JSk7XG4gICAgfVxuXG4gICAgLmljb21vb24ge1xuICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICBtYXJnaW46IDAgMCAwIDEuMnJlbTtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGluaXRpYWw7XG4gICAgfVxuICB9XG4gIC5maWx0ZXItdHlwZSB7XG4gICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIH1cbiAgLyouZmlsdGVyLXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAuZmlsdGVyLXRvb2x0aXAtdGV4dCB7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICBjb2xvcjogJGJsYW5jO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgIHRvcDogMTA1JTtcblxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAuZmlsdGVyLXRvb2x0aXAtdGV4dCB7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICB9XG4gICAgfVxuICB9Ki9cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBCTE9DIFRSSSBDQVRFR09SSUVcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi50cmktY2F0ZWdvcmllIHtcbiAgcGFkZGluZzogMCAwIDIwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICYgPiBkaXYge1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIG1heC13aWR0aDogMjcuMzAzNzU0MjY2MjExNiU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gIH1cbiAgLm5iIHtcbiAgICBAaW5jbHVkZSBmb250U2l6ZSgyN3B4KTtcbiAgICBsaW5lLWhlaWdodDogM3JlbTtcbiAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHdpZHRoOiA1NSU7XG4gICAgZmxleDogMTtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICB3aWR0aDogMzMlO1xuICAgIH1cbiAgfVxuICBmb3JtIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZsZXg6IDE7XG4gIH1cbiAgLnNlbGVjdC13cmFwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZW4tc3RvY2sge1xuICAgIG1hcmdpbjogMCA0cmVtO1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICBwYWRkaW5nOiAwIDAgMTRweCAwO1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAmOmhhcyguYy1zd2l0Y2ggKyAuYy1zd2l0Y2gpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBnYXA6IDEwcHg7XG5cbiAgICAgIC5uYiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIC5jLXN3aXRjaCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG5cbiAgICAgIC5mbC1sIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmVuLXN0b2NrIHtcbiAgICAgIHdpZHRoOiAzMSU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIlO1xuICAgICAgbWFyZ2luLXRvcDogM3B4O1xuICAgICAgbGFiZWwgeyBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgfVxuICAgICY+IGRpdjpsYXN0LWNoaWxkIHtcbiAgICAgIHdpZHRoOiAzMyU7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cbiAgICAubmIge1xuICAgICAgQGluY2x1ZGUgZm9udFNpemUoMjRweCk7XG4gICAgfVxuICB9XG59XG4ubGlzdGVfcHJvZHVpdF9mb3JtX3RyaSxcbi5saXN0ZV9kb2N1bWVudF9mb3JtX3RyaSB7XG4gIC5jb250cm9sLWxhYmVsIHtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBjb2xvcjogJGJsZXU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB9XG4gIHNlbGVjdHtcbiAgICBjb2xvcjogJGdyaXNGb25jZTtcbiAgICBAaW5jbHVkZSBmb250U2l6ZSgxNnB4KTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAvKi5jb250cm9sLWxhYmVsIHsgZGlzcGxheTogbm9uZTsgfVxuICAgIC5zZWxlY3Qtd3JhcCB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjA3N1wiO1xuICAgICAgICB0b3A6IDMwJTtcbiAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICB9XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRvcDogNTUlO1xuICAgICAgICByaWdodDogLTVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgc2VsZWN0IHtcbiAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICBwYWRkaW5nOiAwIDAgMCAxMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9Ki9cbiAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBCTE9DIFZVRSBMSVNURS9HUklMTEUgQ0FURUdPUklFXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uY2hvaXgtYWZmaWNoYWdlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDhyZW07XG4gIGhlaWdodDogNHJlbTtcbiAgbWFyZ2luLWxlZnQ6IDVyZW07XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAudmlldyB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiAkYmxhbmM7XG4gICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJsZXVPcmNhYjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaTpiZWZvcmUge1xuICAgICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgfVxuICAgICYtbGlzdCB7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHggMCAwIDVweDtcbiAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICB9XG4gICAgJi1ncmlkIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgNXB4IDVweCAwO1xuICAgIH1cblxuICAgIC8vYWN0aXZlXG4gICAgJi5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgfVxuICB9XG59XG5cblxuLmMtdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB6LWluZGV4OiAxO1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50Oy8vaW1wb3J0YW50IHRvIG92ZXJyaWRlIC5yZWNoZXJjaGVfZmFjZXR0ZXNcbiAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuXG4gICZfX2J1dHRvbiB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgJl9fYnV0dG9uLXR4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgdG9wOiA4cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICAmX19pbm5lciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgbWF4LXdpZHRoOiAxMjBweDtcbiAgICBiYWNrZ3JvdW5kOiAkYmxldU9yY2FiO1xuICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiBjYWxjKDEwMCUgKyAxN3B4KTtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuXG4gICAgcCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG5cbiAgJl9faW5uZXI6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyLXdpZHRoOiA5cHg7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICRibGV1T3JjYWIgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmLmlzLWFjdGl2ZSAuYy10b29sdGlwX19pbm5lciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmLS1yaWdodCB7XG4gICAgLmMtdG9vbHRpcF9faW5uZXIge1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgKyAxN3B4KTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRibGV1T3JjYWI7XG4gICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVEFCTEVBVSBBVkVDIFRSSVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLy9pbnRpdHVsZXMgYXZlYyBib3JkdXJlIGdyaXNcbi5pbnRpdHVsZXMge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuOHJlbTtcbiAgICAmID4gZGl2IHtcbiAgICAgICAgcGFkZGluZzogNXB4IDIwcHggNXB4IDA7XG4gICAgICAgIGNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZmwtZG93biwgLmZsLXVwIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS40cmVtO1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmZsLWRvd24ge1xuICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZjA3OFwiO1xuICAgICAgICB9XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnRZO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmlzQm9yZDtcbiAgICAgICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICByaWdodDogOHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5mbC11cDo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGYwNzdcIjtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTc1MnB4KSB7XG4gICAgICAgIC50cmkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIEdFTkVSQUxJVEVTIFRBQkxFQVVcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5kaXNwbGF5LXRhYmxlIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmID4gZGl2IHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG59XG4vL2hlYWRlciBmaXhlZCBzdXIgc3VpdmkgZGUgY29tbWFuZGVcbi5wZXJzaXN0LWFyZWEge1xuICAgIC5mbG9hdGluZ0hlYWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIGJhY2tncm91bmQ6ICRncmlzQ2xhaXI7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAgICAgICB0b3A6IGNhbGModmFyKC0taGF1dGV1ci1wYWRkaW5nLWhlYWQpKTtcblxuICAgICAgICBib2R5OmhhcyguaGVhZGVyLWNvbXBsZXQtc2Fucy1kZWZpbGVtZW50KSAmIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5yZXN1bHRhdCB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIC5saWIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuZGlzcGxheS10YWJsZSA+IGRpdiB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDA7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC50eXBlLW51bSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBUQUJMRUFVIEdSSVMgUkVTUE9OU0lWRVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLnRhYmxlYXUtZ3Jpcy1yZXNwb25zaXZle1xuICAgIC5yZXNwb25zaXZlLXRhYmxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjhyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAuaGVhZCwgLnJvdyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgICAgICAuY2VsbCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAxNXB4O1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICAuY2VsbCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbW1lbnRhaXJlLWNvb3Age1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibGV1O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS13aGl0ZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYW5jO1xuICAgICAgICAgICAgICAgIC5jZWxsIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgYm9yZGVyOiAwIG5vbmU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAgICAgICAmID4gZGl2IHtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlN2U3ZTc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgLmhlYWQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yb3cge1xuXG4gICAgICAgICAgICAgICAgLmNlbGwge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMTVweDtcblxuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogYXR0cihkYXRhLWxhYmVsKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHZlcnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJi5jb21tZW50YWlyZS1jb29wOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogU1RZTEVTIEJVVFRPTlNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi8vIEJvdXRvbiB2ZXJ0XG4uYm91dG9uLXZlcnQge1xuICAgIHBhZGRpbmc6IDE1cHggMTlweDtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWluLXdpZHRoOiAyNzBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdmVydDtcbiAgICBib3JkZXI6IDAgbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHZlcnQyO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQgMC4zcyk7XG4gICAgfVxufVxuYS5ib3V0b24tdmVydCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAkYmxhbmM7XG59XG5cbi5ib3V0b24tbWVkaXVtIHtcbiAgICBtaW4td2lkdGg6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgcGFkZGluZzogMXJlbSAycmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA2ZW07XG59XG5cbi8vIEJvdXRvbiBibGV1XG4uYm91dG9uLWJsZXUge1xuICAgIEBleHRlbmQgLmJvdXRvbi12ZXJ0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGV1T3JjYWI7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCw2OCw5OCwgMC45KTtcbiAgICB9XG59XG5cbi8vIEJvdXRvbiBncmlzXG4uYm91dG9uLWdyaXMge1xuICAgIEBleHRlbmQgLmJvdXRvbi12ZXJ0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1NDU0NTQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWMxYzFjO1xuICAgIH1cbn1cblxuLy8gQm91dG9uIHJvdWdlXG4uYm91dG9uLXJvdWdlLCAuZm9ybS1zdWJtaXQgLmJvdXRvbi1yb3VnZSB7XG4gICAgQGV4dGVuZCAuYm91dG9uLXZlcnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHJvdWdlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmM0MjQyO1xuICAgIH1cbn1cblxuLy8gQm91dG9uIGRlIHJldG91clxuLmJvdXRvbi1yZXRvdXIge1xuICAgIEBleHRlbmQgLmJvdXRvbi12ZXJ0O1xuICAgIEBpbmNsdWRlIGZvbnRTaXplKDE0cHgpO1xuICAgIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDZweCAxMHB4O1xuICAgICY6aG92ZXIgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBAZXh0ZW5kIC5mYTtcbiAgICAgICAgY29udGVudDogXCJcXGYwNTNcIjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgfVxufVxuXG4vLyBCb3V0b24gcmVjaGVyY2hlXG4uYm91dG9uLXJlY2hlcmNoZXIge1xuICAgIEBleHRlbmQgLmJvdXRvbi12ZXJ0O1xuICAgIEBleHRlbmQgLmJvdXRvbi1tZWRpdW07XG4gICAgc3BhbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTkxNVwiO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjIzNWVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIEJvdXRvbiBibGFuY1xuLmJvdXRvbi1ibGFuYyB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgcGFkZGluZzogMTZweCAxNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyaXNVSTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kIDAuM3MpO1xuICAgIH1cbiAgICAmLmJvdXRvbi1tZWRpdW0ge1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDJyZW07XG4gICAgfVxufVxuYS5ib3V0b24tYmxhbmMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLy8gUGV0aXQgYm91dG9uIGJsYW5jXG4uYnRuLXBldGl0LWJsYW5jIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmQ7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyaXNGb25jZTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZCAwLjNzKTtcbiAgICB9XG59XG5cbi8vIFBldGl0IGJvdXRvbiByb3VnZVxuLmJ0bi1wZXRpdC1yb3VnZSB7XG4gICAgYmFja2dyb3VuZDogJHJvdWdlO1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JhNDI0MjtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZCAwLjNzKTtcbiAgICB9XG59XG5cbi8vIFBldGl0IGJvdXRvbiB2ZXJ0XG4uYnRuLXBldGl0LXZlcnQge1xuICAgIEBleHRlbmQgLmJ0bi1wZXRpdC1yb3VnZTtcbiAgICBiYWNrZ3JvdW5kOiAkdmVydDtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHZlcnQyO1xuICAgIH1cbn1cblxuLy8gUGV0aXQgYm91dG9uIG5vaXJcbi5idG4tcGV0aXQtbm9pciB7XG4gICAgQGV4dGVuZCAuYnRuLXBldGl0LXJvdWdlO1xuICAgIGJhY2tncm91bmQ6ICM0MDQwNDA7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNjQsNjQsNjQsIDAuOSk7XG4gICAgfVxufVxuXG4vLyBQZXRpdCBib3V0b24gYmxldVxuLmJ0bi1wZXRpdC1ibGV1IHtcbiAgICBAZXh0ZW5kIC5idG4tcGV0aXQtcm91Z2U7XG4gICAgYmFja2dyb3VuZDogJGJsZXVPcmNhYjtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDY4LDk4LCAwLjkpO1xuICAgIH1cbn1cblxuLy8gUGV0aXQgYm91dG9uIGdyaXNcbi5idG4tcGV0aXQtZ3JpcyB7XG4gICAgQGV4dGVuZCAuYnRuLXBldGl0LXJvdWdlO1xuICAgIGJhY2tncm91bmQ6ICRncmlzQm9yZHVyZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMTIsMjEyLDIxMiwgMC45KTtcbiAgICB9XG59XG5cbi8vIFBldGl0IGJvdXRvbiBncmlzXG4uYnRuLXBldGl0LWdyaXMtZGFya2VyIHtcbiAgICBAZXh0ZW5kIC5idG4tcGV0aXQtcm91Z2U7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzU0NTQ1NDtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFjMWMxYztcbiAgICB9XG59XG5cbi5idG4tLWxldHRlcnNwYWNpbmcge1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjg0cHg7XG59XG5cbi5idG4tLWJvbGQge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi8vIEJvdXRvbiBham91dGVyIGF1IHBhbmllciBhdmVjIHRleHRlXG4uYnRuLWFqb3V0ZXItYXUtcGFuaWVyLFxuLmJ0bi1saXN0ZS1hY2hhdC1hY3RpdmF0ZSB7XG4gICAgQGV4dGVuZCAuYm91dG9uLXZlcnQ7XG4gICAgbWluLXdpZHRoOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTY0XCI7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBsaW5lLWhlaWdodDogMTdweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbiAgICB9XG4gICAgLy8gQm91dG9uIGFqb3V0ZXIgYXUgcGFuaWVyIGF2ZWMgbm9tYnJlIGQnaXRlbWVzIGRlamEgYXUgcGFuaWVyXG4gICAgJi5xdWFudGl0ZUFscmVhZHlJblBhbmllciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRvcmFuZ2VDYW5uZWxsZTtcbiAgICAgICAgcGFkZGluZzogMS4xMXJlbSAwLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTRiXCI7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRvcmFuZ2VDYW5uZWxsZSwgNSUpO1xuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRtb2JpbGUgKyAxKSB7XG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IGluaXRpYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm51bSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS43cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgfVxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tdmFsaWRhdGUge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5N2RcIjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJ0bi1saXN0ZS1hY2hhdC1hY3RpZiB7XG4gICAgY29sb3I6ICR2ZXJ0O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICBjb250ZW50OiBcIlxcZTk2N1wiO1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxN3B4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdmVydDtcbiAgICAgICAgY29sb3I6ICRibGFuYztcbiAgICB9XG59XG5cbi8vIEJvdXRvbnMgcG91ciBsYSBwYXJ0aWUgc3Vpdmlcbi5idG4tZXhwb3J0LCAuYnRuLWltcHJpbWVyLFxuLmJ0bi1lZGl0ZXIsIC5idG4tYWpvdXRlci1wYW5pZXIge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICBAZXh0ZW5kIC5mYTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4wNzFlbTtcbiAgICB9XG4gICAgJjpob3Zlcjo6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxufVxuLmJ0bi1leHBvcnQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU5NTlcIjtcbiAgICBAZXh0ZW5kIC5pY29tb29uO1xufVxuLmJ0bi1pbXByaW1lcjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjAyZlwiO1xufVxuLmJ0bi1lZGl0ZXI6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwNDRcIjtcbn1cblxuLy8gQm91dG9ucyBpY29ucyBhbm51bGVyIGV0IHZhbGlkZXJcbi5idG4taWNvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDIycHgpO1xuICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudFk7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgICAmLmJ0bi12YWxpZGVyOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjA1OFwiO1xuICAgIH1cbiAgICAmLmJ0bi1hbm51bGVyOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjA1N1wiO1xuICAgICAgICBjb2xvcjogJHJvdWdlO1xuICAgIH1cbn1cblxuLy8gQm91dG9uIGNyw6lhdGlvbiBwYW5pZXJcbi5ib3V0b24tY3JlZXItcGFuaWVyIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxN3B4KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTk3ZVwiO1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdmVydDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ud2l0aC1idG4tZmF2b3JpcyB7XG4gICAgLmJvdXRvbi1jcmVlci1wYW5pZXIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIzNXB4O1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5idG4taWNvbi1maXJzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIC5pY29tb29uIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjhyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vL2JvdXRvbnMgbGlzdGUgcGFuaWVyc1xuLmJ0bi1wYW5pZXItYWN0aWYsXG4uYnRuLWRlZmluaXItcGFuaWVyLWFjdGlmLFxuLmJ0bi12YWxpZGVyLXBhbmllcixcbi5idG4tbW9kaWZpZXItcGFuaWVyLFxuLmJ0bi1yZWZ1c2VyLXBhbmllcixcbi5idG4tZHVwbGlxdWVyLWxpc3RlLWFjaGF0LFxuLmJ0bi1zdXBwcmltZXItbGlzdGUtYWNoYXQsXG4uYnRuLWdlbmVyZXItcGRmLFxuLmJ0bi1wcmludC1jaGlmcmVlLFxuLmJ0bi1wcmludC1ub25jaGlmcmVlIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzogMTBweCAzMHB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB9XG4gICAgJiA+IGEge1xuICAgICAgICBjb2xvcjogJGJsYW5jO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5idG4tcGFuaWVyLWFjdGlmIHtcbiAgICBjb2xvcjogJHZlcnQ7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb2xvcjogJHZlcnQ7XG4gICAgfVxuICAgICY6aG92ZXI6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6ICRibGFuYztcbiAgICB9XG59XG5cbi5idG4tcGFuaWVyLWFjdGlmOmJlZm9yZSxcbi5idG4tZGVmaW5pci1wYW5pZXItYWN0aWY6YmVmb3JlLFxuLmJ0bi12YWxpZGVyLXBhbmllcjpiZWZvcmUge1xuICAgICBjb250ZW50OiBcIlxcZTk3OVwiO1xufVxuLmJ0bi1tb2RpZmllci1wYW5pZXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTk2ZFwiO1xufVxuLmJ0bi1yZWZ1c2VyLXBhbmllcjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTdiXCI7XG59XG4uYnRuLWR1cGxpcXVlci1saXN0ZS1hY2hhdDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTVhXCI7XG59XG4uYnRuLXN1cHByaW1lci1saXN0ZS1hY2hhdDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTU3XCI7XG59XG4uYnRuLWdlbmVyZXItcGRmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU5MzhcIjtcbiAgICBmb250LXNpemU6IDEuOHJlbTtcbn1cbi5idG4tcHJpbnQtY2hpZnJlZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTZlXCI7XG59XG4uYnRuLXByaW50LW5vbmNoaWZyZWU6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTk2YlwiO1xufVxuXG4vL2FkZHJlc3NlcyBidXR0b25zXG4uYWRyZXNzZS1tb2RpZmllci1lbnJlZ2lzdHJlcjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXGU5NjEnO1xufVxuLmFkcmVzc2UtbW9kaWZpZXItYXV0by1yZW1wbGlyLWFkci1mYWN0OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcZTk2MCc7XG59XG4uYWRyZXNzZS1hZmZpY2hlci1tYXA6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxlOTU4Jztcbn1cbi5hZHJlc3NlLW1vZGlmaWVyLWFubnVsZXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxlOTU3Jztcbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIGNvbnRhY3QgY29tcG9uZW50ICh1c2VkIGluIGFnZW5kYSlcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5jLWNvbnRhY3RzIHtcbiAgJl9fbGlzdCAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBnYXA6IDIwcHggMzBweDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICB9XG4gICZfX2l0ZW0ge1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYW5jO1xuICAgIHBhZGRpbmc6IDI0cHggMTVweCAzcHg7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuOHJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1vYmlsZSArIDEpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDE1cHgpO1xuICAgIH1cbiAgfVxuXG4gICZfX3RvcCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICAmLS1ib3JkZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmlzTWVudTtcbiAgICB9XG4gIH1cblxuICAmX19oZWFkaW5nIHtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBsaW5lLWhlaWdodDogMi40cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gICZfX3BvbGUge1xuICAgIGNvbG9yOiAkY29sb3JCYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgbGluZS1oZWlnaHQ6IDIuNHJlbTtcbiAgfVxuICAmX19tYWlsLFxuICAmX190ZWwge1xuICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDJweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICB3aWR0aDogMjRweDtcbiAgICAgIGNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgIH1cbiAgfVxuXG4gICZfX21haWw6OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcZTk4MSc7XG4gIH1cbiAgJl9fdGVsOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXGU5ODcnO1xuICB9XG5cbiAgJl9fbWFpbCArICZfX3RlbCB7XG4gICAgbWFyZ2luLXRvcDogMTJweDtcbiAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIHRvcDogMTJweDtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3Jpc01lbnU7XG4gICAgfVxuICB9XG4gIGEge1xuICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBkb2N1bWVudCBjb21wb25lbnQgKHVzZWQgaW4gYWdlbmRhKVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmMtZG9jdW1lbnRzIHtcbiAgJl9fbGlzdCAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBnYXA6IDIwcHggMzBweDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICB9XG4gICZfX2l0ZW0ge1xuICAgIHBhZGRpbmc6IDAgMCA3cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmlzQm9yZDtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBsaW5lLWhlaWdodDogMS44cmVtO1xuICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbW9iaWxlICsgMSkge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTVweCk7XG4gICAgfVxuICB9XG4gIGEge1xuICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogN3B4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGU5MmUnO1xuICAgIH1cbiAgICAmW2hyZWYqPVwiLnR4dFwiXTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGU5MzYnO1xuICAgIH1cbiAgICAmW2hyZWYqPVwiLnBkZlwiXTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGU5MjInO1xuICAgIH1cbiAgICAmW2hyZWYqPVwiLnhsc1wiXTo6YmVmb3JlLFxuICAgICZbaHJlZio9XCIueGxzeFwiXTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGU5MzQnO1xuICAgIH1cbiAgICAmW2hyZWYqPVwiLnBuZ1wiXTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGU5MGYnO1xuICAgIH1cbiAgICAmW2hyZWYqPVwiLmZsdlwiXTo6YmVmb3JlLFxuICAgICZbaHJlZio9XCIubXA0XCJdOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcZTkxMCc7XG4gICAgfVxuICAgICZbaHJlZio9XCIucHB0XCJdLFxuICAgICZbaHJlZio9XCIucHB0eFwiXSB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnXFxlOTI4JztcbiAgICAgIH1cbiAgICB9XG4gICAgJltocmVmKj1cIi5kb2NcIl0sXG4gICAgJltocmVmKj1cIi5kb2N4XCJdIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGU5M2MnO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIEhPTUVQQUdFXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uYWNjdWVpbCB7XG4gICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIC8qIGZpeCB0ZW1wb3JhaXJlIC0gY29sIGdhdWNoZSAqL1xuICAgIC5jb2wtbGVmdCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gICAgbWFpbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzNzhweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRkZXNrdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjUuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDQwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgfVxuICAgICAgICAuaW5uZXItY29udGVudCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5UUExfQ0FURUdPUklFX0xJU1RFX1BST0RVSVRTX1JFREFDIHtcbiAgICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHRhYmxldFBsdXNPbmUpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMzBweDtcbiAgICAgICAgfVxuICAgICAgICBoMixcbiAgICAgICAgLnRyaS1jYXRlZ29yaWUsXG4gICAgICAgIC5saXN0ZS1wcm9kdWl0cy13cmFwcGVyIHtcbiAgICAgICAgICAgIC8vbWF4LXdpZHRoOiAkZGVza3RvcC1zbWFsbDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIC50aXRyZS1hdmVjLWZhdm9yaXMge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZmwtbC01MCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgfVxuICAgIC5mbC1yLTUwIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIH1cbn1cblxuLypcbiAgICBibG9jIG1pc2UgZW4gYXZhbnRcbiAgICBlLnggOiBTb2x1dGlvbnMgQ09MTEFCT1JBVElWRVMgc3VyIGxhIHBhZ2UgZCdhY2N1ZWlsXG4qL1xuLm1pc2UtZW4tYXZhbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxldTtcbiAgICBib3JkZXItcmlnaHQ6IDMwcHggc29saWQgI2ZmZmZmZjtcbiAgICAuY29udGVudSB7XG4gICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnRZKCk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBwYWRkaW5nOiAwIDcwcHg7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBoMyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgzNXB4KTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgQGV4dGVuZCAuYm91dG9uLWJsYW5jO1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAzMHB4O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5pbm5lciB7XG4gICAgICAgICYgPiBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLlRQTF9SRURBQ1RJT05FTCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgYm9yZGVyOiAwIG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJsb2MtZm9uZC1ncmlzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3Jpc0NsYWlyO1xufVxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgKiBBQ0NVRUlMXG4gICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLmFjY3VlaWwge1xuICAgICAgICAuY21zLWJsb2Mge1xuICAgICAgICAgICAgJi5mbC1sLTUwLFxuICAgICAgICAgICAgJi5mbC1yLTUwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICogUEFHRSBBQ0NVRUlMXG4gICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5taXNlLWVuLWF2YW50IHtcbiAgICAgICAgLmNvbnRlbnUge1xuICAgICAgICAgICAgcGFkZGluZzogMCAzMHB4O1xuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDI1cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5hY2N1ZWlsIHtcbiAgICAgICAgLlRQTF9SRURBQ1RJT05FTCwgLlRQTF9QQVJUQUdFIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuY21zLWJsb2Mge1xuICAgICAgICAgICAgJi5mbC1sLTUwLFxuICAgICAgICAgICAgJi5mbC1yLTUwIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWlzZS1lbi1hdmFudCB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMCBub25lO1xuICAgIH1cbn1cblxuLy9CbG9jIHBvdXIgbGVzIHLDqXVuaW9ucyBldCBmb3JtYXRpb25zXG5AaW1wb3J0ICdmb3JtYXRpb24nO1xuQGltcG9ydCAnY29tbXVuaWNhdGlvbic7IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVFBMX09SQ0FCX0xJU1RFX0ZPUk1VTEFJUkVfQUNDVUVJTF9URU1QTEFURVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9PUkNBQl9MSVNURV9GT1JNVUxBSVJFX0FDQ1VFSUxfVEVNUExBVEUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIC5pbm5lciB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAzcmVtO1xuICAgIH1cbiAgICAucGFnLmhpZGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuaW5mby1zdGF0cyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNzVlbTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgIH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBUUExfQ09NTVVOSUNBVElPTlxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLypcbiAgICBibG9jIGNvbW11bmljYXRpb24gb3JjYWJcbiAgICBlLnggOiBwYWdlIGQnYWNjdWVpbFxuKi9cbi5UUExfQ09NTVVOSUNBVElPTiB7XG4gICAgcGFkZGluZzogNjBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhbmM7XG4gICAgbWFyZ2luLWJvdHRvbTogOTBweDtcbiAgICAuY29tbXVuaWNhdGlvbiB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIEBleHRlbmQgLnRpdHJlLWJsb2MtYnVsbGV0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjhyZW07XG4gICAgICAgIG1hcmdpbjogMCAwIDJyZW07XG4gICAgfVxuICAgIC5mbC1sLTUwICYsXG4gICAgLmZsLXItNTAgJiB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAgICogVFBMIENPTU1VTklDQVRJT04gQUNDVUVJTFxuICAgICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5UUExfQ09NTVVOSUNBVElPTiB7XG4gICAgICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAgICAqIFRQTCBDT01NVU5JQ0FUSU9OIEFDQ1VFSUxcbiAgICAgICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLlRQTF9DT01NVU5JQ0FUSU9OIHtcbiAgICAgICAgcGFkZGluZzogNjBweCAyMHB4IDEwMnB4O1xuICAgICAgICAuYmxvYy10aXRyZS1wYWcge1xuICAgICAgICAgICAgLnBhZyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudFg7XG4gICAgICAgICAgICAgICAgYm90dG9tOiA2MHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBTVUlWSVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG4vL0Jsb2MgTE9HSU5cbkBpbXBvcnQgJ2xvZ2luJztcblxuLy9CbG9jIGNvbW1vblxuQGltcG9ydCAnY29tbW9uJztcblxuLy9CbG9jIHBlcnNvbm5hbGlzYXRpb25cbkBpbXBvcnQgJ3BlcnNvbm5hbGlzYXRpb24nO1xuXG4vL2xpc3RlIGFjaGF0XG5AaW1wb3J0ICdsaXN0ZS1hY2hhdCc7XG5cbi8vYm9uIGV0IGRldmlzXG5AaW1wb3J0ICdib24tZGV2aXMnO1xuXG4vL2ZhY3R1cmVcbkBpbXBvcnQgJ2ZhY3R1cmUnO1xuXG4vL3JldG91clxuQGltcG9ydCAncmV0b3VyJztcblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVEVNUExBVEUgQ09NTUFOREUgRU4gQ09VUlNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5UUExfT1JDQUJfU1VJVklfQ09NTUFOREVTLFxuLlRQTF9PUkNBQl9TVUlWSV9MSVZSQUlTT05TLFxuLlRQTF9PUkNBQl9TVUlWSV9DT01NQU5ERVNfVE9VU19BREhFUkVOVFMge1xuICAgIC8qLmRpc3BsYXktdGFibGUge1xuICAgICAgICAvLyBXaWR0aCBwYXMgYXBwbGljYWJsZSBjYXIgbGUgbm9tYnJlIGRlIGNvbG9ubmUgZGVwZW5kIGRlIGNlIHF1ZSBsZSB3ZWJzZXJ2aWNlIGRlIGxhIGNvb3BlcmF0aXZlIG5vdXMgcmVudm9pXG4gICAgICAgIC5kYXRlLWNvIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMi4zJTtcbiAgICAgICAgfVxuICAgICAgICAudHlwZS1udW0ge1xuICAgICAgICAgICAgd2lkdGg6IDE0LjYlO1xuICAgICAgICB9XG4gICAgICAgIC5pbnRlcmxvY3V0ZXVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMy41JTtcbiAgICAgICAgfVxuICAgICAgICAucmVmIHtcbiAgICAgICAgICAgIHdpZHRoOiA4LjklO1xuICAgICAgICB9XG4gICAgICAgIC5ldGF0IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMS43JTtcbiAgICAgICAgfVxuICAgICAgICAubGl2cmFpc29uIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMy41JTtcbiAgICAgICAgfVxuICAgICAgICAucHJpeC1odCB7XG4gICAgICAgICAgICB3aWR0aDogMTAuNCU7XG4gICAgICAgIH1cbiAgICAgICAgLnV0aWxpc2F0ZXVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMSU7XG4gICAgICAgIH1cbiAgICAgICAgLmFjdGlvbiB7XG4gICAgICAgICAgICB3aWR0aDogNC4yJTtcbiAgICAgICAgfVxuICAgIH0qL1xuICAgIC5yZXN1bHRhdCB7XG4gICAgICAgIC5jb29wLCAudHlwZSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZmxvYXQtcmlnaHQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgICAuYnRuLXBldGl0LWJsYW5jIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAxJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICY6aG92ZXI6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgICAgICAmLnRvZ2dsZS1hbGwge1xuICAgICAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcHg7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5ldGF0LXBsaWVyIC5kZXBsaWVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm5vdCguZXRhdC1wbGllcikgLnJlcGxpZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5kYXRlcy1jb21tYW5kZSB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbn1cblxuLlRQTF9PUkNBQl9TVUlWSV9DT01NQU5ERVMge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgLnRhYmxlLWVudGV0ZS1ncmlzZSB7XG4gICAgICAgIC5maXhlZC1oZWFkZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgfVxuXG4gICAgICAgIC5hYnNvbHV0ZS1oZWFkZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXNldC1oZWFkZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyAvKiBvciBkZWZhdWx0ICovXG4gICAgICAgICAgICB6LWluZGV4OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBURU1QTEFURSBGSUNIRSBDT01NQU5ERSBFVCBQQU5JRVIgQSBWQUxJREVSXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uVFBMX09SQ0FCX0ZJQ0hFX0NPTU1BTkRFLFxuLlRQTF9PUkNBQl9GSUNIRV9MSVZSQUlTT04sXG4uVFBMX09SQ0FCX0ZJQ0hFX0NPTU1BTkRFX1BBUl9BREhFUkVOVCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAucmVzdWx0YXQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZ3Jpc0NsYWlyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgJiA+IC5kaXNwbGF5LXRhYmxlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNnB4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubGlnbmVzLWNvIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDdweCA3cHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICAgIC5pbmZvcy1jbyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlN2U3ZTc7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICAgICAgJiA+IGRpdiB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICB9XG4gICAgICAgIC5saWJlbGxlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE2cHgpO1xuICAgICAgICB9XG4gICAgICAgIC5hZHJlc3NlIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNy44JTtcbiAgICAgICAgICAgIC5saWJlbGxlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEzcHggMDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2I5YzZjYztcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJiArICNjb21tZW50YWlyZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA3LjUlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICNjb21tZW50YWlyZSB7XG4gICAgICAgICAgICAubGliZWxsZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAucGRmIHtcbiAgICAgICAgZGl2LmJvdXRvbnMge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDNweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgICAubGlzdGVfcmVmZXJlbmNlcyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG4gICAgLmxpc3RlX3JlZmVyZW5jZXM6YmVmb3JlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZScsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICBjb2xvcjogIzk5OTtcbiAgICAgICAgY29udGVudDogXCJcXGYwOTZcIjtcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgfVxuICAgICZbYXJpYS1zZWxlY3RlZD10cnVlXSAubGlzdGVfcmVmZXJlbmNlczpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjE0YVwiO1xuICAgIH1cbn1cblxuLlRQTF9PUkNBQl9TVUlWSV9GQUNUVVJFUyxcbi5UUExfT1JDQUJfU1VJVklfTElWUkFJU09OUyxcbi5UUExfT1JDQUJfU1VJVklfQ09NTUFOREVTLCB7XG4gICAgLmZvcm0tcGFuaWVyLXJlZmVyZW5jZSB7XG4gICAgICAgIC5zZWxlY3Qtd3JhcDo6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWVudGV0ZS1ncmlzZSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICAgIC50YWJsZS1lbnRldGUtZ3Jpc2UgdGJvZHkgdHJ7XG4gICAgICAgIGJvcmRlcjogc29saWQgJGdyaXNCb3JkO1xuICAgICAgICBib3JkZXItd2lkdGg6IDFweCAycHg7XG5cbiAgICAgICAgLmFydGljbGUge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuODFyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRFTVBMQVRFIFNVSVZJIENPTU1BTkRFUyBUT1VTIEFESEVSRU5UU1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9PUkNBQl9TVUlWSV9DT01NQU5ERVNfVE9VU19BREhFUkVOVFMge1xuICAgIC5mb3JtLWZpZWxke1xuICAgICAgICAmLmFkaGVyZW50IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYWRoZXJlbnRzLWRpc3BvbmlibGVzLWNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA3NXB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICBtYXgtaGVpZ2h0OiAyNTBweDtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTZweCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZTdlN2U3O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmY7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjYmNjNWNhO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmxpZ25lLXN1aXZpLWNvbW1hbmRlcy1wYXItYWRoZXJlbnQge1xuICAgICAgICAuaW50aXR1bGVzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG4gICAgICAgIH1cblxuICAgICAgICAuY29tbWFuZGUtcGFyLWFkaGVyZW50IHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNTQ1NDU0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uVFBMX09SQ0FCX1NVSVZJX0NPTU1BTkRFUyB7XG4gICAgLmZvcm0tc2VhcmNoIGZvcm0ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAucmVzdWx0YXQgLmRpc3BsYXktdGFibGUgLnR5cGUtbnVtIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNTVweDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAubGliIHtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBNRURJQVFVRVJJRVNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcblxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAqIFRFTVBMQVRFIENPTU1BTkRFUyBFTiBDT1VSU1xuICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5UUExfT1JDQUJfU1VJVklfQ09NTUFOREVTLFxuICAgIC5UUExfT1JDQUJfU1VJVklfTElWUkFJU09OUyxcbiAgICAuVFBMX09SQ0FCX1NVSVZJX0NPTU1BTkRFU19UT1VTX0FESEVSRU5UUyB7XG4gICAgICAgIC5pbnRlcmxvY2F0ZXVyID4gZGl2IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgKiBURU1QTEFURSBGSUNIRSBDT01NQU5ERVxuICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5UUExfT1JDQUJfRklDSEVfQ09NTUFOREUsXG4gICAgLlRQTF9PUkNBQl9GSUNIRV9MSVZSQUlTT04sXG4gICAgLlRQTF9PUkNBQl9GSUNIRV9DT01NQU5ERV9QQVJfQURIRVJFTlQge1xuICAgICAgICAuaW5mb3MtY28ge1xuICAgICAgICAgICAgJiA+IGRpdiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5hZHJlc3NlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzYlO1xuICAgICAgICAgICAgICAgICYgKyAjY29tbWVudGFpcmUge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDUuNSU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICogVEVNUExBVEUgRklDSEUgRkFDVFVSRVxuICAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiAgICAuVFBMX09SQ0FCX0ZJQ0hFX0ZBQ1RVUkUge1xuICAgICAgICBoMSwgLmZsb2F0LXJpZ2h0IHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgLnRhYmxlLWVudGV0ZS1ncmlzZTpub3QoLnRhYmxlLWxpZ25lcykge1xuICAgICAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICogVEVNUExBVEUgRklDSEUgUkVUT1VSXG4gICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLlRQTF9PUkNBQl9GSUNIRV9SRVRPVVIge1xuXG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgKiBURU1QTEFURSBGSUNIRSBDT01NQU5ERVxuICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5UUExfT1JDQUJfRklDSEVfQ09NTUFOREUsXG4gICAgLlRQTF9PUkNBQl9GSUNIRV9MSVZSQUlTT04sXG4gICAgLlRQTF9PUkNBQl9GSUNIRV9DT01NQU5ERV9QQVJfQURIRVJFTlQge1xuICAgICAgICAucmVzdWx0YXQgLmRpc3BsYXktdGFibGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwIDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmluZm9zLWNvIHtcbiAgICAgICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmFkcmVzc2Uge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICYgKyAjY29tbWVudGFpcmUge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAqIFRFTVBMQVRFIEZJQ0hFIERFVklTIEVUIEJPTiBERSBDSE9JWFxuICAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiAgICAuVFBMX09SQ0FCX0ZJQ0hFX0RFVklTX0JPTlMge1xuICAgICAgICAuZGlzcGxheS10YWJsZSA+IGRpdi5hY3Rpb24ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgLnJlc3VsdGF0IHsgYm9yZGVyLXJhZGl1czogN3B4OyB9XG4gICAgfVxuXG5cbiAgICAudGFibGUtZW50ZXRlLWdyaXNlIHtcbiAgICAgICAgdGhlYWQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICB0Ym9keSB7XG4gICAgICAgICAgICB0ciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgICAgICAgICAgJi51bmVMaWduZSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtbGFiZWwpO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDM1JTtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJiA+IHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNjUlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuZmljaGUtcmV0b3VyLXByb2R1aXQtdG9nZ2xlLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLndpdGgtYnRuLWZhdm9yaXMge1xuICAgIC5UUExfT1JDQUJfR0VTVElPTl9SRVRPVVJTLCAuVFBMX09SQ0FCX0ZJQ0hFX0RFVklTX0JPTlMsIC5UUExfT1JDQUJfRklDSEVfRkFDVFVSRSB7XG4gICAgICAgIC5mbG9hdC1yaWdodCB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjAwcHgpO1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA2MHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZvcm0tZmllbGRfX3RyaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG5cbiAgICAmLXR4dCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgIG1hcmdpbjogOHB4IDEwcHggMCAwO1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZpZWxkIHtcbiAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZpZWxkOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0NHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5maWVsZDpudGgtb2YtdHlwZSgyKSB7XG4gICAgICAgIC5zZWxlY3Qtd3JhcCB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtb3JkZXIge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwcHggOHB4IDhweCAwcHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmlzRm9uY2U7XG4gICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uLy4uLy4uL2ltYWdlcy9zdmcvdHJpLWRvd24uc3ZnJyk7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhbmM7XG4gICAgICAgIHdpZHRoOiA0NHB4O1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgJi5kZXNjZW5kYW50IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vLi4vaW1hZ2VzL3N2Zy90cmktdXAuc3ZnJyk7XG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGVZKC0xKTtcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKC0xKTtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoLTEpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoLTEpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVEVNUExBVEUgQ09OTkVYSU9OXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5ib2R5LnBzZXVkbyAuVFBMX0xPR0lOIHsgdG9wOiBpbmhlcml0OyB9XG4uVFBMX0xPR0lOIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmxldTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDIwO1xuICAgICYgPiAuaW5uZXIge1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgICAubG9naW4tZXJyb3Ige1xuICAgICAgICBjb2xvcjogJHJvdWdlO1xuICAgIH1cbiAgICAuYmxvYy1jbGllbnQtbG9naW4ge1xuICAgICAgICBtYXgtd2lkdGg6ICRkZXNrdG9wLXNtYWxsO1xuICAgICAgICBtYXJnaW46IDExJSBhdXRvIDMlO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubGllbi1tb3RzLWRlLXBhc3NlLW91YmxpZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFuYztcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTA3XCI7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaDUge1xuICAgICAgICAgICAgY29sb3I6ICRibGFuYztcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZ2F1Y2hlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweCAwIDAgMTBweDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi8uLi9jc3MvaW1hZ2VzL2ZvbmQtbG9naW4ucG5nJykgbm8tcmVwZWF0O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiA2NC45JTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDExJSAwIDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmRyb2l0ZSB7XG4gICAgICAgIHdpZHRoOiA0MS4yNCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMTM3NGY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMTBweCAxMHB4IDA7XG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICB3aWR0aDogNjcuNSU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMSUgMCAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIHAge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIC50eHQxIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiAgMTNweDtcbiAgICB9XG4gICAgLnR4dDIge1xuICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxOHB4KTtcbiAgICAgICAgbWFyZ2luOiA1MHB4IDAgMjBweDtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMzMzZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5maWVsZCB7XG4gICAgICAgIG1hcmdpbjogMzBweCAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICAgIGxhYmVsLmljbyB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbGlnbmVtZW50WTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgICYubWRwOjphZnRlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTg4ZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgaW5wdXQge1xuICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNnB4KTtcbiAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDVweCAxNXB4IDVweCA2NXB4O1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICB9XG4gICAgICAgICY6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmJ0bi1zdWJtaXQge1xuICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxN3B4KTtcbiAgICAgICAgYmFja2dyb3VuZDogJHZlcnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDE0cHggMjBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgwLjkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC50eHQtbWRwIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTRweCk7XG4gICAgICAgIG1hcmdpbi10b3A6IDQxJTtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgIC5ibG9jLWNsaWVudC1sb2dpbiB7IHdpZHRoOiA5NSU7IH1cbiAgICAgICAgLmRyb2l0ZSB7XG4gICAgICAgICAgICB3aWR0aDogNDguNjMlO1xuICAgICAgICAgICAgLmlubmVyIHsgd2lkdGg6IDgwJTsgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAuYmxvYy1jbGllbnQtbG9naW4ge1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZ2F1Y2hle1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweCAxMHB4IDAgMDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZHJvaXRle1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogIDAgMCAxMHB4IDEwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHggMjVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMDEzNzRmO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAxMHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmxvZ2luLWVycm9yIHsgcGFkZGluZzogMTBweCAwOyB9XG4gICAgICAgIH1cbiAgICAgICAgLnR4dDEgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMjBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMTNweCBhdXRvIDA7XG4gICAgICAgIH1cbiAgICAgICAgLnR4dDIgeyBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gICAgICAgIC5maWVsZCB7IG1hcmdpbjogMTBweCAwOyB9XG4gICAgICAgIC50eHQtbWRwIHsgbWFyZ2luLXRvcDogMTUlOyB9XG4gICAgfVxufVxuIiwiLy8gT3BhY2l0eVxuXG5AbWl4aW4gb3BhY2l0eSgkb3BhY2l0eSkge1xuICAkb3BhY2l0eS1pZTogKCRvcGFjaXR5ICogMTAwKTsgIC8vIElFOCBmaWx0ZXJcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PSRvcGFjaXR5LWllKTtcbiAgb3BhY2l0eTogJG9wYWNpdHk7XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBHRU5FUkFMSVRFUyBDT01QVEUgLyBTVUlWSVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLnRhYmxlLWVudGV0ZS1ncmlzZSB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgbGluZS1oZWlnaHQ6IDIuNHJlbTtcbiAgICBjb2xvcjogJGdyaXNGb25jZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgIHRkIHtcbiAgICAgICAgcGFkZGluZzogMjVweCAyMHB4O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cbiAgICB0aCB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuOXJlbTtcbiAgICB9XG4gICAgJiA+IHRib2R5ID4gdHI6bnRoLWNoaWxkKGV2ZW4pLCAmID4gdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyaXNVSTs7XG4gICAgfVxuICAgICYgPiB0Ym9keSA+IHRyOm50aC1jaGlsZChvZGQpLCAmID4gdHI6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIH1cbiAgICB0Zm9vdCB0ciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogIzQwNDA0MDtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMThweCk7XG4gICAgfVxuICAgIC5hcnRpY2xlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjhyZW07XG4gICAgICAgIC5saWJlbGxlLWNvZGUtd2Vic2VydmljZSB7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgIH1cbiAgICB9XG59XG5hLmNtZC1jb250YWN0LWJ0biB7XG4gICAgY29sb3I6ICRibGV1O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICZfX3R4dCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuLmJvdXRvbi1kZXBsaWVyLWxpc3RlIHtcbiAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlxcZjEwN1wiO1xuICAgICAgICBAZXh0ZW5kIC5mYTtcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yQmFzZTtcbiAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB9XG4gICAgJi5hY3RpdmU6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICB9XG59XG5cbi5maWNoZS1yZXRvdXItcHJvZHVpdC10b2dnbGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjbGVhcjogYm90aDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZjEwN1wiO1xuICAgICAgICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvckJhc2U7XG4gICAgICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBjb2xvcjogJGJsYW5jO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZpY2hlLXJldG91ci1wcm9kdWl0LXRvZ2dsZS1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG9wYWNpdHk6IDA7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgLjI1cyBlYXNlLWluLW91dDtcbiAgICB9XG59XG5cbi5maWNoZS1yZXRvdXItaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBwYWRkaW5nOiAzMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICAmID4gZGwge1xuICAgICAgICBtYXJnaW46IDAgMzBweCAwIDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2U4ZThlODtcbiAgICAgICAgcGFkZGluZzogMCAzMHB4O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMCBub25lO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICBjb2xvcjogJGdyaXNGb25jZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBkdCwgZGQge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGR0IHtcbiAgICAgICAgICAgIGNvbG9yOiAkdmVydDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cbiAgICAgICAgZGQge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm51bS1pbnRlcm5ldCB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTljOVwiO1xuICAgICAgICAgICAgdG9wOiAzcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZGF0ZS1jbyB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlOTVmJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5yZWYge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTk1Yic7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnN0YXR1dCB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlOTg1JztcbiAgICAgICAgfVxuICAgIH1cbiAgICAuaW50ZXJsb2N1dGV1ciB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlOTI2JztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wdWxsLXJpZ2h0IHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cblxuICAgIC8vZWRpdCBidXR0b25cbiAgICAuYnRuLWVkaXQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkdmVydDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjb2xvcjogJGJsYW5jO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgIHdpZHRoOiAxN3B4O1xuICAgICAgICBoZWlnaHQ6IDE3cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICAgICAgICAuaWNvbW9vbjpiZWZvcmUge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvL2ZpZWxkc2V0IGVkaXRcbiAgICAucmV0b3Vycy1lZGl0LWZpZWxkc2V0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAyODBweDtcbiAgICAgICAgYmFja2dyb3VuZDogJGJsYW5jO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDFweCAxcHggNXB4IHJnYmEoMCwwLDAsLjIpO1xuICAgICAgICBwYWRkaW5nOiA1cHggMTVweCA1cHggNXB4O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAuaW5wdXQtZmllbGQge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDE3NXB4O1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgLnVpLWRhdGVwaWNrZXItdHJpZ2dlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbGlnbmVtZW50WTtcbiAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIC5idG4taWNvbiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUtc21hbGwpIHtcbiAgICAgICAgICAgIGxlZnQ6IC01NXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy90aXRsZSBiYXJcbiAgICAmLXRpdGxlIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmlzQm9yZHVyZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMDdweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIyOHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yZXRvdXItZmljaGUtdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuaW1nLmFydGljbGUtdGh1bWIge1xuICAgIG1heC1oZWlnaHQ6IDcwcHg7XG4gICAgbWF4LXdpZHRoOiAxMjBweDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVEVNUExBVEVTIFNVSVZJXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uc3Vpdmktd3JhcHBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAuY29sIHtcbiAgICAgICAgd2lkdGg6IDQ3LjIxNDYxMTg3MjE0NjEyJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDUuNTcwNzc2MjU1NzA3NzYzJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZm9ybS1maWVsZHMtd3JhcHBlciA+IGxhYmVsIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTZweCk7XG4gICAgfVxuICAgIC5lbkxpZ25lIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAmID4gZGl2ID4gbGFiZWwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgIH1cbiAgICAudHJpLTJjb2wge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnJhZGlvIHtcbiAgICAgICAgW3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5ib3V0b24tcmVjaGVyY2hlciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDU1cHg7XG4gICAgICAgIG1pbi13aWR0aDogMTkwcHg7XG4gICAgfVxuICAgIC5zdWl2aSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuICAgIC5lY29wYXJ0IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgfVxuICAgIC5kaXNwbGF5LXRhYmxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyLjRyZW07XG4gICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIC8qdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyovXG4gICAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuXG4gICAgICAgIH1cbiAgICAgICAgLmFjdGlvbiB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIHdpZHRoOiA0NHB4O1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgfVxuICAgICAgICAmLmZhY3R1cmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHZlcnQ7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIC5saWIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR0YWJsZXRQbHVzT25lKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgICAgICY6bm90KC5hY3Rpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwLjUyNjMxNTc4OTQ3MzY4JTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyLjEwNTI2MzE1Nzg5NDczNyU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmxpYmVsbGUge1xuICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgLmFjdGlvbiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMjBweDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5pbnRpdHVsZXMge1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuOHJlbTtcbiAgICB9XG4gICAgLmxpZ25lLXN1aXZpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICAucmVzcG9uc2l2ZS10YWJsZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjNDA0MDQwO1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYnRuLW1vcmUtZmllbGRzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgQGV4dGVuZCAuYm91dG9uLW1lZGl1bTtcbiAgICB9XG4gICAgLnJlc3VsdGF0IHtcbiAgICAgICAgLmRpc3BsYXktdGFibGUge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICAgICAgJiA+IGRpdiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubGliZWxsZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuNHJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdmVydDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi53aXRoLWNvbW1hbmRlIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm51bWItY29tbWFuZGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvckJhc2U7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgfVxuICAgIC5kYXRlcy1saXZyYWlzb24ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBoMSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgfVxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMi43cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgICAudGl0cmUtYm91dG9uIHtcbiAgICAgICAgLnRpdHJlIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIGg0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG5cbiAgICAjZW9sYXNfZWNvbW1lcmNlX29yY2FiX3N1aXZpX2ZhY3R1cmVzX3R5cGVfZXhwb3J0ZXJDc3Yge1xuICAgICAgICBAZXh0ZW5kIC5ib3V0b24tbWVkaXVtO1xuICAgICAgICBtaW4td2lkdGg6IDE2MHB4O1xuICAgIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogR0VORVJBTElURVMgVEFCTEVBVSBSRVNQT05TSVZFXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4vLyBUQUJMRUFVIHJlc3BvbnNpdmUgZW4gRElWXG4vLyBFLmcgZCd1dGlsaXNhdGlvbiA6IHBhZ2UgbGlzdGUgcGFuaWVyc1xuLnJlc3BvbnNpdmUtdGFibGUge1xuICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgICAuaGVhZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgfVxuICAgIC5oZWFkLFxuICAgIC5yb3cge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG4gICAgLnJvdyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmZmZmY7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkdmVydDtcbiAgICAgICAgfVxuICAgICAgICAmLnBhbmllci1yZWZ1c2VyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmlzQm9yZHVyZTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGdyaXNCb3JkdXJlO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJHZlcnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNlbGwge1xuICAgICAgICAgICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubGliZWxsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMi40cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkdmVydDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdmVydDtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxpYmVsbGVDaGVja2JveCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHAubm90ZS1lZGl0ZWQge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvckJhc2U7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubG9ja2VkIHtcbiAgICAgICAgICAgIC5saWJlbGxlX190aXRsZTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICRncmlzQm9yZDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5OGInO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBNRURJQVFVRVJJRVNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcblxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAqIEdFTkVSQUxJVEVTIENPTVBURSAvIFNVSVZJXG4gICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLnJlc3VsdGF0IHtcbiAgICAgICAgLmxpYiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgICB9XG5cbiAgICAgICAgLmRpc3BsYXktdGFibGUgPiBkaXYge1xuICAgICAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICAgICAgICAgICYudGFibGUtcm93IHtcblxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1sYWJlbCk7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG5cbiAgICAgICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCIgLyBcIjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYucm9sZUhlYWRlciA+IGRpdi5saWI6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmFjdGlvbiB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgIGNsZWFyOiByaWdodDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuYm91dG9uLWRlcGxpZXItbGlzdGU6OmFmdGVyIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAubWVudS1zZWNvbmRhaXJlLm1lbnUtY29tcHRlIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICBtYXJnaW46IDMwcHggMCAxMHB4O1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjk0MTE4ZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MTlcIjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1VHVycXVvaXNlO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zbGlkZVVwOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MWFcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uaXZlYXUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAqIFRFTVBMQVRFUyBTVUlWSVxuICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5zdWl2aS13cmFwcGVyIHtcbiAgICAgICAgLnN1aXZpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb2wge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcblxuICAgICAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmFsaWduY2VudGVye1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAyMHB4O1xuICAgICAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuYnRuLW1vcmUtZmllbGRzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjlyZW0gMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ib3V0b24tcmVjaGVyY2hlciB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAjZW9sYXNfZWNvbW1lcmNlX29yY2FiX3N1aXZpX2ZhY3R1cmVzX3R5cGVfZXhwb3J0ZXJDc3Yge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxOTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICNtb3JlLWZpZWxkcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAucmVzcG9uc2l2ZS10YWJsZSB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICAgICAgLmhlYWQsXG4gICAgICAgIC5yb3cge1xuICAgICAgICAgICAgLmNlbGwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICAuY2VsbCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmZpY2hlLXJldG91ci1oZWFkZXIge1xuICAgICAgICBkbCB7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMCAwIDA7XG4gICAgICAgICAgICBib3JkZXI6IDAgbm9uZTtcblxuICAgICAgICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgICAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnB1bGwtcmlnaHQge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAqIEdFTkVSQUxJVEVTIENPTVBURSAvIFNVSVZJXG4gICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5yZXN1bHRhdCB7XG4gICAgICAgIC5kaXNwbGF5LXRhYmxlID4gZGl2IHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJi5hY3Rpb24uYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAvL2JvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICogVEVNUExBVEVTIFNVSVZJXG4gICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5zdWl2aS13cmFwcGVyIHtcbiAgICAgICAgLmVuTGlnbmUge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnJlc3VsdGF0IC5kaXNwbGF5LXRhYmxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ib3V0b24tdmVydCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ0bi1tb3JlLWZpZWxkcyB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDE5MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmFsaWduY2VudGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogMTBweDtcbiAgICAgICAgfVxuICAgICAgICAjZW9sYXNfZWNvbW1lcmNlX29yY2FiX3N1aXZpX2ZhY3R1cmVzX3R5cGVfZXhwb3J0ZXJDc3Yge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgIH1cbiAgICB9XG5cbiAgICAucmVzcG9uc2l2ZS10YWJsZSB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMDtcblxuICAgICAgICAuaGVhZCxcbiAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgICAgICAgICAuY2VsbCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZmljaGUtcmV0b3VyLXByb2R1aXQtdG9nZ2xlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICB9XG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgKiBURU1QTEFURSBGSUNIRSBSRVRPVVJcbiAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiAgICAuZmljaGUtcmV0b3VyLWhlYWRlciB7XG4gICAgICAgIGRsIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgICAgICAgICBjbGVhcjogYm90aDtcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnB1bGwtcmlnaHQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRFTVBMQVRFIFBFUlNPTk5BTElTQVRJT05cbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5UUExfUEVSU09OTkFMSVNBVElPTiB7XG4gICAgLmxpc3RlIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmlzQm9yZHVyZTtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgfVxuICAgIC5yZXN1bHRhdCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyaXNCb3JkdXJlO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAuZGlzcGxheS10YWJsZSB7XG4gICAgICAgICAgICAmID4gZGl2IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc2VsZWN0LXdyYXAge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5tb2RlIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTZweCk7XG4gICAgfVxuICAgIC5idXR0b25zIHtcbiAgICAgICAgLmJvdXRvbi1ncmlzLFxuICAgICAgICAuYm91dG9uLXZlcnQge1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCA0NXB4O1xuICAgICAgICAgICAgbWluLXdpZHRoOiBpbmhlcml0O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAucmVzdWx0YXQge1xuICAgICAgICAgICAgLmRpc3BsYXktdGFibGUge1xuICAgICAgICAgICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzMlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgIC5yZXN1bHRhdCB7XG4gICAgICAgICAgICAuZGlzcGxheS10YWJsZSB7XG4gICAgICAgICAgICAgICAgJiA+IGRpdiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgICAgICAgICAgICAgICYubW9kZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5idXR0b25zIHtcbiAgICAgICAgICAgIC5ib3V0b24tZ3JpcyxcbiAgICAgICAgICAgIC5ib3V0b24tdmVydCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAyNzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ib3V0b24tZ3JpcyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBURU1QTEFURSBMSVNURSBBQ0hBVFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG4uVFBMX09SQ0FCX0xJU1RFX0FDSEFULFxuLlRQTF9PUkNBQl9MSVNURVNfQUNIQVRfUEFSVEFHRUVTIHtcbiAgICAudGl0cmUtYm91dG9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgLmJvdXRvbi1jcmVlci1saXN0ZS1hY2hhdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuICAgIC5idG4tbm91dmVsbGUtbGlzdGUge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1hY3Rpb25zIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCAxNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRhYmxlLWJ1dHRvbnMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGdhcDogMTBweCAwO1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgZ2FwOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudHJpIHtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRyaSAuc2VsZWN0LXdyYXA6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRyaSxcbiAgICAgICAgLnRyaSBmb3JtLFxuICAgICAgICAudHJpIC5zZWxlY3Qtd3JhcCxcbiAgICAgICAgLnRyaSAuc2VsZWN0LXdyYXAgc2VsZWN0LFxuICAgICAgICAudGFibGUtYnV0dG9ucyA+IGJ1dHRvbixcbiAgICAgICAgLnRhYmxlLWJ1dHRvbnMgPiBhLFxuICAgICAgICAmLmJvdHRvbSA+IGJ1dHRvbixcbiAgICAgICAgJi5ib3R0b20gPiBhIHtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zZWxlY3Rpb24ge1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjY29tbWFuZGVMaWJlbGxlRm9ybS5lZGl0LWxpYmVsbGUge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZWRpdC1saWJlbGxlIC5maWVsZC1yZXF1aXJlZCxcbiAgICAuZWRpdC1saWJlbGxlIC5maWVsZC1yZXF1aXJlZCAjY29tbWFuZGVfaW5mb3JtYXRpb25zX2Zvcm1fb3JjYWJQYW5pZXJMaWJlbGxlLFxuICAgIC5lZGl0LWxpYmVsbGUgI2J0blZhbGlkYXRlRWRpdENvbW1hbmRlTGliZWxsZSB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5lZGl0LWxpYmVsbGUgI2J0bkNhbmNlbEVkaXRDb21tYW5kZUxpYmVsbGUge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMCAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmVkaXQtbGliZWxsZSAuYnRuLXZhbGlkZXIge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDk4cHgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxpc3RlLXZpZGUge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50b3RhbC1wYW5pZXJzIC50b3RhbC1wcmljZSB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW0gMi41cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uVFBMX09SQ0FCX0xJU1RFX0FDSEFUICB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgLmZpbHRlci10b3Age1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgICAgICAuc2VsZWN0LXdyYXAge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzNnJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5pdGVtLWNvbW1hbmRlW2RhdGEtdHlwZT1cIjJcIl0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlOTQ1JztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogLTE1OXB4O1xuICAgICAgICAgICAgbGVmdDogLTg3cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDI1M3B4O1xuICAgICAgICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBtYXRyaXgoLTEsIDAsIDAsIDEsIDAsIDApO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjUzcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjUzcHg7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnVpLXNvcnRhYmxlIHtcbiAgICAgICAgLmxpc3RlLXByb2R1aXQtaXRlbSB7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OjVweCA1cHggMjVweCBncmF5O1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgICAgICAuaXRlbS1oYW5kbGUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyOiAycHggZGFzaGVkICRibGV1T3JjYWI7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyMHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5pdGVtLWhhbmRsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgfVxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnRYO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDIycHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDVweCA1cHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY3Vyc29yOiBncmFiO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5pdGVtLWhhbmRsZS1pY29uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICB9XG4gICAgLmxpc3RlLXByb2R1aXQtaXRlbSB7XG4gICAgICAgIGgyIGEsXG4gICAgICAgIC5pbWFnZSBhLFxuICAgICAgICAucHJvZHVpdC1jb2RlID4gKixcbiAgICAgICAgLnByb2R1aXQtc3RvY2sgPiAqICxcbiAgICAgICAgLnByb2R1aXQtcHJpeCA+ICosXG4gICAgICAgIC5ham91dGVyLXByb2R1aXQtYXUtcGFuaWVyID4gKixcbiAgICAgICAgLmNvbW1lbnQsXG4gICAgICAgIC5saXN0ZS1wcm9kdWl0X19kaW1lbnNpb25zLXZhcmlhYmxlcy1mb3JtIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIH1cbiAgICAgICAgW3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsIHtcbiAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAuZmlsdGVyLXRvcCB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IG5vcm1hbDtcbiAgICAgICAgICAgIC5zZWxlY3Qtd3JhcCB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBpbmhlcml0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZpY2hlLWNvbW1hbmRlLWhlYWRlciB7XG4gICAgICAgIC5wYW5pZXItYWN0aWYge1xuICAgICAgICAgICAgLm5hbWUge1xuICAgICAgICAgICAgICAgIG1haW4ud2l0aC1idG4tZmF2b3JpcyAmIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjM1cHg7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2NXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuLXBldGl0LWJsYW5jIHtcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYWN0aW9uIHtcbiAgICAgICAgICAgICAgICBmbGV4OiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAjYnRuTW9kaWZpZXJDb21tYW5kZUxpYmVsbGUge1xuICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAycHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ0bi1zdXBwcmltZXItbGlzdGUtYWNoYXQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgICAgIG1haW4ud2l0aC1idG4tZmF2b3JpcyAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA0MHB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTQwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hY3Rpb25zLWRyb2l0IHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uVFBMX09SQ0FCX0xJU1RFU19BQ0hBVF9QQVJUQUdFRVMge1xuICAgIC5mb3JtLXJlY2hlcmNoZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAjcmVjaGVyY2hlX2xpc3Rlc19hY2hhdF9mb3JtLFxuICAgICAgICAuZmllbGQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuZmllbGQge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogM3JlbTtcblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mb3JtLXN1Ym1pdCB7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG8gMCAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9ybUFkZExpc3RlQWNoYXQge1xuICAgIC5maWVsZDpoYXMoW3R5cGU9XCJjaGVja2JveFwiXSkgbGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgICAuZmllbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBURU1QTEFURSBERVZJUyBFVCBCT05TXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uVFBMX09SQ0FCX1NVSVZJX0RFVklTX0JPTlMge1xuICAgIC5kaXNwbGF5LXRhYmxlIHtcbiAgICAgICAgLnNlbGVjdC1hbGwtcHJvZHVpdCB7XG4gICAgICAgICAgICB3aWR0aDogMi41JTtcbiAgICAgICAgfVxuICAgICAgICAubnVtIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMSU7XG4gICAgICAgIH1cbiAgICAgICAgLmRhdGUtZGV2aXMge1xuICAgICAgICAgICAgd2lkdGg6IDExJTtcbiAgICAgICAgfVxuICAgICAgICAucGFydGljdWxpZXIsIC5yZWFsaXNlLXBhciB7XG4gICAgICAgICAgICB3aWR0aDogMTIuNSU7XG4gICAgICAgIH1cbiAgICAgICAgLnJlZi1leHRlcm5lIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNSU7XG4gICAgICAgIH1cbiAgICAgICAgLnByaXgtdG90YWwge1xuICAgICAgICAgICAgd2lkdGg6IDEyLjUlO1xuICAgICAgICB9XG4gICAgICAgIC51cmwtcGRmIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMi41JTtcbiAgICAgICAgfVxuICAgICAgICAuYWpvdXQtcGFuaWVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNC41JTtcbiAgICAgICAgfVxuICAgICAgICAuYWN0aW9uIHtcbiAgICAgICAgICAgIHdpZHRoOiA1JTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYm9ucyB7XG4gICAgICAgICAgICAucGFydGljdWxpZXIsIC5yZWFsaXNlLXBhciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDExJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC51cmwtcGRme1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ham91dC1wYW5pZXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNCVcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5hY3Rpb24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0LjUlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnJlZi1leHRlcm5lIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTElO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhhcy1zZWxlY3QtcGFuaWVyIHtcbiAgICAgICAgLm51bSB7XG4gICAgICAgICAgICB3aWR0aDogNyU7XG4gICAgICAgIH1cblxuICAgICAgICAuZGF0ZS1kZXZpcyB7XG4gICAgICAgICAgICB3aWR0aDogOCU7XG4gICAgICAgIH1cblxuICAgIH1cbiAgICAucmVzdWx0YXQge1xuICAgICAgICAuc2VsZWN0LWFsbC1wcm9kdWl0IHtcbiAgICAgICAgICAgIHdpZHRoOiA1JTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLlRQTF9PUkNBQl9TVUlWSV9ERVZJU19CT05TIHtcbiAgICAudG9wIHtcbiAgICAgICAgLmNlbGw6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVEVNUExBVEUgREVWSVMgRVQgQk9OIERFIENIT0lYIDogY29tbXVuIHN1cmNoYXJnZSB0ZW1wbGF0ZSBmaWNoZSAgZXQgbGlzdGVcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5UUExfT1JDQUJfU1VJVklfREVWSVNfQk9OUyxcbi5UUExfT1JDQUJfRklDSEVfREVWSVNfQk9OUyB7XG4gICAgLmRpc3BsYXktdGFibGUge1xuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSArIGxhYmVsLFxuICAgICAgICAgICAgICAgIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTExcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5zdWl2aSwgLnJlc3VsdGF0LWZpY2hlIHtcbiAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLy9ib3V0b24gYWpvdXRlciBhdSBwYW5pZXJcbiAgICAgICAgLmFqb3V0LXBhbmllciB7XG4gICAgICAgICAgICAuYnRuLXBhbmllciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDEzcHgpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvL2NoZWNrYm94XG4gICAgICAgIFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSArIGxhYmVsOjpiZWZvcmUsXG4gICAgICAgIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICAgICAgW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6OmFmdGVyLFxuICAgICAgICBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDo6YWZ0ZXIge1xuICAgICAgICAgICAgdG9wOiAtMnB4O1xuICAgICAgICAgICAgbGVmdDogNXB4O1xuICAgICAgICAgICAgY29sb3I6ICM4Q0I1M0U7XG4gICAgICAgIH1cblxuICAgICAgICAvL3F0eVxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjNDA0MDQwO1xuICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDM2cHg7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yQmFzZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggN3B4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLnRhYmxlLWVudGV0ZS1ncmlzZSA+IHRib2R5ID4gdHI6bnRoLWNoaWxkKDJuKzEpLFxuICAgICAgICAudGFibGUtZW50ZXRlLWdyaXNlID4gdHI6bnRoLWNoaWxkKDJuKzEpIHtcbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoNjQsIDY0LCA2NCwgMC41KVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBURU1QTEFURSBGSUNIRSBERVZJUyBFVCBCT04gREUgQ0hPSVhcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5UUExfT1JDQUJfRklDSEVfREVWSVNfQk9OUyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAudG9wLWZpY2hlIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgLmZsb2F0LWxlZnQge1xuICAgICAgICAgICAgd2lkdGg6IDQ2JTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgIC5mbG9hdC1yaWdodCB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgd2lkdGg6IDU0JTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAucmVzdWx0YXQgLmRpc3BsYXktdGFibGUge1xuICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNnB4KTtcbiAgICB9XG4gICAgLmxpYiB7XG4gICAgICAgIGNvbG9yOiAkdmVydDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgIH1cbiAgICAucmVzdWx0YXQge1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgLnNlbGVjdC1hbGwtcHJvZHVpdCB7XG4gICAgICAgICAgICB3aWR0aDogNy41JTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYnRuLXBldGl0LWJsYW5jIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAxJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICY6aG92ZXI6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgICAgICAmLmJ0bi1ham91dGVyLXBhbmllciB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYnRuLWFqb3V0ZXItcGFuaWVyOjpiZWZvcmUge1xuICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICBjb250ZW50OiBcIlxcZTkxZlwiO1xuICAgIH1cbiAgICAuYm91dG9uLWRlcGxpZXItbGlzdGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLlRQTF9PUkNBQl9TVUlWSV9ERVZJU19CT05TLCAuVFBMX09SQ0FCX0ZJQ0hFX0RFVklTX0JPTlMge1xuICAgIC5ub3RBZGRUb1BhbmllciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTlweCk7XG4gICAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoNDVkZWcpKTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgd2lkdGg6IDJweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRyb3VnZTtcbiAgICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDhweDtcbiAgICAgICAgICAgIHRvcDogLTRweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLlRQTF9PUkNBQl9GSUNIRV9ERVZJU19CT05TIHtcbiAgICAuZmljaGUtY29tbWFuZGUtaGVhZGVyIHtcbiAgICAgICAgLnBhbmllci1hY3RpZiB7XG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmRldmlzLWJvbi1ub24tY29tbWVuZGFibGUtaW5mbyB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgKiBURU1QTEFURSBERVZJUyBFVCBCT05TXG4gICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5UUExfT1JDQUJfU1VJVklfREVWSVNfQk9OUyB7XG4gICAgICAgIC5kaXNwbGF5LXRhYmxlIHtcbiAgICAgICAgICAgIC5zZWxlY3QtYWxsLXByb2R1aXQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50YWJsZS1lbnRldGUtZ3Jpc2Uge1xuICAgICAgICAgICAgW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWwsXG4gICAgICAgICAgICBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc3Vpdmkge1xuICAgICAgICAgICAgLy9ib3V0b24gYWpvdXRlciBhdSBwYW5pZXJcbiAgICAgICAgICAgIC5ham91dC1wYW5pZXIge1xuICAgICAgICAgICAgICAgIC5idG4tcGFuaWVyIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTZweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgKiBURU1QTEFURSBGSUNIRSBERVZJUyBFVCBCT04gREUgQ0hPSVhcbiAgICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLlRQTF9PUkNBQl9GSUNIRV9ERVZJU19CT05TIHtcbiAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgLmZvdXJuaXNzZXVyLFxuICAgICAgICAgICAgLnByaXhIVCB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgfVxuICAgICAgICAudG9wLWZpY2hlIHtcbiAgICAgICAgICAgIC5mbG9hdC1yaWdodCxcbiAgICAgICAgICAgIC5mbG9hdC1sZWZ0IHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5mbG9hdC1yaWdodCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5kaXNwbGF5LXRhYmxlID4gZGl2LmFjdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRFTVBMQVRFIEZBQ1RVUkVTU1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9PUkNBQl9TVUlWSV9GQUNUVVJFUyB7XG4gICAgZm9ybSAuYWxpZ25jZW50ZXI+ZGl2IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHRhYmxldFBsdXNPbmUpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uVFBMX09SQ0FCX1NVSVZJX0ZBQ1RVUkVTLCAuVFBMX09SQ0FCX0ZJQ0hFX0ZBQ1RVUkUsIC5UUExfT1JDQUJfU1VJVklfQ09NTUFOREVTIHtcbiAgICAuZGlzcGxheS10YWJsZSB7XG4gICAgICAgIGRpdi5saWJlbGxlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxOC4wMyU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIuMTExMTg5MzAzMzA3NTMlO1xuICAgICAgICAgICAgZmxleDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBkaXYucmlnaHQge1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgIHdpZHRoOiA3Mi4wNjE5MjgyMTk1NjM2OSU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgICAgLm9wdGlvbnMge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmlzQm9yZHVyZTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5idG4tZXhwb3J0OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFuYztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50b3Age1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgLmNlbGwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNC45NTMyNzEwMjgwMzczOCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzLjUwNDY3Mjg5NzE5NjI2MiU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYm91dG9uLWRlcGxpZXItbGlzdGUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zdWl2aS13cmFwcGVyIC5yZXN1bHRhdCAubGluZS1jb250YWN0IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZ3Jpc0JvcmQ7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDU2cHg7IC8vbGFyZ2V1ciBmbGVjaGUgcG91ciBkZXBsaWVyXG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE5JSArIDIwcHgpOyAvL2xhcmdldXIgbm9tIGRlIGxhIGNvbW1hbmRlICsgbGEgbWFyZ2VcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuXG4gICAgLmJvdXRvbi1jb250YWN0IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogOHB4O1xuICAgICAgICBjb2xvcjogJGJsYW5jO1xuXG4gICAgICAgICZfX3R4dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29tb29uLW1haWw6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYW5jO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWVudGV0ZS1ncmlzZSB7XG4gICAgICAgID4gdGJvZHkgPiB0ciB7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgPiB0ZDpub3QoLmZpY2hlLXJldG91ci1wcm9kdWl0LXRvZ2dsZSkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgID4gdGQ6bnRoLWxhc3QtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtZW50ZXRlLWdyaXNlOm5vdCgudGFibGUtbGlnbmVzKSB7XG4gICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICB3aWR0aDogMTAlO1xuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0ciB0ciB7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0ZCB0ZCB7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxpYiB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1yZXNwb25zaXZlIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgb3ZlcmZsb3cteDogaW5pdGlhbDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxpZ25lLXN1aXZpIHtcbiAgICAgICAgLnJlc3VsdGF0IHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5saWIge1xuICAgICAgICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hcnRpY2xlLXRodW1iIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNjdweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkZGVza3RvcCkge1xuICAgICAgICAucm93IHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cbiAgICAgICAgZGl2LmxpYmVsbGUge1xuICAgICAgICAgICAgbWFyZ2luOiAgMCAwIDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICBkaXYucmlnaHQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAuZGlzcGxheS10YWJsZSB7XG4gICAgICAgICAgICAubGliZWxsZSxcbiAgICAgICAgICAgIC5yaWdodCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5saWJlbGxlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudG9wIHtcbiAgICAgICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAgICAgIC5jZWxsIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5vcHRpb25zIHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucmVzdWx0YXQgLmRpc3BsYXktdGFibGUgPiBkaXYgPiBkaXY6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdWl2aS13cmFwcGVyIC5yZXN1bHRhdCAubGluZS1jb250YWN0IHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA1MHB4KSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRFTVBMQVRFIEZJQ0hFIEZBQ1RVUkVcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5UUExfT1JDQUJfRklDSEVfRkFDVFVSRSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICBoMSB7XG4gICAgICAgIHdpZHRoOiA0NiU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICAuYnRuLWFjdGlvbnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gICAgLmJ0bi1wZXRpdC1ibGFuYyB7XG4gICAgICAgIG1hcmdpbjogMCAyMHB4IDEwcHggMDtcbiAgICB9XG4gICAgLnJlc3VsdGF0IHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICAgIC5zdWl2aS13cmFwcGVyIHtcbiAgICAgICAgLmxpZ25lLXN1aXZpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAgICAqIFRFTVBMQVRFIFNVSVZJIC0gRklDSEUgRkFDVFVSRVNcbiAgICAgICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLlRQTF9PUkNBQl9TVUlWSV9GQUNUVVJFUywgLlRQTF9PUkNBQl9GSUNIRV9GQUNUVVJFIHtcbiAgICAgICAgLnRhYmxlLWVudGV0ZS1ncmlzZTpub3QoLnRhYmxlLWxpZ25lcykgdGQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1sYWJlbCk7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDM1JTtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5maWNoZS1yZXRvdXItcHJvZHVpdC10b2dnbGUtY29udGVudCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5kaXNwbGF5LXRhYmxlIHtcbiAgICAgICAgICAgIC50b3Age1xuICAgICAgICAgICAgICAgIC5jZWxsIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLlRQTF9PUkNBQl9GSUNIRV9GQUNUVVJFIHtcbiAgICAgICAgLnRhYmxlLWVudGV0ZS1ncmlzZTpub3QoLnRhYmxlLWxpZ25lcykge1xuICAgICAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxOHB4IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAuVFBMX09SQ0FCX0ZJQ0hFX0ZBQ1RVUkUsXG4gICAgLlRQTF9PUkNBQl9TVUlWSV9GQUNUVVJFUyxcbiAgICAuVFBMX09SQ0FCX1NVSVZJX0NPTU1BTkRFUyB7XG4gICAgICAgIC50YWJsZS1lbnRldGUtZ3Jpc2UgLnVuZUxpZ25lIHtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICAgICAgICAgIHRkOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEzNXB4O1xuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMzUlICsgNzdweCAvIDIpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDY1JSAtIDc3cHggLyAyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZmljaGUtcmV0b3VyLXByb2R1aXQtdG9nZ2xlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMjVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogMnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0ciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBURU1QTEFURSBHRVNUSU9OIFJFVE9VUlxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9PUkNBQl9HRVNUSU9OX1JFVE9VUlMge1xuICAgIC50b3AtbGlzdGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIH1cbiAgICAuYnRuLWFjdGlvbnMtcmV0b3VycyB7XG4gICAgICAgIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgKyAuYnRuLWFjdGlvbnMtcmV0b3VycyB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnRpdHJlLWF2ZWMtZmF2b3JpcyB7XG4gICAgICAgIHdpZHRoOiA1OSU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjA1cHgpO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMTBweCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRFTVBMQVRFIEZJQ0hFIFJFVE9VUlxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9PUkNBQl9GSUNIRV9SRVRPVVIge1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuXG4gICAgLmZvcm0tc3VibWl0IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG5cbiAgICAgICAgLmJ0bi1pbXByaW1lciB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5ib3V0b24tYmxldTtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJpbnQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVEVNUExBVEUgTk9VVkVBVSBSRVRPVVJcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5UUExfT1JDQUJfTk9VVkVBVV9SRVRPVVIsXG4uVFBMX09SQ0FCX1JFVE9VUl9BX1ZBTElERVIge1xuICAgIC5mb3JtLXJlY2hlcmNoZS5mb3JtLW5vdXZlYXUtcmV0b3VyIHtcblxuICAgICAgICAmID4gZGl2IHtcbiAgICAgICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzUlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2NSU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0tc3VibWl0IGJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOTQ4JztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZGF0ZS1maWVsZCB7XG4gICAgICAgICAgICAmID4gZGl2OjphZnRlciB7XG4gICAgICAgICAgICAgICAgdG9wOiAyOHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmllbGQgPiBkaXYge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoudGFibGVhdS1ncmlzLXJlc3BvbnNpdmUgLnJlc3BvbnNpdmUtdGFibGUgLmhlYWQgLmNlbGwgeyAvLyBJbWhvIDM2OTI0MlxuICAgICAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEycHg7XG4gICAgfSovXG5cbiAgICAudGFibGVhdS1ncmlzLXJlc3BvbnNpdmUuaGlzdG9yaXF1ZS10YWJsZSB7XG4gICAgICAgIC5yZXNwb25zaXZlLXRhYmxlIHtcbiAgICAgICAgICAgIC5yb3cge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pLFxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5jZWxsLFxuICAgICAgICAgICAgICAgIC5ub3V2ZWF1LXJldG91ci1udW0tY29tbWFuZGUge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyaXNGb25jZTtcblxuICAgICAgICAgICAgICAgICAgICAudW5pdGUtY29tbWFuZGVlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cblxuICAgICAgICAgICAgICAgIC5jZWxsLmF2ZWMtdW5pdGUtY29tbWFuZGVlIHtcbiAgICAgICAgICAgICAgICAgICAgLnVuaXRlLWNvbW1hbmRlZSxcbiAgICAgICAgICAgICAgICAgICAgLnVuaXRlLWNhbGN1bGF0ZXVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNHB4IDAgMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ub3V2ZWF1LXJldG91ci1udW0tY29tbWFuZGU6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhpc3RvcmlxdWUtdGFibGUge1xuICAgICAgICAmLS1zYWlzaWUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG5cbiAgICAgICAgICAgIC5zZWxlY3Qtd3JhcDphZnRlciB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZvcm0tZmllbGQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucm93IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucm93IC5jZWxsIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb2RlLCAmX19udW1jb21tYW5kZSB7XG4gICAgICAgICAgICAmLmNlbGwge1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTgwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19kZXNpZ25hdGlvbiB7XG4gICAgICAgICAgICAmLmNlbGwge1xuICAgICAgICAgICAgICAgIGZsZXg6IDEgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2NlbGwge1xuICAgICAgICAgICAgZmxleDogaW5pdGlhbCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgd2lkdGg6IDE0LjIxODAwOTQ3ODY3Mjk5JTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3F0eSB7XG4gICAgICAgICAgICAmLS1pbm5lciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX21vdGlmLFxuICAgICAgICAmX19jb21tZW50IHtcbiAgICAgICAgICAgIHdpZHRoOiAzMS41NjM5ODEwNDI2NTQwMyU7XG4gICAgICAgICAgICBmbGV4OiAxICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAmX19wcml4dW5pdCB7XG4gICAgICAgICAgICB3aWR0aDogMzUuMjU1MzA1NjkyMTk5NTglO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAucmVzcG9uc2l2ZS10YWJsZSB7XG4gICAgICAgIC5ib3V0b24tc3VwcHJpbWVyIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAtMTAwMHB4O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgICAgICAgICAgICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGYwMTQnO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHJvdWdlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICNzYWlzaV9oaXN0b3JpcXVlIHtcbiAgICAgICAgLmZvcm0tZmllbGQgbGFiZWwge1xuICAgICAgICAgICAgLy9taW4taGVpZ2h0OiA0MnB4O1xuICAgICAgICB9XG4gICAgICAgIC5mb3JtLWxlZnQtZmllbGRzLXJpZ2h0LWJ1dHRvbiAuZm9ybS1maWVsZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogaW5oZXJpdDtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICNib3V0b24tcmVjaGVyY2hlci1jb2RlLWFydGljbGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cblxuICAgIC5ub3V2ZWF1LXJldG91ci5wYXMtdGVybWluZSB7XG4gICAgICAgIC5hY3RpdmUtc2ktdGVybWluZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm5vdXZlYXUtcmV0b3VyLnRlcm1pbmUge1xuICAgICAgICAuZGVzYWN0aXZlLXNpLXRlcm1pbmUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcmludCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmZpY2hlLXJldG91ci1oZWFkZXIgPiBkbDpsYXN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IDI4JTtcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgICB9XG5cbiAgICAuaGlzdG9yaXF1ZS10YWJsZS0tbGlzdGUge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcblxuICAgICAgICAuaGVhZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgICAgICAgICAgLmNlbGwge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnJvdyxcbiAgICAgICAgLmhlYWQge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIC5jZWxsIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgd29yZC13cmFwOiBhbnl3aGVyZTtcbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdGFibGV0UGx1c09uZSkge1xuICAgICAgICAgICAgICAgICAgICAmLmRlc2lnbmF0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJi5udW0tbGlnbmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDc1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4OiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnJlc3BvbnNpdmUtdGFibGUgLnJvdyAuY2VsbCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBhZ2luYXRvci1uYnJlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAjbm91dmVhdS1yZXRvdXItc2Fpc2llLWhpc3RvcmlxdWUtZm9ybSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cblxuICAgICNub3V2ZWF1LXJldG91ci1yZXN1bHRhdC1zYWlzaWUtaGlzdG9yaXF1ZSB7XG4gICAgICAgIC5zdWl2aSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ub3JjYWItdGFicy13cmFwcGVyIHtcbiAgICAub3JjYWItdGFicy13cmFwcGVyLS1pdGVtIHtcbiAgICAgICAgdG9wOiA1cHg7XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgdG9wOiAwO1xuXG4gICAgICAgICAgICAub3JjYWItdGFicy13cmFwcGVyLS1saW5rIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYW5jO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmxldU9yY2FiO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm9yY2FiLXRhYnMtd3JhcHBlci0tbGluayB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmlzQm9yZDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmlzQm9yZDtcbiAgICAgICAgbWFyZ2luOiAwIC0xcHggMCAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHggOHB4IDAgMDtcbiAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhbmM7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRhYi1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyaXNCb3JkO1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgIH1cblxuICAgIC50YWItcGFuZSB7XG5cbiAgICB9XG5cblxufVxuXG4kZ3V0dGVyOiAzMHB4O1xuLmZvcm0tNmZpZWxkcy13cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBtYXJnaW46IDAgLTE1cHg7XG5cbiAgICAmID4gLmZvcm0tZmllbGQsXG4gICAgJl9fcm93ID4gLmZvcm0tZmllbGQge1xuICAgICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAjeyRndXR0ZXJ9KTtcbiAgICAgICAgbWFyZ2luOiAwIDE1cHg7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19yb3cge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICB9XG5cblxuICAgIC5mb3JtLWxlZnQtZmllbGRzLXJpZ2h0LWJ1dHRvbiB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICBtYXJnaW46IDAgMTVweDtcbiAgICB9XG59XG5cbi5mb3JtLWxlZnQtZmllbGRzLXJpZ2h0LWJ1dHRvbiB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmZvcm0tZmllbGRzLXdyYXBwZXIge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTZweCk7XG5cbiAgICAgICAgLmZvcm0tZmllbGQge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9ybS1zdWJtaXQge1xuICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudFkoMTAwJSk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb3JtLW5vdXZlYXUtcmV0b3VyLXNhaXNpZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAjbm91dmVhdS1yZXRvdXItcHJvZHVpdC1hLWFqb3V0ZXIgJiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG5cbiAgICAgICAgLmhpc3RvcmlxdWUtdGFibGVfX3F0eSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGdhcDogMCAyMHB4O1xuICAgICAgICAgICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmhpc3RvcmlxdWUtdGFibGVfX3F0eS0taW5uZXIge1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IGNhbGMoNTAlIC0gMTBweCk7XG4gICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaGlzdG9yaXF1ZS10YWJsZV9fZGVzaWduYXRpb24uY2VsbCB7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdGFibGV0UGx1c09uZSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzhweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5oaXN0b3JpcXVlLXRhYmxlX19wcml4dW5pdCB7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbW9iaWxlICsgMSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMC4yNTYxNDAzNTA4NzcxOSU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGVhdS1ncmlzLXJlc3BvbnNpdmUuaGlzdG9yaXF1ZS10YWJsZSAucmVzcG9uc2l2ZS10YWJsZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuXG4gICAgICAgIC5jZWxsIHtcbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgICAgICAgICAgdGV4dGFyZWEsXG4gICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2QxZDFkMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaGVhZCwgLnJvdyB7XG4gICAgICAgICAgICAuY2VsbDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDAgbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucm93IHtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pLFxuICAgICAgICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLmZvcm0tc3VibWl0IHtcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIC5idG4tY2FuY2VsLFxuICAgICAgICAuYnRuLWNvbXBsZXRlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyb3VnZTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiYzQyNDI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJvdXRvbi1ibGV1LFxuICAgICAgICAuYnRuLWFkZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgbWluLXdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZzogMTNweCAyMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCw2OCw5OCwgMC45KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICNib3V0b24tcmVjaGVyY2hlci1jb2RlLWFydGljbGUge1xuICAgICAgICBtYXJnaW46IDEwcHggYXV0byAwO1xuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgIG1pbi13aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI25vdXZlYXUtcmV0b3VyLWxpc3RlLXByb2R1aXRzIHtcbiAgICAuZm9ybS1zdWJtaXQge1xuICAgICAgICAuYnRuLWNvbXBsZXRlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyb3VnZTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiYzQyNDI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZmljaGUtcmV0b3VyLXByb2R1aXQtdG9nZ2xlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG5cbiAgICAuY2VsbC5hY3Rpb24ge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG5cbn1cblxuLmxpZ25lcy1yZXRvdXItd3JhcCB7XG5cbiAgICAuZm9ybS1zdWJtaXQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcblxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDE1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuYnRuLWltcHJpbWVyIHtcbiAgICAgICAgICAgIEBleHRlbmQgLmJvdXRvbi1ibGV1O1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYnRuLWNvbXBsZXRlIHtcblxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgKiBURU1QTEFURSBOT1VWRUFVIFJFVE9VUlxuICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLmZvcm0tNmZpZWxkcy13cmFwcGVyIHtcblxuICAgICAgICAmID4gLmZvcm0tZmllbGQsXG4gICAgICAgICZfX3JvdyA+IC5mb3JtLWZpZWxkIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDI1JSAtICN7JGd1dHRlcn0pO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fcm93IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvcm0tbGVmdC1maWVsZHMtcmlnaHQtYnV0dG9uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gI3skZ3V0dGVyfSk7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGNsZWFyOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICRndXR0ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9ybS1sZWZ0LWZpZWxkcy1yaWdodC1idXR0b24ge1xuXG4gICAgICAgIC5mb3JtLWZpZWxkcy13cmFwcGVyIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIC5kYXRlLWZpZWxkIHtcbiAgICAgICAgICAgICAgICAuZmllbGQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnRZKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5mb3JtLXN1Ym1pdCB7XG4gICAgICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5UUExfT1JDQUJfTk9VVkVBVV9SRVRPVVIsIC5UUExfT1JDQUJfUkVUT1VSX0FfVkFMSURFUiB7XG4gICAgICAgICNzYWlzaV9oaXN0b3JpcXVlIHtcbiAgICAgICAgICAgIC5mb3JtLWZpZWxkIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5maWNoZS1yZXRvdXItaGVhZGVyID4gZGw6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAqIFRFTVBMQVRFIEdFU1RJT04gUkVUT1VSXG4gICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLlRQTF9PUkNBQl9GSUNIRV9SRVRPVVIsXG4gICAgLlRQTF9PUkNBQl9HRVNUSU9OX1JFVE9VUlMsXG4gICAgLlRQTF9PUkNBQl9OT1VWRUFVX1JFVE9VUixcbiAgICAuVFBMX09SQ0FCX1JFVE9VUl9BX1ZBTElERVIge1xuICAgICAgICBoMSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICAgICAgICB9XG4gICAgICAgIC5yZXNwb25zaXZlLXRhYmxlIHtcblxuICAgICAgICAgICAgLmhlYWQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yb3cge1xuXG4gICAgICAgICAgICAgICAgLmNlbGwge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1sYWJlbCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICYuY29tbWVudGFpcmUtY29vcDo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICogVEVNUExBVEUgTk9VVkVBVSBSRVRPVVJcbiAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiAgICAuZm9ybS02ZmllbGRzLXdyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cbiAgICAgICAgJiA+IC5mb3JtLWZpZWxkLFxuICAgICAgICAmX19yb3cgPiAuZm9ybS1maWVsZCB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAjeyRndXR0ZXJ9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mb3JtLWxlZnQtZmllbGRzLXJpZ2h0LWJ1dHRvbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRndXR0ZXJ9KTtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygjeyRndXR0ZXJ9IC8gMik7XG5cbiAgICAgICAgICAgIC5mb3JtLWZpZWxkcy13cmFwcGVyIC5kYXRlLWZpZWxkIC5maWVsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZm9ybS1zdWJtaXQge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBpbml0aWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm0tbGVmdC1maWVsZHMtcmlnaHQtYnV0dG9uIHtcblxuICAgICAgICAuZm9ybS1maWVsZHMtd3JhcHBlciB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAuZm9ybS1maWVsZCB7XG4gICAgICAgICAgICAgICAgJi5sZWZ0NTAsICYucmlnaHQ1MCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0OCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYubGVmdDUwIHtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYucmlnaHQ1MCB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLmxpZ25lcy1yZXRvdXItd3JhcCB7XG4gICAgICAgIC50YWJsZWF1LWdyaXMtcmVzcG9uc2l2ZSB7XG4gICAgICAgICAgICAucmVzcG9uc2l2ZS10YWJsZSB7XG4gICAgICAgICAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICAgICAgICAgIC5maWNoZS1yZXRvdXItcHJvZHVpdC10b2dnbGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmJvdXRvbi1zdXBwcmltZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm0tbm91dmVhdS1yZXRvdXItc2Fpc2llLFxuICAgIC5saWduZXMtcmV0b3VyLXdyYXAge1xuICAgICAgICAuZm9ybS1zdWJtaXQge1xuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5UUExfT1JDQUJfTk9VVkVBVV9SRVRPVVIsIC5UUExfT1JDQUJfUkVUT1VSX0FfVkFMSURFUiB7XG4gICAgICAgIC5mb3JtLW5vdXZlYXUtcmV0b3VyLXNhaXNpZSB7XG4gICAgICAgICAgICAucmVzcG9uc2l2ZS10YWJsZSB7XG4gICAgICAgICAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICAgICAgICAgIC5jZWxsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6ICAwIDAgMjBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbiBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5hdmVjLXVuaXRlLWNvbW1hbmRlZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuaGlzdG9yaXF1ZS10YWJsZV9fcXR5LS1pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgPiBkaXY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuc2VsZWN0LXdyYXAge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODElKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDgxJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhpc3RvcmlxdWUtdGFibGUtLWxpc3RlIHtcbiAgICAgICAgICAgIC5yb3cge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yb3cgLmNlbGwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAub3JjYWItdGFicy13cmFwcGVyIC5uYXYgbGkge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cblxuICAgICNub3V2ZWF1LXJldG91ci1saXN0ZS1wcm9kdWl0cyB7XG4gICAgICAgIC5yb3cge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcblxuICAgICAgICAgICAgLmNlbGwge1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvckJhc2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5hY3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiAuY2VsbDpmaXJzdC1jaGlsZCBzcGFuIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1NXB4O1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYm91dG9uLXN1cHByaW1lciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgIHJpZ2h0OiA1cHg7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIENPTVBURVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG4vL3BhZ2UgaW5mb3JtYXRpb25zXG5AaW1wb3J0ICdpbmZvcm1hdGlvbic7XG5cbi8vcGFnZSBub3V2ZWF1IHJvbGVcbkBpbXBvcnQgJ25vdXZlYXUtcm9sZSc7XG5cbi8vcGFnZSBhZHJlc3NlIGRlIGxpdnJhaXNvblxuQGltcG9ydCAnYWRyZXNzZS1saXZyYWlzb24nO1xuXG4vL2Jsb2MgdG91cm5lZXNcbkBpbXBvcnQgJ3RvdXJuZWVzJzsiLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBURU1QTEFURSBJTkZPUyBDT01QVEVcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5UUExfSU5GT1NfQ09NUFRFIHtcbiAgICBoMiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICAgIC5jb2wge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAuZmllbGQge1xuICAgICAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGZvcm0ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICB9XG4gICAgLmZpZWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG4gICAgLmZpZWxkLXJlcXVpcmVkOjphZnRlciB7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgIH1cbiAgICAuZmllbGQgPiBsYWJlbCAucmVxdWlyZWQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuY29lZmZpZWNpZW50LXByaXgge1xuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgICB3aWR0aDogMjguNTMyNDIzMjAlO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5ib3V0b24tdmVydCB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDE2LjdyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgI2NvZWZmaWNpZW50X2Zvcm0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgICAgICAmID4gZGl2IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYm91dG9uLXZlcnQge1xuICAgICAgICBtaW4td2lkdGg6IDE5LjdyZW07XG4gICAgfVxuICAgIC5idG4tZ2VyZXItY29ubmV4aW9ucyB7XG4gICAgICAgIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgICB9XG4gICAgLmRpc3BsYXktdGFibGUgPiBkaXYge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB3aWR0aDogMTclO1xuICAgICAgICAmLnJvbGVIZWFkZXIge1xuICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICAgIC5idG4gKyAuYnRuIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHRhYmxldFBsdXNPbmUpIHtcbiAgICAgICAgICAgICYucm9sZUhlYWRlckxhc3Qge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNCU7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGluaXRpYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnJlc3VsdGF0IHtcbiAgICAgICAgLm5vbSB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG4gICAgICAgIC5ub20sIC5wcmVub20ge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnRhYmxlLWFkaGVyZW50LXV0aWxpc2F0ZXVycyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgfVxuICAgIC50YWJsZS1yb2xlcyB7XG4gICAgICAgIC5ub20ge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgICAgICAucm9sZUhlYWRlciB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogNDElO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgJi1yZXRpcmVyIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTk1ZVwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTYwMHB4KSBhbmQgKG1pbi13aWR0aDogJHRhYmxldFBsdXNPbmUpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb3JtLXV0aWxpc2F0ZXVyLW1vZGlmaWVyIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgLnJvbGUge1xuICAgICAgICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgfVxuICAgICAgICAjZW9sYXNfZWNvbW1lcmNlX29yY2FiX3V0aWxpc2F0ZXVydHlwZSB7XG4gICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vLi4vY3NzL2ltYWdlcy9mbC1zZWxlY3QucG5nJykgbm8tcmVwZWF0IDkxJSA1MCUgI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYnRuLWFjdGlvbnMge1xuICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICB9XG4gICAgICAgIC5ib3V0b24tdmVydCB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IGluaGVyaXQ7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5wb3AtdXAtaW5mby1jbGllbnQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGhlaWdodDogMTAwJTsgd2lkdGg6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDA7IHRvcDogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICAgICAgICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XG4gICAgICAgIC5wb3AtdXAtY29udGVudCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIHRvcDogNjAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5wb3AtdXAtY29uZmlndXJhdGlvbi11dGlsaXNhdGV1ciB7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxNSUpO1xuICAgIH1cbiAgICAuZm9ybS1jb25maWctdXRpbGlzYXRldXIge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHdpZHRoOiA3MDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgLmZpZWxkIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgfVxuICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi8uLi9jc3MvaW1hZ2VzL2ZsLXNlbGVjdC5wbmcnKSBuby1yZXBlYXQgOTYlIDUwJSAjZmZmOztcbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9ucyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCA3cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgbGFiZWwsIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgIC5idXR0b25zIHtcbiAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDE1cHggMCAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAjcG9wLXVwLWNvbm5leGlvbi1lbi10YW50LXF1ZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyB3aWR0aDogMTAwJTtcbiAgICAgICAgbGVmdDogMDsgdG9wOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgICAgLnBvcC11cC1nZXN0aW9uLWNvbm5leGlvbnMge1xuICAgICAgICAgICAgLmZhLWNoZXZyb24tcmlnaHQ6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYxMDVcIjtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5mYTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5mYS1jaGV2cm9uLWRvdWJsZS1yaWdodDo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjEwMVwiO1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLmZhO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmZhLWNoZXZyb24tbGVmdDo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjEwNFwiO1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLmZhO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmZhLWNoZXZyb24tZG91YmxlLWxlZnQ6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYxMDBcIjtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5mYTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICN1dGlsaXNhdGV1cnNBdXRvcmlzZXNBU2VDb25uZWN0ZXIge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJ1dHRvbnMge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNsaWVudHNDb25uZXhpb25BUXVpT25TZUNvbm5lY3RlTXVsdGkge1xuICAgICAgICAgICAgZGl2LCBzZWxlY3Qge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ3JTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDExOXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiAwIG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnRucyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRvcDogLTNweDtcbiAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjlweDsgd2lkdGg6IDI5cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY2xpZW50c0Nvbm5leGlvbkFRdWlPblNlQ29ubmVjdGVNdWx0aVNlYXJjaCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0MiU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwMDJcIjtcbiAgICAgICAgICAgICAgICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbnB1dC5jbGllbnRzQ29ubmV4aW9uQVF1aU9uU2VDb25uZWN0ZU11bHRpU2VhcmNoSW5wdXQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MiU7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjY2xpZW50c0Nvbm5leGlvbkFRdWlPblNlQ29ubmVjdGVNdWx0aSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgLmNvbCAuZmllbGQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vYXZlYyBib3V0b24gZmF2b3Jpc1xuICAgICAgICAud2l0aC1idG4tZmF2b3JpcyAmIHtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5mb3JtLXV0aWxpc2F0ZXVyLW1vZGlmaWVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnRuLWljb257XG4gICAgICAgICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDM1cHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZGlzcGxheS10YWJsZSA+IGRpdi5yb2xlSGVhZGVyOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZGlzcGxheS10YWJsZSA+IGRpdi5yb2xlSGVhZGVyIC5ib3V0b24tcm91Z2Uge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgIC5jb2VmZmllY2llbnQtcHJpeCBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgICB3aWR0aDogMzglO1xuICAgICAgICB9XG4gICAgICAgIC50YWJsZS1hZGhlcmVudC11dGlsaXNhdGV1cnMge1xuICAgICAgICAgICAgLmludGl0dWxlcyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kaXNwbGF5LXRhYmxlIHtcbiAgICAgICAgICAgICAgICAubGliIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmID4gZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICYubm9tLCAmLnJvbGVIZWFkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJi5yb2xlSGVhZGVyIC5saWIge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmID4gZGl2LnJvbGVIZWFkZXI6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnRuLWdlcmVyLWNvbm5leGlvbnMge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmZvcm0tdXRpbGlzYXRldXItbW9kaWZpZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICAgICAgLnJvbGUge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5ib3V0b24tdmVydCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAjZW9sYXNfZWNvbW1lcmNlX29yY2FiX3V0aWxpc2F0ZXVydHlwZSB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmJ0bi1hY3Rpb25zIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwIDA7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIGJ1dHRvbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRFTVBMQVRFIE5PVVZFQVUgUk9MRVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9HRVNUSU9OX1JPTEVfVVRJTElTQVRFVVIge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgaDIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgICAuY29sIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgLmZpZWxkIHtcbiAgICAgICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBmb3JtIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgfVxuICAgIC5maWVsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICAgIC5zZWxlY3Qtd3JhcCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICBbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwge1xuICAgICAgICBtYXJnaW46IDAuNnJlbSAwIDEuOHJlbTtcbiAgICB9XG4gICAgLmJvdXRvbi12ZXJ0IHtcbiAgICAgICAgbWluLXdpZHRoOiAxOS43cmVtO1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgIC5jb2wgLmZpZWxkIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG5cbiAgICAgICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRFTVBMQVRFIEFEUkVTU0VTIERFIExJVlJBSVNPTlxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9DT01QVEVfQURSRVNTRV9MSVZSQUlTT04ge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgLmpvdXItdG91cm5lZSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNC4zcmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5ham91dGVyQWRyZXNzZSB7XG4gICAgICAgIG1hcmdpbjogMjVweCAwO1xuICAgIH1cbiAgICAuYWRyZXNzZXMtbGlzdCAuYm91dG9uLXZlcnQge1xuICAgICAgICBtYXgtd2lkdGg6IDI3LjVyZW07XG4gICAgICAgIGk6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgIC5ham91dGVyQWRyZXNzZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtNTVweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgLmFqb3V0ZXJBZHJlc3NlIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogQkxPQ1MgVE9VUk5FRVMgRVQgQURSRVNTRVNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi8qIEJsb2MgcG91ciBsZXMgdG91cm7DqWVzIGV0IGFkcmVzc2VzICovXG4uYmxvYy1wYW5lbCB7XG4gICAgLmludGl0dWxlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGdyaXNNZW51O1xuICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNXB4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICAuY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIGNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgIH1cbn1cbi8qIEpvdXJzIGRlcyB0b3VybsOpZXMgKi9cbi5ibG9jLXRvdXJuZWUtZXhwbGljYXRpb25zIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLmJsb2MtdG91cm5lZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE4LjUwODEzMjM2MTE4OTAxJTtcbiAgICBtYXJnaW4tbGVmdDogMS42ODI1NTc0ODczODA4MTklO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgJjpudGgtY2hpbGQoNW4rMSkge1xuICAgICAgICBjbGVhcjogbGVmdDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICAgICYuc2VsZWN0ZWQge1xuICAgICAgICBib3JkZXItY29sb3I6ICR2ZXJ0O1xuICAgICAgICAuaW50aXR1bGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHZlcnQ7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuY29udGVudCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuLyogQWRyZXNzZXMgZGUgbGl2cmFpc29uICovXG4uYmxvY3MtYWRyZXNzZXMgPiBkaXYge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAzMS45NjgxNDU2MjAwMjI3NSU7XG4gICAgbWFyZ2luLWxlZnQ6IDIuMDQ3NzgxNTY5OTY1ODclO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgJjpudGgtY2hpbGQoM24rMSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgfVxuICAgIHAge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDEzcHggMDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlN2U3ZTc7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgLmJsb2MtdG91cm5lZSwgLmJsb2NzLWFkcmVzc2VzID4gZGl2IHtcbiAgICAgICAgd2lkdGg6IDMxLjYlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMi42JTtcblxuICAgICAgICAmOm50aC1jaGlsZCg1bisxKSB7XG4gICAgICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyLjYlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoM24rMSkge1xuICAgICAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgKiBCTE9DUyBUT1VSTkVFUyBFVCBBRFJFU1NFU1xuICAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiAgICAuYmxvYy10b3VybmVlLCAuYmxvY3MtYWRyZXNzZXMgPiBkaXYge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgICAuYmxvYy10b3VybmVlIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgJiA+IGRpdiB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDVuKzEpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIENPTVBURS9TVUlWSSAtIExpc3RlIGRlcyB1dGlsaXNhdGV1cnNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5UUExfQ09OTkVYSU9OX0VOX1RBTlRfUVVFIHtcbiAgbWFyZ2luLWJvdHRvbTogNS41cmVtO1xuXG4gIGgyIHtcbiAgICBmb250LXNpemU6IDMuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMi4zcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyaXNCb3JkdXJlO1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gICAgfVxuICB9XG5cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNnJlbTtcbiAgfVxuXG4gIC5uYiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgfVxuXG4gIHRhYmxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0aCB7XG4gICAgICBwYWRkaW5nOiAwIDJyZW0gMnJlbTtcbiAgICAgIHdpZHRoOiAyNSU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgIH1cbiAgfVxuICB0ci5kYXRhIHtcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAxcmVtIDJyZW07XG4gICAgICBiYWNrZ3JvdW5kOiAkYmxhbmM7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogLjhyZW0gMCAwIC44cmVtO1xuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAuOHJlbSAuOHJlbSAwO1xuICAgICAgfVxuICAgIH1cbiAgICAuYm91dG9uLXZlcnQge1xuICAgICAgbWluLXdpZHRoOiAxNzBweDtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgdGFibGUge1xuICAgICAgdGgge1xuICAgICAgICBwYWRkaW5nOiAwIC43NXJlbSAuNXJlbTtcbiAgICAgICAgd2lkdGg6IDIzLjMzMzMzMyU7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRyaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgLmZsLWRvd24ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICAgIHRyLmRhdGEge1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICB9XG4gIH1cbiAgLnRhYmxlLXJlc3BvbnNpdmUge1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVEVNUExBVEUgRElBUE9SQU1BIEFDQ1VFSUxcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5UUExfRElBUE9SQU1BX0FDQ1VFSUwge1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IC0zMHB4O1xuICAgIC5jYXJvdXNlbCB7XG4gICAgICAgIC5iZyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB9XG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuY291bnQge1xuICAgICAgICBjb2xvcjogIzk1YzkyZDtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTNweCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgfVxuICAgIC5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoNTBkZWcsIHJnYig5MCwgMTMyLCA1MSkgMCUsIHJnYigxNTMsIDIwNSwgNDUpIDEwMCUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCg1MGRlZywgcmdiKDkwLCAxMzIsIDUxKSAwJSwgcmdiKDE1MywgMjA1LCA0NSkgMTAwJSk7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQoNTBkZWcsIHJnYig5MCwgMTMyLCA1MSkgMCUsIHJnYigxNTMsIDIwNSwgNDUpIDEwMCUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoNTBkZWcsIHJnYig5MCwgMTMyLCA1MSkgMCUsIHJnYigxNTMsIDIwNSwgNDUpIDEwMCUpO1xuICAgICAgICB3aWR0aDogNDUlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4IDAgMTBweCAxMHB4O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAxMTBweDtcbiAgICAgICAgYm90dG9tOiAtMzBweDtcbiAgICAgICAgLnRpdHJlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDQwcHgpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM4OGI0NDU7XG4gICAgICAgICAgICBwYWRkaW5nOiAzNXB4IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDM1cHggMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE3cHgpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNhcm91c2VsLW5hdiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgIHJpZ2h0OiAtODBweDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICAuY2Fyb3VzZWwtY29udHJvbCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR2ZXJ0O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBAZXh0ZW5kIC5mYTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmxlZnQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAzcHggMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYucmlnaHQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgM3B4IDAgMDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzhmYjM0YjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuY2Fyb3VzZWwtY29udHJvbC1wYWdlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBNRURJQVFVRVJJRVNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRkZXNrdG9wKSB7XG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICogVEVNUExBVEUgRElBUE9SQU1BIEFDQ1VFSUxcbiAgICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLmFjY3VlaWwgLlRQTF9ESUFQT1JBTUFfQUNDVUVJTCAuYmcge1xuICAgICAgICAvL3BhZGRpbmctdG9wOiAzMCU7XG4gICAgfVxuXG4gICAgLy9kaWFwbyBzdXIgdW5lIHBhZ2UgYXZlYyBjb2xvbm5lIGdhdWNoZVxuICAgIC5UUExfRElBUE9SQU1BX0FDQ1VFSUwgLmJnIHtcbiAgICAgICAgaGVpZ2h0OiA1NDBweDtcbiAgICB9XG5cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGRlc2t0b3ApIHtcblxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgKiBURU1QTEFURSBESUFQT1JBTUEgQUNDVUVJTFxuICAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiAgICAuVFBMX0RJQVBPUkFNQV9BQ0NVRUlMIC5iZyB7XG4gICAgICAgIGhlaWdodDogNTQwcHg7XG4gICAgfVxuXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcblxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgKiBURU1QTEFURSBESUFQT1JBTUEgQUNDVUVJTFxuICAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiAgICAuVFBMX0RJQVBPUkFNQV9BQ0NVRUlMIHtcbiAgICAgICAgLmNhcm91c2VsIC5jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgfVxuICAgICAgICAuYmcge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDQ1JTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgICAgICAuY2Fyb3VzZWwtY2FwdGlvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgIGhlaWdodDogNDUwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAqIFRFTVBMQVRFIERJQVBPUkFNQSBBQ0NVRUlMXG4gICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5UUExfRElBUE9SQU1BX0FDQ1VFSUwge1xuICAgICAgICAuY2Fyb3VzZWwgLmNvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgICAuYmcge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMjNweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICAgICAgLmNhcm91c2VsLWNhcHRpb24ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMTBweCAxMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAyMHB4IDQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDM4MHB4O1xuXG4gICAgICAgICAgICAudGl0cmUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDM2cHgpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMCAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jYXJvdXNlbC1uYXYge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnRYKCk7XG4gICAgICAgICAgICBib3R0b206IDE1cHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAycHg7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYuYWN0aXZlIGEge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAjZmZmZmZmO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdmVydDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vZGlhcG9yYW1hIG9yY2FiXG5AaW1wb3J0ICdkaWFwby1vcmNhYic7XG5cbi8vZGlhcG9yYW1hIG11bHRpcGxlXG5AaW1wb3J0ICdkaWFwby1tdWx0aXBsZSc7IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVEVNUExBVEUgRElBUE9SQU1BIE9SQ0FCXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uVFBMX0RJQVBPUkFNQV9PUkNBQiB7XG4gICAgbWFyZ2luOiAwIDAgNTBweDtcblxuICAgIC5jYXJvdXNlbC1pbm5lciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgJiA+IC5pdGVtID4gaW1nLFxuICAgICAgICAmID4gLml0ZW0gPiBhID4gaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgIH1cbiAgICAuaW1nLW1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5pdGVtIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoLnNsaWNrLWluaXRpYWxpemVkKSArIC5jYXJvdXNlbC1uYXYge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJvdXNlbCB7XG4gICAgICAgICYtbmF2IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYud2l0aC1kZXNjIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDI1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWJ1dHRvbiB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5mYTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLWFjdGlvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAmLnBhdXNlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYucGxheSB7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1yZXN1bWUge1xuICAgICAgICAgICAgbWFyZ2luOiA4cHggMCAwO1xuICAgICAgICB9XG5cbiAgICB9XG4gICAgLmRpYXBvLWFjdGlvbiB7XG4gICAgICAgIHdpZHRoOiA0N3B4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICR2ZXJ0O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjNkM5NTFGO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjlyZW07XG4gICAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJi5jb3VudCB7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM2Qzk1MUY7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRkZXNrdG9wKSB7XG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAqIFRFTVBMQVRFIERJQVBPUkFNQSBPUkNBQlxuICAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiAgICAuVFBMX0RJQVBPUkFNQV9PUkNBQiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgIC5jYXJvdXNlbCB7XG4gICAgICAgICAgICAmLXJlc3VtZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYtbmF2IHtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgJi53aXRoLWRlc2Mge1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAqIFRFTVBMQVRFIERJQVBPUkFNQSBPUkNBQlxuICAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiAgICAuVFBMX0RJQVBPUkFNQV9PUkNBQiB7XG4gICAgICAgIG1hcmdpbjogMCAtMjBweCA1MHB4O1xuXG4gICAgICAgIC5jYXJvdXNlbC1pbm5lciA+IC5pdGVtID4gYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pbWctbW9iaWxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlLXNtYWxsKSB7XG4gICAgLlRQTF9ESUFQT1JBTUFfT1JDQUIge1xuICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgICBhc3BlY3QtcmF0aW86IDM2MCAvIDIxMztcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBHRU5FUkFMSVRFUyBESUFQT1JBTUFcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi8qIENTUyBwb3VyIGxlIGNhcm91c2VsIG11bHRpcGxlICovXG4uZGlhcG9yYW1hLW11bHRpcGxlLmRpYXBvcmFtYS1zYW5zLWRlZmlsZW1lbnQgLmNhcm91c2VsLWlubmVyIC5pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uZGlhcG9yYW1hLW11bHRpcGxlIC5jYXJvdXNlbC1pbm5lciAuaXRlbSAuc3ViLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLmRpYXBvcmFtYS1tdWx0aXBsZS0yIC5jYXJvdXNlbC1pbm5lciAuaXRlbSAuc3ViLWl0ZW0ge1xuICAgIHdpZHRoOiA1MCU7XG59XG5cbi5kaWFwb3JhbWEtbXVsdGlwbGUtMyAuY2Fyb3VzZWwtaW5uZXIgLml0ZW0gLnN1Yi1pdGVtIHtcbiAgICB3aWR0aDogMzMuMzMzJTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRFTVBMQVRFIERJQVBPUkFNQSBNVUxUSVBMRVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9ESUFQT1JBTUFfTVVMVElQTEUge1xuICAgIG1hcmdpbjogMCAwIDkwcHg7XG4gICAgLmNhcm91c2VsLWlubmVyID4gLml0ZW0gPiBpbWcsXG4gICAgLmNhcm91c2VsLWlubmVyID4gLml0ZW0gPiBhID4gaW1nIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICAuaXRlbSB7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMDtcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGdhcDogM3JlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuY2Fyb3VzZWwtY2FwdGlvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBnYXA6IDJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJ4LXdyYXBwZXIsXG4gICAgICAgIC5ieC12aWV3cG9ydCB7XG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgICAgICAgLmJsb2MtdGl0cmUtcGFnIHtcbiAgICAgICAgICAgIC5wYWcge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIEdFTkVSQUxJVEVTIEFDVFVBTElURVNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5ibG9jLXRpdHJlLXBhZyB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgaDIsXG4gICAgLnRpdHJlIHtcbiAgICAgICAgQGV4dGVuZCAudGl0cmUtYmxvYy1idWxsZXQ7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nOiA1cHggNjBweCA1cHggMDtcbiAgICB9XG4gICAgLmluZm8tYWN0dWFsaXRlcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNmVtO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAucGFnIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmlzQm9yZHVyZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhbmM7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICAmID4gc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCBhIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0ZXh0LWluZGVudDogLTEwMDBweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi1uZXh0IHtcbiAgICAgICAgICAgIGE6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MDVcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLXByZXYge1xuICAgICAgICAgICAgYTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTkwNlwiO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uY29sLWxlZnQge1xuICAgIC5UUExfTElTVEVfREVSTklFUkVfQUNUVUFMSVRFIHtcbiAgICAgICAgaDMge1xuICAgICAgICAgICAgQGV4dGVuZCAudGl0cmUtYmxvYy1idWxsZXQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmJsb2MtYWN0dSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgbWluLWhlaWdodDogMDtcblxuICAgICAgICAucGhvdG9zIHtcbiAgICAgICAgICAgIGhlaWdodDogMTA1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgIH1cbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxN3B4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5yZXN1bWUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE1cHgpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmxpc3RlLWFjdHUtbGllbnBsdXMge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICBmbG9hdDpub25lO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxpc3RlLWFjdHUtbGllbnBsdXMge1xuICAgIGZsb2F0OnJpZ2h0O1xuICAgIGEge1xuICAgICAgICBAaW5jbHVkZSBsaWVuLWZsZWNoZS1ibGV1KCR0YWJsZXQpO1xuICAgIH1cbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBMSVNURSBBQ1RVXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uVFBMX0xJU1RFX0FDVFVBTElURSB7XG4gICAgaDIge1xuICAgICAgICBtYXJnaW46IDEwcHggMCAxNXB4O1xuICAgIH1cbiAgICAuZm9ybS1zZWFyY2gtYWN0dXMgLmJvdXRvbi1yZWNoZXJjaGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICB9XG4gICAgLmxpc3RlLWFjdHVhbGl0ZSB7XG4gICAgICAgIEBleHRlbmQgLmxpc3RlLWdlbmVyaXF1ZTtcbiAgICAgICAgLml0ZW0ge1xuICAgICAgICAgICAgbWluLWhlaWdodDogMjAxcHg7XG4gICAgICAgICAgICAudGh1bWJuYWlsIHtcbiAgICAgICAgICAgICAgICAucGhvdG9zIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAgICAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDE2Lzk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDI1cHg7XG4gICAgICAgICAgICAgICAgLnJlc3VtZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE2cHgpO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA1cHggMCAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE5cHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHRhYmxldFBsdXNPbmUpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLml0ZW0ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICR0YWJsZXRQbHVzT25lKSB7XG4gICAgICAgIC5jbXMtYmxvYy5mbC1sLTUwICYsXG4gICAgICAgIC5jbXMtYmxvYy5mbC1yLTUwICYge1xuICAgICAgICAgICAgcGFkZGluZzogMCAzcmVtO1xuICAgICAgICAgICAgLmxpc3RlIC5pdGVtIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAudGh1bWJuYWlsIC5waG90b3Mge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLlRQTF9MSVNURV9QQUdFIHtcbiAgICAubGlzdGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGdhcDogMjVweCAzMHB4O1xuICAgICAgICBtYXJnaW46IDAgMCAzMHB4O1xuXG4gICAgICAgICYtcGhvdG8ge1xuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5kYXRlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS44cmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFuYztcbiAgICAgICAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICYud2l0aC10aHVtYm5haWwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4IDAgMCA1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0YWJsZXRQbHVzT25lKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTVweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICYud2l0aC10aHVtYm5haWwge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDI4cmVtO1xuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4IDVweCAwIDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbSAycmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGliZWxsZS1kYXRlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHZlcnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIEBpbmNsdWRlIGZvbnRTaXplKDE2cHgpO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG59XG5cbi5ibG9jLXJlc3VtZS1ibGV1IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxldU9yY2FiO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIHBhZGRpbmc6IDI1cHggMzBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgQGluY2x1ZGUgZm9udFNpemUoMTdweCk7XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogRklDSEUgQUNUVVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9GSUNIRV9BQ1RVQUxJVEUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICAucGhvdG9zIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICBwIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE3cHgpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnByb2R1aXRzLWFzc29jaWVzIC5saXN0ZS1wcm9kdWl0cyA+IGxpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkZGVza3RvcCkge1xuICAgICAgICAubGlzdGUtcHJvZHVpdHMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAmID4gbGkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yZXNzb3VyY2VzLWFzc29jaWVlcyB7XG4gICAgaDMge1xuICAgICAgICBAZXh0ZW5kIC50aXRyZS1ibG9jLWJ1bGxldDtcbiAgICB9XG4gICAgdWwge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4IDEwcHggMCAwO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMzBweCAzMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICB9XG4gICAgbGkge1xuICAgICAgICB3aWR0aDogNDklO1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAzMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmlzQm9yZHVyZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE3cHgpO1xuICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnRZO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIGNsZWFyOiByaWdodDtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgJi5kb2N1bWVudCB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOTJlJztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJltocmVmKj1cIi50eHRcIl06OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5MzYnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmW2hyZWYqPVwiLnBkZlwiXTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJ1xcZTkyMic7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICZbaHJlZio9XCIueGxzXCJdOjpiZWZvcmUsXG4gICAgICAgICAgICAgICAgJltocmVmKj1cIi54bHN4XCJdOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOTM0JztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJltocmVmKj1cIi5wbmdcIl06OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5MGYnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmW2hyZWYqPVwiLmZsdlwiXTo6YmVmb3JlLFxuICAgICAgICAgICAgICAgICZbaHJlZio9XCIubXA0XCJdOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOTEwJztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJltocmVmKj1cIi5wcHRcIl0sXG4gICAgICAgICAgICAgICAgJltocmVmKj1cIi5wcHR4XCJdIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5MjgnO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICZbaHJlZio9XCIuZG9jXCJdLFxuICAgICAgICAgICAgICAgICZbaHJlZio9XCIuZG9jeFwiXSB7XG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOTNjJztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmxpZW4gYTo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5MTInO1xuICAgICAgICB9XG4gICAgICAgICYuZmljaGllciB7XG4gICAgICAgICAgICAmLUFVVFJFIGE6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ1xcZTkzMCc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLVBERiBhOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5MjInO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi1FWENFTCBhOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5MzQnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi1XT1JEIGE6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ1xcZTkzYyc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5saWVuLXRvdXMge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDI1cHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBjbGVhcjogcmlnaHQ7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuYm91dG9uLXZlcnQ7XG4gICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICogR0VORVJBTElURVMgQUNUVUFMSVRFU1xuICAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiAgICAucmVzc291cmNlcy1hc3NvY2llZXMge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMjBweCAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAqIEZJQ0hFIEFDVFVcbiAgICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLlRQTF9GSUNIRV9BQ1RVQUxJVEUge1xuICAgICAgICAvL2F2ZWMgYm91dG9uIGFqb3V0IGZhdm9yaXNcbiAgICAgICAgLnRpdHJlLWF2ZWMtZmF2b3JpcyB7XG4gICAgICAgICAgICB0b3A6IC01cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcblxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgKiBHRU5FUkFMSVRFUyBBQ1RVQUxJVEVTXG4gICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5ibG9jLXRpdHJlLXBhZyB7XG4gICAgICAgIGgyLFxuICAgICAgICAudGl0cmUge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgIC5wYWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudFg7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IDEyMXB4O1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICBib3R0b206IDQ1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICogTElTVEUgQUNUVVxuICAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiAgICAuVFBMX0xJU1RFX0FDVFVBTElURSAubGlzdGUgLml0ZW0gLnRodW1ibmFpbCB7XG4gICAgICAgIC5waG90b3Mge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAqIEZJQ0hFIEFDVFVcbiAgICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLlRQTF9GSUNIRV9BQ1RVQUxJVEUge1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgLy9hdmVjIGJvdXRvbiBham91dCBmYXZvcmlzXG4gICAgICAgIC50aXRyZS1hdmVjLWZhdm9yaXMge1xuICAgICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLnBob3RvcyB7XG4gICAgICAgICAgICBtYXJnaW46IDAgLTIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAzMHB4IDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucmVzc291cmNlcy1hc3NvY2llZXMge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMTVweCAyNXB4O1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG5cbi5zLWVsZW1lbnQtYXNzb2NpZS12b2xldCB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5ibG9jLXRpdHJlLXBhZyAudGl0cmUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5saXN0ZS1hY3R1YWxpdGUtYWNjdWVpbCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5ieC12aWV3cG9ydCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIH1cbn1cblxuQGltcG9ydCBcImxpc3RlLWhwXCI7XG5AaW1wb3J0IFwiem9vbS1zdXJcIjtcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFNsaWRlciBkZSBjYXJkIChhY3R1YWxpdGUgZXQgYWdlbmRhKVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9MSVNURV9BQ1RVQUxJVEVfQUNDVUVJTCxcbi5UUExfTElTVEVfQUdFTkRBX0FDQ1VFSUwsXG4uYy1jYXJkLXNsaWRlciB7XG4gICAgLnBhZy5oaWRlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAucGFnID4gc3BhbiA+IGE6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5ieC13cmFwcGVyIC5saXN0ZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuXG4gICAgICAgIC5ieC13cmFwcGVyLFxuICAgICAgICAuYngtdmlld3BvcnQge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuXG4gICAgICAgIC5saXN0ZSB7XG4gICAgICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucGFnLmhpZGUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgLmxpc3RlLWFjdHUtbGllbnBsdXMge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudFg7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uVFBMX0xJU1RFX0FDVFVBTElURV9BQ0NVRUlMIHtcbiAgICBtYXJnaW4tYm90dG9tOiA5MHB4O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVEVNUExBVEUgQUNUVUFMSVRFUyBBQ0NVRUlMXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbi5ibG9jLWFjdHUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmlzQm9yZHVyZTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAycHgpO1xuXG4gICAgLnBob3RvcyB7XG4gICAgICAgIC8vaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxNi85O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHggNXB4IDAgMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cbiAgICAgICAgLy8gRmFsbGJhY2sgKGN1cnJlbnQsIHVzaW5nIHBhZGRpbmcgaGFjaylcbiAgICAgICAgQHN1cHBvcnRzIG5vdCAoYXNwZWN0LXJhdGlvOiAxNiAvIDkpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1Ni4yNSU7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnRleHQtbGlicmUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS44cmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICB9XG4gICAgICAgIC5yZXN1bWUge1xuICAgICAgICAgICAgY29sb3I6JGdyaXNGb25jZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tb25seSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wYXN0aWxsZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHggMCAwIDA7XG4gICAgfVxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVEVNUExBVEUgQUNUVUFMSVRFUyBaT09NIFNVUlxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9BQ1RVQUxJVEVfWk9PTV9TVVIgIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgZ2FwOiAzMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDkwcHg7XG5cbiAgICAucGhvdG9zIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyLjRyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuXG4gICAgLmxpZW4tcGx1cyB7XG4gICAgICAgIEBpbmNsdWRlIGxpZW4tZmxlY2hlLWJsZXUoKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMTVweDtcbiAgICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogUFJPRFVJVFNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuLy9jb21tdW5cbkBpbXBvcnQgJ2NvbW1vbic7XG5cbi8vbGlzdGVcbkBpbXBvcnQgJ2xpc3RlJztcblxuLy9saXN0ZSBhY2hhdFxuQGltcG9ydCBcImxpc3RlLWFjaGF0XCI7XG5cbi8vcGFuaWVyXG5AaW1wb3J0IFwicHJvZHVpdHMtcGFuaWVyXCI7XG5cbi8vZmljaGUgZGV2aXMvcGFuaWVyL2FjaGF0XG5AaW1wb3J0IFwiY29tbWFuZGVcIjtcblxuLy9taXNlIGVuIGF2YW50XG5AaW1wb3J0IFwibWlzZS1lbl9hdmFudFwiO1xuXG4vL1JlY29tbWFuZGVzIHBhciB2b3RyZSBjb29wZXJhdGl2ZVxuQGltcG9ydCBcInJlY29tbWFuZGVcIjtcblxuLy9UYWJsZWF1IGRlIHByaXggcXVhbnRpdGF0aWZcbkBpbXBvcnQgXCJwcmljZS10YWJsZVwiO1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBURU1QTEFURSBGSUNIRSBQUk9EVUlUXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uVFBMX0ZJQ0hFX1BST0RVSVQge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIC5maWNoZS1wcm9kdWl0LW1haW4ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIH1cblxuICAgIC8vIHRpdHJlXG4gICAgLnRpdHJlLXByb2R1aXQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIEBleHRlbmQgaDI7XG4gICAgICAgIH1cblxuICAgICAgICAuYm91dG9uLXJldG91ci1wcm9kdWl0IHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAyMHB4IDhweCAwO1xuICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNTNcIjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGl0cmUtYXZlYy1mYXZvcmlzIH4gLnRpdHJlLWF2ZWMtYWN0dWFsaXRlTGllcyB7XG4gICAgICAgIHJpZ2h0OiAyMjBweDtcbiAgICB9XG5cbiAgICAudGl0cmUtYXZlYy1hY3R1YWxpdGVMaWVzIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAzcHg7XG5cbiAgICAgICAgLmJvdXRvbi1ibGFuYyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgICAgICBjb2xvcjogJGdyaXNGb25jZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuN3JlbTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGdyaXNNZW51O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFuYztcblxuICAgICAgICAgICAgICAgIHNwYW46OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW46OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC50aXRyZS1hdmVjLWFjdHVhbGl0ZUxpZXMgfiAuZmljaGUtcHJvZHVpdC1jb250YWluZXIgLnRpdHJlLXByb2R1aXQsXG4gICAgLnRpdHJlLWF2ZWMtZmF2b3JpcyB+IC5maWNoZS1wcm9kdWl0LWNvbnRhaW5lciAudGl0cmUtcHJvZHVpdCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIxNXB4O1xuICAgIH1cblxuICAgIC50aXRyZS1hdmVjLWZhdm9yaXMgfiAudGl0cmUtYXZlYy1hY3R1YWxpdGVMaWVzIH4gLmZpY2hlLXByb2R1aXQtY29udGFpbmVyIC50aXRyZS1wcm9kdWl0IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzgwcHg7XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAudGl0cmUtYXZlYy1mYXZvcmlzIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIzNXB4O1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogOXB4IDIwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGE6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50aXRyZS1hdmVjLWFjdHVhbGl0ZUxpZXMge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGliZWxsZS1oaWRlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50aXRyZS1hdmVjLWZhdm9yaXMgfiAudGl0cmUtYXZlYy1hY3R1YWxpdGVMaWVzIHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgdG9wOiA1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpdHJlLWF2ZWMtYWN0dWFsaXRlTGllcyB+IC5maWNoZS1wcm9kdWl0LWNvbnRhaW5lciAudGl0cmUtcHJvZHVpdCxcbiAgICAgICAgLnRpdHJlLWF2ZWMtZmF2b3JpcyB+IC5maWNoZS1wcm9kdWl0LWNvbnRhaW5lciAudGl0cmUtcHJvZHVpdCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aXRyZS1hdmVjLWZhdm9yaXMgfiAudGl0cmUtYXZlYy1hY3R1YWxpdGVMaWVzIH4gLmZpY2hlLXByb2R1aXQtY29udGFpbmVyIC50aXRyZS1wcm9kdWl0LFxuICAgICAgICAudGl0cmUtYXZlYy1mYXZvcmlzIH4gLnRpdHJlLWF2ZWMtYWN0dWFsaXRlTGllcyB+IC5maWNoZS1wcm9kdWl0LWNvbnRhaW5lciAuc3BlY2lmaWNhdGlvbnMge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogIDIxNXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgLnRpdHJlLWF2ZWMtZmF2b3JpcyB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MnB4O1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50aXRyZS1hdmVjLWFjdHVhbGl0ZUxpZXMge1xuICAgICAgICAgICAgdG9wOiA0cHg7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMnB4O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEgc3Bhbi5pY29tb29uLU9SQ0FCX2ljb19kb2N1bWVudF92YWxpZGU6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSBzcGFuLmxpYmVsbGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgICAudGl0cmUtYXZlYy1mYXZvcmlzIH4gLnRpdHJlLWF2ZWMtYWN0dWFsaXRlTGllcyB7XG4gICAgICAgICAgICByaWdodDogNTBweDtcbiAgICAgICAgICAgIHRvcDogNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpdHJlLWF2ZWMtYWN0dWFsaXRlTGllcyB+IC5maWNoZS1wcm9kdWl0LWNvbnRhaW5lciAudGl0cmUtcHJvZHVpdCxcbiAgICAgICAgLnRpdHJlLWF2ZWMtZmF2b3JpcyB+IC5maWNoZS1wcm9kdWl0LWNvbnRhaW5lciAudGl0cmUtcHJvZHVpdCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGl0cmUtYXZlYy1mYXZvcmlzIH4gLnRpdHJlLWF2ZWMtYWN0dWFsaXRlTGllcyB+IC5maWNoZS1wcm9kdWl0LWNvbnRhaW5lciAudGl0cmUtcHJvZHVpdCxcbiAgICAgICAgLnRpdHJlLWF2ZWMtZmF2b3JpcyB+IC50aXRyZS1hdmVjLWFjdHVhbGl0ZUxpZXMgfiAuZmljaGUtcHJvZHVpdC1jb250YWluZXIgLnNwZWNpZmljYXRpb25zIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBibG9jIDMgY29sb25uZXNcbiAgICAuYmxvYyB7XG4gICAgICAgIHdpZHRoOiAyMy41JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMi42JTtcbiAgICAgICAgJi5pbmZvcyB7XG4gICAgICAgICAgICB3aWR0aDogNDcuOCU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZGVzYy1wcm9kdWl0IHtcbiAgICAgICAgbWluLXdpZHRoOiAyMy41JTtcbiAgICAgICAgbWluLWhlaWdodDogMXB4O1xuICAgIH1cblxuICAgIC8vIHBob3Rvc1xuICAgIC5kaWFwbyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMzcwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzcwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhbmM7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzcwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzMDBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAmID4gZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI2MHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI2MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAudGh1bWIge1xuICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgMyUgMyUgMDtcbiAgICAgICAgICAgIHdpZHRoOiAyMy45ODA4MTUzNDc3MjE4MiU7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAmOm50aC1jaGlsZCg0bikge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDZweCk7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA2cHgpO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciwgJjphY3RpdmUsICYuc2VsZWN0ZWQge1xuICAgICAgICAgICAgICAgICY6OmFmdGVye1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAkdmVydDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnZpZGVvLXByb2R1aXQge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogOTMlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5MyU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmhvdmVyIGEsICY6YWN0aXZlIGEsICYuc2VsZWN0ZWQgYSB7XG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuNzUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICR2ZXJ0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBhbGlnbmVtZW50KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTkwNVwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHZlcnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRkZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogODBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMzLjYxMzQ0NTM3ODE1MTI2JTtcbiAgICAgICAgICAgICAgICAmLnZpZGVvLXByb2R1aXQge1xuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDgwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDcwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNi45MjMwNzY5MjMwNzY5MiU7XG4gICAgICAgICAgICAgICAgJi52aWRlby1wcm9kdWl0IHtcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA3MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5zbGlkZXJTZWNvbmRhcnlJbWFnZXtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucGhvdG9zLmJsb2Mge1xuICAgICAgICAuYngtd3JhcHBlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggYXV0byAyNXB4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuYngtdmlld3BvcnQge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDcycHgpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNThweCkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ieC1jb250cm9scyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuYngtY29udHJvbHMtZGlyZWN0aW9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgIC5ieC1jb250cm9scy1kaXJlY3Rpb24gYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRleHQtaW5kZW50OiAtMTAwMHB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmlzTWVudTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgei1pbmRleDogMjtcblxuICAgICAgICAgICAgJi5ieC1uZXh0IHtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5ieC1uZXh0OjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTUyXCI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuYngtcHJldiB7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5ieC1wcmV2OjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTUxXCI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhbGlnbmVtZW50O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tYWluUGhvdG9Nb2JpbGUtc2xpZGUge1xuICAgICAgICAgICAgLmJ4LXZpZXdwb3J0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTgwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTgwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb250YWluZXItaW1nLWRpYXBvIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29udGFpbmVyLWltZy1kaWFwbyxcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTgwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgaDMge1xuICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgzMHB4KTtcbiAgICB9XG5cbiAgICAuc2VjdGlvbkZ1bGx3aWR0aFdoaXRlIHtcbiAgICAgICAgbWFyZ2luOiAwIC02MHB4O1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDYwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFuYztcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIC0yMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIGRvY3VtZW50c1xuICAgIC5wcm9kdWl0LWRvY3VtZW50cy10ZWNobmlxdWUge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICAgICAgaDMge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMjBweCk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiA0cHggMCAxNXB4IDA7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE0Ni4ycmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gMXJlbTtcbiAgICAgICAgfVxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgZ2FwOiAyJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTQ2LjJyZW07XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyaXNCb3JkO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsYW5jO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyLjRyZW07XG4gICAgICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaWNvbW9vbiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMjBweCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHN1YjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkZGVza3RvcCkge1xuICAgICAgICAgICAgaDMsXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDkuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NDBweCkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGdhcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIGluZm9UeXBlc1xuICAgIC5pbmZvdHlwZXMtd3JhcCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgfVxuICAgIC5pbmZvc1R5cGVzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAuN3JlbTtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAuaW5mb3R5cGUtcGljdG8ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgICAgLmluZm90eXBlLXBpY3RvLWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1tYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1tYXNrLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjRweCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBY3R1YWxpdGVzIGxpZWVcbiAgICAucHJvZHVpdEFjdHVMaWVlIGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDE1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICR2ZXJ0O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAuaWNvbW9vbi1hY3R1LWxpZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkdmVydDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWl0QWN0dUxpZWVfX0NvbnRlbnQgaDQge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMThweCk7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yQmFzZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yQmFzZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWl0QWN0dUxpZWVfX0NvbnRlbnQgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDEzcHgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gc3BlY2lmaWF0aW9uXG4gICAgLnNwZWNpZmljYXRpb25zIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAyMHB4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGdhcDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuc3BlYyB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE0cHgpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgJi5mYWJyaWNhbnQge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTVweCk7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTRweCk7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIGRlc2NyaXB0aW9uXG4gICAgLmRlc2NyaXB0aW9ue1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuOHJlbTtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vIHRhYmxlYXUgZHUgZmljaGUgcHJvZHVpdFxuICAgIC50YWJsZWF1LXByb2R1aXQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgJi5xdWFudGl0YXRpZiB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMHJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI2cmVtO1xuICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQwcHgpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhlYWQsXG4gICAgICAgICAgICB0aGVhZCAucHJpeEhUIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3Jpc01lbnU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTNweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGVhZCB0ZCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNweCAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wcml4SFQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0Ym9keSB7XG4gICAgICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdHI6bnRoLWNoaWxkKGV2ZW4pIHRkIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyaXNVSTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0ZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5xdHktcHJvZCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi50YWJsZWltYWdlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbW9iaWxlICsgMSkge1xuICAgICAgICAgICAgICAgICYuYXR0cmlidXQge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTElO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDdweDtcbiAgICAgICAgICAgICAgICAmLnF0eS1wcm9kIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMyJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdHIuZGVjbGluYWlzb24ge1xuICAgICAgICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYW5jO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2JjYzVjYTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuZGltZW5zaW9uc1ZhcmlhYmxlcyB0ZD5pbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDJweCAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnRhYmxlaW1hZ2UgYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYXJ0aWNsZS10aHVtYiB7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogODBweDtcbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRoZWFkIHRkLCB0aGVhZCB0aCB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyaXNCb3JkO1xuICAgICAgICAgICAgJi50YWJsZWltYWdlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucXRlLWV0YXQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDE4cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogN3B4O1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFFVQU5USVRFIEVOIFNUT0NLXG4gICAgLnN0b2NrLXByb2R1aXQge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgJi5kaXNwbGF5LWludGVyd2ViIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgJi5zdG9jay1lbXB0eSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgJjpub3QoLmRlYnV0LXZpZSkge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB9XG4gICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4IDEwcHggMDtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDMzJTtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5xdGUtZXRhdCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTNweCk7XG4gICAgICAgICAgICAucXR5LXN0b2NrIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHJvdWdlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucXR5LXN0b2NrLCAuc3RvY2stdGVybWUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxpYmVsbGUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE0eCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnN0b2NrLXRlcm1lIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICB9XG4gICAgICAgIC5saWJlbGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3JCYXNlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vQXJ0aWNsZSBlbiBzdWl2aSBlbiBzdG9ja1xuICAgIC5kYXRlLWRlYnV0LXZpZSB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE0cHgpO1xuICAgICAgICBjb2xvcjogJHJvdWdlO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cblxuICAgIC5zdG9jay10ZXJtZSB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDEycHgpO1xuICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICB9XG5cbiAgICAvKiogYmxvYyBhY3Rpb24gZHJvaXRlICoqL1xuICAgIC8vIGJsb2MgYWN0aW9uXG4gICAgLmJsb2MtYWN0aW9uIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIC5wcml4IHtcbiAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICB9XG4gICAgICAgIC5xdWFudGl0ZXtcbiAgICAgICAgICAgIGEubWludXMsXG4gICAgICAgICAgICBhLnBsdXMge1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7IEBpbmNsdWRlIGZvbnRTaXplKDIwcHgpOyB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZm9ybSB7IHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbiAgICAgICAgZm9ybSNwcm9kdWl0QWpvdXRlclBhbmllciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgZ2FwOiAxOHB4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXG4gICAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMzAlO1xuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiA0NSU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5vcHRpb25zIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBmbGV4OjEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAucXVhbnRpdGUgLnF0ZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAucXVhbnRpdGUgbGFiZWwge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnRuQ2FkZGllLUxpc3Qge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICBnYXA6IDIwcHg7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiA2NSU7XG5cbiAgICAgICAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNzBweCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmxpc3RlLWFjaGF0LXBsdWdpbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBidXR0b24gc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyLjRyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA2ZW07XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGJ1dHRvbi5ib3V0b24tYWpvdXQtcHJvZHVpdC1saXN0ZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJ1dHRvbi5ib3V0b24tYWpvdXQtcHJvZHVpdC1saXN0ZTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5NjNcIjtcbiAgICAgICAgICAgICAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogM3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubWVzc2FnZS1wcm9tbyB7XG4gICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgIG1hcmdpbjogLTJyZW0gLTJyZW0gMXJlbTtcblxuICAgICAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHggMCA1cHggMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmlubmVyLCAuaW5uZXIgc3BhbiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTRweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gdGl0cmUgcHJpeFxuICAgIC50aXRyZS1wcml4IHtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMThweCk7XG4gICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cblxuICAgIC5wcm9kdWN0X19QcmljZXMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAucHJpeC1saWJlbGxlIHtcbiAgICAgICAgICAgIGZsZXg6IDEwMCU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTRweCk7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVpdFByaXhfX2FWZW5pciB7XG4gICAgICAgICAgICBmbGV4OiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAgICAgLnByb2R1aXRQcml4IC5pbmZve1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE0cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByb2R1aXRQcml4IC5sYWJlbC5sZWZ0LFxuICAgICAgICAgICAgLnByb2R1aXRQcml4IC5pbmZvIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGdyaXNGb25jZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAucHJvZHVpdFByaXgge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG5cbiAgICAgICAgJi5ub01hcmdpbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIC5sZWZ0LCAucmlnaHQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGVmdCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgfVxuICAgICAgICAuaW5mbyB7IEBpbmNsdWRlIGZvbnRTaXplKDE2cHgpOyB9XG4gICAgICAgIC5vcHRpb24ge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvckJhc2U7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgfVxuICAgICAgICAub3B0aW9uLWluZm8geyB9XG5cbiAgICAgICAgLy9wcml4IGNvbmRpdGlvbm5lbWVudFxuICAgICAgICAucHJpeC1jb25kaXRpb25uZW1lbnQtbXNnIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDEycHgpO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBjb2xvcjogJHJvdWdlO1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjA1YVwiO1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLmZhO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIGJsb2MgcXVhbnRpdGUgZXQgZGltZW5zaW9ucyB2YXJpYWJsZXNcbiAgICAuYWxpZ25lci1taWRkbGUge1xuICAgICAgICB3aWR0aDogODIlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgLmxpc3RlLWFjaGF0LXBsdWdpbiB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgICAgICAgICAgLmFqb3V0ZXItYS1sYS1saXN0ZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG8gMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuYmxvYy1hY3Rpb24gZm9ybSNwcm9kdWl0QWpvdXRlclBhbmllciAuZGltZW5zaW9ucy12YXJpYWJsZXMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICBnYXA6IDIwcHg7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICAgICAgICB9XG4gICAgICAgICYuZmxleDYwIHtcbiAgICAgICAgICAgIGZsZXg6IDYwJTtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAxMDAlXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmZsZXgxMDAge1xuICAgICAgICAgICAgZmxleDogMTAwJTtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTRweCk7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3B4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICB9XG4gICAgICAgIC5kaW1lbnNpb24ge1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBtaW4td2lkdGg6IGNhbGMoMzMlIC0gMjBweCk7XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiA0NSU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGdyaXNCb3JkdXJlO1xuICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDJweCAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmluZGljYXRpb24tbWF4LW1pbiB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDEwLjc1cHgpO1xuICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cbiAgICAuYWxlcnQuZm9ybS1lcnJvciB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDExcHgpO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cbiAgICAvLyBibG9jIG9wdGlvblxuICAgIC5vcHRpb25zIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgaDUge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTVweCk7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICAgICAgfVxuICAgICAgICBbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbCxcbiAgICAgICAgW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWwge1xuICAgICAgICAgICAgY29sb3I6ICRncmlzRm9uY2U7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNHB4KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gYmxvYyBib3V0b24gYWN0aW9uc1xuICAgIC5ib3V0b24tYWN0aW9ucyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyaXNNZW51O1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiAyJTtcblxuICAgICAgICBhLCBidXR0b24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTRweCk7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFuYztcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmlzQm9yZDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggNXB4O1xuICAgICAgICAgICAgbWluLXdpZHRoOiAzMiU7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA4LjhyZW07XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMiU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoLW4rMykge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3Bhbjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRkZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAyMyU7XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNG4pIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMiU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDRuKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogNDglO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzbikge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoLW4rMikge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNDI5ZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBib3V0b25zXG4gICAgLmNhZGRpZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgLmJ0bi1zdWJtaXQge1xuICAgICAgICBAZXh0ZW5kIC5ib3V0b24tdmVydDtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTY0XCI7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgyMHB4KTtcbiAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYucXVhbnRpdGVBbHJlYWR5SW5QYW5pZXIge1xuICAgICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkb3JhbmdlQ2FubmVsbGU7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6IGRhcmtlbigkb3JhbmdlQ2FubmVsbGUsIDUlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTk0YlwiO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0MHB4KSB7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuYnRuLWFqb3V0ZXIge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gdGFibGVhdSBkZXMgZGVjbGluYWlzb25zXG4gICAgLmRlY2xpbmFpc29ucyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgICAgICAgY29sb3I6ICRncmlzRm9uY2U7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRncmlzRm9uY2U7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgyMHB4KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cblxuICAgICAgICB0aGVhZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxM3B4KTtcbiAgICAgICAgfVxuICAgICAgICAuY2FkZGllIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgLmJ0bi1zdWJtaXQge1xuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDUuNXJlbTtcbiAgICAgICAgICAgIGhlaWdodDogNS41cmVtO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZzogOXB4IDA7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnQoKTtcbiAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYucXVhbnRpdGVBbHJlYWR5SW5QYW5pZXIge1xuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbW9iaWxlICsgMSkge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7IGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gcXVhbnRpdGVcbiAgICAgICAgLnF1YW50aXRlIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDY1cHgpO1xuICAgICAgICAgICAgLnF0ZS1sYWJlbCB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgICAgIC5xdGUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmYgbm9uZSByZXBlYXQgc2Nyb2xsIDAgMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDU1cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDU1cHg7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMjBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYW1vdW50IHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjlyZW07XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogNS4zcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5kaW1lbnNpb24ge1xuICAgICAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDU1cHg7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIH1cblxuICAgICAgICAvL0RFQ0xJTkFJU09OUyBTT1VTIEZPUk1FIERFIFNMSURFUiBTVVIgTU9CSUxFXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgIHRhYmxlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9ja1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhlYWQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYngtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubW9iaWxlLWhpZGRlbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRib2R5IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGJvZHkgdHIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhbmM7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGJvZHkgdHIuZGVjbGluYWlzb246aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFuYztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGJvZHkgdHIgdGQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDEzcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW5wdXQuZGltZW5zaW9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbnB1dC5kaW1lbnNpb24sIC5xdGUgLmFtb3VudHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjhyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0Ym9keSB0ciB0ZC5xdHktcHJvZHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTg1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5NSU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGZvcm0ge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmRpbWVuc2lvbiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnF1YW50aXRlIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnF1YW50aXRlIC5hbW91bnQge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTAwcHgpO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRncmlzQm9yZDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGdyaXNCb3JkO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5xdWFudGl0ZSBhLm1pbnVzLCAucXVhbnRpdGUgYS5wbHVzIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYnV0dG9uLnF1YW50aXRlQWxyZWFkeUluUGFuaWVyOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGJ1dHRvbi5xdWFudGl0ZUFscmVhZHlJblBhbmllciBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucXRlIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmNhZGRpZXtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMTVweCBhdXRvIDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGJvZHkgdHIgdGQ6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogYXR0cihkYXRhLWxhYmVsKSBcIiA6XCI7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNnB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0Ym9keSB0ciAudGFibGVpbWFnZSB7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0Ym9keSB0ciAudGFibGVpbWFnZTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGJvZHkgdHIgLnRhYmxlaW1hZ2UgLmFydGljbGUtdGh1bWIge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDgwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnRuLXN1Ym1pdCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQycHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLy8gdGFibGVhdSBjYXJhY3RlcmlzdGlxdWVzXG4gICAgLmNhcmFjdGVyaXN0aXF1ZXMge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgyMHB4KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDRweCAwIDE1cHggMDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTQ2LjJyZW07XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIHRhYmxlIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTQ2LjJyZW07XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE4cHgpO1xuICAgICAgICB9XG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIH1cbiAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuNHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRyIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYzFjMWMxO1xuXG4gICAgICAgICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZTdlN2U3O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGRlc2t0b3ApIHtcbiAgICAgICAgICAgIGgzLFxuICAgICAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTA5LjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgaDMsXG4gICAgICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA3OC40cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDUlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5xdHktcHJvZCBmb3JtIHsgcGFkZGluZy1ib3R0b206IDA7IH1cblxuICAgIC5jYWxjdWxhdG9yIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjlyZW07XG4gICAgICAgIH1cblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudHh0LW11bHRpcGxlLXZlbnRlIHtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDAgMDtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTRweCk7XG4gICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgIH1cbiAgICAubWVzc2FnZS1wcm9tbyB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMjVweCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmVjb3BhcnQge1xuICAgICAgICBsaW5lLWhlaWdodDogMS43cmVtO1xuICAgIH1cbiAgICAucHJpeFNlY29uZGVVbml0ZUZvckNhbGN1bGF0ZXVyIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuN3JlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcgLSAnO1xuICAgICAgICB9XG4gICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yQmFzZTtcbiAgICAgICAgfVxuXG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBURU1QTEFURSBDQVRFR09SSUUgTElTVEUgUFJPRFVJVCBSRURBQ1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9DQVRFR09SSUVfTElTVEVfUFJPRFVJVFNfUkVEQUMge1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3Jpc0NsYWlyO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIC5saXN0ZS1hY2hhdC1wbHVnaW4ge1xuICAgICAgICAuYWpvdXRlci1hLWxhLWxpc3RlIHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnRpdHJlLWF2ZWMtZmF2b3JpcyB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBSRVNVTFRBVFMgREUgUkVDSEVSQ0hFXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4ucmVjaGVyY2hlLXJlc3VsdGF0cy1vbmdsZXRzLnVpLXRhYnMtbmF2IHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyaXNCb3JkO1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIG1hcmdpbjogMCAwIDIuNXJlbTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyaXNCb3JkO1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogaW5oZXJpdDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICYgKyBsaSB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4IDAgMCAwO1xuICAgICAgICB9XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDVweCAwIDA7XG4gICAgICAgIH1cbiAgICAgICAgLnVpLXRhYnMtYW5jaG9yIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDZlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgfVxuICAgICAgICAvKiZbYXJpYS1jb250cm9scz1cInNlYXJjaC1wcm9kdWl0cy1jb250YWluZXJcIl0gYTo6YmVmb3JlIHtcbiAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTkxYlwiO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgICAgICZbYXJpYS1jb250cm9scz1cInNlYXJjaC1kb2N1bWVudHMtY29udGFpbmVyXCJdIGE6OmJlZm9yZSB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MTdcIjtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgfVxuICAgICAgICAmW2FyaWEtY29udHJvbHM9XCJzZWFyY2gtYWN0dWFsaXRlcy1jb250YWluZXJcIl0gYTo6YmVmb3JlIHtcbiAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTk0YVwiO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICB9XG4gICAgICAgICZbYXJpYS1jb250cm9scz1cInNlYXJjaC1wYWdlcy1jb250YWluZXJcIl0gYTo6YmVmb3JlIHtcbiAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTkzMFwiO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgICAgICY6bm90KC51aS1zdGF0ZS1hY3RpdmUpIHtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIGJvdHRvbTogLTExcHg7XG4gICAgICAgIH0qL1xuICAgICAgICAmLnVpLXN0YXRlLWFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJsZXVPcmNhYjtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4ucmVjaGVyY2hlLXJlc3VsdGF0cyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgLmNvbnRlbnUtb25nbGV0cyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgLnJlY2hlcmNoZS10cmktb25nbGV0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuN3JlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICAmLm5iLXByb2R1aXQge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudHJpLXdyYXBwZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgfVxuICAgICAgICAuZW4tc3RvY2ssXG4gICAgICAgIC5zdWl2aS1lbi1zdG9jayB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmNhdGVnb3JpZUxpc3RlUHJvZHVpdHNfY2hvaXhUcmlQcm9kdWl0cyB7XG4gICAgICAgICAgICAvL3BhZGRpbmctcmlnaHQ6IDMycHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnJpZ2h0IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDYwcHggLSAzMHB4IC0gMzQ4cHgpO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuXG4gICAgLmxpc3RlLXByb2R1aXRzLXdyYXBwZXIge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5tZW51LWNvbCAubmF2MCBhIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBmb250LXNpemU6IDAuODc1ZW07XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogOHB4IDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2Q0ZDRkNDtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRkZXNrdG9wKSB7XG4gICAgICAgIC5yZWNoZXJjaGUtdHJpLW9uZ2xldCB7XG4gICAgICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy9hdmVjIGJvdXRvbiBmYXZvcmlzXG4gICAgICAgIC53aXRoLWJ0bi1mYXZvcmlzICYge1xuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaDEge1xuICAgICAgICAgICAgbWluLWhlaWdodDogNC44cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5zZWFyY2gtd2l0aC1uby1yZXN1bHRzIHtcbiAgICAgICAgbWluLWhlaWdodDogMzByZW07XG4gICAgfVxufVxuXG4uVFBMX1JFU1VMVEFUX1JFQ0hFUkNIRV9GQUNFVFRFX1BST0RVSVR7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgLmNvbnRlbnUtb25nbGV0cyB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICAuVFBMX1JFQ0hFUkNIRV9GQUNFVFRFX1BST0RVSVQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNnJlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzQuOHJlbTtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRkZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI1LjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDYwcHggLSAzMHB4IC0gMzQ4cHgpO1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgJi53aXRob3V0Q29sIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkZGVza3RvcCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA2MHB4IC0gMzBweCAtIDI1NXB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vbGlzdGVcbiAgICAubGlzdGUtcHJvZHVpdHMge1xuICAgICAgICAmOm5vdCgudGh1bWJuYWlscyl7XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHRhYmxldFBsdXNPbmUpIHtcbiAgICAgICAgICAgICAgICAubWVzc2FnZS1wcm9tbyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5tZXNzYWdlLXByb21vIHtcbiAgICAgICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDJyZW0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICsgLm1lc3NhZ2UtcHJvbW8ge1xuICAgICAgICAgICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMnJlbSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvL3RodW1ibmFpbHNcbiAgICAubGlzdGUtcHJvZHVpdHMudGh1bWJuYWlscyB7XG4gICAgICAgIC5tZXNzYWdlLXByb21vIHtcbiAgICAgICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0YWJsZXRQbHVzT25lKSB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMnJlbSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uVFBMX1JFU1VMVEFUX1JFQ0hFUkNIRV9GQUNFVFRFX0RPQ1VNRU5UIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAuY29udGVudS1vbmdsZXRzIHtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgIC5UUExfUkVDSEVSQ0hFX0ZBQ0VUVEVfRE9DVU1FTlQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNnJlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzQuOHJlbTtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRkZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI1LjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA2MHB4IC0gMzBweCAtIDM0OHB4KTtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICYud2l0aG91dENvbCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNjBweCAtIDMwcHggLSAyNTVweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmxpc3RlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICBnYXA6IDNyZW07XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGFibGV0UGx1c09uZSkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjVyZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uVFBMX1JFU1VMVEFUX1JFQ0hFUkNIRV9BQ1RVQUxJVEUge1xuICAgIC5saXN0ZSB7XG4gICAgICAgIC5yZXN1bWUge1xuICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XG4gICAgICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1vYmlsZSArIDEpIHtcbiAgICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgICAgICAucGhvdG9zIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIycmVtO1xuICAgICAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDE2IC8gOTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDlweCAxMHB4IDlweCAzMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAucmVzdW1lIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA1cHggMCAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyaXNGb25jZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLWlubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5UUExfUkVTVUxUQVRfUkVDSEVSQ0hFX0ZBQ0VUVEVfVFlQRUZPUk0ge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIC5jb250ZW51LW9uZ2xldHMge1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgLlRQTF9SRUNIRVJDSEVfRkFDRVRURV9UWVBFRk9STSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC02cmVtO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzNC44cmVtO1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjUuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDYwcHggLSAzMHB4IC0gMzQ4cHgpO1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgJi53aXRob3V0Q29sIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkZGVza3RvcCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA2MHB4IC0gMzBweCAtIDI1NXB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLlRQTF9SRVNVTFRBVF9SRUNIRVJDSEVfUEFHRSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRFTVBMQVRFIE9SQ0FCIC0gTElTVEUgREUgUFJPRFVJVFMgQ0hPSVNJU1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9PUkNBQl9MSVNURV9QUk9EVUlUU19DSE9JU0lTe1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBOQVZJR0FUSU9OIERFUyBPUFRJT05TIERFIExBIEZJQ0hFIFBST0RVSVRcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5maWNoZXByb2R1aXRfX2xpZW5zTmF2IHtcbiAgICB0cmFuc2l0aW9uOiB0b3AgLjVzO1xuICAgIHVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAzMHB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyaXNCb3JkO1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICB9XG5cbiAgICBsaS5qcy1saWVuTmF2QWN0aXZlIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRibGV1T3JjYWI7XG4gICAgfVxuXG4gICAgbGkgYSB7XG4gICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuNHJlbTtcbiAgICB9XG4gICAgJi5zdGlja3kge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgei1pbmRleDogMTAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgfVxuICAgICYuc3RpY2t5LmludG9IZWFkZXJ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIE1FRElBUVVFUklFU1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICogVEVNUExBVEUgTElTVEUgUFJPRFVJVFxuICAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiAgICAuVFBMX0NBVEVHT1JJRV9MSVNURV9QUk9EVUlUUyB7XG4gICAgICAgIC8vYXZlYyBib3V0b24gZmF2b3Jpc1xuICAgICAgICAud2l0aC1idG4tZmF2b3JpcyAgJiB7XG4gICAgICAgICAgID4gaDIge1xuICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgKiBURU1QTEFURSBGSUNIRSBQUk9EVUlUXG4gICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5UUExfRklDSEVfUFJPRFVJVCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vYmxvYyAzIGNvbG9ubmVzXG4gICAgICAgIC5ibG9jIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMHJlbTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICYuaW5mb3Mge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzJyZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5kZXNjLXByb2R1aXQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAucHJpeC1xdWFudGl0YXRpZixcbiAgICAgICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gYmxvYyBhY3Rpb24gLXF0eVxuICAgICAgICAuYWxpZ25lci1taWRkbGUuY2FsY3VsZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vYm91dG9uIGNvbXBhcmF0ZXVyXG4gICAgICAgIC5idG4tY29tcGFyYXRldXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gYm91dG9uIGFjdGlvbnNcbiAgICAgICAgLmJvdXRvbi1hY3Rpb25zIHtcbiAgICAgICAgICAgIGEsIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogOTdweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgKiBSRVNVTFRBVFMgREUgUkVDSEVSQ0hFXG4gICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5yZWNoZXJjaGUtcmVzdWx0YXRzIHtcbiAgICAgICAgLmZhY2V0dGUtbW9iaWxlIHtcbiAgICAgICAgICAgIGxlZnQ6IDM1MHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA3MHB4O1xuICAgICAgICB9XG4gICAgICAgIHNlbGVjdCB7IHBhZGRpbmctcmlnaHQ6IDMwcHg7IH1cblxuICAgICAgICAubWVudS1jb2wgLm5hdjAgPiBhIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLlRQTF9SRVNVTFRBVF9SRUNIRVJDSEVfRkFDRVRURV9QUk9EVUlULFxuICAgIC5UUExfUkVTVUxUQVRfUkVDSEVSQ0hFX0ZBQ0VUVEVfRE9DVU1FTlQsXG4gICAgLlRQTF9SRVNVTFRBVF9SRUNIRVJDSEVfRkFDRVRURV9UWVBFRk9STSxcbiAgICAuVFBMX1JFU1VMVEFUX1JFQ0hFUkNIRV9BQ1RVQUxJVEUge1xuICAgICAgICAubGlzdGUtcHJvZHVpdHMtd3JhcHBlciB7XG4gICAgICAgICAgICAubGlzdGUtcHJvZHVpdHMsIC5pbm5lciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5UUExfUkVDSEVSQ0hFX0ZBQ0VUVEVfUFJPRFVJVCxcbiAgICAgICAgICAgIC5UUExfUkVDSEVSQ0hFX0ZBQ0VUVEVfRE9DVU1FTlQsXG4gICAgICAgICAgICAuVFBMX1JFQ0hFUkNIRV9GQUNFVFRFX1RZUEVGT1JNLFxuICAgICAgICAgICAgLlRQTF9SRUNIRVJDSEVfQUNUVUFMSVRFIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kYXRlLWZpZWxkIC5maWVsZC1yZXF1aXJlZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAxMHB4IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICAuZGF0ZXBpY2tlckZpZWxkIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZ3Jpc0NsYWlyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29udGVudS1vbmdsZXRzIHtcbiAgICAgICAgICAgIC5mYWNldHRlLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgICYgPiBoMyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuZmFjZXR0ZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgICAgIC5tZW51LWNhdGVnb3JpZS1saXN0ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgLmgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgLm5hdjAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmhhc0NoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAub3BlbkNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAubmF2MyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLm9wZW5DaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgI2Vjb21fY2F0X3JlY2hlcmNoZV9wYXJfZmFjZXR0ZSAucmVjaGVyY2hlRmFjZXR0ZVByb2R1aXQtb3B0aW9uR3JvdXAgbGFiZWw6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5tZW51LWNvbCAuZmFjZXR0ZS13cmFwcGVyID4gaDMge1xuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYxMDdcIjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjg4MmVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5UUExfUkVTVUxUQVRfUkVDSEVSQ0hFX0ZBQ0VUVEVfRE9DVU1FTlR7XG4gICAgICAgIC5yZWNoZXJjaGVGYWNldHRlUHJvZHVpdC1vcHRpb25Hcm91cCB7XG4gICAgICAgICAgICAmID4gZGl2ID4gZGl2Om5vdCgucmVjaGVyY2hlRmFjZXR0ZVByb2R1aXQtb3B0aW9uKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLlRQTF9SRVNVTFRBVF9SRUNIRVJDSEVfRkFDRVRURV9UWVBFRk9STXtcbiAgICAgICAgLnJlY2hlcmNoZUZhY2V0dGVQcm9kdWl0LW9wdGlvbkdyb3VwIHtcbiAgICAgICAgICAgICYgPiBkaXYgPiBkaXY6bm90KC5yZWNoZXJjaGVGYWNldHRlUHJvZHVpdC1vcHRpb24pIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcblxuICAgIC8vIGxpc3RlIHByb2R1aXRzXG4gICAgQGluY2x1ZGUgbGlzdGUtcHJvZHVpdHMtbW9iaWxlKCk7XG4gICAgLmxpc3RlLXByb2R1aXRzIHtcbiAgICAgICAgLmRldGFpbHMtYmFzIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIC5xdHktcmlnaHQgLmJ0bi12b2lyLXByb2R1aXQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICAubWVzc2FnZS1wcm9tbyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgLnF0eS1yaWdodC53aXRoQ2FsYyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgLnF0ZS1sYWJlbCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnF0ZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jYWxjIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDglO1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjdweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ib3gtcGFuaWVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY2FwdGlvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICAgICAgLnByaXhTZWNvbmRlVW5pdGVGb3JDYWxjdWxhdGV1ciB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgIC5kZXRhaWxzLXByb2R1aXRzIHtcbiAgICAgICAgICAgIC5yZWYsXG4gICAgICAgICAgICAucHJpeC1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0OCU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc3RvY2sge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAqIFRFTVBMQVRFIEZJQ0hFIFBST0RVSVRcbiAgICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLlRQTF9GSUNIRV9QUk9EVUlUIHtcbiAgICAgICAgLy9ibG9jIDMgY29sb25uZXNcbiAgICAgICAgLmJsb2Mge1xuICAgICAgICAgICAgd2lkdGg6IDI2cmVtO1xuICAgICAgICAgICAgJi5pbmZvcyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDI4cmVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZGVzYy1wcm9kdWl0IHtcbiAgICAgICAgICAgIC5wcml4LXF1YW50aXRhdGlmLFxuICAgICAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjZyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmZpY2hlLXByb2R1aXQtY29udGFpbmVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIC5ibG9jLWFjdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG5cbiAgICAgICAgICAgIC5tZXNzYWdlLXByb21vIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IC0ycmVtIC0xcmVtIDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYWxpZ25lci1taWRkbGUgeyB3aWR0aDogMTAwJTsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbiAgICAgICAgLy8gdGFibGVhdSBkZWNsaW5haXNvblxuICAgICAgICAuZGVjbGluYWlzb25zIC5xdWFudGl0ZSB7XG4gICAgICAgICAgICAucXRlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmFtb3VudCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gdGFibGVhdSBwcm9kdWl0XG4gICAgICAgIC50YWJsZWF1LXByb2R1aXQge1xuICAgICAgICAgICAgdGQucXR5LXByb2QsXG4gICAgICAgICAgICB0aC5xdHktcHJvZCxcbiAgICAgICAgICAgIHRkLnF0eS1wcm9kIGZvcm0geyB3aWR0aDogOTBweDsgfVxuICAgICAgICAgICAgJi5xdWFudGl0YXRpZiB7XG4gICAgICAgICAgICAgICAgLnByaXhIVCB7XG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIgeyBjb250ZW50OiAnJzt9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1lc3NhZ2UtcHJvbW8ge1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMjBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnN0b2NrLXByb2R1aXQgPiBkaXYge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgybikge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAqIFJFU1VMVEFUUyBERSBSRUNIRVJDSEVcbiAgICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLnJlY2hlcmNoZS1yZXN1bHRhdHMtb25nbGV0cy51aS10YWJzLW5hdntcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICAgICAgcGFkZGluZzogMCAwIDEwcHg7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYW5jO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmlzQm9yZDtcbiAgICAgICAgICAgIC51aS10YWJzLWFuY2hvciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnVpLXN0YXRlLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5UUExfUkVTVUxUQVRfUkVDSEVSQ0hFX0ZBQ0VUVEVfUFJPRFVJVCxcbiAgICAuVFBMX1JFU1VMVEFUX1JFQ0hFUkNIRV9GQUNFVFRFX0RPQ1VNRU5ULFxuICAgIC5UUExfUkVTVUxUQVRfUkVDSEVSQ0hFX0ZBQ0VUVEVfVFlQRUZPUk17XG4gICAgICAgIC5saXN0ZS1wcm9kdWl0cy13cmFwcGVye1xuICAgICAgICAgICAgLlRQTF9SRUNIRVJDSEVfRkFDRVRURV9QUk9EVUlULFxuICAgICAgICAgICAgLlRQTF9SRUNIRVJDSEVfRkFDRVRURV9ET0NVTUVOVCxcbiAgICAgICAgICAgIC5UUExfUkVDSEVSQ0hFX0ZBQ0VUVEVfVFlQRUZPUk0sXG4gICAgICAgICAgICAubGlzdGUtcHJvZHVpdHMge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnJlY2hlcmNoZS1yZXN1bHRhdHMge1xuICAgICAgICAucmVjaGVyY2hlLXRyaS1vbmdsZXQge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGdhcDogMXJlbTtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuMnJlbTtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnRyaS13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIGdhcDogMTJweCAwO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBmb3JtLFxuICAgICAgICAgICAgLnNlbGVjdC13cmFwIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jb250cm9scyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIHNwYW46bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NDBweCkge1xuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAqIFRFTVBMQVRFIEZJQ0hFIFBST0RVSVRcbiAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiAgICAuVFBMX0ZJQ0hFX1BST0RVSVQge1xuICAgICAgICAuZmF2b3Jpcy1idG4tY29udGFpbmVyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgICAgICB9XG4gICAgICAgIC50aXRyZS1hdmVjLWZhdm9yaXMgfiAudGl0cmUtYXZlYy1hY3R1YWxpdGVMaWVzIHtcbiAgICAgICAgICAgIHRvcDogLTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vYmxvYyAzIGNvbG9ubmVzXG4gICAgICAgIC5ibG9jIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAmLmluZm9zIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5kZXNjLXByb2R1aXQge1xuICAgICAgICAgICAgLnByaXgtcXVhbnRpdGF0aWYsXG4gICAgICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRpYXBvIHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zZWNvbmRhcnlQaG90by1zbGlkZSxcbiAgICAgICAgLnNsaWRlclNlY29uZGFyeUltYWdlLFxuICAgICAgICAucGhvdG9zIC50aHVtYiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZXRpcXVldHRlUHJvZHVpdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNHB4O1xuICAgIG1heC13aWR0aDogODBweDtcbiAgICBtYXgtaGVpZ2h0OiAzNHB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgIG1heC13aWR0aDogNjBweDtcbiAgICB9XG5cbiAgICAmLS1iaWcsXG4gICAgLlRQTF9GSUNIRV9QUk9EVUlUIC5waG90b3MuYmxvYyAubWFpblBob3RvTW9iaWxlLXNsaWRlICYtLWJpZyxcbiAgICAuVFBMX0ZJQ0hFX1BST0RVSVQgLmRpYXBvICYtLWJpZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDgwcHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogNjBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGltcG9ydCBcImxpc3RlLWV0aXF1ZXR0ZXNcIjtcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIENPTU1VTiBQUk9EVUlUXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4ubGlzdGUtcHJvZHVpdHMsXG4uVFBMX0ZJQ0hFX1BST0RVSVQsXG4uc2VhcmNoLXN1Z2dlc3Rlci1yZXN1bHRzLXByb2R1aXRzIHtcbiAgICAubGFiZWwtcHJvbW8tZGltLXZhciB7XG4gICAgICAgIGNvbG9yOiAkcm91Z2U7XG4gICAgfVxuICAgIC5wcml4LWJhcnJlLWRpbS12YXIge1xuICAgICAgICBjb2xvcjogJGNvbG9yQmFzZTtcbiAgICB9XG4gICAgLmxhYmVsIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTNweCk7XG4gICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgIH1cbiAgICAuZWNvcGFydCB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDEycHgpO1xuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgLnByaXhIVCB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDIxcHgpO1xuICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG4gICAgLnByb2R1aXRQcml4IC5pbmZvIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgJi5sYWJlbC1wcm9tbyB7XG4gICAgICAgICAgICBjb2xvcjogJHJvdWdlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5idG4tYWpvdXRlciB7XG4gICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDEzcHgpO1xuICAgICAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTA3XCI7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciwgJjphY3RpdmUgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICB9XG4gICAgLnByb21vIHtcbiAgICAgICAgY29sb3I6ICRyb3VnZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDdweDtcbiAgICB9XG4gICAgLmRpbWVuc2lvbiwgLmRlY2xpbmFpc29uIHtcbiAgICAgICAgZGl2LmFsZXJ0LCBkaXYuYWxlcnQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXS5hbGVydCB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkcm91Z2U7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnByaXgtbGliZWxsZSB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDEycHgpO1xuICAgICAgICBjb2xvcjogJHJvdWdlO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbiAgICAucHJpY2UtYmxvYyB7XG4gICAgICAgICsgLnByaWNlLWJsb2Mge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5saXN0ZS1wcm9kdWl0cyxcbi5UUExfRklDSEVfUFJPRFVJVCB7XG4gICAgLmludGVyd2ViLXN0b2NrcyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlMmU4ZWE7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCA1cHggNXB4O1xuICAgICAgICAuYnRuLXZvaXItc3RvY2tzIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE4cHgpO1xuICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE0cHggNjBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vLi4vY3NzL2ltYWdlcy9iZ19pbnRlcndlYi5wbmcnKSBuby1yZXBlYXQgbGVmdCBjZW50ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI2cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyN3B4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnRZKCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTRweCk7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNzhcIjtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYWN0aXZlOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ1xcZjA3Nyc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubG9hZGVyLWludGVyd2ViIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnN0b2NrcyB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwICAyMHB4IDIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweCAyMHB4O1xuICAgICAgICAgICAgICAgICYgPiBsaSB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDMlIDMlIDA7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgICAgICYuZmlyc3Q6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4rMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAzJSAzJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2MwYmZiZjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOm50aC1sYXN0LWNoaWxkKC1uKzIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnF0eS1zdG9jayB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRyb3VnZTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmxpYmVsbGUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE2cHgpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3JCYXNlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZGVsYWkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDEycHgpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8vbGlzdGUgKyBmYWNldHRlXG4uVFBMX0NBVEVHT1JJRV9MSVNURV9QUk9EVUlUUyxcbi5UUExfUkVTVUxUQVRfUkVDSEVSQ0hFX0ZBQ0VUVEVfUFJPRFVJVCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgaDIge1xuICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgZm9udC1zaXplOiAzLjJyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzLjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtb2JpbGUtc21hbGwpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuNHJlbTtcbiAgICAgICAgfVxuICAgICAgICAud2l0aC1idG4tZmF2b3JpcyAmIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIyMHB4O1xuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDRyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFBST0RVSVRTIFBBTklFUiAvIExJU1RFIEFDSEFUXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uVFBMX1BBTklFUixcbi5UUExfT1JDQUJfTElTVEVfQUNIQVQge1xuICAgIC5saXN0ZS1wcm9kdWl0cyB7XG4gICAgICAgIC8vbWVzc2FnZSBwcm9tb1xuICAgICAgICAubWVzc2FnZS1wcm9tbyAuaW5uZXIge1xuICAgICAgICAgICAgbWFyZ2luOiAtMnJlbTtcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDNyZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBJTkZPVFlQRVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmluZm9zVHlwZXMge1xuICAgIC5pbmZvLXR5cGUtbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3JCYXNlO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRFTVBMQVRFIExJU1RFIFBST0RVSVRcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi8vIGxpc3RlIHByb2R1aXQgdnVlIGRlZmF1dC9saWduZVxuLmxpc3RlLXByb2R1aXRzLFxuLlRQTF9GSUNIRV9QUk9EVUlUIC5saXN0ZS1wcm9kdWl0cyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAvL2xpc3RlXG4gICAgLmxpc3RlLXByb2R1aXQtaXRlbSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmlzQm9yZDtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMi4ycmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDIwcmVtKTtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy9ib3V0b24gYWpvdXRlciBhdSBjb21wYXJhdGV1ciArIGluZm8gYm9uIGRldmlzXG4gICAgICAgIC5ham91dC1jb21wYXJhdGV1cixcbiAgICAgICAgLmRldmlzLWJvbi1pbmZvcyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogNHJlbTtcbiAgICAgICAgICAgIHRvcDogMi41cmVtO1xuICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICBbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5kZXZpcy1ib24taW5mb3Mge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBvcmRlcjogLTE7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi53aXRoLXByb21vIHtcbiAgICAgICAgICAgIC5ham91dC1jb21wYXJhdGV1cixcbiAgICAgICAgICAgIC5kZXZpcy1ib24taW5mb3Mge1xuICAgICAgICAgICAgICAgIHRvcDogNS43NXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLndpdGgtaW50ZXJ3ZWIge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy9kZXRhaWxzIGF2ZWMgaW1hZ2UgZ2F1Y2hlXG4gICAgLmxpc3RlLWRldGFpbHMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgIH1cbiAgICAuaW1hZ2Uge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDJyZW07XG4gICAgICAgIHdpZHRoOiAxMi4ycmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJi1pbm5lciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEyLjJyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG4gICAgICAgICYtcHJvZHVpdCB7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEyLjJyZW07XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vdGl0cmUgZmFicmljYW50XG4gICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgICAgIGNvbG9yOiAkY29sb3JCYXNlO1xuICAgICAgICBtYXJnaW46IDAgMCAycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvckJhc2U7XG4gICAgICAgICAgICAmOmhvdmVyLCAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvckJhc2U7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1aXQge1xuICAgICAgICAvL2dhdWNoZVxuICAgICAgICAmLWdhdWNoZSxcbiAgICAgICAgJi1kcm9pdGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMC4ycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLWdhdWNoZSB7XG4gICAgICAgICAgICB3aWR0aDogNDEuMzM2MTE2OTEwMjI5NjUlO1xuICAgICAgICB9XG4gICAgICAgICYtZHJvaXRlIHtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogNDguNzEyNTk1Njg1NDU1ODElO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1jb2RlIHtcbiAgICAgICAgICAgIHdpZHRoOiAyOC4xMTQ0NzgxMTQ0NzgxMSU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMuMzY3MDAzMzY3MDAzMzY3JTtcbiAgICAgICAgfVxuICAgICAgICAmLXByaXgge1xuICAgICAgICAgICAgd2lkdGg6IDM1LjIxNzM5MTMwNDM0NzgzJTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNC4zNDc4MjYwODY5NTY1MjIlO1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgICAgICAmLXN0b2NrIHtcbiAgICAgICAgICAgIHdpZHRoOiA2NS4xNTE1MTUxNTE1MTUxNSU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMuMzY3MDAzMzY3MDAzMzY3JTtcbiAgICAgICAgICAgIC5zdG9jayB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc3RvY2stcGx1cyB7XG4gICAgICAgICAgICAgICAgLy9tb3JlIHRoYW4gMyBpdGVtc1xuICAgICAgICAgICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgICAgICAgICAgLnN0b2NrLWxpc3RlIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGRlc2t0b3ApIGFuZCAobWluLXdpZHRoOiAkdGFibGV0UGx1c09uZSl7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYtYWN0aW9ucyB7XG4gICAgICAgICAgICB3aWR0aDogNjAuMTQ0OTI3NTM2MjMxODglO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1aXQtY29kZXtcbiAgICAgICAgLmluZm97Zm9udC1zaXplOiAxLjNyZW07fVxuICAgIH1cbiAgICAucHJvZHVpdC1zdG9ja3tcbiAgICAgICAgLnN0b2NrLWxpc3RlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBnYXA6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAucXRlLWV0YXQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDEzcHgpO1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgICAgLnF0ZS1ldGF0IC5saWJlbGxlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE0cHgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmluZm90eXBlcy13cmFwIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmlzQm9yZDtcbiAgICAgICAgcGFkZGluZy10b3A6IDEuMnJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMC42cmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIH1cbiAgICAuaW5mb3NUeXBlcyB7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgfVxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDJyZW07XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC43cmVtO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC45OTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTk5KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmluZm90eXBlLXBpY3RvIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgICAgIC5pbmZvdHlwZS1waWN0by1jb2xvciB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtbWFzay1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDI0cHggYXV0bztcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC50eXBlUGFuaWVycy13cmFwIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmlzQm9yZDtcbiAgICAgICAgcGFkZGluZy10b3A6IDEuMnJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMC42cmVtO1xuICAgIH1cbiAgICAudHlwZVBhbmllcnMge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgIH1cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAycmVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAuN3JlbTtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuOTk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk5OSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50eXBlUGFuaWVyLXBpY3RvIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgICAgIC50eXBlUGFuaWVyLXBpY3RvLWNvbG9yIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1tYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1tYXNrLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmFqb3V0ZXItcHJvZHVpdC1hdS1wYW5pZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICY6aGFzKC5idG4tY2FudC1vcmRlcikge1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRkZXNrdG9wICsgMSkge1xuICAgICAgICAgICAgICAgIC5ib3gtcGFuaWVyLFxuICAgICAgICAgICAgICAgIC5hY3Rpb25zIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTkwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpoYXMoLmJ0bi10cmlnZ2VyLWRpbWVuc2lvbi12YXJpYWJsZS1oaWRlKSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAuYm94LXBhbmllciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBnYXA6IDFyZW07XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYm94LXBhbmllciAuZGltZW5zaW9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5hY3Rpb25zIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5saXN0ZVByb2R1aXRMaWduZVByaXhUb3RhbDpub3QoOmhhcyg+ICopKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnF1YW50aXRlIC5xdGUtbGFiZWwge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ib3gtcGFuaWVyIHtcbiAgICAgICAgICAgIHdpZHRoOiA0OS4zOTc1OTAzNjE0NDU3OCU7XG4gICAgICAgIH1cbiAgICAgICAgLmFjdGlvbnMge1xuICAgICAgICAgICAgd2lkdGg6IDQzLjM3MzQ5Mzk3NTkwMzYxJTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICAgICAgICB9XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuMTFyZW0gMXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA2ZW07XG4gICAgICAgIH1cblxuICAgICAgICAuYm91dG9uLWJsZXUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvL2Fqb3V0ZXIgYSB1bmUgbGlzdGUgZCdhY2hhdFxuICAgIC5saXN0ZS1hY2hhdC1wbHVnaW4ge1xuICAgICAgICAuc291c21lbnUtYWpvdXQtcHJvZHVpdC1saXN0ZSB7XG4gICAgICAgICAgICB0b3A6IDQwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmFqb3V0ZXItYS1sYS1saXN0ZSB7XG4gICAgICAgICAgICBsZWZ0OiAtNTBweDtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA3NSU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxODUwcHgpIGFuZCAobWluLXdpZHRoOiAxNDQxcHgpIHtcbiAgICAgICAgICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogLTkwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzEwcHgpIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogLTkwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MTZweCkgYW5kIChtaW4td2lkdGg6IDc3MHB4KSB7XG4gICAgICAgICAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IC05MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy9kZWNsaW5haXNvblxuICAgIC5hY3Rpb25zLWRlY2xpbmFpc29uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAuYm91dG9uLXZlcnQge1xuICAgICAgICAgICAgd2lkdGg6IDE4cmVtO1xuICAgICAgICAgICAgbWluLXdpZHRoOiBpbmhlcml0O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjFyZW0gMXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5NjhcIjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxN3B4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvL21lc3NhZ2UgcHJvbW9cbiAgICAubWVzc2FnZS1wcm9tbyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICYtd3JhcHBlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB9XG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbjogLTIuMXJlbSAwIDAgLTEuNXJlbTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweCAwIDAgMDtcblxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IC0ycmVtIC0xcmVtIDA7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgKyAubWVzc2FnZS1wcm9tbyB7XG4gICAgICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCA1cHggMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vb25lIG9uZSBwcm9tb1xuICAgICAgICAmOm9ubHktY2hpbGQge1xuICAgICAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHRhYmxldFBsdXNPbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICR0YWJsZXQpIGFuZCAobWluLXdpZHRoOiAkbW9iaWxlICsgMSl7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAycmVtKTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4IDVweCAwIDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHggMCAwIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICArIC5tZXNzYWdlLXByb21vIHtcbiAgICAgICAgICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDVweCAwIDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICYtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4IDVweCAwIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICArIC5tZXNzYWdlLXByb21vIHtcbiAgICAgICAgICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy9jb25kaXRpb25uZW1lbnRcbiAgICAuY29uZGl0aW9ubmVtZW50LFxuICAgIC5tb3JlLW9wdGlvbnMge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyaXNCb3JkO1xuICAgICAgICBwYWRkaW5nLXRvcDogMC44cmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjhyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjdyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tb3JlLW9wdGlvbnMgPiBkaXY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIH1cblxuXG4gICAgLy9xdHkgY2FsY3VsYXRldXJcbiAgICAucXVhbnRpdGVDYWxjdWxhdGV1ciB7XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIGlucHV0ICB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmJvdXRvbi1ham91dC1wcm9kdWl0LWxpc3RlIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTYzXCI7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTdweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAucHJvZHVpdC1mb3JtLW1pbmktbG9hZGVyIHtcbiAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudFgoKTtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgIH1cbiAgICAuc21hbGwtcHJpY2Uge1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICB9XG5cblxuICAgIC8vaW50ZXJ3ZWJcbiAgICAuaW50ZXJ3ZWItc3RvY2tzIHtcbiAgICAgICAgbWFyZ2luOiAyMHB4IC0xNXB4IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgIC5zdG9ja3Mge1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgJi5zaG93biB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggLTEwcHggMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vd2l0aCBzZWxlY3Rpb24gY2hlY2tib3hcbiAgICAmIC5saXN0ZS1wcm9kdWl0LWl0ZW0ud2l0aC1zZWxlY3Rpb24ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMi42cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLy9jaGVja2JveFxuICAgICAgICAuc2VsZWN0aW9uIHtcbiAgICAgICAgICAgIFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDNweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW50ZXJ3ZWItc3RvY2tzIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5saXN0ZVByb2R1aXRMaWduZVByaXhUb3RhbCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxZW07XG4gICAgfVxuXG4gICAgLm1vbnRhbnQtdG90YWwtbGlnbmUge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICBmb250LXNpemU6IDIuN3JlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMuM3JlbTtcblxuICAgICAgICBzcGFuOm5vdCguZWNvcGFydCk6bm90KC5idG4tY2FudC1vcmRlcikge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjdyZW07XG4gICAgICAgIH1cbiAgICAgICAgLmVjb3BhcnQge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvckJhc2U7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ0bi1jYW50LW9yZGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkZGVza3RvcCArIDEpIHtcbiAgICAgICAgLnByb2R1aXQtYWN0aW9uczpoYXMoLmJ0bi1jYW50LW9yZGVyKSB7XG4gICAgICAgICAgICB3aWR0aDogMjAwcHg7XG5cbiAgICAgICAgICAgIC5uby1hY3Rpb25zIC5ham91dGVyLXByb2R1aXQtYXUtcGFuaWVyLFxuICAgICAgICAgICAgLm5vLWFjdGlvbnMgLm1vbnRhbnQtdG90YWwtbGlnbmUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL2NvbW1lbnRhaXJlXG4gICAgLmNvbW1lbnQge1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgICAgdGV4dGFyZWEge1xuICAgICAgICAgICAgaGVpZ2h0OiA2LjdyZW07XG4gICAgICAgICAgICByZXNpemU6IHZlcnRpY2FsO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuc2hvdy1jb21tZW50IHtcbiAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZjEwN1wiO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgJi5hY3RpdmU6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGYxMDZcIjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5kZWxldGUtcHJvZHVjdCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIGNvbG9yOiAkcm91Z2U7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlOTVlJztcbiAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3JCYXNlO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICBtYXJnaW46IDFyZW0gMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR0YWJsZXQgKyAxKSB7XG4gICAgICAgIC8vaW50ZXJ3ZWIgZGVza3RvcCBvbmx5XG4gICAgICAgIC5pbnRlcndlYi1zdG9ja3Mge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgLmJ0bi12b2lyLXN0b2NrcyB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTRweCAzMHB4IDE0cHggNTVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzUlO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDU0XCI7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLmFjdGl2ZTo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxmMDUzJztcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnN0b2NrcyB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYzJTtcbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTRweCAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTRweCAwO1xuICAgICAgICAgICAgICAgICAgICAmID4gbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDIlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2MwYmZiZjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuKzEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAyJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAmLmZpcnN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5saXN0ZS1wcm9kdWl0X19kaW1lbnNpb25zLXZhcmlhYmxlcy1mb3JtIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgb3JkZXI6IC0xO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGlzdGUtcHJvZHVpdF9fZGltZW5zaW9uLWJ0bi1yb3cge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuXG4gICAgLmRpbWVuc2lvbnMtdmFyaWFibGVzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGdhcDogMS41cmVtO1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZGltZW5zaW9ucy12YXJpYWJsZXMgLmRpbWVuc2lvbiB7XG4gICAgICAgIGZsZXg6IDE7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZGltZW5zaW9ucy12YXJpYWJsZXMgbGFiZWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgfVxuXG4gICAgLmRpbWVuc2lvbnMtdmFyaWFibGVzIGxhYmVsLFxuICAgIC5kaW1lbnNpb25zLXZhcmlhYmxlcyAuaW5kaWNhdGlvbi1tYXgtbWluIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmRpbWVuc2lvbnMtdmFyaWFibGVzIGlucHV0IHtcbiAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmFjdGlvbi1kaW1lbnNpb24tdmFyaWFibGUge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgIH1cblxuICAgIC5idG4tdHJpZ2dlci1kaW1lbnNpb24tdmFyaWFibGUtaGlkZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgLmxpc3RlLXByb2R1aXRzLFxuICAgIC5UUExfRklDSEVfUFJPRFVJVCB7XG4gICAgICAgIC5pbnRlcndlYi1zdG9ja3Mge1xuICAgICAgICAgICAgLmJ0bi12b2lyLXN0b2NrcyB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTRweCAyNXB4IDE0cHggNTBweDtcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc3RvY2tzIHtcbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweCAyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5saWJlbGxlLFxuICAgICAgICAgICAgICAgIC5xdHktc3RvY2sge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxM3B4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRFTVBMQVRFIExJU1RFIFBST0RVSVQgLSAxNDQwUFhcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5saXN0ZS1wcm9kdWl0cyxcbi5UUExfRklDSEVfUFJPRFVJVCAubGlzdGUtcHJvZHVpdHN7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRkZXNrdG9wKSBhbmQgKG1pbi13aWR0aDogJHRhYmxldCArIDEpe1xuICAgICAgICAmIC5saXN0ZS1wcm9kdWl0LWl0ZW0ge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAxMHB4IDIwcHggMTVweDtcbiAgICAgICAgICAgIC5ham91dC1jb21wYXJhdGV1cixcbiAgICAgICAgICAgIC5kZXZpcy1ib24taW5mb3Mge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEyLjJyZW07XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAucHJvZHVpdCB7XG4gICAgICAgICAgICAmLWdhdWNoZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQzLjYyODUwOTcxOTIyMjQ2JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYtZHJvaXRlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTYuNDc5NDgxNjQxNDY4NjglO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWNvZGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MS4zMzY2MzM2NjMzNjYzNCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0Ljk1MDQ5NTA0OTUwNDk1JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYtc3RvY2sge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0OC43NjIzNzYyMzc2MjM3NjUlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNC45NTA0OTUwNDk1MDQ5NSU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLXByaXgge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0OC4zNzQ3NjA5OTQyNjM4NiU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYtYWN0aW9ucyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDM5LjM4ODE0NTMxNTQ4NzU3JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYWpvdXRlci1wcm9kdWl0LWF1LXBhbmllciB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIC5ib3gtcGFuaWVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5hY3Rpb25zIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaW50ZXJ3ZWItc3RvY2tzIHtcbiAgICAgICAgICAgIG1hcmdpbjogMjBweCAtMTBweCAwIC0xNXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBURU1QTEFURSBMSVNURSBQUk9EVUlUIC0gVEFCTEVUVEVcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5saXN0ZS1wcm9kdWl0cyxcbi5UUExfRklDSEVfUFJPRFVJVCAubGlzdGUtcHJvZHVpdHN7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgJiAubGlzdGUtcHJvZHVpdC1pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgICAgICAgICAgIHdpZHRoOiA0OSU7XG5cbiAgICAgICAgICAgIC8vdGl0cmVcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy9ham91dCBjb21wYXJhdGV1clxuICAgICAgICAgICAgLmRldmlzLWJvbi1pbmZvcyB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYWpvdXQtY29tcGFyYXRldXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmlubmVyLWl0ZW0ge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cbiAgICAgICAgLmluZm90eXBlcy13cmFwIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgICAgfVxuICAgICAgICAuaW5mb3NUeXBlcyB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjhyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGlzdGUtZGV0YWlscyB7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vbWVzc2FnZSBwcm9tb1xuICAgICAgICAubWVzc2FnZS1wcm9tbyB7XG4gICAgICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogLTJyZW0gLTFyZW0gMDtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAycmVtKTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnByaXgtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgZmxleC1mbG93OiByb3ctcmV2ZXJzZSB3cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnByaWNlLWJsb2Mge1xuICAgICAgICAgICAgd2lkdGg6IDQ5JTtcblxuICAgICAgICAgICAgJiArIC5wcmljZS1ibG9jIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMiUgMCAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIH1cbiAgICAgICAgLnByb2R1aXQge1xuICAgICAgICAgICAgJi1nYXVjaGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi1kcm9pdGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1jb2RlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE0LjRyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtc3RvY2sge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYtcHJpeCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi1hY3Rpb25zIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29uZGl0aW9ubmVtZW50LFxuICAgICAgICAubW9yZS1vcHRpb25zIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3Jpc0JvcmQ7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMDtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmlzQm9yZDtcbiAgICAgICAgfVxuICAgICAgICAuYWpvdXRlci1wcm9kdWl0LWF1LXBhbmllciB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDEuNXJlbSAwIDA7XG4gICAgICAgICAgICAuYm94LXBhbmllciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnF1YW50aXRlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDklO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnF1YW50aXRlQ2FsY3VsYXRldXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmFjdGlvbnMge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnRuLWFqb3V0ZXItYXUtcGFuaWVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDklO1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5saXN0ZS1hY2hhdC1wbHVnaW4ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIlO1xuICAgICAgICAgICAgICAgIC5ham91dGVyLWEtbGEtbGlzdGUge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYm91dG9uLWFqb3V0LXByb2R1aXQtbGlzdGUsXG4gICAgICAgICAgICAuYnRuLWFqb3V0ZXItYXUtcGFuaWVyIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDRyZW07XG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnF1YW50aXRlQWxyZWFkeUluUGFuaWVyIHNwYW4ge1xuICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBURU1QTEFURSBMSVNURSBQUk9EVUlUIC0gTU9CSUxFXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4ubGlzdGUtcHJvZHVpdHMsXG4uVFBMX0ZJQ0hFX1BST0RVSVQgLmxpc3RlLXByb2R1aXRzIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAubGlzdGUtcHJvZHVpdC1pdGVtIHtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IGluaGVyaXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW5mb3R5cGVzLXdyYXAsXG4gICAgICAgIC5jb25kaXRpb25uZW1lbnQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAubW9yZS1vcHRpb25zIHtcbiAgICAgICAgICAgIC8vZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbSAwIDA7XG4gICAgICAgIH1cbiAgICAgICAgLnByb2R1aXQge1xuICAgICAgICAgICAgJi1zdG9jayB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMS43cmVtIDAgMXJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3Jpc0JvcmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnByaXgtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cbiAgICAgICAgLnByaWNlLWJsb2Mge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICYgKyAucHJpY2UtYmxvYyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAycmVtIDAgMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYWpvdXRlci1wcm9kdWl0LWF1LXBhbmllciB7XG4gICAgICAgICAgICAuYm94LXBhbmllciB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5xdWFudGl0ZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucXVhbnRpdGVDYWxjdWxhdGV1ciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxcmVtIDAgMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMHJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMS41cmVtO1xuICAgICAgICAgICAgJi1pbm5lciB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYtcHJvZHVpdCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucHJvZHVpdC1jb2RlIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTEuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVEVNUExBVEUgTElTVEUgUFJPRFVJVCAtIE1PQklMRSBTTUFMTFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmxpc3RlLXByb2R1aXRzLFxuLlRQTF9GSUNIRV9QUk9EVUlUIC5saXN0ZS1wcm9kdWl0cyB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICYgLmxpc3RlLXByb2R1aXQtaXRlbSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVEVNUExBVEUgTElTVEUgUFJPRFVJVCAtIFZVRSBHUklMTEVcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi8vIGxpc3RlIHByb2R1aXQgdnVlIGdyaWxsZVxuLmxpc3RlLXByb2R1aXRzLnRodW1ibmFpbHMsXG4uVFBMX0ZJQ0hFX1BST0RVSVQgLmxpc3RlLXByb2R1aXRzLnRodW1ibmFpbHMge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdGFibGV0ICsgMSkge1xuXG4gICAgICAgICYgLmxpc3RlLXByb2R1aXQtaXRlbSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gICAgICAgICAgICB3aWR0aDogNDklO1xuXG4gICAgICAgICAgICAvL3RpdHJlXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy9ham91dCBjb21wYXJhdGV1clxuICAgICAgICAgICAgLmFqb3V0LWNvbXBhcmF0ZXVyLFxuICAgICAgICAgICAgLmRldmlzLWJvbi1pbmZvcyB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLndpdGgtaW50ZXJ3ZWIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaW50ZXJ3ZWItc3RvY2tzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIC5pbm5lci1pdGVtIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG5cblxuICAgICAgICAubGlzdGUtZGV0YWlscyB7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5saXN0ZS1kZXRhaWxzIC5pbWFnZSB7XG4gICAgICAgICAgICAvL2Rpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAvL2ZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIC8vbWFyZ2luLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAuaW5mb3R5cGVzLXdyYXAge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuOHJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1aXQtY29kZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1aXQtY29kZSBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy9tZXNzYWdlIHByb21vXG4gICAgICAgIC5tZXNzYWdlLXByb21vIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IC0ycmVtIC0xcmVtIDA7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMnJlbSk7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweCAwIDAgMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICsgLm1lc3NhZ2UtcHJvbW8ge1xuICAgICAgICAgICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgNXB4IDAgMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm9ubHktY2hpbGQge1xuICAgICAgICAgICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAgKG1pbi13aWR0aDogJHRhYmxldFBsdXNPbmUpe1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4IDVweCAwIDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVpdCB7XG4gICAgICAgICAgICAvL2dhdWNoZVxuICAgICAgICAgICAgJi1nYXVjaGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtZHJvaXRlIHtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWNvZGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzNS42MjM4Njk4MDEwODQ5OSU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzLjYxNjYzNjUyODAyODkzMyU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtc3RvY2sge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1hY3Rpb25zIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogOTcuOTglO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1wcml4IHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucHJpeC1jb250YWluZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdy1yZXZlcnNlIHdyYXA7XG4gICAgICAgIH1cblxuICAgICAgICAucHJpY2UtYmxvYyB7XG4gICAgICAgICAgICB3aWR0aDogNDklO1xuXG4gICAgICAgICAgICAmICsgLnByaWNlLWJsb2Mge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAyJSAwIDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZmlyc3Qge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmlzQ2xhaXI7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbSAxLjVyZW07XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbmZvdHlwZXMtd3JhcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjhyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5pbmZvc1R5cGVzIHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuOHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb25kaXRpb25uZW1lbnQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyaXNCb3JkO1xuICAgICAgICAgICAgcGFkZGluZzogMnJlbSAwO1xuICAgICAgICAgICAgbWFyZ2luOiAycmVtIDA7XG4gICAgICAgIH1cblxuICAgICAgICAuaW1hZ2UtaW5uZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEyLjJyZW07XG4gICAgICAgIH1cbiAgICAgICAgLmFqb3V0ZXItcHJvZHVpdC1hdS1wYW5pZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDEuNXJlbSAwIDA7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAuYm94LXBhbmllciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5xdWFudGl0ZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUyLjU4NDI2OTY2MjkyMTM1JTtcblxuICAgICAgICAgICAgICAgICZDYWxjdWxhdGV1ciB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MC40NDk0MzgyMDIyNDcxOSU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5xdGUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmFjdGlvbnMge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idG4tYWpvdXRlci1hdS1wYW5pZXIge1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0cmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxpc3RlLWFjaGF0LXBsdWdpbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5ib3V0b24tYWpvdXQtcHJvZHVpdC1saXN0ZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IGluaGVyaXQ7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5saXN0ZS1hY2hhdC1wbHVnaW4ge1xuICAgICAgICAuc291c21lbnUtYWpvdXQtcHJvZHVpdC1saXN0ZSB7XG4gICAgICAgICAgICBsZWZ0OiAtMTY4cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmFqb3V0ZXItYS1sYS1saXN0ZSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgbGVmdDogOTMlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxODUwcHgpIGFuZCAobWluLXdpZHRoOiAxNDQxcHgpIHtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogLTUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzEwcHgpIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogLTUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmludGVyd2ViLXN0b2NrcyB7XG4gICAgICAgIG1hcmdpbjogMjBweCAtMTBweCAtMjBweDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRkZXNrdG9wKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIC5idG4tdm9pci1zdG9ja3MsXG4gICAgICAgICAgICAuc3RvY2tzIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5idG4tdm9pci1zdG9ja3Mge1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE0cHggMjVweCAxNHB4IDUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAuYnRuLXZvaXItc3RvY2tzIHtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwNzhcIjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5hY3RpdmU6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJ1xcZjA3Nyc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvL2xhcmdldXIgMTkyMCBhIDE0NDFweFxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkZGVza3RvcCArIDEpIHtcbiAgICAgICAgLnByb2R1aXQge1xuICAgICAgICAgICAgLy9nYXVjaGVcbiAgICAgICAgICAgICYtZ2F1Y2hlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTQuMnJlbSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vZHJvaXRlXG4gICAgICAgICAgICAmLWRyb2l0ZSB7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1jb2RlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzEuNjQ1NTY5NjIwMjUzMTYlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMS44MDgzMTgyNjQwMTQ0NjclO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLXN0b2NrIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjYuNTQ2MTEyMTE1NzMyMzclO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvL2FjdGlvbnNcbiAgICAgICAgICAgICYtYWN0aW9ucyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLXByaXgge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTQuNHJlbTtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5ham91dGVyLXByb2R1aXQtYXUtcGFuaWVyIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICAuYm94LXBhbmllciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDI2LjJyZW0pO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnF1YW50aXRlLFxuICAgICAgICAgICAgLnF1YW50aXRlQ2FsY3VsYXRldXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0Ny42NDE1MDk0MzM5NjIyNiU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYWN0aW9ucyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnRuLWFqb3V0ZXItYXUtcGFuaWVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjAuMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5saXN0ZS1hY2hhdC1wbHVnaW4ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJvdXRvbi1ham91dC1wcm9kdWl0LWxpc3RlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNHJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC8vbGFyZ2V1ciAxNDQwXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRkZXNrdG9wKSBhbmQgKG1pbi13aWR0aDogJHRhYmxldCArIDEpIHtcbiAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgfVxuICAgICAgICAucHJvZHVpdCB7XG4gICAgICAgICAgICAmLWdhdWNoZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtY29kZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNC40cmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLXN0b2NrIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAuc3RvY2stcGx1cyAuc3RvY2stbGlzdGUge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDglO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYtcHJpeCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgICAuaW5mb3R5cGVzLXdyYXAge1xuICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbmRpdGlvbm5lbWVudCxcbiAgICAgICAgLm1vcmUtb3B0aW9ucyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3Jpc0JvcmQ7XG4gICAgICAgIH1cbiAgICAgICAgLmFqb3V0ZXItcHJvZHVpdC1hdS1wYW5pZXIge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIC5ib3gtcGFuaWVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnF1YW50aXRlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDklO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnF1YW50aXRlQ2FsY3VsYXRldXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmFjdGlvbnMge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBpbml0aWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnRuLWFqb3V0ZXItYXUtcGFuaWVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDklO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ib3V0b24tYWpvdXQtcHJvZHVpdC1saXN0ZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubGlzdGUtYWNoYXQtcGx1Z2luIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDklO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyJTtcbiAgICAgICAgICAgICAgICAuYWpvdXRlci1hLWxhLWxpc3RlIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogQUpPVVRFUiBBVSBMSVNURSBEJ0FDSEFUIFBPUFVQXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4ubGlzdGUtYWNoYXQtcGx1Z2luIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLnNvdXNtZW51LWFqb3V0LXByb2R1aXQtbGlzdGUge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgIGxlZnQ6IC0yMTdweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYWpvdXRlci1hLWxhLWxpc3RlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJsZXVPcmNhYjtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgcGFkZGluZzogMzRweCAyMHB4IDEwcHg7XG4gICAgICAgIHdpZHRoOiAyNjVweDtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDAgMDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYm90dG9tOiA5NSU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDgwLCAxMDcsIDEyNSwgMCk7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgICAgICAgICAgdG9wOiAtMjBweDtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA5MyU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgICAgICAuY2xvc2UtYWpvdXQtcHJvZHVpdC1saXN0ZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMXJlbTtcbiAgICAgICAgICAgIHRvcDogMXJlbTtcbiAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICAgICAgd2lkdGg6IDIuNHJlbTtcbiAgICAgICAgICAgIGhlaWdodDogMi40cmVtO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5mYTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxmMDBkJztcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmxpc3RlcyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxcmVtIDAgMi44cmVtO1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhbGlnbmVtZW50WSgpO1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MTNcIjtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm5icmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdmVydDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDVweDtcbiAgICAgICAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgIH1cbiAgICAgICAgLmJ0bi1ham91dGVyLWxpc3RlIHtcbiAgICAgICAgICAgIEBleHRlbmQgLmJvdXRvbi12ZXJ0O1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIC5vdmVyZmxvdyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDE5NHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMi40cmVtO1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgICAgIHNjcm9sbGJhci13aWR0aDogdGhpbjtcbiAgICAgICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogOXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNGMEYwRjA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI0NEQ0RDRDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuM3JlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIC5zaG93Tm91dmVsbGVMaXN0ZSB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgI2ZmZjtcbiAgICAgICAgICAgIG1hcmdpbjogMCAtMXJlbTtcbiAgICAgICAgICAgIHNwYW57XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDZlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgICAgIC50b2dnbGVBam91dGVyQU5vdXZlbGxlTGlzdGUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubGlzdGUtYWNoYXQtYWpvdXRlci1hLW5vdXZlbGxlLWxpc3RlID4gZGl2ID4gZm9ybSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgLmNsb3NlLWFqb3V0LXByb2R1aXQtbGlzdGUge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4IDEwcHggMTBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMThlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFBST0RVSVRTIFBBTklFUlxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9QQU5JRVIge1xuICAgICNmaWNoZUNvbW1hbmRlIHtcbiAgICAgICAgLmxpc3RlLXByb2R1aXRzIHtcbiAgICAgICAgICAgIC5hY3Rpb25zLXBhbmllciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByaWNlLWJsb2Mge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmFjdGlvbnMtcGFuaWVyIC5wYWxsaWVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkZGVza3RvcCArIDEpIHtcbiAgICAgICAgICAgICAgICAucHJvZHVpdCB7XG5cbiAgICAgICAgICAgICAgICAgICAgJi1jb2RlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMy44Nzg3ODc4Nzg3ODc4OCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1LjM5MzkzOTM5MzkzOTM5JTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYtc3RvY2sge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQ1LjA5MDkwOTA5MDkwOTA5JTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTUuMzkzOTM5MzkzOTM5MzklO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi1wcml4IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMy41OTg5Mzc1ODMwMDEzMyU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwLjYyNDE2OTk4NjcxOTc5JTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvL2FjdGlvbnMgcGFuaWVyXG4gICAgICAgICAgICAgICAgLmFjdGlvbnMtcGFuaWVyIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1NS43NzY4OTI0MzAyNzg4OCU7XG4gICAgICAgICAgICAgICAgICAgIC5xdWFudGl0ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDklO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAubm8tYWN0aW9ucyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAuYWpvdXRlci1wcm9kdWl0LWF1LXBhbmllciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgLmJveC1wYW5pZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAucXVhbnRpdGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAubW9udGFudC10b3RhbC1saWduZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogTElTVEUgQUNIQVQgRVQgREVWSVMgRVQgUEFOSUVSUyBQQVNTRVNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiNmaWNoZUNvbW1hbmRlIHtcbiAgICAubGlzdGUtcHJvZHVpdHMge1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGRlc2t0b3AgKyAxKSB7XG4gICAgICAgICAgICAubW9udGFudC10b3RhbC1saWduZSB7XG4gICAgICAgICAgICAgICAgKyAuYnRuLWFqb3V0ZXItYXUtcGFuaWVyIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYWpvdXRlci1wcm9kdWl0LWF1LXBhbmllciB7XG4gICAgICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgJjpoYXMoLmJ0bi1jYW50LW9yZGVyKSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxOTBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByb2R1aXQge1xuICAgICAgICAgICAgICAgICYtY29kZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMy4xNjQ5ODMxNjQ5ODMxNiU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMi41JTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLXN0b2NrIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDU5LjQyNzYwOTQyNzYwOTQzJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyLjUlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtcHJpeCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzNy40MjQyNDI0MjQyNDI0MiU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMS41MTUxNTE1MTUxNTE1MTUlO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZGVza3RvcCkge1xuICAgICAgICAgICAgLm1vbnRhbnQtdG90YWwtbGlnbmUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAuYWpvdXRlci1wcm9kdWl0LWF1LXBhbmllciB7XG4gICAgICAgICAgICAgICAgLnF1YW50aXRlLFxuICAgICAgICAgICAgICAgIC5xdWFudGl0ZUNhbGN1bGF0ZXVyLFxuICAgICAgICAgICAgICAgIC5idG4tYWpvdXRlci1hdS1wYW5pZXIge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYWpvdXRlci1wcm9kdWl0LWF1LXBhbmllciB7XG4gICAgICAgICAgICAgICAgLmFjdGlvbnMge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLlRQTF9PUkNBQl9GSUNIRV9ERVZJU19CT05TLFxuLlRQTF9PUkNBQl9TVUlWSV9ERVZJU19CT05TICB7XG4gICAgLmxpc3RlLXByb2R1aXRzIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGRlc2t0b3AgKyAxKSB7XG4gICAgICAgICAgICAubm8tYWN0aW9ucyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIC5ham91dGVyLXByb2R1aXQtYXUtcGFuaWVyIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQ5LjM5NzU5MDM2MTQ0NTc4JTtcbiAgICAgICAgICAgICAgICAgICAgLmJveC1wYW5pZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLm1vbnRhbnQtdG90YWwtbGlnbmUge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDMuMzczNDkzOTc1OTAzNjElO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRFTVBMQVRFIFBST0RVSVRTIE1JU0UgRU4gQVZBTlQgRVQgUFJPRFVJVCBDT01QTEVNRU5UQUlSRVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9QUk9EVUlUU19NSVNfRU5fQVZBTlQsXG4uVFBMX1BST0RVSVRfQ1JPU1NfU0VMTElOR19DQVJPVVNFTCxcbi5UUExfT1JDQUJfTElTVEVfUFJPRFVJVFNfQ0hPSVNJUyxcbi5UUExfVE9QX1ZFTlRFX1BST0RVSVRTLFxuLlRQTF9MSVNURV9QUk9EVUlUU19FTl9QUk9NT1RJT04sXG4uVFBMX05PVVZFQVVYX1BST0RVSVRTIHtcbiAgICA+IGgyIHtcbiAgICAgICAgQGV4dGVuZCAudGl0cmUtYmxvYy1idWxsZXQ7XG4gICAgfVxuICAgIC5saXN0ZV9wcm9kdWl0X2Zvcm1fdHJpIHsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuICAgIC8vIGxpc3RlIHByb2R1aXRzIGFmZmljaGFnZSBtb2JpbGVcbiAgICAvL0BpbmNsdWRlIGxpc3RlLXByb2R1aXRzLW1vYmlsZSgpO1xuXG4gICAgLnBhZyA+IHNwYW4gPiBhOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuYngtdmlld3BvcnQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICB9XG5cbiAgICAubGlzdGUtcHJvZHVpdHMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgLmxpc3RlLXByb2R1aXQtaXRlbSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA0MTVweDtcblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaW5uZXItaXRlbSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYud2l0aC1pbnRlcndlYiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmxpc3RlLWRldGFpbHMge1xuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAucHJpeC1wdWJsaWMtdHRjLFxuICAgICAgICAucHJpeC1uZXQtaHQsXG4gICAgICAgIC5ham91dC1jb21wYXJhdGV1cixcbiAgICAgICAgLmludGVyd2ViLXN0b2NrcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1aXQtY29kZSBzcGFuIHtcbiAgICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgICAgICAgfVxuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuaW1hZ2UsIC5pbWFnZSAuaW1hZ2UtaW5uZXIsIC5pbWFnZSAuaW1hZ2UtaW5uZXIgLmltYWdlLXByb2R1aXQge1xuICAgICAgICAgICAgaGVpZ2h0OiAxNXJlbTtcbiAgICAgICAgfVxuICAgICAgICAucHJvZHVpdCB7XG4gICAgICAgICAgICAmLWdhdWNoZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLWRyb2l0ZSB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1jb2RlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMS41cmVtIDA7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtc3RvY2sge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi1wcml4IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLWFjdGlvbnMge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5Ny45OCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pbmZvdHlwZXMtd3JhcCB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbmRpdGlvbm5lbWVudCxcbiAgICAgICAgLm1vcmUtb3B0aW9ucyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3Jpc0JvcmQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAuYWpvdXRlci1wcm9kdWl0LWF1LXBhbmllciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMS41cmVtIDAgMDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAuYm94LXBhbmllciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5hY3Rpb25zIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJ0bi1ham91dGVyLWF1LXBhbmllciB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDRyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYm91dG9uLWFqb3V0LXByb2R1aXQtbGlzdGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IGluaGVyaXQ7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubGlzdGUtYWNoYXQtcGx1Z2luIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDklO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyJTtcbiAgICAgICAgICAgICAgICAuYWpvdXRlci1hLWxhLWxpc3RlIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJvdXRvbi1ham91dC1wcm9kdWl0LWxpc3RlLFxuICAgICAgICAgICAgLmJ0bi1ham91dGVyLWF1LXBhbmllcixcbiAgICAgICAgICAgIC5xdWFudGl0ZUFscmVhZHlJblBhbmllciBzcGFuIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDRyZW07XG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5OTlweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYWN0aW9ucy1kZWNsaW5haXNvbiB7XG4gICAgICAgICAgICAgICAgLmJvdXRvbi12ZXJ0IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgLnByb2R1aXQtcHJpeCAucHJpeC1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByaWNlLWJsb2Mge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ham91dGVyLXByb2R1aXQtYXUtcGFuaWVyIC5ib3gtcGFuaWVyIC5xdWFudGl0ZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvL2xpc3RlIGFjaGF0XG4gICAgLmxpc3RlLWFjaGF0LXBsdWdpbiB7XG4gICAgICAgIC5zb3VzbWVudS1ham91dC1wcm9kdWl0LWxpc3RlIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMzBweDtcbiAgICAgICAgICAgIGxlZnQ6IC0xNTVweDtcbiAgICAgICAgICAgIHRvcDogNjVweDtcbiAgICAgICAgfVxuICAgICAgICAuYWpvdXRlci1hLWxhLWxpc3RlIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHRvcDogLTM0MHB4O1xuICAgICAgICAgICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgJi5uZXcge1xuICAgICAgICAgICAgICAgIHRvcDogLTI1MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDY3JTtcbiAgICAgICAgICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJsZXU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSg4MCwgMTA3LCAxMjUsIDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLm92ZXJmbG93IHtcbiAgICAgICAgICAgIGhlaWdodDogMTA1cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4uVFBMX1BST0RVSVRTX01JU19FTl9BVkFOVCxcbi5UUExfT1JDQUJfTElTVEVfUFJPRFVJVFNfQ0hPSVNJUyxcbi5UUExfVE9QX1ZFTlRFX1BST0RVSVRTLFxuLlRQTF9MSVNURV9QUk9EVUlUU19FTl9QUk9NT1RJT04sXG4uVFBMX05PVVZFQVVYX1BST0RVSVRTIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbW9iaWxlICsgMSkge1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG4gICAgbWFyZ2luLWJvdHRvbTogOTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3Jpc0NsYWlyO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIC5wYWdpbmF0b3IsIC5uYi1wcm9kdWl0cy1wYWdlLCAucXR5LXJpZ2h0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmxpc3RlLXByb2R1aXRzIC5saXN0ZS1wcm9kdWl0LWl0ZW0ge1xuICAgICAgICBtaW4taGVpZ2h0OiAyNzBweDtcbiAgICB9XG4gICAgLmJsb2MtdGl0cmUtcGFnIHtcbiAgICAgICAgLnRpdHJlLWF2ZWMtZmF2b3JpcyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5UUExfUFJPRFVJVF9DUk9TU19TRUxMSU5HIHtcbiAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAubG9hZE1vcmUsIC5oaWRlTW9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTEwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYW5jO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgIG1hcmdpbjogYXV0byBhdXRvIDEycHggYXV0bztcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBoMiB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDIwcHgpO1xuICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTc1MHB4KSB7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG59XG4uVFBMX1BST0RVSVRfQ1JPU1NfU0VMTElOR19DQVJPVVNFTCB7XG4gICAgbWFyZ2luOiAwIGF1dG8gNjBweDtcbiAgICBtYXgtd2lkdGg6IDE0Ni4ycmVtO1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE3NTBweCkge1xuICAgICAgICBtYXgtd2lkdGg6IDgyLjk1NDU0NTQ1NDU0NTQ1JTtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICBtYXgtd2lkdGg6IDgxLjgwODk0MzA4OTQzMDg5JTtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMCAtMjBweCA0MHB4IDA7XG4gICAgfVxuXG4gICAgLy8gbWlzZSBlbiBhdmFudFxuICAgIC5ieC13cmFwcGVyIHsgbWFyZ2luOiAwIGF1dG87IH1cblxuICAgIC5jb250ZW50IHtcbiAgICAgICAgLy9tYXgtd2lkdGg6ICRkZXNrdG9wLXNtYWxsO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG5cbiAgICAuZGV0YWlscy1wcm9kdWl0cyB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDI0MHB4O1xuICAgIH1cbiAgICAucHJvZHVpdFByaXggLmluZm8ge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cbiAgICAuYngtd3JhcHBlciB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgICAubGlzdGUtcHJvZHVpdHMge1xuICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgICAgLnNsaWNrLWxpc3Qge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAmLmRyYWdnYWJsZSB7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogdGV4dDtcbiAgICAgICAgICAgICAgICAta2h0bWwtdXNlci1zZWxlY3Q6IHRleHQ7XG4gICAgICAgICAgICAgICAgLW1vei11c2VyLXNlbGVjdDogdGV4dDtcbiAgICAgICAgICAgICAgICAtbXMtdXNlci1zZWxlY3Q6IHRleHQ7XG4gICAgICAgICAgICAgICAgdXNlci1zZWxlY3Q6IHRleHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyODBweDtcbiAgICAgICAgICAgIC5zbGljay1saXN0IHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubGlzdGUtcHJvZHVpdC1pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDI0MHB4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzNDNweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgICAgICAgIC5pbm5lci1pdGVtIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNzUwcHgpIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICAvL21heC13aWR0aDogMjU1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjYwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlLXNtYWxsKSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMzVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLWl0ZW0ge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1lc3NhZ2UtcHJvbW8gLmlubmVye1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTEuMXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMS4xcmVtO1xuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDIuMnJlbSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmVuY2FkcmUge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCA1cHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMTVweDtcbiAgICAgICAgfVxuICAgICAgICAuY2FwdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAuY29kZS1hcnRpY2xlIC5sYWJlbCB7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5xdGUtZXRhdCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxM3B4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5xdGUtZXRhdCAubGliZWxsZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNHB4KTtcbiAgICAgICAgfVxuICAgICAgICAucXRlLWV0YXQgLnN0b2NrLXRlcm1le1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRldGFpbHMtcHJvZHVpdHMge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIC5wcml4LWNvbnRhaW5lcixcbiAgICAgICAgICAgIC5zdG9jayB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmRldGFpbHMtYmFzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgfVxuICAgICAgICAucXR5LXJpZ2h0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucXVhbnRpdGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnF0ZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxNjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYWN0aW9ucyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkZGVza3RvcCkge1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jYWRkaWUsXG4gICAgICAgICAgICAuYWpvdXRlci1hLWxpc3RlIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAubGlzdGUtYWNoYXQtcGx1Z2luIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgLnNvdXNtZW51LWFqb3V0LXByb2R1aXQtbGlzdGUge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDI4MHB4O1xuICAgICAgICAgICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICBib3R0b206IDcwcHg7XG4gICAgICAgICAgICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuYWpvdXRlci1hLWxhLWxpc3RlIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgLnBhZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAubGlzdGUtcHJvZHVpdHMge1xuICAgICAgICAgICAgLmRldGFpbHMtcHJvZHVpdHMge1xuICAgICAgICAgICAgICAgIC5yZWYge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmFjdGlvbnMge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucXR5LXJpZ2h0IHtcbiAgICAgICAgICAgICAgICAucXRlIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAucXVhbnRpdGUge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaXRlbUxpbWl0IHtcbiAgICAgICAgICAgIC5hY3Rpb25zIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAuY2FkZGllLFxuICAgICAgICAgICAgICAgIC5ham91dGVyLWEtbGlzdGUge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5xdHktcmlnaHQge1xuICAgICAgICAgICAgICAgIC5xdWFudGl0ZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRkZXNrdG9wICsgMSkge1xuICAgICAgICAuYngtdmlld3BvcnQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAuc2xpY2stYXJyb3cge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC0xMDAwcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFuYztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyaXNCb3JkO1xuXG4gICAgICAgICYuc2xpY2stZGlzYWJsZWQge1xuICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zbGljay1uZXh0IHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMTBweCAxMHB4IDA7XG4gICAgICAgICAgICByaWdodDogY2FsYyg1cmVtICsgMTVweCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNsaWNrLW5leHQ6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTkwNVwiO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zbGljay1wcmV2IHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMCAwIDEwcHg7XG4gICAgICAgICAgICBsZWZ0OiA1cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zbGljay1wcmV2OjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MDZcIjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTg1MHB4KSB7XG4gICAgICAgICAgICAmLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5zbGljay1wcmV2IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE3NTBweCkge1xuICAgICAgICAgICAgd2lkdGg6IDY0cHg7XG4gICAgICAgICAgICAmLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0NDBweCkge1xuICAgICAgICAgICAgJi5zbGljay1uZXh0IHtcbiAgICAgICAgICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAmLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5saXN0ZS1wcm9kdWl0LWl0ZW0ge1xuXG4gICAgICAgIC5pbWFnZSwgLmltYWdlIC5pbWFnZS1pbm5lciwgLmltYWdlIC5pbWFnZS1pbm5lciAuaW1hZ2UtcHJvZHVpdCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDE5LjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVpdC1nYXVjaGUge1xuICAgICAgICAgICAgLnByb2R1aXQtY29kZSBoMywgLnByb2R1aXQtc3RvY2sgaDMge1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbmZvdHlwZXMtd3JhcCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuXG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVpdC1kcm9pdGUge1xuICAgICAgICAgICAgLmFjdGlvbnMge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByb2R1aXQtc3RvY2sge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgLlRQTF9QUk9EVUlUU19NSVNfRU5fQVZBTlQsXG4gICAgLlRQTF9PUkNBQl9MSVNURV9QUk9EVUlUU19DSE9JU0lTLFxuICAgIC5UUExfVE9QX1ZFTlRFX1BST0RVSVRTLFxuICAgIC5UUExfTElTVEVfUFJPRFVJVFNfRU5fUFJPTU9USU9OLFxuICAgIC5UUExfTk9VVkVBVVhfUFJPRFVJVFMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuXG4gICAgICAgIC5saXN0ZS1hY2hhdC1wbHVnaW57XG4gICAgICAgICAgICAuc291c21lbnUtYWpvdXQtcHJvZHVpdC1saXN0ZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0xNDBweDtcbiAgICAgICAgICAgICAgICB0b3A6IDYwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYWpvdXRlci1hLWxhLWxpc3RlIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNjclO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgIC5UUExfUFJPRFVJVFNfTUlTX0VOX0FWQU5ULFxuICAgIC5UUExfT1JDQUJfTElTVEVfUFJPRFVJVFNfQ0hPSVNJUyxcbiAgICAuVFBMX1RPUF9WRU5URV9QUk9EVUlUUyxcbiAgICAuVFBMX0xJU1RFX1BST0RVSVRTX0VOX1BST01PVElPTixcbiAgICAuVFBMX05PVVZFQVVYX1BST0RVSVRTIHtcbiAgICAgICAgLmxpc3RlLXByb2R1aXRzIHtcbiAgICAgICAgICAgIC5jYWRkaWUsIC5ham91dGVyLWEtbGlzdGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0OCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYm94LXBhbmllciAucXVhbnRpdGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvL2xpc3RlIGFjaGF0XG4gICAgICAgIC5saXN0ZS1hY2hhdC1wbHVnaW4ge1xuICAgICAgICAgICAgLnNvdXNtZW51LWFqb3V0LXByb2R1aXQtbGlzdGUge1xuICAgICAgICAgICAgICAgIHRvcDogMzBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogLTkwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAub3ZlcmZsb3cge1xuICAgICAgICAgICAgICAgIGhlaWdodDogOTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ham91dGVyLWEtbGEtbGlzdGV7XG4gICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDY1JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYubmV3IHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtMjcwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJ4LXZpZXdwb3J0IHtcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKi5UUExfUFJPRFVJVF9DUk9TU19TRUxMSU5HX0NBUk9VU0VMIHtcbiAgICAgICAgLy9saXN0ZSBhY2hhdFxuICAgICAgICAubGlzdGUtYWNoYXQtcGx1Z2luIHtcbiAgICAgICAgICAgIC5zb3VzbWVudS1ham91dC1wcm9kdWl0LWxpc3RlIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ham91dGVyLWEtbGEtbGlzdGU6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1NSU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9Ki9cblxuICAgIC5UUExfUFJPRFVJVFNfTUlTX0VOX0FWQU5ULFxuICAgIC5UUExfT1JDQUJfTElTVEVfUFJPRFVJVFNfQ0hPSVNJUyxcbiAgICAuVFBMX1RPUF9WRU5URV9QUk9EVUlUUyxcbiAgICAuVFBMX0xJU1RFX1BST0RVSVRTX0VOX1BST01PVElPTixcbiAgICAuVFBMX05PVVZFQVVYX1BST0RVSVRTLFxuICAgIC5saXN0ZS1wcm9kdWl0czpub3QoLmxpc3RlLXBhbmllci1jb21tYW5kZS1yYXBpZGUpIHtcbiAgICAgICAgLnN0b2NrIHtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgICAgICAgJiArIC5jb25kaXRpb25uZW1lbnQsXG4gICAgICAgICAgICAmICsgLm1vcmUtb3B0aW9ucyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5UUExfUFJPRFVJVFNfTUlTX0VOX0FWQU5ULFxuICAgIC5UUExfT1JDQUJfTElTVEVfUFJPRFVJVFNfQ0hPSVNJUyxcbiAgICAuVFBMX1RPUF9WRU5URV9QUk9EVUlUUyxcbiAgICAuVFBMX0xJU1RFX1BST0RVSVRTX0VOX1BST01PVElPTixcbiAgICAuVFBMX05PVVZFQVVYX1BST0RVSVRTIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG5cbiAgICAgICAgLmJsb2MtdGl0cmUtcGFnIC5wYWcge1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5saXN0ZS1wcm9kdWl0cyAubGlzdGUtcHJvZHVpdC1pdGVtIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDMzMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5saXN0ZS1wcm9kdWl0cyB7XG4gICAgICAgICAgICAucXR5LXJpZ2h0Om5vdCgud2l0aENhbGMpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTQwcHg7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJveC1wYW5pZXIge1xuICAgICAgICAgICAgICAgIC5xdWFudGl0ZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ham91dGVyLWEtbGlzdGUsXG4gICAgICAgICAgICAuY2FkZGllIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kZXRhaWxzLXByb2R1aXRzIHtcbiAgICAgICAgICAgICAgICAuc3RvY2sge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFBST0RVSVRTIFJFQ09NTUFOREVSIFBBUiBWT1RSRSBDT09QRVJBVElWRVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLnJlY2hlcmNoZS1yZXN1bHRhdHMge1xuICAgIC5yZXN1bHRhdC1wcm9kdWl0cy1taXNlLWVuLWF2YW50IHtcbiAgICAgICAgLnJlY2hlcmNoZS10cmktb25nbGV0IHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm5icmUge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5yZXN1bHRhdC1wcm9kdWl0cy1taXNlLWVuLWF2YW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cmVtO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuICAgICAgICAuYmxvYy10aXRyZS1wYWcge1xuICAgICAgICAgICAgLnBhZyB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4ubGlzdGUtcHJvZHVpdHMtLXJlY29tbWFuZGUge1xuICAgIG1hcmdpbjogMCAtMS41cmVtO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgIHdpZHRoOiA4My4zMyU7XG4gICAgfVxuICAgICY6bm90KC5zbGljay1pbml0aWFsaXplZCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5zZWFyY2gtc3VnZ2VzdGVyLXJlc3VsdHMge1xuICAgICAgICAmLWl0ZW0ge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyaXNCb3JkO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRtb2JpbGUgKyAxKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMjUuMSU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi1pbWFnZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDguOHJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRtb2JpbGUgKyAxKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNS4xJTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgICAgICAgICAmICsgLnNlYXJjaC1zdWdnZXN0ZXItcmVzdWx0cy1pdGVtLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyNS4xJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYtZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi1saWJlbGxlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogN3B4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyLjJyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5tYXJxdWUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8vbWVzc2FnZSBwcm9tb1xuICAgIC5tZXNzYWdlLXByb21vIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDFyZW0pO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtd3JhcHBlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgLTEuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAtMi4xcmVtIDAgMCAtMS41cmVtO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4IDVweCAwIDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogLTJyZW0gMCAwO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweCA1cHggMCAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMnJlbSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2sge1xuICAgICAgICAmLWxpc3Qge1xuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuZHJhZ2dhYmxlIHtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiB0ZXh0O1xuICAgICAgICAgICAgICAgIC1raHRtbC11c2VyLXNlbGVjdDogdGV4dDtcbiAgICAgICAgICAgICAgICAtbW96LXVzZXItc2VsZWN0OiB0ZXh0O1xuICAgICAgICAgICAgICAgIC1tcy11c2VyLXNlbGVjdDogdGV4dDtcbiAgICAgICAgICAgICAgICB1c2VyLXNlbGVjdDogdGV4dDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLXNsaWRlIHtcbiAgICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLXByZXYge1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtbmV4dCB7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBUQUJMRUFVIFBSSVggUVVBTlRJVEFUSUYgREFOUyBWT0xFVFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG4uYy10YWJsZS1wcmljZV9fcGFyZW50IHRhYmxlLFxuLmMtdGFibGUtcHJpY2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuXG4gICAgdGhlYWQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZ3Jpc01lbnU7XG4gICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICB9XG5cbiAgICB0aGVhZCB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IDVweCAxMHB4IDVweCAwO1xuICAgIH1cblxuICAgIHRkLFxuICAgIC52b2xldCAmIHRkIHtcbiAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG5cbiAgICB0cjpudGgtY2hpbGQoZXZlbikgdGQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRmZGZkO1xuICAgIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRFTVBMQVRFIExJU1RFIERFUyBFVElRVUVUVEVTIFBST0RVSVRTXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uVFBMX09SQ0FCX0xJU1RFX0VUSVFVRVRURSB7XG4gIC8qXG4gICAgTGlzdGUgZXRpcXVldHRlc1xuICAqL1xuICAuY29tbWFuZGUtcmFwaWRlLXBhbmllciB7XG4gICAgLy9lbmNhcnQgY29tbWFuZGUgcmFwaWRlXG4gICAgLmVuY2FydC1jb21tYW5kZS1yYXBpZGUge1xuICAgICAgLmRlcG90LWZpY2hpZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgLmJvdXRvbi1yb3VnZTpiZWZvcmUge1xuICAgICAgICAgIEBleHRlbmQgLmZhO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDE0XCI7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4wNzFlbTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vdGFibGVhdSBkZSBwcm9kdWl0XG4gICAgLmRpc3BsYXktdGFibGUge1xuICAgICAgLnJlZmVyZW5jZSB7XG4gICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgIC5pbWctcHJvZCB7XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNTFweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJiArIC5kZXRhaWxzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5saWJlbGxlIHtcbiAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgIH1cbiAgICAgIC5tYXJxdWUge1xuICAgICAgICB3aWR0aDogMTQlO1xuICAgICAgfVxuICAgICAgLmNvbmQge1xuICAgICAgICB3aWR0aDogMTAlO1xuICAgICAgfVxuICAgICAgLnF1YW50aXRlIHtcbiAgICAgICAgd2lkdGg6IDglO1xuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAubGlzdGUtdGJvZHkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIH1cbiAgICAgIC5saXN0ZS1wcm9kdWl0cy1pdGVtIHtcbiAgICAgICAgLmRpc3BsYXktdGFibGUge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgLnJlZmVyZW5jZSB7XG4gICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgICAubGliZWxsZSB7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgIH1cbiAgICAgICAgICAubWFycXVlIHtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNvbmQge1xuICAgICAgICAgICAgd2lkdGg6IDEwJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLnF1YW50aXRlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMCU7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5wcml4IHtcbiAgICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy9lbmNhcnQgbWVtb3Jpc2F0aW9uXG4gIC5ldGlxdWV0dGUtbWVtb3Jpc2Uge1xuICAgICYtd3JhcHBlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZTdlN2U3O1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIGxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1jb250YWluZXIge1xuICAgICAgLnNlbGVjdC13cmFwIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB9XG4gICAgICAuYnRuLXdyYXBwZXIge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbjogNHB4IDAgMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIH1cbiAgICAgIC5idG4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICAgIH1cbiAgICAgICAgJi1ham91dGVyOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcXGU5MWFcIjtcbiAgICAgICAgfVxuICAgICAgICAmLXN1cHByaW1lcjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTA5XCI7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjAzNWVtO1xuICAgICAgICB9XG4gICAgICAgICYtbm91dmVhdTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTEzXCI7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgIC5idG4ge1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgICAmICsgLmJ0biB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAuc2VsZWN0LXdyYXAge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIC5idG4td3JhcHBlciB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vbGlzdGUgZXRpcXVldHRlc1xuICAuZW50ZXRlLWV0aXF1ZXR0ZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmlzQm9yZHVyZTtcbiAgICBmb250LXNpemU6IDAuOTQxMThlbTtcbiAgICBwYWRkaW5nOiAwIDIwcHggMTBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC5hcnRpY2xlIHtcbiAgICAgIHdpZHRoOiAyMiU7XG4gICAgfVxuICAgIC5saWJlbGxlIHtcbiAgICAgIHdpZHRoOiA0OCU7XG4gICAgfVxuICAgIC5wcml4IHtcbiAgICAgIHdpZHRoOiAxMCU7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgIHBhZGRpbmc6IDAgMTBweCAxMHB4O1xuICAgICAgLmFydGljbGUsIC5saWJlbGxlIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICAgIC5wcml4IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmxpZ25lLWV0aXF1ZXR0ZSB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICA+IGRpdiB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG4gICAgLmFydGljbGUge1xuICAgICAgd2lkdGg6IDIyJTtcbiAgICB9XG4gICAgLmxpYmVsbGUge1xuICAgICAgd2lkdGg6IDQ4JTtcbiAgICB9XG4gICAgLnByaXgge1xuICAgICAgd2lkdGg6IDEwJTtcbiAgICB9XG4gICAgLmFjdGlvbiB7XG4gICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAuYnRuIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgJiArIC5idG4ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5pY28ge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgfVxuICAgICAgJi1wZW5jaWw6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ1xcZTkyMyc7XG4gICAgICB9XG4gICAgICAmLWRlbGV0ZTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnXFxlOTA5JztcbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgLmFydGljbGUge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgfVxuICAgICAgLmxpYmVsbGUge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgICAgfVxuICAgICAgLnByaXgge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy90YWJsZSBhY3Rpb24gYnRucyAocHJpbnQpXG4gIC50YWJsZS1hY3Rpb24ge1xuICAgIGJhY2tncm91bmQ6ICNlN2U3ZTc7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgICAgIGJhY2tncm91bmQ6ICRibGV1O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qXG4gICAgRm9ybXVsYWlyZSBlZGl0L25ld1xuICAqL1xuICAuZXRpcXVldHRlLWRldGFpbC1mb3JtIHtcbiAgICAuZmllbGQge1xuICAgICAgbWluLWhlaWdodDogNjBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgd2lkdGg6IDE5JTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAmW2Zvcj1cImVvbGFzX2Vjb21tZXJjZV9vcmNhYl9ldGlxdWV0dGV0eXBlX2Rlc2NyaXB0aW9uQ291cnRlXCJdIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpbnB1dCwgLmZpZWxkLXJlcXVpcmVkLCB0ZXh0YXJlYSB7XG4gICAgICAgIHdpZHRoOiA3OSU7IGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICAgIC5maWVsZC1yZXF1aXJlZCB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAmW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAjZW9sYXNfZWNvbW1lcmNlX29yY2FiX2V0aXF1ZXR0ZXR5cGUgPiBkaXYuZmllbGQtcmVxdWlyZWQge1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbiAgICAjZW9sYXNfZWNvbW1lcmNlX29yY2FiX2V0aXF1ZXR0ZXR5cGVfbWVtb3Jpc2Uge1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC5idG4tY29udCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgLmJ0biB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgLmZpZWxkIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICAgIGxhYmVsLCBpbnB1dCwgLmZpZWxkLXJlcXVpcmVkLCB0ZXh0YXJlYSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBsYWJlbFtmb3I9XCJlb2xhc19lY29tbWVyY2Vfb3JjYWJfZXRpcXVldHRldHlwZV9tZW1vcmlzZVwiXSB7XG4gICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYnRuLWNvbnQge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAuYnRuICsgLmJ0biB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRFTVBMQVRFIENPTVBBUkFURVVSXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4vL2NvbXBhcmF0ZXVyIGNvbG9ubmUgZ2F1Y2hlXG4uY29tcGFyYXRldXIge1xuICAgIC5jb250YWluZXItY29tcGFyYXRldXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgIH1cbiAgICAuaXRlbXMge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgJiA+IGRpdiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb21wYXJhdGV1cl9saWJlbGxlRGVsIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTclO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pdGVtLWltYWdlIHsgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgICAgIC5saWJlbGxlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDEzcHgpO1xuICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICB9XG4gICAgICAgIC5pY29uLWRlbGV0ZSB7XG4gICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgaDMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgIH1cbiAgICAuYnRuLWNvbXBhcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkdmVydDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHBhZGRpbmc6IDEzcHggMTBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAuaWNvbW9vbi1jb21wYXJlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDIxcHgpO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5tZXNzYWdlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRFTVBMQVRFIENPTVBBUkFURVVSXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uVFBMX0NPTVBBUkFURVVSIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcblxuICAgIC8vYXZlYyBidG4gZmF2b3Jpc1xuICAgIC53aXRoLWJ0bi1mYXZvcmlzICYge1xuICAgICAgICBwYWRkaW5nLXRvcDogNnJlbTtcbiAgICB9XG4gICAgLy9ib3V0b24gcmV0b3VyXG4gICAgLnJldG91ci1saXN0ZTpub3QoLnZpZGUpe1xuICAgICAgICAuYm91dG9uLXJldG91cntcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgICAgIC8vYXZlYyBidG4gZmF2b3Jpc1xuICAgICAgICAgICAgLndpdGgtYnRuLWZhdm9yaXMgJiB7XG4gICAgICAgICAgICAgICAgdG9wOiA2cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjUlO1xuICAgICAgICB3aWR0aDogMjAuODc1JTtcbiAgICAgICAgLy90aXRyZVxuICAgICAgICAmLnRpdHJlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNC41JTtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxOHB4KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2EwYTBhMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDJweDtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNlMGUwZTA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy9wcm9kdWl0c1xuICAgICAgICAmLml0ZW0ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweCA1cHggMCAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAgIH1cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNnB4KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHsgYm9yZGVyOiAwOyB9XG5cbiAgICAgICAgICAgICYuZGVzY3JpcHRpb25Mb25ndWUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAxMHB4O1xuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy90aXRyZSBwcm9kdWl0XG4gICAgLnByb2R1aXQge1xuICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuXG4gICAgLy90cnVuY2F0ZSB0ZXh0XG4gICAgLm1vcmUge1xuICAgICAgICBjb2xvcjogJHZlcnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAvL2ZhY2V0dGVzXG4gICAgLmZhY2V0dGVzIHVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBib3JkZXI6IDAgbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVpdFByaXgge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgLmxlZnQge1xuICAgICAgICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgICAgICAgd2lkdGg6IDM1JTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNHB4KTtcbiAgICAgICAgfVxuICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgd2lkdGg6IDY1JTtcbiAgICAgICAgICAgIC5wcml4IHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5lY29wYXJ0IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxM3B4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vcGhvdG9cbiAgICAucGhvdG8ge1xuICAgICAgICBtaW4taGVpZ2h0OiAxMy41cmVtO1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgLm5vbVByb2R1aXRQYW5pZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vYm91dG9uIGFjdGlvbnNcbiAgICAuYWN0aW9uIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjA2M2VtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnF1YW50aXRlQWxyZWFkeUluUGFuaWVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnZvaXItcHJvZHVpdCB7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuYm91dG9uLWJsZXU7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibGV1O1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIEBleHRlbmQgLmZhO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjAwZVwiO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucmV0aXJlciB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgY29sb3I6ICRyb3VnZTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgLmljb21vb24tY2xvc2Uge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xNzZlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBDT01QQVJBVEVVUiBEQU5TIExBIExJU1RFIFBST0RVSVRcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuLmxpc3RlQ29tcGFyYXRldXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmlzQm9yZHVyZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyaXNCb3JkdXJlO1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgICYuc3RpY2t5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyaXNDbGFpcjtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHotaW5kZXg6IDk7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBib3JkZXItdG9wOiBub25lO1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRkZXNrdG9wKSB7XG4gICAgICAgICAgICBsZWZ0OiAzNzdweDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgcmlnaHQ6IDU5cHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGRlc2t0b3ApIHtcbiAgICAgICAgICAgIGxlZnQ6IDI4LjVyZW07XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIHJpZ2h0OiA1OXB4O1xuICAgICAgICAgICAgLlRQTF9SRVNVTFRBVF9SRUNIRVJDSEVfRkFDRVRURV9QUk9EVUlUICYge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA2MHB4IC0gMjlweCAtIDI1NXB4KTtcbiAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi50cmFuc2l0aW9uSGVhZGVyR29pbmdVcCB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAuNXM7XG4gICAgfVxuXG4gICAgJi5saXN0ZUNvbXBhcmF0ZXVyUHJvZHVjdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmlzQ2xhaXI7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwIDYwcHg7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAuNXM7XG4gICAgfVxuXG4gICAgJi5zdGlja3lQcm9kdWN0IHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHotaW5kZXg6IDIwMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLy9yZXN1bHRhdCBkZSByZWNoZXJjaGUgdW5pcXVlbWVtdFxuICAgIC5yZWNoZXJjaGUtcmVzdWx0YXRzIC5UUExfUkVTVUxUQVRfUkVDSEVSQ0hFX0ZBQ0VUVEVfUFJPRFVJVCAmOm5vdCguc3RpY2t5KSB7XG4gICAgICAgIC8qd2lkdGg6IGNhbGMoMTAwJSArIDYwcHggLSAzMHB4IC0gMzQ4cHgpO1xuICAgICAgICBmbG9hdDogcmlnaHQ7Ki9cbiAgICB9XG5cbiAgICAubGlzdGVDb21wYXJhdGV1cl9fbmJQcm9kdWl0cyB7XG4gICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgd2lkdGg6IDEwJTtcbiAgICAgICAgbWluLXdpZHRoOiAxMDBweDtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjlyZW07XG5cbiAgICB9XG5cbiAgICAubGlzdGVDb21wYXJhdGV1cl9fbGlzdGVQcm9kdWl0cyB7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzNjBweCkge1xuICAgICAgICAgICAgd2lkdGg6IDY1JTtcbiAgICAgICAgfVxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5saXN0ZUNvbXBhcmF0ZXVyX19wcm9kdWl0IHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDI1JTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4IDVweCAwO1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAubGlzdGVDb21wYXJhdGV1cl9fcHJvZHVpdEltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYW5jO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGlzdGVDb21wYXJhdGV1cl9fcHJvZHVpdEltZ092ZXJsYXkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgNDksIDk2LCAwLjgpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogLjVzIGVhc2U7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxpc3RlQ29tcGFyYXRldXJfX3Byb2R1aXRJbWc6aG92ZXIgLmxpc3RlQ29tcGFyYXRldXJfX3Byb2R1aXRJbWdPdmVybGF5IHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOHJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzO1xuICAgICAgICAgICAgICAgIC8qISBhdXRvcHJlZml4ZXI6IG9mZiAqL1xuICAgICAgICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgICAgICAgICAgLyogYXV0b3ByZWZpeGVyOiBvbiAqL1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxpc3RlQ29tcGFyYXRldXJfX2J0biB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgZ2FwOiAyMHB4O1xuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxpc3RlQ29tcGFyYXRldXJfX2J0bkNsb3NlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiOztcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiA1cHg7XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzYwcHgpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgIGdhcDogNnB4O1xuICAgICAgICAgICAgLmJvdXRvbi1tZWRpdW0ge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTI1cHg7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjZyZW0gMXJlbTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVEVNUExBVEUgTE9DQVRJT05cbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5UUExfTE9DQVRJT04ge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgIC50aXRyZS1ib3V0b24ge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgICAvL2F2ZWMgYm91dG9uIGZhdm9yaXNcbiAgICAud2l0aC1idG4tZmF2b3JpcyAmIHtcbiAgICAgICAgLnRpdHJlLWJvdXRvbiB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDIzNXB4KTtcbiAgICAgICAgICAgIC50aXRyZSB7XG4gICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA1MHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuaW5uZXIge1xuICAgICAgICBAZXh0ZW5kIC5jbGVhcmZpeDtcbiAgICB9XG4gICAgLnNlbGVjdGlvbi10b3VybmVlIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICAgIC5tYXRlcmllbC1mb3JtLS1hZHJlc3NlcyB7XG4gICAgICAgIC5zZWxlY3Rpb24tdG91cm5lZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudG91cm5lZXMtY29udGFpbmVyIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAmLnNhbnNUb3VybmVlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnRpdHJlLWF2ZWMtZmF2b3JpcyB7XG4gICAgICAgIHdpZHRoOiA0NSU7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzNDVweCk7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDY1cHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5zaG93SW5FdGFwZTIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5ldGFwZXMtdHVubmVsIHtcbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS45cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgI25hdkNvbW1hbmRlIHtcbiAgICAgICAgLmV0YXBlcy10dW5uZWwge1xuICAgICAgICAgICAgLmRvbmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdmVydDtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR2ZXJ0O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICR2ZXJ0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5NjEnO1xuICAgICAgICAgICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdmVydDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGdyaXNGb25jZTtcbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmlzQm9yZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4ubWF0ZXJpZWwtcHJpbnQtYnRuIHtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBhIHtcbiAgICAgICAgQGV4dGVuZCAuYm91dG9uLWJsZXU7XG4gICAgICAgIHRleHQtaW5kZW50OiAtMTAwMHB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTk1Yyc7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbGlnbmVtZW50KCk7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAud2l0aC1idG4tZmF2b3JpcyAmIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxufVxuLm1hdGVyaWVsLXBsYW5uaW5nLXBkZiB7XG4gICAgYSB7XG4gICAgICAgIEBleHRlbmQgLmJvdXRvbi1ibGV1O1xuICAgICAgICBtaW4td2lkdGg6IGluaGVyaXQ7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlOTA4JztcbiAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tYXRlcmllbC1mb3JtLWNvbnRhaW5lciB7XG4gICAgLnR4dC1vdSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICB9XG4gICAgLmJ0bi1zZWFyY2gge1xuICAgICAgICBzcGFuOmJlZm9yZSB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MTVcIjtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiNlb2xhc19lY29tbWVyY2Vfb3JjYWJfbG9jYXRpb25fZGVtYW5kZV90eXBlX3NlYXJjaDpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcbn1cblxuLm1hdGVyaWVsLXByZXZpZXctY29udGFpbmVyLFxuLm1hdGVyaWVsLXNlbGVjdGlvbi13cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xufVxuXG4ubWF0ZXJpZWwtZm9ybSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLmRhdGUtZmllbGQgLmZpZWxkIGlucHV0IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIH1cbn1cblxuLm1hdGVyaWVsLXZpc3VlbCB7XG4gICAgbWFyZ2luOiAwIC0xNXB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgaHIge1xuICAgICAgICBib3JkZXI6IDAgbm9uZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmlzQm9yZHVyZTtcbiAgICB9XG5cbiAgICAmI21hdGVyaWVsLXZpc3VlbCB7XG4gICAgICAgIC5tYXRlcmllbC1yZXRpcmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmI21hdGVyaWVsLXNlbGVjdGlvbiB7XG4gICAgICAgIC5jaGVja2JveC1jb250ZW50IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLm1hdGVyaWVsLWFqb3V0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5lbXB0eSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMCAwIDMwcHg7XG4gICAgfVxuXG4gICAgLnRyaS1jYXRlZ29yaWUge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgLm5iIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IGluaGVyaXQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAzMHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3JCYXNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBhZ2luYXRvci1uYnJlIHtcbiAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuY2hhcmdlbWVudCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICB9XG59XG5cbi5tYXRlcmllbC1wcmV2aWV3LXBhbmUge1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLmNvbnQge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICRibGFuYztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgIGdhcDogMjBweDtcblxuICAgICAgICAmX192aXN1ZWwge1xuICAgICAgICAgICAgd2lkdGg6IDIwLjZyZW07XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY29udGFpbmVyLWV0YXBlLXJlc2VydmV6ICYsXG4gICAgICAgICAgICAuY29udGFpbmVyLWV0YXBlLWNvbmZpcm1lciAmIHtcbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1vYmlsZSArIDEpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDExLjJyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fZGV0YWlsIHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICAmLXRvcCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgIGdhcDogMTBweCAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fY29udGFjdCB7XG4gICAgICAgICAgICB3aWR0aDogMTUuNDA2OTc2NzQ0MTg2MDUlO1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgICAgICAgICBnYXA6IDJyZW07XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogbm9ybWFsO1xuICAgICAgICAgICAgICAgIGdhcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2FjdGlvbiB7XG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSBhbmQgKG1pbi13aWR0aDogJG1vYmlsZSArIDEpIHtcbiAgICAgICAgICAgICAgICBvcmRlcjogMztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmX19kZXNjIHtcbiAgICAgICAgICAgICYtYnRuIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIEBleHRlbmQgLmZhO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxmMDc4JztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjZyZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC44cmVtO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpob3ZlcjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYW5jO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kaXNwbGF5LWxlc3Mge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxmMDc3JztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICZfX2Rlc2MtYnRuIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxuICAgIC5kZXNjIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4zcyk7XG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XG5cbiAgICAgICAgJi5yZWR1Y2VkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzO1xuICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICB9XG4gICAgcCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgfVxuICAgIC5jb2RlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjhyZW07XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmZvdXJuaXNzZXVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyLjFyZW07XG4gICAgICAgIGdhcDogMTBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6ICRjb2xvckJhc2U7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNvbnRhY3Qge1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmQ7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcblxuICAgICAgICAmX19pbmZvIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkdmVydDtcbiAgICAgICAgfVxuICAgICAgICAmX19tYWlsIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZ3Jpc01lbnU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuOHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkgYW5kIChtaW4td2lkdGg6ICRtb2JpbGUgKyAxKSB7XG4gICAgICAgICAgICB3aWR0aDogMjAuNnJlbTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICB9XG4gICAgfVxuICAgIC50YXJpZiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSBhbmQgKG1pbi13aWR0aDogJG1vYmlsZSArIDEpIHtcbiAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgZmxleDogMTtcblxuICAgICAgICAgICAgLmNvbnRhaW5lci1ldGFwZS1yZXNlcnZleiAmLFxuICAgICAgICAgICAgLmNvbnRhaW5lci1ldGFwZS1jb25maXJtZXIgJiB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNoZWNrYm94LWNvbnRlbnQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgIFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICAmOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgICAuY2F0ZWdvcnkge1xuICAgICAgICBwYWRkaW5nOiA0cHggMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjlyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICAgICAgJi1saXN0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgICAgIGdhcDogNXB4IDhweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgfVxuXG4gICAgLmNvbnRhaW5lci1ldGFwZS1yZXNlcnZleiAmLFxuICAgIC5jb250YWluZXItZXRhcGUtY29uZmlybWVyICYge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1hdGVyaWVsLWNvbmZpcm1hdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAmX19kZXRhaWwge1xuICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIH1cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICBtYXJnaW46IDAgMCAzMHB4O1xuICAgIH1cbn1cblxuLmNvbnRfX3Zpc3VlbCB7XG4gICAgJi10b3Age1xuICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5mYW5jeWJveCB7XG4gICAgICAgICAgICB3aWR0aDogMjAuNnJlbTtcbiAgICAgICAgICAgIGhlaWdodDogMjAuNnJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgLmNvbnRhaW5lci1ldGFwZS1yZXNlcnZleiAmLFxuICAgICAgICAgICAgLmNvbnRhaW5lci1ldGFwZS1jb25maXJtZXIgJiB7XG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1vYmlsZSArIDEpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDExLjJyZW07XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTEuMnJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmltZy1mbHVpZCB7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLXRodW1iIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAwIDIuMnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgfVxuICAgIC5zbGljayB7XG4gICAgICAgICYtYXJyb3cge1xuICAgICAgICAgICAgd2lkdGg6IDEuOHJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmlzTWVudTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5mYTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yQmFzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLXByZXYge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxmMDUzJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLW5leHQge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ1xcZjA1NCc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi1zbGlkZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgJi1zbGlkZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIycmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sb2NhdGlvbi1wcmljZSB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgLmxlZnQge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgaDQge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTZweCk7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNnB4KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgY29sb3I6ICRncmlzRm9uY2U7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5yaWdodCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMzBweCk7XG4gICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBNRURJQVFVRVJJRVNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAuVFBMX0xPQ0FUSU9OIHtcbiAgICAgICAgLnRpdHJlLWJvdXRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIC50dW5uZWwtd3JhcHBlciB7XG4gICAgICAgICAgICAuZXRhcGVzIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ldGFwZXMgLmJ0bi1ldGFwZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ldGFwZXMgLmV0YXBlcy10dW5uZWwge1xuICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJvdXRvbi1wcmVjZWRlbnQsXG4gICAgICAgICAgICAuYm91dG9uLXN1aXZhbnQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1hdGVyaWVsLXByZXZpZXctY29udGFpbmVyLFxuICAgIC5tYXRlcmllbC1zZWxlY3Rpb24td3JhcHBlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuXG4gICAgLm1hdGVyaWVsLWZvcm0sXG4gICAgLm1hdGVyaWVsLXByZXZpZXcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxuXG4gICAgLm1hdGVyaWVsLXZpc3VlbCB7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAmID4gZGl2IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAubWF0ZXJpZWwtcHJldmlldy1wYW5lIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sb2NhdGlvbi1wcmljZSB7XG4gICAgICAgIC5sZWZ0LFxuICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZS1zbWFsbCArIDEpIHtcbiAgICAuVFBMX0xPQ0FUSU9OIHtcbiAgICAgICAgLnR1bm5lbC13cmFwcGVyIHtcbiAgICAgICAgICAgIC5ldGFwZXMgLmJ0bi1ldGFwZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYm91dG9uLXByZWNlZGVudCxcbiAgICAgICAgICAgIC5ib3V0b24tc3VpdmFudCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZXRhcGUtc3VpdmFudCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGltcG9ydCBcInNlbGVjdGlvblwiO1xuQGltcG9ydCBcImFkcmVzc2VcIjtcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFNFTEVDVElPTiBMT0NBVElPTlxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLm1hdGVyaWVsLXNlbGVjdGlvbi13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmlzQm9yZHVyZTtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIGdhcDogMTVweDtcblxuICAgICYuc3RpY2t5IHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhbmM7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggNjBweDtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgICYudHJhbnNpdGlvbkhlYWRlckdvaW5nVXAge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgLjVzO1xuICAgIH1cblxuICAgICYgPiBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLnNlbGVjdGlvbi1hY3Rpb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICBnYXA6IDE1cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcblxuICAgICAgICAmX19idG4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMTVweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYnRuLXZvaXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICYuc2hvd24ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgJi5ub3QtZnVsbCB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ1xcZjA3Nyc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxmMDc4JztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNnJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC44cmVtO1xuICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGRlc2t0b3ApIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAwO1xuICAgICAgICAmID4gaDMge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgICAgICB9XG4gICAgICAgIC5zZWxlY3Rpb24tYWN0aW9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgICAgICAgICAgJl9fYnRuIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWF0ZXJpZWwtc2VsZWN0aW9uIHtcbiAgICBmbGV4OiAxO1xuICAgIGdhcDogMTVweDtcbiAgICBtYXJnaW46IDA7XG4gICAgbWF4LWhlaWdodDogNTBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuM3MpO1xuXG4gICAgJi5mdWxsIHtcbiAgICAgICAgbWF4LWhlaWdodDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDExNXB4O1xuICAgIH1cblxuICAgIC8vc3VyY2hhcmdlIHNlbGVjdGlvblxuICAgIC5tYXRlcmllbC1wcmV2aWV3LXBhbmUge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEycHgpO1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDhweCk7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOHJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnQge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGdhcDogMC44cmVtO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuY29udCB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLm1hdGVyaWVsLXJldGlyZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJl9fdmlzdWVsIHtcbiAgICAgICAgICAgIHdpZHRoOiA1cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgICAgICAmLXRodW1iIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19kZXRhaWwge1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWF0ZXJpZWwtcmV0aXJlciB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR0YWJsZXRQbHVzT25lKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDQ5LCA5NiwgMC44KTtcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IC41cyBlYXNlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgb3JkZXI6IDM7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgY29sb3I6ICRyb3VnZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogQURSRVNTRSBMT0NBVElPTlxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLm1hdGVyaWVsLWZvcm0tLWFkcmVzc2VzICB7XG4gICAgJi5UUExfVFVOTkVMIHtcbiAgICAgICAgLmZpZWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAmLXRpdGxlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuN3JlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5hZGRyZXNzLWJsb2NrLWJ0biB7XG4gICAgICAgIC5idG4sXG4gICAgICAgIC5ib3V0b24tdmVydCB7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMjhweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICB0ZXh0YXJlYSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vLi4vY3NzL2ltYWdlcy9iZy10ZXh0YXJlYS5wbmcnKSBuby1yZXBlYXQgMTJweCAxMnB4ICNmZmY7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNTVweDtcbiAgICB9XG5cbiAgICAucmFkaW8ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxufVxuXG4ubWF0ZXJpZWwtY29uZmlybWF0aW9uIHtcbiAgICAuYWRkcmVzcy1ibG9jayB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBDT01NT04gTElTVEUgRE9DVU1FTlRBSVJFXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4ubGlzdGUtZG9jdW1lbnRhaXJlIHtcbiAgICAuaXRlbSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDE2MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTVweCk7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAudGh1bWJuYWlsIHtcbiAgICAgICAgICAgIC5waG90b3Mge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTM1cHg7XG4gICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4ycmVtO1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgICAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZGF0ZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjhyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmRldGFpbHMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgICAgICBnYXA6IDEuMnJlbTtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGdhcDogMS44cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5yZXN1bWUge1xuICAgICAgICAgICAgY29sb3I6ICRncmlzRm9uY2U7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuXG4gICAgICAgICAgICAudGh1bWJuYWlsIHtcbiAgICAgICAgICAgICAgICAucGhvdG9zIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGlzdGUtZG9jLWlubmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGlzdGUtZG9jLWlubmVyIHtcbiAgICAucGhvdG9zIGltZyB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICB9XG5cbiAgICAuZG9jX19uZXcge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC44cmVtO1xuICAgIH1cblxuICAgICY6aGFzKC5waG90b3MpIC5kb2NfX25ldyB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweCAwIDAgMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG1heC13aWR0aDogMTM1cHg7XG4gICAgfVxufVxuXG4uaWNvbi1kb2N1bWVudC1jb25maWRlbnRpZWwge1xuICAgIGNvbG9yOiAjZDMyZDEyO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJi5tb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIEBleHRlbmQgLmZhO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgY29udGVudDogJ1xcZjI5Yyc7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaW5saW5lIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgYm9yZGVyOiAwIG5vbmU7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5kZXNjcmlwdGlvbi1jb25maWRlbnRpZWwge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyb3VnZTtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgJHJvdWdlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IC01cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogVFBMIExJU1RFIERPQ1VNRU5UUyBSQVRUQUNIRVNcbiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9PUkNBQl9MSVNURV9BREhFUkVOVF9ET0NVTUVOVCB7XG4gICAgQGV4dGVuZCAubGlzdGUtZG9jdW1lbnRhaXJlO1xuICAgIC5saXN0ZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qIFRQTCBGSUNIRSBUWVBFRk9STVxuKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uVFBMX0ZJQ0hFX1RZUEVGT1JNIHtcbiAgICAvL2F2ZWMgYm91dG9uIGFqb3V0IGF1IGZhdm9yaXNcbiAgICAud2l0aC1idG4tZmF2b3JpcyAmIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDU1cHg7XG4gICAgfVxufVxuXG5AaW1wb3J0IFwibGlzdGVcIjtcbkBpbXBvcnQgXCJsaXN0ZS1ocFwiO1xuQGltcG9ydCBcImZpY2hlXCI7XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qIFRQTCBMSVNURSBCQVNFIERPQ1VNRU5UQUlSRVxuKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uVFBMX0xJU1RFX0JBU0VfRE9DVU1FTlRBSVJFLFxuLlRQTF9SRVNVTFRBVF9SRUNIRVJDSEVfRkFDRVRURV9ET0NVTUVOVCB7XG4gICAgQGV4dGVuZCAubGlzdGUtZG9jdW1lbnRhaXJlO1xuICAgIC5pdGVtIHtcbiAgICAgICAgLmljb21vb24tbWFpbDI6YmVmb3JlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIC50cmktY2F0ZWdvcmllIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICAgIC5maWx0ZXItbGlzdC1zZWxlY3RlZCB7XG4gICAgICAgIG1hcmdpbjogMCAtMC42cmVtO1xuICAgIH1cbiAgICAuaWNvbi1kb2N1bWVudC1jb25maWRlbnRpZWwge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICB9XG59XG5cbi5mb3JtLXJlY2hlcmNoZSB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgICAmID4gZGl2IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgLnNlbGVjdC13cmFwIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLXdyYXAge1xuICAgICAgICBoMSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuN3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vYmFzZSBkb2MgbGlzdGVcbiAgICAmX190b3Age1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGgyICB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgfVxuICAgICAgICAuZm9ybS1yZWNoZXJjaGVfX3RyaSB7XG4gICAgICAgICAgICAuVFBMX0xJU1RFX0JBU0VfRE9DVU1FTlRBSVJFICYge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmID4gZGl2ICB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGdhcDogMC41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLnNlbGVjdC13cmFwIHtcbiAgICAgICAgICAgIC5UUExfTElTVEVfQkFTRV9ET0NVTUVOVEFJUkUgJiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9ybS1zdWJtaXQge1xuICAgICAgICB3aWR0aDogMTkuMnJlbTtcbiAgICAgICAgbWFyZ2luOiAyLjVyZW0gYXV0byAwO1xuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MTVcIjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5UUExfTElTVEVfQkFTRV9ET0NVTUVOVEFJUkUgdWwubGlzdGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDNyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdGFibGV0ICsgMSkge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICogVFBMIExJU1RFIEJBU0UgRE9DVU1FTlRBSVJFXG4gICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLlRQTF9MSVNURV9CQVNFX0RPQ1VNRU5UQUlSRSB7XG4gICAgICAgIC5yZWNoZXJjaGVGYWNldHRlUHJvZHVpdC1vcHRpb25Hcm91cCB7XG4gICAgICAgICAgICAmID4gZGl2ID4gZGl2Om5vdCgucmVjaGVyY2hlRmFjZXR0ZVByb2R1aXQtb3B0aW9uKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmRhdGUtZmllbGQge1xuICAgICAgICAgICAgICAgIC5maWVsZCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmZpZWxkLXJlcXVpcmVkIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAxMHB4IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50cmktY2F0ZWdvcmllIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgJiA+IGRpdjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZmFjZXR0ZS13cmFwcGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjEwN1wiO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODgyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZmFjZXR0ZSB7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgLmJhc2UtZG9jLXNpZGUtbWVudSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5uaXYxIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAubmF2MCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIC5oYXNDaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgLm9wZW5DaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAubmF2MSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmLnNlbGVjdGVkID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgJiA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAubml2MiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyaXNCb3JkdXJlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICNlY29tX2NhdF9yZWNoZXJjaGVfcGFyX2ZhY2V0dGUgLnJlY2hlcmNoZUZhY2V0dGVQcm9kdWl0LW9wdGlvbkdyb3VwIGxhYmVsOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZm9ybSB7IHBhZGRpbmc6IDA7IH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICogVFBMIExJU1RFIEJBU0UgRE9DVU1FTlRBSVJFXG4gICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLmZvcm0tcmVjaGVyY2hlLXdyYXAgZm9ybTpub3QoLmZvcm0tcmVjaGVyY2hlLS1zaW1wbGUpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMjBweDtcbiAgICB9XG5cbiAgICAuZm9ybS1yZWNoZXJjaGUge1xuICAgICAgICAmID4gZGl2IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAmID4gZGl2IHtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpLFxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fdG9wIHtcbiAgICAgICAgICAgIGgyICB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZm9ybS1yZWNoZXJjaGVfX3RyaSB7XG4gICAgICAgICAgICAgICAgLlRQTF9MSVNURV9CQVNFX0RPQ1VNRU5UQUlSRSAmIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zZWxlY3Qtd3JhcCB7XG4gICAgICAgICAgICAgICAgLlRQTF9MSVNURV9CQVNFX0RPQ1VNRU5UQUlSRSAmIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDk0cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5mb3JtLXN1Ym1pdCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5UUExfTElTVEVfQkFTRV9ET0NVTUVOVEFJUkUsXG4gICAgLlRQTF9PUkNBQl9MSVNURV9BREhFUkVOVF9ET0NVTUVOVCxcbiAgICAuVFBMX1JFU1VMVEFUX1JFQ0hFUkNIRV9GQUNFVFRFX0RPQ1VNRU5UIHtcbiAgICAgICAgLmZhY2V0dGUtbW9iaWxlIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgICAuaW5uZXIgLmxpc3RlIHtcbiAgICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgICAgICAuZGVzY3JpcHRpb24gLmRyb2l0ZSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaWNvbi1kb2N1bWVudC1jb25maWRlbnRpZWwsXG4gICAgLlRQTF9MSVNURV9CQVNFX0RPQ1VNRU5UQUlSRSAuaWNvbi1kb2N1bWVudC1jb25maWRlbnRpZWwsXG4gICAgLlRQTF9SRVNVTFRBVF9SRUNIRVJDSEVfRkFDRVRURV9ET0NVTUVOVCAuaWNvbi1kb2N1bWVudC1jb25maWRlbnRpZWwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAmLm1vYmlsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRQTCBCQVNFIERPQ1VNRU5UQUlSRSBBQ0NVRUlMXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uVFBMX0JBU0VfRE9DX0FDQ0VVSUwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFuYztcbiAgICBwYWRkaW5nOiA2cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDkwcHg7XG5cbiAgICBoMiB7XG4gICAgICAgIEBleHRlbmQgLnRpdHJlLWJsb2MtYnVsbGV0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIH1cbiAgICAuY29udGVudCB7XG4gICAgfVxuICAgIC5saXN0ZSB7XG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS44cmVtO1xuICAgICAgICB9XG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZGF0ZSB7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnJlc3VtZSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLmxpc3RlLWRvYy1wbHVzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgYSB7XG4gICAgICAgIEBpbmNsdWRlIGxpZW4tZmxlY2hlLWJsZXUoKTtcbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogTUVESUEgUVVFUklFU1xuKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkZGVza3RvcCkge1xuXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICogVFBMIEJBU0UgRE9DVU1FTlRBSVJFIEFDQ0VVSUxcbiAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiAgICAuZmwtci01MCAuVFBMX0JBU0VfRE9DX0FDQ0VVSUwge1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDMwcHggMzBweCA0MHB4O1xuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGRlc2t0b3Atc21hbGwpIHtcblxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAqIFRQTCBCQVNFIERPQ1VNRU5UQUlSRSBBQ0NFVUlMXG4gICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLmZsLXItNTAgLlRQTF9CQVNFX0RPQ19BQ0NFVUlMIHtcbiAgICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICogVFBMIEJBU0UgRE9DVU1FTlRBSVJFIEFDQ0VVSUxcbiAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiAgICAuVFBMX0JBU0VfRE9DX0FDQ0VVSUwge1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDMwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiogRklDSEUgQkFTRSBET0NVTUVOVEFJUkVcbiogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9GSUNIRV9CQVNFX0RPQ1VNRU5UQUlSRSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgaDMge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIC5yZXNzb3VyY2VzLWFzc29jaWVlcyB1bCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgbGkgYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmxpZW4tdG91cyB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgICAgICAgIC5lcnJvciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNjMzNhMjc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmJhc2UtZG9jLWNvbnRhY3Qge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxufVxuXG4uZmljaGUtZG9jdW1lbnQtbWFpbiB7XG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTZweCk7XG4gICAgfVxuICAgIC5pbnRyby13aWQtcGhvdG8ge1xuICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxOHB4KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIC5kZXNjcmlwdGlvbntcbiAgICAgICAgICAgIC5yZXN1bWUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNDA0MDQwO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uaW50cm8td2lkLXBob3RvIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBAaW5jbHVkZSBpbnRyby1pbWctZGVzY3JpcHRpb247XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQwNDA0MDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuXG4gICAgLnBob3RvcyB7XG4gICAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOXB4IDAgMCA5cHg7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMCAwIDEwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbGlnbmVtZW50WSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogY2FsYyggMTAwJSAtIDI1MHB4ICk7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWluLWhlaWdodDogMTAwcHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjVweDtcblxuICAgICAgICAucmVzdW1lIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnRZKCk7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTdweCk7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDUwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgKiBGSUNIRSBCQVNFIERPQ1VNRU5UQUlSRVxuICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5maWNoZS1kb2N1bWVudC1tYWluIHtcbiAgICAgICAgLmludHJvLXdpZC1waG90byB7XG4gICAgICAgICAgICAuZGVzY3JpcHRpb257XG4gICAgICAgICAgICAgICAgLnJlc3VtZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzQwNDA0MDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmludHJvLXdpZC1waG90byB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAgIC5waG90b3Mge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIC5yZXN1bWUge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDA0MDQwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDI1cHggMzBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTdweCk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgKiBGSUNIRSBCQVNFIERPQ1VNRU5UQUlSRVxuICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5pbnRyby13aWQtcGhvdG8ge1xuICAgICAgICAucGhvdG9zIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIExJU1RFU1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmxpc3Rlcy1kZS1jb3Vyc2VzIHtcbiAgICAudG9wLWxpc3RlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoMyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSg0MHB4KTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vYXZlYyBib3V0b24gZmF2b3Jpc1xuICAgIC53aXRoLWJ0bi1mYXZvcmlzICYge1xuICAgICAgICAudG9wLWxpc3RlIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMjAwcHgpO1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNjBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmJvdXRvbi1hY3Rpb25zIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgLmJ0bi1wZXRpdC1ibGFuYyB7XG4gICAgICAgICAgICBtYXJnaW46IDAgOHB4IDEwcHggMDtcbiAgICAgICAgICAgICYgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyID4gc3Bhbjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAubGlzdGUtdGFibGV0dGUsIC5saXN0ZS1tb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuZmxvYXQtbGVmdCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXgtd2lkdGg6IDcwJTtcbiAgICAgICAgLmZpZWxkLXJlcXVpcmVkOjphZnRlciB7IHJpZ2h0OiA1JTsgfVxuICAgICAgICAuYnRuLWVkaXQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjQyNWVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5mYTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjA0MFwiO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR2ZXJ0O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5idG4tYW5udWxlciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgzMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuZmxvYXQtcmlnaHQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgICBzZWxlY3Qge1xuICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNnB4KTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyaXNCb3JkdXJlO1xuICAgICAgICBjb2xvcjogJGdyaXNGb25jZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbWluLXdpZHRoOiAyMTBweDtcbiAgICB9XG4gICAgLnNlbGVjdC13cmFwIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDM1cHg7XG4gICAgICAgICY6OmFmdGVyIHsgYm9yZGVyOiAwOyB9XG4gICAgfVxuICAgIC5idG4tbm91dmVsbGUtbGlzdGV7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAmOjpiZWZvcmV7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTkwY1wiO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudFk7XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubm9tYnJlRGVMaXN0ZXMge1xuICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgzMHB4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cblxuICAgIC8vYXZlYyBib3V0b24gYWpvdXQgYXUgZmF2b3Jpc1xuICAgIC53aXRoLWJ0bi1mYXZvcmlzICYge1xuICAgICAgICAubGlzdGUtZGVza3RvcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1NXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy90YWJsZWF1IGxpc3RlIGQnYWNoYXRcbiAgICAuaW50aXR1bGVzIHtcbiAgICAgICAgJiA+IGRpdiB7IHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgICAgICAgLnRyaSB7IG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG4gICAgICAgIC5mbC1kb3duIHsgbWFyZ2luOiAwOyB9XG4gICAgfVxuICAgIC5saXN0ZS1hY2hhdC10YWJsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAgIC5pbnRpdHVsZXMsIC5saXN0ZS1kZXRhaWwge1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAmID4gZGl2IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEzJTtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweCAxMHB4IDA7XG4gICAgICAgICAgICAgICAgJi5saWJlbGxlIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5hY3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzglO1xuICAgICAgICAgICAgICAgICAgICAuc2VsZWN0LXdyYXAge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLm5vbWJyZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMyU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5saXN0ZS1kZXRhaWwge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICYuaGlkZSB7IGRpc3BsYXk6IG5vbmU7fVxuICAgICAgICAgICAgLmxpYmVsbGUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDIwcHgpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNDA0MDQwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzVweDtcbiAgICAgICAgICAgICAgICAmLnBpY3RvZ3JhbW1lIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5NDVcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE0NXB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgxMzAsMTcwLDU1LDAuMjUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTc1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IC0yM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLnRleHRlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMDBlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubGVmdC1kYXRhIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5yaWdodC1kYXRhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5idG4tZGV0YWlsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NTBlbTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICB9XG4gICAgICAgIC50b3RhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNXB4KTtcbiAgICAgICAgICAgIHN0cm9uZ3tcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy9ib3V0b25zIGFjdGlvbnNcbiAgICAuYnRuLWFqb3V0ZXItYXUtcGFuaWVyIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB9XG4gICAgLmFqb3V0ZXItcGFuaWVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBzcGFue1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMjUlO1xuICAgICAgICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogZmljaGUgbGlzdGUgYWNoYXQgZXQgbGlzdGUgYWNoYXQgY29tbXVuIGJvdXRvbnMgKi9cbiAgICAuZmxvYXQtcmlnaHQuYnV0dG9ucyxcbiAgICAuYWpvdXRlci1wYW5pZXIge1xuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudCgpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3BhbiB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgfVxuICAgICAgICAuYnRuLWR1cGxpY2F0ZSB7IG1hcmdpbi1yaWdodDogMjBweDsgfVxuICAgICAgICAuYnRuLWRlbGV0ZSB7IG1hcmdpbjogMDsgfVxuICAgIH1cbiAgICAuZmxvYXQtcmlnaHQuYnV0dG9ucyAuYnRuIHsgZmxvYXQ6IGxlZnQ7IH1cblxuICAgIC8qIGZpY2hlIGxpc3RlIGFjaGF0ICAqL1xuXG4gICAgLy9lZGl0aW9uIGxpc3RlIGFjaGF0XG4gICAgLmxpc3RlLWFjaGF0LXJlbm9tbWVyIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAuZmllbGQtcmVxdWlyZWQgeyBmbG9hdDogbGVmdDsgfVxuICAgICAgICAuYnRuLWVkaXQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICAmLmFjdGl2ZTpiZWZvcmUgeyBjb250ZW50OiAnXFxmMDBjJzt9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvL2xpc3RlIHByb2R1aXRzIGEgYWZmaWNoZXJcbiAgICAubGlzdGUtYWNoYXQtZGV0YWlsLWZvcm0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICAuZmljaGUtbGlzdGUtYWNoYXQgeyBtYXJnaW46IDA7fVxuICAgIC5saXN0ZS1wcm9kdWl0cyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmZmZmY7XG4gICAgICAgICAgICAmLnNlbGVjdGVkIHsgYm9yZGVyLWNvbG9yOiAkYmxldTsgfVxuICAgICAgICAgICAgJi5pdGVtLW1vdmluZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAzcHggZG90dGVkICM5ZjlhOWE7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2U3ZTdlNztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi51aS1zb3J0YWJsZSB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzo1cHggNXB4IDI1cHggZ3JheTtcbiAgICAgICAgICAgICAgICAgICAgLml0ZW0taGFuZGxle1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudWktc29ydGFibGUtaGVscGVyIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6NXB4IDVweCA1MHB4IGdyYXk7XG4gICAgICAgIH1cblxuICAgICAgICAuaXRlbS1oYW5kbGUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA3cHg7XG4gICAgICAgICAgICBsZWZ0OiA3cHg7XG4gICAgICAgICAgICB3aWR0aDoyNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OjI1cHg7XG4gICAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgIGN1cnNvcjogZ3JhYjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaXRlbS1oYW5kbGUtaWNvbiB7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgICAgICBvcGFjaXR5OjAuMztcbiAgICAgICAgfVxuICAgICAgICAuc2VsZWN0aW9uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnRZKCk7XG4gICAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5lbmNhZHJlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzLjUlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA3NXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jYXB0aW9uIHsgd2lkdGg6IDg1JTsgfVxuICAgICAgICAuYnRuLWFqb3V0ZXItYXUtcGFuaWVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggNXB4O1xuICAgICAgICB9XG4gICAgICAgIC5xdWFudGl0ZUFscmVhZHlJblBhbmllciB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5vcHRpb25zLXNlbGVjdGlvbm5lZXMsXG4gICAgICAgIC5kaW1lbnNpb25zLXNlbGVjdGlvbm5lZXMge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTZweCk7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm9wdGlvbnMtc2VsZWN0aW9ubmVlcyB7XG4gICAgICAgICAgICAubW9kaWZpZXJPcHRpb25zUGFuaWVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5kZXZpcy1ib24taW5mb3Mge1xuICAgICAgICAgICAgcGFkZGluZzogMCA2LjMlIDAgMy41JTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44MTNlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudGFibGUtYWN0aW9ucyB7XG4gICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgYmFja2dyb3VuZDogI2U3ZTdlNztcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgLnNlbGVjdGlvbiB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE2cHgpO1xuICAgICAgICAgICAgbGFiZWwgeyBjb2xvcjogJGJsZXU7IH1cbiAgICAgICAgfVxuICAgICAgICAuYnRuICB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDVweCA4cHggNXB4IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNHB4KTtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4wNzFlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxldTtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQgMC4zcyk7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUgeyBjb2xvcjogI2ZmZjsgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5ham91dC1zZWxlY3Rpb246OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYyMTdcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuZW52b2ktcGFuaWVyOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDNhXCI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmxpc3RlQWNoYXRTdXBwcmltZXJMYVNlbGVjdGlvbjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGYwMTRcIjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudmlkZXIge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDM4cHg7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZjEwY1wiO1xuICAgICAgICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4wNzFlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZGltZW5zaW9ucy1zZWxlY3Rpb25uZWVzIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE2cHgpO1xuICAgICAgICAmID4gc3BhbiArIHNwYW46OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIi0gXCI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNvbW1lbnQge1xuICAgICAgICBtYXJnaW46IDAuNWVtIDA7XG4gICAgICAgIC5zaG93LWNvbW1lbnQge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTZweCk7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMGU1XCI7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jb21tZW50LWZvcm0ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5saXN0ZS1kZXRhaWwtbW9udGFudCB7XG4gICAgICAgIC5wcml4LXRvdGFsLWl0ZW0ge1xuICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4ub3B0aW9ucy1zZWxlY3Rpb25uZWVzIC5idG5Nb2RpZmllck9wdGlvbnNQYW5pZXIsXG4ub3B0aW9ucy1zZWxlY3Rpb25uZWVzIC5idG5Nb2RpZmllck9wdGlvbnNMaXN0ZUFjaGF0LFxuLmJ0bk1vZGlmaWVyT3B0aW9uc0RpbWVuc2lvbnMge1xuICAgIGNvbG9yOiAkYmxldTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZDogMCBub25lO1xuICAgIGJvcmRlcjogMCBub25lO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICY6OmJlZm9yZXtcbiAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgY29udGVudDogJ1xcZTk1NSc7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgfVxuICAgICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZle1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxufVxuXG4ub3B0aW9ucy1zZWxlY3Rpb25uZWVzIHtcbiAgICAub3B0aW9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAubW9kaWZpZXJPcHRpb25zUGFuaWVyLCAubW9kaWZpZXJPcHRpb25zTGlzdGVBY2hhdCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMWVtO1xuICAgICAgICB9XG4gICAgICAgIC5idG4ge1xuICAgICAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxMjBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5ib3V0b24tZ3JpcyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgbGkge1xuICAgICAgICBtYXJnaW46IDZweCA2cHggMCAwO1xuICAgIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogTUVESUFRVUVSSUVTXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICogTElTVEVTXG4gICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5saXN0ZXMtZGUtY291cnNlcyB7XG4gICAgICAgIC5saXN0ZS1wcm9kdWl0cyB7XG4gICAgICAgICAgICAuaXRlbS1oYW5kbGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmludGl0dWxlcyB7XG4gICAgICAgICAgICAudHJpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmFqb3V0ZXItcGFuaWVyIHtcbiAgICAgICAgICAgIC5idG4sXG4gICAgICAgICAgICAuYnRuLWFqb3V0ZXItYXUtcGFuaWVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubGlzdGUtdGFibGV0dGUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAuYnRuLXN1Ym1pdCwgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IGluaGVyaXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc2VsZWN0LXdyYXAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vYWN0aW9ucyAtIGZpY2hlIGxpc3RlIGFjaGF0XG4gICAgICAgIC50YWJsZS1hY3Rpb25zIHtcbiAgICAgICAgICAgICYudG9wIHtcbiAgICAgICAgICAgICAgICAuYnRuIHsgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAgICAgICAgIC5zZWxlY3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0OCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5ub21icmVEZUxpc3Rlcy5saXN0ZSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgfVxuICAgICAgICAudmlkZXIge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcblxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgKiBMSVNURVNcbiAgICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLmxpc3Rlcy1kZS1jb3Vyc2VzIHtcblxuICAgICAgICAubGlzdGUtcHJvZHVpdHMge1xuICAgICAgICAgICAgLml0ZW0taGFuZGxlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgIC5saXN0ZS1hY2hhdC10YWJsZSB7XG4gICAgICAgICAgICAuaW50aXR1bGVzID4gZGl2IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICYuYWN0aW9ue1xuICAgICAgICAgICAgICAgICAgICAuc2VsZWN0LXdyYXAge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmxpc3RlLWRldGFpbCB7XG4gICAgICAgICAgICAgICAgJiA+IGRpdiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICYuYWN0aW9uLCAmLmxpYmVsbGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJi5saWJlbGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5sZWZ0LWRhdGEge1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnJpZ2h0LWRhdGEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODVlbTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0OCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zZWxlY3Qtd3JhcCB7IG1hcmdpbjogMDsgfVxuICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgbWluLXdpZHRoOiBpbmhlcml0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgICAgICAgfVxuICAgICAgICAuYnRuLW5vdXZlbGxlLWxpc3RlIHtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudCgpO1xuICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxpc3RlLXRhYmxldHRlIHtcbiAgICAgICAgICAgIC5zZWxlY3Qtd3JhcCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vYm91dG9uIGFjdGlvbnNcbiAgICAgICAgLmJ0bi1ham91dGVyLWF1LXBhbmllciB7IGZsb2F0OiByaWdodDt9XG4gICAgICAgIC5ham91dGVyLXBhbmllciB7XG4gICAgICAgICAgICAuYnRuLWFqb3V0ZXItYXUtcGFuaWVyLFxuICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiA0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvL2FjdGlvbnMgLSBmaWNoZSBsaXN0ZSBhY2hhdFxuICAgICAgICAudGFibGUtYWN0aW9ucyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gICAgICAgICAgICAmLmJvdHRvbSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI3MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5saXN0ZS1wcm9kdWl0cyB7XG4gICAgICAgICAgICAuZW5jYWRyZSB7IG1hcmdpbi1sZWZ0OiAzMHB4O31cbiAgICAgICAgICAgIC5jYXB0aW9uIHtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ib3gtcGFuaWVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgICAgICAgICAuYnRuLWFqb3V0ZXItYXUtcGFuaWVyIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMjVweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBhbGlnbmVtZW50KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnF1YW50aXRlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5saXN0ZS1tb2JpbGUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgLmZsb2F0LXJpZ2h0LmJ1dHRvbnMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgLmJ0biB7IGZsb2F0OiBub25lOyB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudG9wLWxpc3RlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAuZmxvYXQtbGVmdCB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZmxvYXQtcmlnaHQuYnV0dG9ucyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5saXN0ZS1hY2hhdC1yZW5vbW1lciB7XG4gICAgICAgICAgICAgICAgLmJ0bi1lZGl0IHsgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgICAgICAgICAgICAgICAuZmllbGQtcmVxdWlyZWQge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudmlkZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCA2cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmJvdXRvbi1hY3Rpb25zIC5idG4tcGV0aXQtYmxhbmMge1xuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICYgPiBzcGFuOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBUVU5ORUxcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuLy9CbG9jIGhlYWRlcnNcbkBpbXBvcnQgJ2hlYWRlcic7XG5cbi8vQmxvYyBjb21tb25cbkBpbXBvcnQgJ2NvbW1vbic7XG5cbi8vZXRhcGUgbGl2cmFpc29uXG5AaW1wb3J0ICdsaXZyYWlzb24nO1xuXG4vL3BhbmllclxuQGltcG9ydCBcInBhbmllclwiO1xuXG4vL2xpc3RlLXBhbmllcnNcbkBpbXBvcnQgJ2xpc3RlLXBhbmllcnMnO1xuXG4vL2NvbW1hbmRlIHJhcGlkZVxuQGltcG9ydCBcImNvbW1hbmRlLXJhcGlkZVwiO1xuXG4vL3BhbmllcnMgYSB2YWxpZGVyXG5AaW1wb3J0IFwicGFuaWVyLWEtdmFsaWRlclwiOyIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRVTk5FTCAtIEhFQURFUlxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuI25hdkNvbW1hbmRlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgLmV0YXBlcy10dW5uZWwge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgd2lkdGg6IDY0JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyaXNCb3JkdXJlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbGlnbmVtZW50WDtcbiAgICAgICAgICAgIHRvcDogMjZweDtcbiAgICAgICAgfVxuICAgICAgICAmID4gZGl2IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDUycHggMTBweCAwO1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmlzQm9yZHVyZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnRYO1xuICAgICAgICAgICAgICAgIHRvcDogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuc2VsZWN0ZWQsXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvckJhc2U7XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdmVydDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHZlcnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi52YWxpZGVyIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIEBleHRlbmQgLmZhO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxmMDBjJztcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdmVydDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHZlcnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAuZXRhcGVzLXR1bm5lbCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udHVubmVsLXdyYXBwZXIge1xuICAgIC5ib3V0b24tcHJlY2VkZW50IHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgd2lkdGg6IDE4JTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDUzXCI7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYm91dG9uLXN1aXZhbnQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgd2lkdGg6IDE4JTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLmZhO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnByaXhTZWNvbmRlVW5pdGVGb3JDYWxjdWxhdGV1ciB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgfVxuICAgIC5wYW5pZXItYWN0aWYge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZ3Jpc01lbnU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgcGFkZGluZzogMzBweDtcblxuICAgICAgICAmX19wcm9kdWN0cyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IDE2cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgdGV4dGFyZWEge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uLy4uL2Nzcy9pbWFnZXMvYmctdGV4dGFyZWEucG5nJykgbm8tcmVwZWF0IDEycHggMTJweCAjZmZmO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDU1cHg7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgLmJvdXRvbi1wcmVjZWRlbnQsIC5ib3V0b24tc3VpdmFudCB7XG4gICAgICAgICAgICB3aWR0aDogNDglO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS45cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA1cmVtO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICAucHJpeFNlY29uZGVVbml0ZUZvckNhbGN1bGF0ZXVyIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBGSUNIRSBDT01NQU5ERSAtIEhFQURFUlxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmZpY2hlLWNvbW1hbmRlLWhlYWRlciB7XG4gICAgLmxpYmVsbGUtcGFuaWVyLWFjdGlmIHtcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5idG4tYWN0aW9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgIC5saXN0ZS1hY2hhdC1wbHVnaW4ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnBhbmllci1hY3RpZiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIC5uYW1lIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICAuYnRuLXBldGl0LWJsYW5jIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5NTVcIjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZS1zbWFsbCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjJyZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5idG4tcGV0aXQtcm91Z2Uge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzcmVtO1xuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUtc21hbGwpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxcmVtIGF1dG8gMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIycmVtO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxcmVtIDAgMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0cmVtO1xuICAgICAgICB9XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgICAgIH1cbiAgICAgICAgLmNoYW50aWVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgM3JlbTtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGdyaXNCb3JkO1xuICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuICAgICAgICAuYWN0aW9uLFxuICAgICAgICAuYWN0aW9ucy1kcm9pdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgfVxuICAgICAgICAuYWN0aW9uIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICBnYXA6IDEwcHg7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmFjdGlvbnMtZHJvaXQge1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgLmJ0bi1wZXRpdC1yb3VnZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUtc21hbGwpIHtcbiAgICAgICAgICAgICAgICAuYnRuLXBldGl0LXJvdWdlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5lZGl0LWxpYmVsbGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAuZmllbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAzcmVtO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRncmlzQm9yZDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogM3JlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMCAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnNlbGVjdC13cmFwLFxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMS41cmVtO1xuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUtc21hbGwpIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMnJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlLXNtYWxsKSB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAjY29tbWFuZGVfaW5mb3JtYXRpb25zX2Zvcm0ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIGZvcm0ge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTQwMHB4KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICAgICAgICAgICAgICBmbGV4OiBpbmhlcml0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5saW5rLWVkaXQge1xuICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIH1cbiAgICAuYnRuLWFjdGlvbnMtYm90dG9tIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRncmlzQm9yZHVyZTtcbiAgICAgICAgICAgIHdpZHRoOiA2NCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5idG4tcGV0aXQtYmxhbmMge1xuICAgICAgICBtYXJnaW46IDAgMjBweCAxMHB4IDA7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICAgICAgICAgICAgd2lkdGg6IDIuNHJlbTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3Zlcjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB9XG4gICAgfVxuICAgICNidG5Db21tYW5kZVJhcGlkZXtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTk0NlwiO1xuICAgICAgICB9XG4gICAgfVxuICAgICNidG5QYW5pZXJBY3Rpb25TdXBwcmltZXI6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTVlXCI7XG4gICAgfVxuICAgICNidG5QYW5pZXJBY3Rpb25UcmFuc2ZlcmVyOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZTk2MlwiO1xuICAgIH1cbiAgICAjYnRuUGFuaWVyQWN0aW9uRHVwbGlxdWVyOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZTk1YVwiO1xuICAgIH1cbiAgICAjYnRuUGFuaWVyQWN0aW9uUHJpbnQ6OmJlZm9yZSxcbiAgICAjYnRuUGFuaWVyQWN0aW9uSW1wcmltZXI6YmVmb3JlLFxuICAgIC5idG4taW1wcmltZXI6YmVmb3JlLFxuICAgIC5idG4tZWRpdGVyOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTVjXCI7XG4gICAgfVxuICAgIC5idG4tc2F2ZS10by1saXN0OjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZTk2M1wiO1xuICAgIH1cbiAgICAjYnRuUGFuaWVyQWN0aW9uRXhwb3J0ZXI6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTU5XCI7XG4gICAgfVxuICAgIC5idG4taW1wcmltZXItZXRpcTo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGU5NWJcIjtcbiAgICB9XG5cbiAgICAubmItcHJvZHVpdHMsXG4gICAgLnByb2R1aXRzLWluZGlzcG9uaWJsZXMge1xuICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgzMHB4KTtcbiAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgd2lkdGg6IDQ3JTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgLnBhbmllci1hY3RpZiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgLnBhbmllci1hY3RpZiB7XG4gICAgICAgICAgICAuYnRuLXBldGl0LWJsYW5jOm5vdCguYnRuLXZhbGlkZXIpIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNG4rMSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBhbGlnbmVtZW50O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjYnRuQ29tbWFuZGVSYXBpZGV7IGRpc3BsYXk6IGlubGluZTt9XG4gICAgICAgICAgICAuZWRpdC1saWJlbGxlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5idG4tYWN0aW9ucyB7XG4gICAgICAgICAgICAjYnRuUGFuaWVyQWN0aW9uUHJpbnQsXG4gICAgICAgICAgICAuYnRuLXNhdmUtdG8tbGlzdCxcbiAgICAgICAgICAgIC5idG4tc3VibWl0LXZpZGUtcGFuaWVyLFxuICAgICAgICAgICAgLmJ0bi1zdXBwcmltZXItcHJvZHVpdHMtaW5kaXNwb25pYmxlcyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5saXN0ZS1hY2hhdC1wYW5pZXIsXG4gICAgICAgICAgICAuYnRuLXN1Ym1pdC12aWRlLXBhbmllcixcbiAgICAgICAgICAgIC5idG4tc3VwcHJpbWVyLXByb2R1aXRzLWluZGlzcG9uaWJsZXMge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5idG4tYWN0aW9ucy1ib3R0b20ge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYm91dG9uLXByZWNlZGVudCxcbiAgICAgICAgICAgIC5ib3V0b24tc3VpdmFudCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5uYW1lIHtcbiAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yQmFzZTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJG1vYmlsZS1zbWFsbCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm5vdGVzIHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgICAgIG1hcmdpbjogMXJlbSAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnF1aWNrLWVkaXQtdG9wIHtcbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vc2kgbGlzdGUgcGFydGFnZWUgb24gZGltaW51ZSBsZSBzdWJ0aXRsZSA6XG4gICAgI2ZpY2hlQ29tbWFuZGVIZWFkZXJTdWJ0aXRsZTpoYXMofiAucXVpY2stZWRpdC10b3AgbGFiZWwpIGgyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIENPTU1PTlxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLy90YWJsZSBhY3Rpb25zXG4udGFibGUtYWN0aW9ucyB7XG4gICAgYmFja2dyb3VuZDogJGdyaXNNZW51O1xuICAgIHBhZGRpbmc6IDIwcHggMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgLnNlbGVjdGlvbiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMnJlbTtcbiAgICB9XG4gICAgW3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhbmM7XG4gICAgfVxuICAgICYudG9wIHtcbiAgICAgICAgJiA+IFtjbGFzcyo9XCJib3V0b24tXCJdIHtcbiAgICAgICAgICAgIG1hcmdpbjogNXB4IDAgNXB4IDEwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjlyZW0gMnJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAyM3JlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBbY2xhc3MqPVwiYm91dG9uLVwiXSB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5yZW1vdmUtc2VsZWN0aW9uLFxuICAgIC5idG4tc3VibWl0LXZpZGUtcGFuaWVyIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5NWVcIjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYnRuLXN1Ym1pdC12aWRlLXBhbmllciB7XG4gICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgLnJlbW92ZS1zZWxlY3Rpb24ge1xuICAgICAgICBtYXJnaW46IDAgMXJlbTtcbiAgICAgICAgcGFkZGluZzogMTRweCAxNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG4gICAgLmFkZC1zZWxlY3Rpb24ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgcGFkZGluZzogMTRweCAxNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTkxZic7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmJ0bi12YWxpZGVyIHtcbiAgICAgICAgbWluLXdpZHRoOiAxMHJlbTtcbiAgICAgICAgbWFyZ2luOiAwIDFyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuICAgIC5idG4tYWpvdXRlci1hdS1wYW5pZXIge1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgcGFkZGluZzogMTZweCAxNXB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgLnJpZ2h0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgLnRyaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNDBweDtcbiAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB9XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE2cHgpO1xuICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB9XG4gICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNnB4KTtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIC5zZWxlY3Qtd3JhcDo6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgLnRhYmxlLWJ1dHRvbnMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIC5zZWxlY3Rpb24ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICAudHJpIHtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnNlbGVjdC13cmFwIHtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjA3N1wiO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDMwJTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA1NSU7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtOXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIzMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDQwcHggMCAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5yaWdodCB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgLmJ0bi12YWxpZGVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuYm90dG9tIHtcbiAgICAgICAgICAgIGEsIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAyMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucmVtb3ZlLXNlbGVjdGlvbixcbiAgICAgICAgLmJ0bi1zdWJtaXQtdmlkZS1wYW5pZXIge1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDAgMDtcbiAgICAgICAgfVxuICAgICAgICAudGFibGUtYnV0dG9ucyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vdG90YWwgcHJpY2Vcbi50b3RhbC1wYW5pZXJzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHRhYmxldFBsdXNPbmUpIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIH1cbn1cbi50b3RhbC1wcmljZSB7XG4gICAgYmFja2dyb3VuZDogJGJsYW5jO1xuICAgIHBhZGRpbmc6IDEuNXJlbSA0LjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHRhYmxldFBsdXNPbmUpIHtcbiAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgfVxuICAgIC5sYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMi4zcmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgfVxuICAgIC5wcml4LXRvdGFsIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjdyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbiAgICAucHJpeC10b3RhbC1pdGVtcy1zZWxlY3RlZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG59XG5cbi8vcHJvZHVpdHMgaW5kaXNwb25pYmxlc1xuLnBhbmllci1jb250ZW51LWluZGlzcG9uaWJsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNnJlbTtcbiAgICAudG9wIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgICAuYm91dG9uLXJvdWdlIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTVlXCI7XG4gICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vL25vbWJyZSByZXN1bHRhdFxuLm5vbWJyZS1saXN0ZSB7XG4gICAgZm9udC1zaXplOiAyLjdyZW07XG4gICAgY29sb3I6ICRibGV1O1xufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogRVRBUEUgMiAtIFRVTk5FTFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9UVU5ORUwge1xuICAgIC5maWVsZC10aXRsZSB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDIwcHgpO1xuICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cbiAgICAuZmllbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB1bCBsaTpub3QoLmNvbCkge1xuICAgICAgICAgICAgY29sb3I6ICNjMzNhMjc7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNXB4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudHlwZS1jb21tYW5kZSB7XG4gICAgICAgIHdpZHRoOiA0OCU7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAuc2VsZWN0LXdyYXAge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm1vZGUtbGl2cmFpc29uIHtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgNjBweDtcbiAgICAgICAgLy93aWR0aDogNTcuMyU7XG4gICAgICAgIC8vZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFweDtcbiAgICAgICAgLmVuTGlnbmUge1xuICAgICAgICAgICAgLm1vZGUtbGl2cmFpc29uLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIGRpdiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1vZGUtbGl2cmFpc29uLXdyYXBwZXIge1xuICAgICAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuc2VsZWN0aW9uLXRvdXJuZWUge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICB9XG4gICAgLnRvdXJuZWVzLWNvbnRhaW5lciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgJi5zYW5zVG91cm5lZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5kZWxhaS1saXZyYWlzb24ge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAgLm9wdGlvbnMtZGVsYWksIC5kYXRlLWZpZWxkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgICAuZGF0ZS1maWVsZCB7XG4gICAgICAgICAgICAuZmllbGQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMzZyZW07XG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDI4cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZm9ybWF0LXNlbWFpbmUge1xuICAgICAgICAgICAgLmZpZWxkIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIC53cmFwLWRhdGU6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuY29uZmlybWF0aW9uLWRhdGUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgLmVycm9yIHtcbiAgICAgICAgICAgIGNvbG9yOiAjYzMzYTI3O1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTVweCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnJlZmVyZW5jZSB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICB3aWR0aDogNDglO1xuICAgIH1cbiAgICAuZW1haWwtc3VpdmktY29tbWFuZGUge1xuICAgICAgICB3aWR0aDogNDguNyU7XG4gICAgfVxuICAgIC5maWVsZC1yZXF1aXJlZDo6YWZ0ZXIge1xuICAgICAgICByaWdodDogMjBweDtcbiAgICB9XG4gICAgLmFkcmVzc2UtY29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgLmFkZHJlc3MtYmxvY2sge1xuICAgICAgICAgICAgLnNlbGVjdGVkIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAkdmVydDI7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5hZGRyZXNzLWJsb2NrIC5zZWxlY3RlZCAuYWRkcmVzcy1ibG9jay10aXRsZSA+IHA6Zmlyc3QtY2hpbGQgPiBzcGFuIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwMGNcIjtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5mYTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC50dW5uZWwtbWluaS1sb2FkZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogNXB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgICAuYWRyZXNzZS1leGlzdGFudGVzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmFkcmVzc2Utb3B0aW9uIHtcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNjMzNhMjc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgI3R1bm5lbF9saXZyYWlzb25fZm9ybV9vcmlnaW5lQWRyZXNzZSB7XG4gICAgICAgIGRpdiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmFkcmVzc2UtZm9ybS1jb250YWluZXIge1xuICAgICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgLmZvcm0tZmllbGRzLXdyYXBwZXIge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA2OCU7XG4gICAgICAgIH1cbiAgICAgICAgLmZpZWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vLi4vY3NzL2ltYWdlcy9mbC1zZWxlY3QucG5nJykgbm8tcmVwZWF0IDk3JSA1MCUgI2ZmZjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNjMzNhMjc7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5ib3V0b24tYmxldSwgLmJvdXRvbi12ZXJ0LC5ib3V0b24tcm91Z2UgIHtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTYwcHg7XG4gICAgICAgICAgICAmICsgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYW5jO1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIuNHJlbTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50dW5uZWwtbWluaS1sb2FkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmxpYmVsbGVBZHJlc3NlU2VsZWN0aW9ubmVlLFxuICAgIC5idG4tdHVubmVsLWFkcmVzc2UtbW9kaWZ5LFxuICAgIC5idG4tdHVubmVsLXNlbGVjdCB7XG4gICAgICAgIG1pbi13aWR0aDogMTdyZW07XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgJiArIC5idG4ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYm91dG9uLW1lZGl1bSB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmFkZHJlc3MtYmxvY2staW5uZXIuc2VsZWN0ZWQgLmhhcy1zZWxlY3Rpb24gKyBhLmJ0biB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgfVxuICAgICNtYXBUdW5uZWwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGhlaWdodDogNTAwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB3aWR0aDogY2FsYyggMTAwJSAtIDJweCApO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYWRhZGFkO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgfVxuXG4gICAgLm1vZGUtdHJhbnNwb3J0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgLnRhYmxlYXUtYWdlbmRhIHtcbiAgICAgICAgICAgIC5kaXYtY29sIHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpub3QoLmVtcHR5KSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNGRkY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwNzI5Mzg7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmRpdi1yb3cge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgLmNvbCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMS45MyU7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogOTVweDtcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5udW1fc2VtYWluZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogOS41JTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogODVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDQ1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxpYmVsbGUtbW9iIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHRhYmxldFBsdXNPbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNhbGVuZHJpZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgLmxpdnJhaXNvbi1hdS1wbHVzLXRvdC1hY3RpdmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmRpc2FibGUge1xuICAgICAgICAgICAgICAgIC5saXZyYWlzb24tYXUtcGx1cy10b3QtYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4LCA4LCA4LCAwLjUpO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGRpdiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBhbGlnbmVtZW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweCAxMHB4IDAgMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpdiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAud3JhcHBlci1jYWxlbmRyaWVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4IDAgMCA1cHg7XG4gICAgICAgIC53cmFwcGVyIHtcbiAgICAgICAgICAgICYtbGVmdCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHggMCAwIDVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0NXB4IDMwcHg7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi1yaWdodCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDYwcHggMzBweCAyMHB4O1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFOUU5RTk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCA1cHggNXB4IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgyN3B4KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgICAgaDUge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTZweCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5hdS1wbHVzLXRvdCB7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICAuYnRuLXBldGl0LXZlcnQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE2cHgpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJ0bi1hZmZpY2hlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNnB4KTtcbiAgICAgICAgICAgIHdpZHRoOiAxODBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYwMDJcIjtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5mYTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNnB4KTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHRhYmxldFBsdXNPbmUpIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYm90dG9tOiA0NXB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMTBweCAwIDA7XG4gICAgICAgICAgICAud3JhcHBlciB7XG4gICAgICAgICAgICAgICAgJi1sZWZ0IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4IDEwcHggMCAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmF1LXBsdXMtdG90IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICNwb3AtdXAtbW9udGgge1xuICAgICAgICBAaW5jbHVkZSBhbGlnbmVtZW50WCgpO1xuICAgIH1cbiAgICAuc2hvd0RldGFpbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIC5kZXRhaWwge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGlnaHRlbigjRTdFNkU2LCAyLjUlKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgaDUge1xuICAgICAgICAgICAgY29sb3I6ICM0MDQwNDA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG4gICAgICAgIC50YWJsZS1lbnRldGUtZ3Jpc2Uge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvL2FsZXJ0XG4gICAgLmFsZXJ0IHtcbiAgICAgICAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMik7XG4gICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMjUpLCAwIDFweCAycHggcmdiYSgwLDAsMCwuMDUpO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgJi1kYW5nZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJvdWdlO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDcwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnRZO1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLmZhO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDcxXCI7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYtd2FybmluZyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JhbmdlO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDcwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnRZO1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLmZhO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDcxXCI7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgLnR5cGUtY29tbWFuZGUsIC5tb2RlLWxpdnJhaXNvbiB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIC50eXBlLWNvbW1hbmRlLCAucmVmZXJlbmNlLCAuZW1haWwtc3VpdmktY29tbWFuZGUge1xuICAgICAgICAgICAgd2lkdGg6IDY0LjYlO1xuICAgICAgICB9XG4gICAgICAgIC5lbWFpbC1zdWl2aS1jb21tYW5kZSAge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgLmFkcmVzc2UtY29udGFpbmVyIC5hZGRyZXNzLWJsb2NrID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAmLmFkZHJlc3MtYmxvY2staW5uZXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmFkcmVzc2UtZm9ybS1jb250YWluZXIge1xuICAgICAgICAgICAgLmZvcm0tZmllbGRzLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJvdXRvbi1yb3VnZSwgLmJvdXRvbi12ZXJ0LCAuYm91dG9uLWJsZXUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLyoubGliZWxsZS1wYW5pZXItYWN0aWYge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH0qL1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgIC50eXBlLWNvbW1hbmRlLCAucmVmZXJlbmNlLCAuZW1haWwtc3VpdmktY29tbWFuZGUge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgLmFkcmVzc2UtY29udGFpbmVyIC5hZGRyZXNzLWJsb2NrID4gZGl2IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmFkcmVzc2UtZm9ybS1jb250YWluZXIge1xuICAgICAgICAgICAgLmJvdXRvbi1yb3VnZSwgLmJvdXRvbi12ZXJ0LCAuYm91dG9uLWJsZXUge1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gMTBweDtcbiAgICAgICAgICAgICAgICAmICsgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBHRU5FUkFMSVRFUyBQQU5JRVJcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi8qLnBhbmllci10YWJsZSB7XG4gICAgLmxpYmVsbGUge1xuICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICBwIHtcbiAgICAgICAgICAgIEBleHRlbmQgLnRpdHJlLXZlcnQ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubmItYXJ0aWNsZSB7XG4gICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgIHAsXG4gICAgICAgIC5uYnJlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE2cHgpO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudFkoKTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOTE3JztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmFkcmVzc2Uge1xuICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNnB4KTtcbiAgICB9XG4gICAgLm9wdGlvbnMge1xuICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAuYnRuLWJsb2Mge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgJiA+IGEsICYgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxpc3RlLWRldGFpbCB7XG4gICAgICAgICYubG9ja2VkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7XG4gICAgICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy9wYW5pZXJzIGEgdmFsaWRlclxuICAgICYucGFuaWVycy1hLXZhbGlkZXItdGFibGUge1xuICAgICAgICAubGliIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLmludGl0dWxlcyAuZmwtZG93biB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgfVxuICAgICAgICAuaGVhZCwgLnJvdyB7XG4gICAgICAgICAgICAmID4gZGl2IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTYlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucmVmZXJlbmNlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTMlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNsaWVudCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE3JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kYXRlLWNvIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm9wdGlvbnMge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxOCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgICAucm93ID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgfVxuICAgICAgICAubmItYXJ0aWNsZSBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIH1cbn0qL1xuXG4vKlxuICAgIGZpZWxkc2V0LmFkZHJlc3MtYmxvY2tcbiAgICBlLmcuIDogcGFnZSBjcsOpZXIgdW4gcGFuaWVyIC8gY2hvaXNpciBhZHJlc3NlXG4qL1xuLmFkZHJlc3MtYmxvY2tzLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xufVxuLmFkZHJlc3MtYmxvY2sge1xuICAgIHdpZHRoOiAyNC41MDkyNTQwNjYxODA1OSU7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAwIDMwcHggMzBweCAwO1xuICAgICY6bnRoLWNoaWxkKDNuKzMpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgICAmOm50aC1jaGlsZCgzbisxKSB7XG4gICAgICAgIGNsZWFyOiBsZWZ0O1xuICAgIH1cblxuICAgICZfX3BhcmVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGdhcDogMzBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgICAgICAuYWRkcmVzcy1ibG9jayB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygzMyUgLSAxNnB4KTtcblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDE2cHgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBsZWdlbmQge1xuICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNnB4KTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTdlN2U3O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHggNXB4IDAgMDtcbiAgICAgICAgbWluLWhlaWdodDogNTBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgIH1cbiAgICAuY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDVweCAyMHB4O1xuICAgICAgICBjb2xvcjogJGdyaXNGb25jZTtcbiAgICAgICAgJiA+IGRpdiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyaXNNZW51O1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwIG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgcCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gICAgJi1idG4ge1xuICAgICAgICBwYWRkaW5nOiAwIDI1cHggMzBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAvKmEge1xuICAgICAgICAgICAgQGV4dGVuZCAuYm91dG9uLXZlcnQ7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIH0qL1xuICAgIH1cbiAgICAuYWRkcmVzcy1ibG9jay10aXRsZSA+IHA6Zmlyc3QtY2hpbGQgPiBzcGFuIHtcbiAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBMSVNURVMgUEFOSUVSU1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmxpc3RlLXBhbmllcnMsXG4ubGlzdGUtcGFuaWVycy1hLXZhbGlkZXIge1xuXG4gICAgLmxpbmstZWRpdC1ibGV1IHtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTFweCk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuLmxpc3RlLXBhbmllcnMtYS12YWxpZGVyIHtcbiAgICAucGFnaW5hdG9yLW5icmUgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG59XG5cblxuLnJlY2hlcmNoZS1wYW5pZXJzIHtcbiAgICAuZm9ybS1yZWNoZXJjaGUge1xuICAgICAgICAuZmllbGQtcmVxdWlyZWQge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLlRQTF9PUkNBQl9QQU5JRVJTLFxuLlRQTF9PUkNBQl9QQU5JRVJTX1BBUlRBR0VTIHtcbiAgICAuZm9ybS1yZWNoZXJjaGUge1xuICAgICAgICAmID4gZGl2ID4gZGl2Om50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogTElTVEVTIFBBTklFUlMgOiBGSUNIRVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9PUkNBQl9QQU5JRVJTIHtcbiAgICAjbWFwVHVubmVsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6IDUwMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDJweCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNhZGFkYWQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICB9XG4gICAgZm9ybSB7XG4gICAgICAgIC5lbkxpZ25lIHtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5jcmVhdGlvblBhbmllckFkcmVzc2Uge1xuICAgICAgICAuc2VsZWN0LXdyYXA6OmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuICAgICAgICAuYnRuLWZvbmRub2lyLCAuZm9ybS1zdWJtaXQge1xuICAgICAgICAgICAgYSwgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDE1NXB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFuYztcbiAgICAgICAgICAgICAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyLjRyZW07XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYnRuLWdyb3VwLW1vZGlmaWNhdGlvbi1wYW5pZXIge1xuICAgICAgICAgICAgLmJ0bi1mb25kcm91Z2UgYSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJvdWdlO1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmE0MjQyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2J0bjIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEuYm91dG9uLW1lZGl1bSB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fY3JlZXItdW5pcXVlbWVudCBidXR0b24ge1xuICAgICAgICAgICAgQGV4dGVuZCAuYm91dG9uLWJsYW5jO1xuICAgICAgICAgICAgQGV4dGVuZCAuYm91dG9uLW1lZGl1bTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5idG4tdHVubmVsLXNlbGVjdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE0cHgpO1xuICAgICAgICBjb2xvcjogJHZlcnQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR2ZXJ0O1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdmVydDI7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQgMC4zcyk7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAucGFuaWVycy10YWJsZSB7XG4gICAgICAgIC5saWJlbGxlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLlRQTF9PUkNBQl9QQU5JRVJTLFxuLlRQTF9PUkNBQl9QQU5JRVJTX1BBUlRBR0VTIHtcbiAgICAudGl0cmUtYXZlYy1mYXZvcmlzIHtcbiAgICAgICAgd2lkdGg6IDU1JTtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDI1MHB4KTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTI1cHgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZm9ybS5mb3JtLXJlY2hlcmNoZSB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgICNyZWNoZXJjaGVfcGFuaWVyc19mb3JtIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZvcm0tc3VibWl0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wYW5pZXJzLXRhYmxlIHtcbiAgICAgICAgLmxpYmVsbGUge1xuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICAgICAgZ2FwOiAxcmVtIDNyZW07XG4gICAgICAgIH1cbiAgICAgICAgLml0ZW0tY29tbWFuZGUge1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ub3JjYWJQcmludCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBFVEFQRSAxIC0gVFVOTkVMXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uVFBMX1BBTklFUiB7XG4gICAgLnBhbmllci1hY3RpZiB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgIH1cbiAgICAjcGFuaWVyTGliZWxsZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDMzLjMlO1xuICAgIH1cbiAgICAjcGFuaWVyTGliZWxsZUZvcm0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbjogLTVweCAwIDVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTkyMFwiO1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMjRweCk7XG4gICAgICAgICAgICBjb2xvcjogJGdyaXNGb25jZTtcbiAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIH1cbiAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogNjUlO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgICAuZmllbGQtcmVxdWlyZWQ6OmFmdGVyIHtcbiAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5saXN0ZS1hY2hhdC1wYW5pZXJ7XG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHggMjBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAuYnRuLXBldGl0LWJsYW5jIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICAuYWpvdXRlci1hLWxhLWxpc3RlIHtcbiAgICAgICAgICAgIGxlZnQ6IC01NXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5kaXNwbGF5LXRhYmxlIHtcbiAgICAgICAgJiA+IGRpdiB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuICAgICAgICAucmVmZXJlbmNlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNyU7XG4gICAgICAgIH1cbiAgICAgICAgLmxpYmVsbGUge1xuICAgICAgICAgICAgd2lkdGg6IDIzJTtcbiAgICAgICAgfVxuICAgICAgICAubWFycXVlIHtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5zdG9jayB7XG4gICAgICAgICAgICB3aWR0aDogMjEuMyU7XG4gICAgICAgIH1cbiAgICAgICAgLnByaXgge1xuICAgICAgICAgICAgd2lkdGg6IDkuNCU7XG4gICAgICAgIH1cbiAgICAgICAgLnF1YW50aXRlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNC41JTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgLnRvdGFsIHtcbiAgICAgICAgICAgIHdpZHRoOiA4LjUlO1xuICAgICAgICB9XG4gICAgICAgIC5hY3Qge1xuICAgICAgICAgICAgd2lkdGg6IDYuMyU7XG4gICAgICAgIH1cbiAgICAgICAgLnByaXgsIC50b3RhbCB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5pbnRpdHVsZXMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cbiAgICAubGlzdGUtcHJvZHVpdHMge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gICAgLnN1Yi10b3RhbCB7XG4gICAgICAgIHdpZHRoOiA0OC43JTtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggNC4xJTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMjFweCk7XG4gICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42NjdlbTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgICAgICB9XG4gICAgICAgIC50YXhlLWVjbyB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yQmFzZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDEwcHgpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAucGFuaWVyLXZpZGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAuaW5mb01lc3NhZ2VzLFxuICAgICAgICAuY29tbWFuZGUtcmFwaWRlLXBhbmllciB7IG1hcmdpbi1ib3R0b206IDMwcHg7fVxuICAgIH1cbn1cblxuXG4vLyBHZW5lcmFsaXTDqXMgbGlzdGUgcGFuaWVyICsgY29tbWFuZGUgcmFwaWRlXG4ubGlzdGUtcGFuaWVyLWNvbW1hbmRlLXJhcGlkZSB7XG4gICAgLmxpc3RlLXByb2R1aXRzLWl0ZW0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICAgICAgLmRpc3BsYXktdGFibGUuYXZlY09wdGlvbnMge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmRpc3BsYXktdGFibGUgPiBkaXYge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4IDAgMDtcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICYucmVmZXJlbmNlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnF0ZS1ldGF0IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5yZWZlcmVuY2Uge1xuICAgICAgICAgICAgLmltZy1wcm9kIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogNzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZGl2LmxpYmVsbGUsIC5wcml4LXVuaXRhaXJlLCAucHJpeC10b3RhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgyMXB4KTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGEgeyBjb2xvcjogaW5oZXJpdDsgfVxuICAgICAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5mYWJyaWNhbnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTNweCk7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yQmFzZTtcbiAgICAgICAgfVxuICAgICAgICAucHJpeC1tb2JpbGUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAucHJpeC11bml0YWlyZSB7XG4gICAgICAgICAgICAmLmxhYmVsLXByb21vIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHJvdWdlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pbWctcHJvZCB7XG4gICAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA3LjUlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAmICsgLmRldGFpbHMge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzYuNSU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmlkZW50aWZpYW50cywgLmNvbmQge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTZweCk7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODEzZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pbmZvcy10eXBlcyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxM3B4KTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgICNsaWVuQWZmaWNoZXJTdG9jayB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxM3B4KTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGYxMDZcIjtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYucGxpZXI6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnF0ZS1ldGF0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHRvcDogNHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubWFycXVlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE2cHgpO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgLmlkZW50aWZpYW50cyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucXRlIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxNDBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICBhLm1pbnVzLCBhLnBsdXMge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudW5pdGUtcXVhbnRpdGUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE0cHgpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvL3BhbGxpZXJcbiAgICAgICAgICAgIC5wYWxsaWVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxMnB4KTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBjb2xvcjogJHJvdWdlO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjA1YVwiO1xuICAgICAgICAgICAgICAgICAgICBAZXh0ZW5kIC5mYTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNhbGMge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxNDJweDtcbiAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNXB4KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGdyaXNCb3JkdXJlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29uZCBzcGFuIHtcbiAgICAgICAgICAgIC5jb25kLXVuaXRlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucXVhbnRpdGUgLnVuaXRlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE1cHgpO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxNDBweDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgfVxuICAgICAgICAub3B0aW9uLXVuaXRlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4wNWVtO1xuICAgICAgICB9XG4gICAgICAgIC5hbW91bnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMjFweCk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgIH1cbiAgICAgICAgLnF1YW50aXRlLW5ldHRlLXVuaXRlLCAudGF4ZS1lY28ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTFweCk7XG4gICAgICAgIH1cbiAgICAgICAgLnRheGUtZWNvIHtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIH1cbiAgICAgICAgLmFjdCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgLmJ0bi1pY29uLWRlbGV0ZSB7XG4gICAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDIwcHgpO1xuICAgICAgICAgICAgY29sb3I6ICRyb3VnZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MDlcIjtcbiAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhbGlnbmVtZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5vcHRpb25zLXNlbGVjdGlvbm5lZXMsXG4gICAgICAgIC5kaW1lbnNpb25zLXNlbGVjdGlvbm5lZXMge1xuICAgICAgICAgICAgcGFkZGluZzogMCA2LjMlIDAgNi44JTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE2cHgpO1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5kZXZpcy1ib24taW5mb3Mge1xuICAgICAgICAgICAgcGFkZGluZzogMCA2LjMlIDAgNi44JTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44MTNlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgICAgfVxuICAgICAgICAuY29tbWVudCxcbiAgICAgICAgLm1lc3NhZ2UtcHJvbW8sXG4gICAgICAgIC5maW4tZGUtdmllIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNi4zJSAwIDYuOCU7XG4gICAgICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5maW4tZGUtdmllIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcm91Z2VUb21hdGU7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMCAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zaG93LWNvbW1lbnQge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTZweCk7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMGU1XCI7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjYyNWVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5hY3RpdmU6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjA3N1wiO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jb21tZW50LWZvcm0ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgJi5jb21tZW50LW9ibGlnYXRvaXJlIHtcbiAgICAgICAgICAgICAgICAuZmllbGQge1xuICAgICAgICAgICAgICAgICAgICBAZXh0ZW5kIC5maWVsZC1yZXF1aXJlZDtcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1MnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogQ09ORklSTUFUSU9OIERFIENPTU1BTkRFXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4udHVubmVsLWNvbmZpcm1hdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAudHVubmVsLXJlc3VtZS10aXRyZSBhIHtcbiAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgJi5idG4ge1xuICAgICAgICAgICAgY29sb3I6ICRibGFuYztcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZnJvbnRNb2RhbEJveENvbnRhaW5lciB7XG4gICAgICAgIC5tb2RhbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIG1hcmdpbjogMjBweCAwIDMwcHg7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmZvb3RlciB7XG4gICAgICAgICAgICAuYm91dG9uLXZlcnQge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ib3V0b24tcm91Z2Uge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJ0bi1pbXByZXNzaW9uLXdyYXBwZXIge1xuICAgICAgICBtYXJnaW46IDE1cHggMDtcbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogNTAwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgfVxuICAgICAgICAuaWNvbW9vbiB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIE1FRElBUVVFUklFU1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAqIEVUQVBFIDEgLSBUVU5ORUxcbiAgICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLlRQTF9QQU5JRVIge1xuICAgICAgICAjcGFuaWVyTGliZWxsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuICAgICAgICAuaW50aXR1bGVzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLm5iLXByb2R1aXRzLFxuICAgICAgICAucHJvZHVpdHMtaW5kaXNwb25pYmxlcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuICAgICAgICAubGlzdGUtcHJvZHVpdHMge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDVweDtcbiAgICAgICAgfVxuICAgICAgICAubGlzdGUtcHJvZHVpdHMtaXRlbSB7XG4gICAgICAgICAgICAuaW5mb3MtdHlwZXMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY29tbWVudCxcbiAgICAgICAgICAgIC5vcHRpb25zLXNlbGVjdGlvbm5lZXMsXG4gICAgICAgICAgICAuZGltZW5zaW9ucy1zZWxlY3Rpb25uZWVzLFxuICAgICAgICAgICAgLmZpbi1kZS12aWUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc3ViLXRvdGFsIHtcbiAgICAgICAgICAgIHdpZHRoOiA3NC4yJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgKiBFVEFQRSAyIC0gVFVOTkVMXG4gICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5hZGRyZXNzLWJsb2NrIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG4gICAgLmxpc3RlLXBhbmllci1jb21tYW5kZS1yYXBpZGUge1xuICAgICAgICAuaW50aXR1bGVzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLmxpc3RlLXByb2R1aXRzLWl0ZW0ge1xuICAgICAgICAgICAgLmRpc3BsYXktdGFibGUge1xuICAgICAgICAgICAgICAgICYuYXZlY09wdGlvbnMgeyBwYWRkaW5nLWJvdHRvbTogMjBweDsgfVxuICAgICAgICAgICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5wcml4LW1vYmlsZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5yZWZlcmVuY2Uge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzclO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmxpYmVsbGUge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNjMlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLm1hcnF1ZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuY29uZCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLm1hcnF1ZSwgLmNvbmQsIC5zdG9jayB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnN0b2NrICB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzNCU7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAucHJpeCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNyU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5xdWFudGl0ZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5wYW5pZXItbW9udGFudCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMy43JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmFjdCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3LjUlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pbWctcHJvZCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIyJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAqIEdFTkVSQUxJVEVTIFBBTklFUlxuICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5wYW5pZXItdGFibGUge1xuICAgICAgICAmLnBhbmllcnMtYS12YWxpZGVyLXRhYmxlIHtcbiAgICAgICAgICAgIC5oZWFkLCAucm93IHtcbiAgICAgICAgICAgICAgICAmID4gZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE1JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnJlZmVyZW5jZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMiU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5jbGllbnQge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTUlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgKiBHRU5FUkFMSVRFUyBQQU5JRVJcbiAgICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiAgICAucGFuaWVyLXRhYmxlIHtcbiAgICAgICAgLmxpYmVsbGUsXG4gICAgICAgIC5uYi1hcnRpY2xlIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgLmFkcmVzc2UsXG4gICAgICAgIC5vcHRpb25zIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAvL3BhbmllcnMgYSB2YWxpZGVyXG4gICAgICAgICYucGFuaWVycy1hLXZhbGlkZXItdGFibGUge1xuICAgICAgICAgICAgLmxpYiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnJvdyA+IGRpdiB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKlxuICAgICAgICBmaWVsZHNldC5hZGRyZXNzLWJsb2NrXG4gICAgICAgIGUuZy4gOiBwYWdlIGNyw6llciB1biBwYW5pZXIgLyBjaG9pc2lyIGFkcmVzc2VcbiAgICAqL1xuICAgIC5hZGRyZXNzLWJsb2NrIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgKiBFVEFQRSAxIC0gVFVOTkVMXG4gICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC5UUExfUEFOSUVSIHtcbiAgICAgICAgLnJlZmVyZW5jZSAuaW1nLXByb2Qge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAuYWN0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgIC5zdWItdG90YWwge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5saXN0ZS1hY2hhdC1wYW5pZXJ7XG4gICAgICAgICAgICAuYWpvdXRlci1hLWxhLWxpc3RlIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtNzhweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgKiBFVEFQRSAyIC0gVFVOTkVMXG4gICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuICAgIC50dW5uZWwtY29uZmlybWF0aW9uIC5mcm9udE1vZGFsQm94Q29udGFpbmVyIC5mb290ZXIge1xuICAgICAgICAuYm91dG9uLXZlcnQsIC5ib3V0b24tcm91Z2Uge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgbWluLXdpZHRoOiAyNDBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubGlzdGUtcGFuaWVyLWNvbW1hbmRlLXJhcGlkZSAubGlzdGUtcHJvZHVpdHMtaXRlbSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLmRpc3BsYXktdGFibGUge1xuICAgICAgICAgICAgLnByaXggeyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICAgICAgICAmLmF2ZWNPcHRpb25zIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAubWFycXVlLCAucXVhbnRpdGUge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubWFycXVlLCAucXVhbnRpdGUsIC5wcml4LW1vYmlsZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucXVhbnRpdGUud2l0aENhbGMge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIC51bml0ZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0OCU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5xdGUge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDglO1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmNhbGMge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDglO1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wcml4LW1vYmlsZSB7XG4gICAgICAgICAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgICYubGFiZWwtcHJvbW8gLnByaXgtdG90YWwge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHJvdWdlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5yZWZlcmVuY2Uge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucmVmZXJlbmNlIC5kZXRhaWxzLCAucGFuaWVyLW1vbnRhbnQsIC5wcml4IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbmQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc3RvY2sge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRpdi5saWJlbGxlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3MHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDE2cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmFjdCwgLnN0b2NrIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zdG9jayB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiA1cHggMCAwIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubWFycXVlIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIC5pZGVudGlmaWFudHMsIC5zdG9jayB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByaXgtdW5pdGFpcmUsIC5wcml4LXRvdGFsIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgyNHB4KTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC50YXhlLWVjbyB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnRuLWljb24tZGVsZXRlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcm91Z2U7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYgPiBkaXYucXVhbnRpdGUge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICBjbGVhcjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm9wdGlvbnMtc2VsZWN0aW9ubmVlcyxcbiAgICAgICAgLmRpbWVuc2lvbnMtc2VsZWN0aW9ubmVlcyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmltZy1wcm9kIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIC5xdWFudGl0ZSAudW5pdGUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNnB4KTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5UUExfT1JDQUJfUEFOSUVSUyB7XG4gICAgICAgIC5jcmVhdGlvblBhbmllckFkcmVzc2Uge1xuICAgICAgICAgICAgLmJ0bi1mb25kbm9pciwgLmZvcm0tc3VibWl0IHtcbiAgICAgICAgICAgICAgICBhLCBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogTElTVEUgUEFOSUVSUyBQQVNTRVNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5mb3JtLXJlY2hlcmNoZS1wYW5pZXJzLXBhc3NlcyB7XG4gICAgLmNvbC01MCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNDguMjUlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAmICsgLmNvbC01MCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMuNSU7XG4gICAgICAgIH1cbiAgICAgICAgJiArIC5jb2wtZGF0ZXMge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5kYXRlLWZpZWxkIHtcbiAgICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmICsgLmRhdGUtZmllbGQge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDQlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5mb3JtLXN1Ym1pdCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJ1dHRvbiBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTE1XCI7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICA+IC5jb2wtNTAge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAmICsgLmNvbC01MCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5kYXRlLWZpZWxkIHtcbiAgICAgICAgICAgIHdpZHRoOiA0OC4yNSU7XG4gICAgICAgICAgICArIC5kYXRlLWZpZWxke1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzLjUlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uVFBMX09SQ0FCX1BBTklFUlNfUEFTU0VTIHtcbiAgICAudG9wLWxpc3RlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICB9XG4gICAgaDQge1xuICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDIxcHgpO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbiAgICAubGlzdGUtYWNoYXQtdGFibGUge1xuICAgICAgICAuaW50aXR1bGVzIHtcbiAgICAgICAgICAgID4gZGl2LmRhdGUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPiBkaXYuYWN0aW9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDQlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxpc3RlLWRldGFpbCB7XG4gICAgICAgICAgICA+IGRpdi5hY3Rpb24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0NCU7XG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vTW9kYWwgZHVwbGljYXRpb24gcGFuaWVyXG4jcGFuaWVyQWN0aW9uRHVwbGlxdWVyRm9ybSB7XG4gICAgLmFkcmVzc2UtY29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB9XG5cbiAgICAuYWRkcmVzcy1ibG9ja19fcGFyZW50IHtcbiAgICAgICAgYWxpZ24taXRlbXM6IG5vcm1hbDtcbiAgICB9XG5cbiAgICAuYWRkcmVzcy1ibG9jayB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDE1cHgpO1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtbGFzdC1jaGlsZCgxKSwgJjpudGgtbGFzdC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFkZHJlc3MtYmxvY2staW5uZXIge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgJjpub3QoLnNlbGVjdGVkKSB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0ZvbmNlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvb3RlciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgI2R1cGxpcXVlck9yaWdpbmVBZHJlc3NlIC5maWVsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDBcbiAgICB9XG5cbiAgICBpbnB1dCNwYW5pZXJfZHVwbGlxdWVyX2Zvcm1fZHVwbGlxdWVyRGFuc05vdXZlYXVQYW5pZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cblxuICAgICNkdXBsaXF1ZXJBZHJlc3NlRXhpc3RhbnRlcyAuZm9ybS1maWVsZCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwXG4gICAgfVxuXG4gICAgI2R1cGxpcXVlckFkcmVzc2VFeGlzdGFudGVzIC5hZGRyZXNzLWJsb2NrX19wYXJlbnQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgICNwYW5pZXJfZHVwbGlxdWVyX2Zvcm1fdHlwZUR1cGxpY2F0aW9uLFxuICAgICNwYW5pZXJfZHVwbGlxdWVyX2Zvcm1fb3JpZ2luZUFkcmVzc2UgLnJhZGlvIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBMSVNURSBQQU5JRVJTIC0gVEFCTEVBVVhcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5wYW5pZXJzLXRhYmxlIHtcbiAgICAubGlzdGUtZGV0YWlsICsgZGl2IC5saXN0ZS1wcm9kdWl0cyB7XG4gICAgICAgICYgPiBsaSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubGliZWxsZSB7XG4gICAgICAgIHdpZHRoOiAyNC42MzA1NDE4NzE5MjExOCU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS40MDc0NTk1MzU1MzgzNTMlO1xuICAgIH1cbiAgICAucmlnaHQge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICB3aWR0aDogNzMuOTYxOTk4NTkyNTQwNDYlO1xuICAgIH1cbiAgICAub3B0aW9ucyB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAmID4gKiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIH1cbiAgICAgICAgJiA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgICAuYnRuLWV4cG9ydDpiZWZvcmUge1xuICAgICAgICAgICAgY29sb3I6ICRibGFuYztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudG9wIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLmNlbGwge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAucm93IHtcbiAgICAgICAgLm5iLWFydGljbGUge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOTE3JztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy9kZXRhaWxzXG4gICAgLm5iLWFydGljbGUsXG4gICAgLm1vbnRhbnQtdG90YWwsXG4gICAgLmRhdGUge1xuICAgICAgICB3aWR0aDogMTcuMTI2NTQ2MTQ2NTI3MTIlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuOTAyOTQ5NTcxODM2MzQ2JTtcbiAgICB9XG4gICAgLmFkcmVzc2UtbmFtZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS45MDI5NDk1NzE4MzYzNDYlO1xuICAgIH1cbiAgICAuYWRyZXNzZSxcbiAgICAuYWRyZXNzZS1uYW1lIHtcbiAgICAgICAgd2lkdGg6IDIwLjY0NzAwMjg1NDQyNDM2JTtcbiAgICB9XG4gICAgLmRhdGUge1xuICAgICAgICBjb2xvcjogJGNvbG9yQmFzZTtcbiAgICB9XG5cbiAgICAvL2ludGl0dWxlc1xuICAgIC5pbnRpdHVsZXMge1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMi42MzE1Nzg5NDczNjg0MiU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNDAzNTA4NzcxOTI5ODI1JVxuICAgICAgICB9XG4gICAgICAgIC5saWJlbGxlIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNC41NjE0MDM1MDg3NzE5MyU7XG4gICAgICAgIH1cbiAgICAgICAgLmFjdGlvbnMsXG4gICAgICAgIC5hY3Rpb24ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAuYWRyZXNzZSxcbiAgICAgICAgLmFkcmVzc2UtbmFtZSB7XG4gICAgICAgICAgICB3aWR0aDogMTUuMjI4MDcwMTc1NDM4NiU7XG4gICAgICAgIH1cbiAgICAgICAgLmFkcmVzc2Uge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5kYXRlLW1vZGlmaWNhdGlvbiB7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmJ0bi1ham91dGVyLWF1LXBhbmllciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5N2QnO1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5idG4tbGlzdGUtYWNoYXQtYWN0aXZhdGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlOTY3JztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZWNvcGFydCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIH1cbiAgICAuYm91dG9uLWRlcGxpZXItbGlzdGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRkZXNrdG9wKSB7XG4gICAgICAgIC5pbnRpdHVsZXMge1xuICAgICAgICAgICAgLy8gZGlzcGxheTogbm9uZTsgLy8gTGlnbmUgY29tbWVudMOpZSBzdWl0ZSDDoCBDUzAwMjUwOThcbiAgICAgICAgfVxuICAgICAgICAucm93IHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cbiAgICAgICAgLmxpYmVsbGUge1xuICAgICAgICAgICAgbWFyZ2luOiAgMCAwIDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAucm93IHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgLm9wdGlvbnMge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC50b3Age1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgJiA+IGRpdiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmxpYmVsbGUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAucm93IC50b3AgLmRhdGUuY2VsbCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgICAgICB9XG4gICAgICAgIC5ib3V0b24tZGVwbGllci1saXN0ZSB7XG4gICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYm91dG9uLWRlcGxpZXItbGlzdGUge1xuICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIENPTU1BTkRFIFJBUElERVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmNvbW1hbmRlLXJhcGlkZS1wYW5pZXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmlzRm9uY2U7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmlzQ2xhaXI7XG4gICAgcGFkZGluZzogMjBweCAzMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgLnRpdHJlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyLjJyZW07XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZjEwN1wiO1xuICAgICAgICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMC44cmVtO1xuICAgICAgICB9XG4gICAgICAgICYub3BlbmVkOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMTA2XCI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmJvdHRvbSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC50ZXh0IHtcbiAgICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICAgIHdpZHRoOiA1Ny4xMjUlO1xuICAgICAgICBjb2xvcjogJGdyaXNGb25jZTtcbiAgICAgICAgcCB7IG1hcmdpbjogMDsgfVxuICAgIH1cbiAgICAuZW5jYXJ0LWNvbW1hbmRlLXJhcGlkZSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGNvbG9yOiAkZ3Jpc0ZvbmNlO1xuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmxlZnQge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogNTcuMTI1JTtcbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzYuNjIyNSU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmRlcG90LWZpY2hpZXIge1xuICAgICAgICAgICAgd2lkdGg6IDMyLjEyNSU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgfVxuICAgICAgICAuYm91dG9uLWZpY2hpZXIsXG4gICAgICAgIC5ib3V0b24taW1wb3J0ZXIsXG4gICAgICAgIC5ib3V0b24tcm91Z2UsXG4gICAgICAgIC5ib3V0b24tdmVydCB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICAgICAgLnVwbG9hZCB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiA1MyU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmJvdXRvbi1maWNoaWVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzcGFuOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTY5XCI7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlucHV0e1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMTVweDtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAtMTVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYm91dG9uLWltcG9ydGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMi41JTtcbiAgICAgICAgfVxuICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgLmZpZWxkLXJlcXVpcmVkOjphZnRlciB7IGNvbnRlbnQ6ICcnO31cbiAgICAgICAgfVxuICAgICAgICAjYnRuQ29tbWFuZGVSYXBpZGVTY2FuQ29kZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAgICAgICAgICAgLmxlZnQsXG4gICAgICAgICAgICAuZGVwb3QtZmljaGllcntcbiAgICAgICAgICAgICAgICB3aWR0aDogNDglO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5kaXNwbGF5LXRhYmxlIHtcbiAgICAgICAgJiA+IGRpdiB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgcGFkZGluZzogM3JlbSAwLjVyZW0gMy41cmVtIDA7XG4gICAgICAgIH1cbiAgICAgICAgLnJlZmVyZW5jZSB7XG4gICAgICAgICAgICB3aWR0aDogMTclO1xuICAgICAgICB9XG4gICAgICAgIC5saWJlbGxlIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYm94LXR5cGUtcGFuaWVyICB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5tYXJxdWUge1xuICAgICAgICAgICAgd2lkdGg6IDEzLjElO1xuICAgICAgICB9XG4gICAgICAgIC5jb25kIHtcbiAgICAgICAgICAgIHdpZHRoOiA2LjElO1xuICAgICAgICB9XG4gICAgICAgIC5zdG9jayB7XG4gICAgICAgICAgICB3aWR0aDogMTIuNCU7XG4gICAgICAgIH1cbiAgICAgICAgLnByaXgge1xuICAgICAgICAgICAgd2lkdGg6IDExLjQlO1xuICAgICAgICB9XG4gICAgICAgIC5xdWFudGl0ZSB7XG4gICAgICAgICAgICB3aWR0aDogOC41JTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgLnRvdGFsIHtcbiAgICAgICAgICAgIHdpZHRoOiA4LjUlO1xuICAgICAgICB9XG4gICAgICAgIC5hY3Qge1xuICAgICAgICAgICAgd2lkdGg6IDYuMyU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmxpc3RlLXBhbmllci1jb21tYW5kZS1yYXBpZGUge1xuICAgICAgICAubGlzdGUtcHJvZHVpdHMtaXRlbSB7XG4gICAgICAgICAgICAuZGlzcGxheS10YWJsZSB7XG4gICAgICAgICAgICAgICAgJiA+IGRpdiB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgJi5yZWZlcmVuY2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmludGl0dWxlcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIC5yZXN1bHRzIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2U3ZTdlNztcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgPiBwIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgfVxuICAgICAgICAuZGlzcGxheS10YWJsZSA+IGRpdiB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkLCAmLnJlZmVyZW5jZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmxpc3RlLXByb2R1aXRzLWl0ZW0ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2U3ZTdlNztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNiY2M1Y2E7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaW1nLXByb2Qge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgJiArIC5kZXRhaWxzIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmlkZW50aWZpYW50cyBzcGFuLFxuICAgICAgICAgICAgLnF1YW50aXRlIC5idG4tcXVhbnRpdGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubGliZWxsZSwgLnByaXgtdW5pdGFpcmUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45NDFlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yQmFzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5xdGUge1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucXVhbnRpdGUge1xuICAgICAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgICAgIC5idG4tcGV0aXQtdmVydCxcbiAgICAgICAgICAgIC5idG4tcGV0aXQtYmxldSxcbiAgICAgICAgICAgIC5idG4tcGV0aXQtZ3JpcyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDM2cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5OXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTdlXCI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTdweDtcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5ham91dGVyQUxhTGlzdGVCdG4sICYuYWpvdXRlckFMYUxpc3RlRXRpcXVldHRlQnRuIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsZXU7XG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTkxM1wiO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYucXVhbnRpdGVBbHJlYWR5SW5QYW5pZXIge1xuICAgICAgICAgICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRvcmFuZ2VDYW5uZWxsZTtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTRiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemUgOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJG9yYW5nZUNhbm5lbGxlLCA1JSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnRuLXBldGl0LWdyaXM6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnXFxlOTdiJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5vcHRpb25zIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgxMnB4KTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucXRlIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgLmFtb3VudCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45NDFlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLmVuY2FydC1jb21tYW5kZS1yYXBpZGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICAgICAgICAgIC5sZWZ0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kZXBvdC1maWNoaWVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNjUlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgI2J0bkNvbW1hbmRlUmFwaWRlU2NhbkNvZGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubGlzdGUtcHJvZHVpdHMtaXRlbSAuZGlzcGxheS10YWJsZSB7XG4gICAgICAgICAgICAucmVmZXJlbmNlLCAubGliZWxsZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5tYXJxdWUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5xdWFudGl0ZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDM2LjMlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICNidG5SZWluaXRpYWxpc2VyUmVjaGVyY2hlQ29tbWFuZGVSYXBpZGUge1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgI3JlY2hlcmNoZUNvbW1hbmRlUmFwaWRlIHtcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgIH1cbiAgICAgICAgI2J0bkNvbW1hbmRlUmFwaWRlU2NhbkNvZGUge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIC5saXN0ZS1wcm9kdWl0cy1pdGVtIHtcbiAgICAgICAgICAgIC5kaXNwbGF5LXRhYmxlIHtcbiAgICAgICAgICAgICAgICAubGliZWxsZSwgLm1hcnF1ZSwgLnF1YW50aXRlLCAucXRlLWV0YXQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5yZWZlcmVuY2Uge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAucXRlLWV0YXQge1xuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBMSVNURSBQQU5JRVJTIEEgVkFMSURFUlxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9PUkNBQl9QQU5JRVJTX0FfVkFMSURFUiB7XG4gICAgLmJ0bi1yZWZ1c2VyLXBhbmllci5kaXNhYmxlZCB7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBURU1QTEFURSBTVEFUSVNUSVFVRVNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5UUExfU1RBVElTVElRVUVTIHtcbiAgICBwYWRkaW5nOiA3MHB4IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyaXNDbGFpcjtcbiAgICBoMyB7XG4gICAgICAgIEBleHRlbmQgLnRpdHJlLWJsb2MtYnVsbGV0O1xuICAgIH1cbiAgICAuc3RhdGlzdGlxdWVzIHtcbiAgICAgICAgLy9tYXgtd2lkdGg6IDExNzBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxufVxuLnRhYmxlLXN0YXRzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItc3BhY2luZzogMCAyMHB4O1xuICAgIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gICAgdGhlYWQgdGgge1xuICAgICAgICBAaW5jbHVkZSBmb250U2l6ZSgyMHB4KTtcbiAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRibGV1O1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwIG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgdGJvZHkge1xuICAgICAgICAuYm9sZC1yb3cge1xuICAgICAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aCwgdGQge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMThweCk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdmVydDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMCAwO1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYzFjMWMxO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGQge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjYzFjMWMxO1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHggMCAxMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIE1FRElBUVVFUklFU1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGRlc2t0b3Atc21hbGwpIHtcblxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgKiBURU1QTEFURSBTVEFUSVNUSVFVRVNcbiAgICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gICAgLlRQTF9TVEFUSVNUSVFVRVMge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgfVxuXG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBSRUNIRVJDSEUgREUgQ09MTEFCT1JBVElPTlxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9PUkNBQl9SRUNIRVJDSEVfU1RPUkVfTE9DQVRPUiB7XG4gICAgLmNvbnRhaW5lci1tYXAge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBtYXJnaW46IDAgMCAxMDBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAyNXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgfVxuICAgIC53cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiByb3ctcmV2ZXJzZSB3cmFwO1xuICAgICAgICAubGVmdCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDc3MHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgICAgIHdpZHRoOiA0MXJlbTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgICAgICAgICAgLy8gQ2hyb21lXG4gICAgICAgICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDlweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDlweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRjBGMEYwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNDRENEQ0Q7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICAgIHdpZHRoOiA3Ni4wODE4NzEzNDUwMjkyNCU7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgZmxleDogMTtcblxuICAgICAgICAgICAgI21hcCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vY29tbXVuIG1hcCBldCBjb2xvbm5lIGdhdWNoZVxuICAgIC5zdG9yZS1sb2NhdG9yLFxuICAgIC5nbS1zdHlsZS1pdyB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICB9XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuNHJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkdmVydDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyLjRyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgcGFkZGluZzogMTJweCAwIDEycHggNDBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsZXU7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi52aWxsZTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTkyNzJcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuZW1haWw6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5ODFcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYudGVsOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5ODcnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5zaXRlOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOWM5XCI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYm91dG9uLWJsYW5jIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuNnJlbSAxNXB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5zdG9yZS1sb2NhdG9yIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyaXNCb3JkdXJlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgICAgIHBhZGRpbmc6IDI0cHggMTVweCAxNXB4O1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGxpbmUtYnJlYWs6IGFueXdoZXJlO1xuICAgICAgICB9XG4gICAgICAgICYuc2VsZWN0ZWQsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyaXNDbGFpcjtcbiAgICAgICAgfVxuICAgICAgICBwOm5vdCg6bGFzdC1vZi10eXBlKXtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyaXNCb3JkdXJlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAudGVsLWZpZWxkIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsYWJlbC5pY28ge1xuICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IDIzcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyaXNCb3JkdXJlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFsaWduZW1lbnRZO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNTVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb3JtLXN1Ym1pdCB7XG4gICAgICAgIGNsZWFyOiBub25lO1xuICAgICAgICBtYXJnaW46IDIzcHggMCAwO1xuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgc3Bhbjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTE1XCI7XG4gICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIE1FRElBUVVFUklFU1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgIC5UUExfT1JDQUJfUkVDSEVSQ0hFX1NUT1JFX0xPQ0FUT1Ige1xuICAgICAgICAud3JhcHBlciB7XG4gICAgICAgICAgICAubGVmdCxcbiAgICAgICAgICAgIC5yaWdodCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgIC5UUExfT1JDQUJfUkVDSEVSQ0hFX1NUT1JFX0xPQ0FUT1Ige1xuICAgICAgICAud3JhcHBlciB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgLnJpZ2h0e1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmxlZnQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgI21hcCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzNjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5mb3JtLXN1Ym1pdCB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDI3MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8qLmZvcm0tZmllbGRzLXdyYXBwZXI6bm90KC5lbXBsYWNlbWVudCkge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyaXNCb3JkdXJlO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAubGVmdDUwIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzQwNDA0MDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIC0xcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5zZWxlY3Qtd3JhcCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucmlnaHQ1MCB7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweCAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9Ki9cbiAgICB9XG59XG5cbi8vRmljaGVcbkBpbXBvcnQgXCJmaWNoZS1hZGhlcmVudFwiOyIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFRFTVBMQVRFIEZJQ0hFIEFESEVSRU5UXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uZmljaGUtYWRoZXJlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDcuNXJlbTtcblxuICAgIGgxIHtcbiAgICAgICAgQGV4dGVuZCBoMjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICB9XG4gICAgJl9fZGlyaWdlYW50IHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICB9XG5cbiAgICAmX193cmFwcGVyLFxuICAgICZfX2RldGFpbHMsXG4gICAgJl9fdG9wIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgZ2FwOiAzMHB4O1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgIH1cblxuICAgIC8vdmlzdWVsXG4gICAgJl9fdmlzdWVsIHtcbiAgICAgICAgd2lkdGg6IDMyLjIxNTkwOTA5MDkwOTA5JTtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjlyZW07XG4gICAgICAgICYtdG9wIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgJi10aHVtYiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDU4cHg7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDlweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pbWctZmx1aWQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkZGVza3RvcCkge1xuICAgICAgICAgICAgd2lkdGg6IDQwLjM3ODc4Nzg3ODc4Nzg4JTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICB3aWR0aDogNDguOTQwNjc3OTY2MTAxNjklO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIGFuZCAobWluLXdpZHRoOiA1NjhweCkge1xuICAgICAgICAgICAgd2lkdGg6IDQ0OHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU2N3B4KSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICYtdGh1bWIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNDZweDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDMwOHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy9hY3Rpdml0ZVxuICAgIC5jYXRlZ29yeSB7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxNHB4O1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuOXJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgY29sb3I6ICRibGFuYztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgICAgICAmLWxpc3Qge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2FjdGl2aXRlcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMzBweDtcbiAgICAgICAgZmxleDogMTtcbiAgICB9XG5cbiAgICAvL2Nvb3Jkb25uZXNcbiAgICAmX19jb29yZG9ubmVzIHtcbiAgICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYW5jO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuOXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgd2lkdGg6IDM1Ljg1NTU0NjAwMTcxOTY5JTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMCAxcmVtIDRyZW07XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyaXNNZW51O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudFk7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubWFpbDpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTk4MSc7XG4gICAgICAgIH1cblxuICAgICAgICAuYWRyZXNzZTpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTkyNzInO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBob25lOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlOTg3JztcbiAgICAgICAgfVxuXG4gICAgICAgIC53ZWJzaXRlOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlOTg2JztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vcHJlc2VudGF0aW9uXG4gICAgJl9fcHJlc2VudGF0aW9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGljayB7XG4gICAgICAgICYtYXJyb3cge1xuICAgICAgICAgICAgd2lkdGg6IDRyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3Jpc01lbnU7XG4gICAgICAgICAgICBoZWlnaHQ6IDk5cHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi1wcmV2IHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ1xcZjA1Myc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi1uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGYwNTQnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYtc2xpZGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgd29yZC13cmFwOiBhbnl3aGVyZTtcblxuICAgICAgICAgICAgJiA+IGRpdiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19iaWcge1xuICAgICAgICBhc3BlY3QtcmF0aW86IDU2NyAvIDQ0NztcbiAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgICZfX3RodW1iIHtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiA5OSAvIDk5O1xuICAgICAgICBwYWRkaW5nOiAwIDlweDtcbiAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgJl9fdG9wIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cbiAgICAgICAgJl9fY29vcmRvbm5lcyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjdweCkge1xuICAgICAgICAmX193cmFwcGVyIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogUkVDSEVSQ0hFIENBUlRFIFRPVVJORUVcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5UUExfT1JDQUJfQ0FSVEVfVE9VUk5FRSB7XG4gIC5jb250YWluZXItbWFwIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIG1hcmdpbjogMCAwIDEwMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiA0NXB4IDMwcHg7XG4gIH1cbiAgLndyYXBwZXIge1xuICAgIC5sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgaGVpZ2h0OiA3NzVweDtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgIHdpZHRoOiAyMS43NiU7XG4gICAgfVxuICAgIC5yaWdodHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHdpZHRoOiBjYWxjKDc2LjIlIC0gMTBweCk7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgICBib3JkZXItcmFkaXVzOiAwIDVweCA1cHggMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICAgICAjbWFwIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC8vY29tbXVuIG1hcCBldCBjb2xvbm5lIGdhdWNoZVxuICAuY2FydGUtdG91cm5lZSxcbiAgLmdtLXN0eWxlLWl3IHtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkYmxldTtcbiAgICB9XG4gICAgaDMge1xuICAgICAgQGluY2x1ZGUgZm9udFNpemUoMThweCk7XG4gICAgICBjb2xvcjogJHZlcnQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmlzQm9yZHVyZTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgcCB7XG4gICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNnB4KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogJGJsZXU7XG4gICAgICBwYWRkaW5nOiAxNXB4IDAgMCAzMHB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBjb2xvcjogIzllOWU5ZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gICAgICB9XG4gICAgICAmLnZpbGxlOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZTkyNzJcIjtcbiAgICAgIH1cbiAgICAgICYuZW1haWw6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTE2XCI7XG4gICAgICB9XG4gICAgICAmLnRlbDo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGU5MjVcIjtcbiAgICAgIH1cbiAgICAgICYuc2l0ZTo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGU5YzlcIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY2FydGUtdG91cm5lZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyaXNCb3JkdXJlO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweCAwIDAgNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBhIHtcbiAgICAgIGxpbmUtYnJlYWs6IGFueXdoZXJlO1xuICAgIH1cbiAgICAmLnNlbGVjdGVkLFxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGdyaXNDbGFpcjtcbiAgICB9XG4gICAgcDpub3QoOmxhc3QtY2hpbGQpe1xuICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmlzQm9yZHVyZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC50ZWwtZmllbGQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsYWJlbC5pY28ge1xuICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMjNweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQ6ICRncmlzQm9yZHVyZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudFk7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBpbnB1dCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDY1cHg7XG4gICAgfVxuICB9XG4gIC5lbXBsYWNlbWVudCB7XG4gICAgd2lkdGg6IDY5JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuXG4gIC5mb3JtLXN1Ym1pdCB7XG4gICAgY2xlYXI6IG5vbmU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogMjZweCAwIDA7XG4gICAgd2lkdGg6IDI4JTtcbiAgICBidXR0b24ge1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIHNwYW46OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZTkxNVwiO1xuICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBNRURJQVFVRVJJRVNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgLlRQTF9PUkNBQl9DQVJURV9UT1VSTkVFIHtcbiAgICAud3JhcHBlciB7XG4gICAgICAubGVmdCB7XG4gICAgICAgIGhlaWdodDogNjQwcHg7XG4gICAgICAgIHdpZHRoOiA0OCU7XG4gICAgICB9XG4gICAgICAucmlnaHR7XG4gICAgICAgIHdpZHRoOiA0OCU7XG4gICAgICB9XG4gICAgICAjbWFwIHtcbiAgICAgICAgaGVpZ2h0OiA2NDBweCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gIC5UUExfT1JDQUJfQ0FSVEVfVE9VUk5FRSB7XG4gICAgLndyYXBwZXIge1xuICAgICAgLnJpZ2h0e1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDJweCk7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICB9XG4gICAgICAubGVmdCB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgICB9XG4gICAgICAjbWFwIHtcbiAgICAgICAgaGVpZ2h0OiAzNjBweCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgICAuZW1wbGFjZW1lbnQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG4gICAgLmZvcm0tc3VibWl0IHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBidXR0b24ge1xuICAgICAgICBtaW4td2lkdGg6IDI3MHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuZm9ybS1maWVsZHMtd3JhcHBlcjpub3QoLmVtcGxhY2VtZW50KSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmR1cmU7XG4gICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIC5sZWZ0NTAge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogIzQwNDA0MDtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBtYXJnaW46IDAgLTFweDtcbiAgICAgICAgfVxuICAgICAgICAuc2VsZWN0LXdyYXAge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luOiAxMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucmlnaHQ1MCB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweCAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFFSIENPREVcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5jb2RlLXNjYW5uZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIGgyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gICAgI2NhcHR1cmUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBpbml0aWFsO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gICAgICAgIHZpZGVvLFxuICAgICAgICBjYW52YXMge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jLXNjYW5fX2NhcHR1cmUtLWR5bmFtc29mdCB7XG4gICAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxNi85O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgY2FudmFzIHtcbiAgICAgICAgJi5kcmF3aW5nLCAmLmRyYXdpbmdCdWZmZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgICAgICAmI2NhbnZhc1FSQ29kZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBBR0VOREFcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5UUExfT1JDQUJfQUdFTkRBIHtcbiAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgLnNyLW9ubHkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbiAgLnRvcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuICBoMiB7XG4gICAgQGluY2x1ZGUgZm9udFNpemUoMzVweCk7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZS1zbWFsbCkge1xuICAgICAgQGluY2x1ZGUgZm9udFNpemUoMjVweCk7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG4gICNzd2l0Y2gtdnVlIHtcbiAgICBmbGV4OiAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gIH1cbiAgLmNoYW5nZVZ1ZSB7XG4gICAgQGV4dGVuZCAuYnRuLXBldGl0LWdyaXM7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmlzQm9yZDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudDtcbiAgICAgIGNvbG9yOiAjOTM5MzkzO1xuICAgIH1cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBAZXh0ZW5kIC5idG4tcGV0aXQtYmxldTtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6ICRibGFuYztcbiAgICAgIH1cbiAgICB9XG4gICAgKyAuY2hhbmdlVnVlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlLXNtYWxsKSB7XG4gICAgICB3aWR0aDogMzhweDtcbiAgICAgIGhlaWdodDogMzhweDtcblxuICAgIH1cbiAgfVxuICAudnVlLWFnZW5kYTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXGU5NWYnO1xuICB9XG4gIC52dWUtbGlzdGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxlOTY3JztcbiAgfVxuXG4gIC8vYXZlYyBib3V0b24gZmF2b3Jpc1xuICAud2l0aC1idG4tZmF2b3JpcyAmIHtcbiAgICAudG9wIHtcbiAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMjM1cHgpO1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDYwcHgpO1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZS1zbWFsbCkge1xuICAgICAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNmb3JtVnVlIHtcbiAgICBtYXJnaW46IDIwcHggMDtcbiAgICAmPmRpdiB7XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMzElO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzJTtcbiAgICAgIC5zZWxlY3Qtd3JhcCwgYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgICAmPmRpdiB7XG4gICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS41JTtcbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgJj5kaXYge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZGV0YWlscyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuICAvL2JvdXRvbnNcbiAgLmJvdXRvbi1kZXRhaWxzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAyLjZyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuOXJlbTtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgIGNvbG9yOiAkYmxldTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogM3B4O1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gICAgJi50YXJpZi1wYXlhbnQ6YmVmb3JlIHtcbiAgICAgIEBleHRlbmQgLmZhO1xuICAgICAgd2lkdGg6IDEuN3JlbTtcbiAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxuICAuZGF0ZXM6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxlOTg0JztcbiAgfVxuICAubGlldTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXGU5MjcyJztcbiAgfVxuICAuaG9yYWlyZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXGU5ODknO1xuICB9XG4gIC50YXJpZjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXGU5ODgnO1xuICB9XG4gIC50YXJpZi1wYXlhbnQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxmMTUzJztcbiAgfVxuXG4gIC52b2lyUGx1c0V2ZW5lbWVudHNQYWdlIHtcbiAgICBAaW5jbHVkZSBmb250U2l6ZSgxN3B4KTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxODBweDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBmb250U2l6ZSgxNHB4KTtcbiAgICAgIEBleHRlbmQgLmZhO1xuICAgICAgY29udGVudDogJ1xcZjA2Nyc7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIH1cbiAgfVxuXG4gIC8vdm9sZXQgam91cm5lZVxuICAjdm9sZXQtam91cm5lZSB7XG4gICAgLmxpc3RlIHtcbiAgICAgIGxpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y4RjdGNztcbiAgICAgIH1cbiAgICB9XG4gICAgLmJvdXRvbi1kZXRhaWxzIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG4uYWdlbmRhLWdvb2dsZS1saW5rIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICY6YWZ0ZXIge1xuICAgIEBleHRlbmQgLmZhO1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIGNvbnRlbnQ6ICdcXGYwOGUnO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6ICRibGV1T3JjYWI7XG4gIH1cbn1cblxuLnMtZXZlbmVtZW50IHtcbiAgJl9fYXNzb2NpZS5zLWVsZW1lbnQtYXNzb2NpZS12b2xldCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AaW1wb3J0IFwibGlzdGUtaHBcIjtcbkBpbXBvcnQgXCJjYXJkXCI7XG5AaW1wb3J0IFwiY2FsZW5kcmllclwiO1xuQGltcG9ydCBcInNoZWV0XCI7XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBURU1QTEFURSBBR0VOREEgQUNDVUVJTFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9MSVNURV9BR0VOREFfQUNDVUVJTCAge1xuICAgIG1hcmdpbi1ib3R0b206IDkwcHg7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuXG4gICAgLmJ0bi1kYXRlcyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmNhdGVnb3J5IHtcbiAgICAgICAgcGFkZGluZzogMnB4IDhweDtcbiAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjhyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEzcHg7XG4gICAgICAgICYtbGlzdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgICAgICBnYXA6IDVweCA4cHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvL3N1cmNoYXJnZVxuICAgIC5ibG9jLWFjdHUge1xuICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS45cmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5ibG9jLWljb25lIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMnJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjZyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDJweDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubGlldTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnXFxlOTI3Mic7XG4gICAgfVxuICAgIC5kYXRlcyB7XG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5ODQnO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5zaG93LW1vcmUge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gICAgLmNvbGxhcHNlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgJi5pbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIEFHRU5EQSBjYXJkXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uYy1hZ2VuZGEge1xuICAmX19pdGVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhbmM7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIHBhZGRpbmc6IDI1cHggMzBweCAyNXB4IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDMwcHg7XG4gICAgJi0tbm8taW1nIHtcbiAgICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICB9XG4gIH1cblxuICAmX19kZXRhaWxzIHtcbiAgICBmbGV4OiAxO1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxleDogaW5oZXJpdDtcbiAgICB9XG4gIH1cblxuICAmX190b3Age1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgJl9faGVhZGluZyB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICBsaW5lLWhlaWdodDogMi41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmX19saW5rIHtcbiAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgfVxuXG4gICZfX2ltYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcblxuICAgICYtd3JhcHBlciB7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICB3aWR0aDogMjkuM3JlbTtcbiAgICAgIGFzcGVjdC1yYXRpbzogMTYgLyA5O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gICZfX2NhdGVnb3J5IHtcbiAgICBwYWRkaW5nOiAycHggOHB4O1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjhyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMTNweDtcbiAgICAmLWxpc3Qge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgZ2FwOiA1cHggOHB4O1xuICAgICAgbWFyZ2luOiAyNXB4IDAgMDtcbiAgICB9XG4gIH1cblxuICAmX19idG4ge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cblxuICAmX19kYXRlcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGdhcDogMTBweCAyMHB4O1xuICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuOHJlbTtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICB9XG4gIH1cblxuICAmX19ibG9jIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIuMXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudFk7XG4gICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICAgICYuYy1hZ2VuZGFfX2Jsb2MtLXRhcmlmLXBheWFudDpiZWZvcmUge1xuICAgICAgQGV4dGVuZCAuZmE7XG4gICAgICB3aWR0aDogMS43cmVtO1xuICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJi0tbGlldTpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcZTkyNzInO1xuICAgIH1cbiAgICAmLS1jcmVuZWF1OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFxlOTg0JztcbiAgICB9XG4gICAgJi0tdGFyaWY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGU5ODgnO1xuICAgIH1cbiAgICAmLS10YXJpZi1wYXlhbnQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGYxNTMnO1xuICAgIH1cbiAgICAmLS1ob3JhaXJlOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFxlOTg5JztcbiAgICB9XG4gIH1cbn1cblxuLy9zZWFuY2VzIG5vbiBsacOpXG4uYy1hZ2VuZGEtLXNlYW5jZSB7XG4gIC5jLWFnZW5kYSB7XG4gICAgJl9faXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgICAmX19kYXRlcyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBnYXA6IDEwcHggMTVweDtcbiAgICB9XG4gIH1cbn1cblxuLy9zZWFuY2VzIGxpw6lcbi5jLWFnZW5kYS0tc2VhbmNlLWxpZSB7XG4gIC5jLWFnZW5kYV9fZGF0ZXMge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAmLXRpdGxlIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cbiAgLmMtYWdlbmRhX19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vL2V0YXQgYWdlbmRhXG4uby1hZ2VuZGEtZXRhdCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRyb3VnZTtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAkcm91Z2U7XG5cbiAgJi0tc2hlZXQge1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjFyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgcGFkZGluZzogMTBweDtcbiAgfVxufSIsIi8vIFN0eWxlcyBjb21tdW5zIGF1eCBjYWxlbmRyaWVycyBkdSB0dW5uZWwgZXQgZGUgbCdhZ2VuZGFcbi8vIE1ldHRyZSBsZXMgc3R5bGVzIHNww6ljaWZpcXVlcyBkYW5zIGFnZW5kYS5zY3NzIG91IHBhbmllci5zY3NzXG5cbi8vc2VtYWluZS9tb2lzXG4uc2VtYWluZS1tb2lzIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJsYW5jO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAud3JhcHBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsZXU7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgbWluLWhlaWdodDogNjRweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIGgzIHtcbiAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6ICRibGFuYztcbiAgICBsaW5lLWhlaWdodDogNjRweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIH1cbiAgYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIEBpbmNsdWRlIGFsaWduZW1lbnRZO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBAaW5jbHVkZSBmb250U2l6ZSgxOHB4KTtcbiAgICAgIEBleHRlbmQgLmZhO1xuICAgIH1cbiAgICAmLmxlZnQge1xuICAgICAgbGVmdDogMzAlO1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnXFxmMTA0JztcbiAgICAgIH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgbGVmdDogNXB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmLnJpZ2h0IHtcbiAgICAgIHJpZ2h0OiAzMCU7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGYxMDUnO1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICByaWdodDogNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmhlYWQtbW9pcyB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDM4cHggKyAxMHB4KTtcbn1cblxuLy90YWJsZWF1IHZ1ZSBjYWxlbmRyaWVyXG4udGFibGVhdS1hZ2VuZGEge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgd2lkdGg6IDk4MHB4O1xuICB9XG5cbiAgLy9jb2xvbm5lXG4gIC5kaXYtcm93IHtcbiAgICBmb250LXNpemU6IDA7XG4gICAgLmNvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgd2lkdGg6IGNhbGMoKDEwMCUgLSA2MHB4KSAvIDcpOyAvLzYwcHggZm9yIHBhZGRpbmcgYW5kIGRpdmlkZSBieSA3IGRheXNcbiAgICAgICYgKyBsaSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYudnVlLW1vaXMge1xuICAgIC5kaXYtcm93IHtcbiAgICAgIC5jb2wge1xuICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAtICg2MHB4ICsgMzhweCArIDEwcHgpKSAvIDcpOyAvLzYwcHggZm9yIHBhZGRpbmcgYW5kIGRpdmlkZSBieSA3IGRheXNcbiAgICAgICAgJi5udW1fc2VtYWluZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RmZGVkZTtcbiAgICAgICAgICB3aWR0aDogMzhweDtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vdGl0cmVcbiAgLmhlYWQge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgLmxpYmVsbGUtbW9iIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZGl2LWhlYWQge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhbmM7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGNvbG9yOiAkYmxldTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgbWluLWhlaWdodDogMzRweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICB9XG5cbiAgLy9kYXlzXG4gIC5kaXYtY29sIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYW5jO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICYuZW1wdHkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgIC50aXRsZSB7XG4gICAgICBjb2xvcjogJGJsZXU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RmZGVkZTtcbiAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA4cHggOHB4IDAgMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG4gICAgLm8tYWdlbmRhLXdpdGgtc3RhdGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIH1cbiAgICB1bCB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMjBweDtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDQ0cHgpO1xuICAgICAgbWluLWhlaWdodDogMTU1cHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgbGk6bm90KC53aXRoLWJ1dHRvbikge1xuICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS44cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZCAwLjNzKTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAxZW07XG4gICAgICBjb2xvcjogJGJsZXU7XG4gICAgICBwYWRkaW5nOiAzcHggMTBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZmRlZGU7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhbmM7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsZXU7XG4gICAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJsZXU7XG4gICAgICB9XG4gICAgICAmLndpdGgtc3RhdGUge1xuICAgICAgICBib3JkZXItY29sb3I6ICRyb3VnZTtcbiAgICAgICAgY29sb3I6ICRyb3VnZTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJvdWdlO1xuICAgICAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkcm91Z2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5pbnNjcml0IHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIEBleHRlbmQgLmZhO1xuICAgICAgICAgIGNvbG9yOiAkdmVydDtcbiAgICAgICAgICBjb250ZW50OiAnXFxmMDU4JztcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5ldmVudC1saWJlbGxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAwLjVyZW0gMXJlbTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICB9XG4gICAgfVxuICAgIGxpLndpdGgtYnV0dG9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICBmbGV4OiAxO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgIC5zaG93Sm91cm5lZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy9zbG90cyBpbiBjYWxlbmRhclxuICAgIC5ldmVudCB7XG4gICAgICAmLS1zbG90LWZpcnN0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgfVxuICAgICAgJi0tc2xvdC1vdGhlciB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgb3JkZXI6IC0xO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgICAgICsgLmV2ZW50LS1zbG90LW90aGVyIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnNob3dKb3VybmVlIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLy9wb3B1cCBtb250aFxuI3BvcC11cC1tb250aCB7XG4gIG1heC13aWR0aDogMzcwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRibGV1O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB6LWluZGV4OiAyO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAuY2hhbmdlTW9udGgge1xuICAgIEBpbmNsdWRlIGZvbnRTaXplKDE1cHgpO1xuICAgIHdpZHRoOiAyNSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gICAgY29sb3I6ICRibGFuYztcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICR2ZXJ0O1xuICAgIH1cbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgbWF4LXdpZHRoOiAyOTBweDtcbiAgICAuY2hhbmdlTW9udGgge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4vL2V0YXQgYWdlbmRhXG4uby1hZ2VuZGEtd2l0aC1zdGF0ZSB7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBsaW5lLWhlaWdodDogMS42cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogJHJvdWdlO1xuICBkaXNwbGF5OiBibG9jaztcblxuICAud2l0aC1zdGF0ZTpob3ZlciAmIHtcbiAgICBjb2xvcjogJGJsYW5jO1xuICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogQUdFTkRBIHNoZWV0XG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uVFBMX09SQ0FCX0FHRU5EQSB7XG4gICAgLnZvbGV0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyaXNVSTtcbiAgICB9XG59XG4uYy1hZ2VuZGEtc2hlZXQge1xuICAgICZfX3RvcCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgIGdhcDogMzBweDtcbiAgICB9XG4gICAgJl9faW5mbyxcbiAgICAmX19pbWFnZS13cmFwcGVyIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1vYmlsZSArIDEpIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDE1cHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX2ltYWdlLXdyYXBwZXIge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbiAgICAmX19tYiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgfVxuXG4gICAgJl9fc2xvdCB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyaXNNZW51O1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBnYXA6IDMwcHg7XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbW9iaWxlLXNtYWxsICsgMSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjdyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMi45cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmMtYWdlbmRhX19jYXRlZ29yeS1saXN0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG4gICAgLm8tYWdlbmRhLWV0YXQtLXNoZWV0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgfVxuICAgIC5idG4tcGV0aXQtYmxldSB7XG4gICAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG59XG4iLCIucy1lZGl0aGVybS1pbmZvIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAzLjJyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzLjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XG5cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtb2JpbGUtc21hbGwpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuNHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2Jsb2NrIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMTY0cHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiA2MHB4O1xuICAgICAgICBtYXJnaW46IDIwcHggYXV0bztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3JCYXNlO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDI0cHggMTZweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3N1YnRpdGxlIHtcbiAgICAgICAgY29sb3I6ICRibGFuYztcbiAgICAgICAgZm9udC1zaXplOiAyLjdyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMTAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2lubmVyIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNDA4cHg7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCByaWdodDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzNThweDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi8uLi9pbWFnZXMvZWRpdGhlcm1fd2hpdGUucG5nJyk7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjQwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19kZXNjIHtcbiAgICAgICAgY29sb3I6ICRibGFuYztcbiAgICAgICAgZm9udC1zaXplOiAyLjdyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMTAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZm9ybSB7XG4gICAgICAgIGZvcm0ge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICAgIEBleHRlbmQgLmJ0bi1wZXRpdC12ZXJ0O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjg0cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDM2cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBNRVMgRkFWT1JJU1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLlRQTF9PUkNBQl9NRVNfRkFWT1JJUyB7XG4gICAgLy9mb3IgcmVjaGVyY2hlXG4gICAgLmZvcm0tcmVjaGVyY2hlIHtcbiAgICAgICAgJiA+IGRpdiB7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYgPiBkaXYge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm5vbWJyZURlTGlzdGVzIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMzBweCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAkYmxldTtcbiAgICB9XG5cbiAgICAvL2xpc3RlXG4gICAgLmxpc3RlLWZhdm9yaXMge1xuICAgICAgICBtYXJnaW46IDAgMCA2MHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgfVxuICAgIC5saXN0ZS1kZXRhaWwge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIHBhZGRpbmc6IDE4cHggMjBweCAxMnB4IDEwMHB4O1xuICAgICAgICBtaW4taGVpZ2h0OiA4MHB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGdhcDogMjRweDtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHRhYmxldFBsdXNPbmUpIHtcbiAgICAgICAgICAgIHdpZHRoOiA0OSU7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBnYXA6IDEycHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5NDVcIjtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRTaXplKDkzcHgpO1xuICAgICAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgICAgIGNvbG9yOiByZ2JhKDEzMCwxNzAsNTUsMC4yKTtcbiAgICAgICAgICAgIGxlZnQ6IC00MnB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAtNXB4O1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgJiA+IGRpdiB7XG4gICAgICAgICAgICAmLmxpYmVsbGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3NSU7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGV4dGUge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMjBweCk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnR5cGUge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udFNpemUoMTVweCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmFjdGlvbiB7XG4gICAgICAgIC5idG4ge1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQgeyBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhbGlnbmVtZW50KCk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzcGFuIHsgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLndyYXAtYnRuLWFjdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMTZweDtcbiAgICB9XG5cbiAgICAuZmF2b3JpLWVkaXQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgfVxuXG4gICAgLmJ0bi5pY29tb29uLWNyb3NzIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW1cbiAgICB9XG59XG5cbiNmYXZvcmktYWRkLm1vZGFsLW9yY2FiIHtcbiAgICAuZm9vdGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBWT0xFVFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLnZvbGV0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhbmM7XG4gICAgcGFkZGluZzogNjBweCAzMHB4O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDk2cmVtO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAyMDE7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgIC5jdXN0b20tc2Nyb2xsYmFyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgICAgICAgLy9oZWlnaHQ6IGNhbGMoMTAwdmggLSA2MHB4IC0gNjBweCAtIDY1cHgpO1xuICAgIH1cblxuICAgIC5hY3Rpb25zIHtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgMDtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuYm91dG9uLXZlcnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiBpbmhlcml0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJvdXRvbi1yZXRvdXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHRhYmxldCkge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxMHB4O1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgIG1hcmdpbjogMzBweCAwIDA7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRhYmxlIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuXG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgdGQge1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgLjIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1aXRzLWFzc29jaWVzIHtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgMjBweDtcbiAgICB9XG5cbiAgICAvL2xpc3RlIHByb2R1aXRzXG4gICAgLmxpc3RlLXByb2R1aXRzIHtcbiAgICAgICAgPiBsaSBoMntcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMCwgMCwgMCwgLjIpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRkZXNrdG9wKSB7XG4gICAgICAgICAgICAmID4gbGkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE5cHggMTBweCAyMHB4IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAuYWpvdXQtY29tcGFyYXRldXIsXG4gICAgICAgICAgICAgICAgLmRldmlzLWJvbi1pbmZvcyB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMi4ycmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByb2R1aXQge1xuICAgICAgICAgICAgICAgICYtZ2F1Y2hlIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLWRyb2l0ZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi1jb2RlIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQ2JTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0JTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLXByaXgge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDYlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDQlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtc3RvY2sge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDYlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDQlO1xuICAgICAgICAgICAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgICAgICAgICAgICAgICAgICAuc3RvY2stbGlzdGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLWFjdGlvbnMge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYWpvdXRlci1wcm9kdWl0LWF1LXBhbmllciB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgLmJveC1wYW5pZXIge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYWN0aW9ucyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4OCU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vbGlzdGUgYWN0dWFsaXRlc1xuICAgIC5saXN0ZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgICAgLml0ZW0ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgOHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsYW5jO1xuICAgICAgICB9XG5cbiAgICAgICAgLml0ZW06aGFzKD4gLmJsb2MtYWN0dSkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAudGh1bWJuYWlsIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMCwgMCwgMCwgLjIpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuXG4gICAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5waG90b3Mge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMi41JTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgICAgICAgICAgICAgLmxpZW5WaWduZXR0ZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwIDA7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgICAgICAgICAgICAgIGg0LCBwIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jbGVhciB7XG4gICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zYXZvaXJQbHVzIHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5waG90b3Mge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE2NXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGllbi1waWN0bzpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRibGV1T3JjYWI7XG4gICAgfVxuXG4gICAgLmJveC10eXBlLXBhbmllciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjhyZW07XG4gICAgfVxuXG4gICAgLnZvbGV0UGFuaWVyX19wYW5pZXJzLCAudm9sZXRMaXN0ZUFjaGF0X19saXN0ZXMge1xuICAgICAgICAuYm94LXR5cGUtcGFuaWVyIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAuY29udGFpbmVyLXR5cGUtcGFuaWVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG59XG5cbi8vIGluZm8tdHlwZS1hY3Rpb25cbi5wcm9tby1BQ1RJT04ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8gdm9sZXQtcHJvbW8tYWN0aW9uXG4jdm9sZXQtcHJvbW8tYWN0aW9uIHtcbiAgICAucGhvdG9zIHtcbiAgICAgICAgd2lkdGg6IDE5OXB4O1xuICAgICAgICBoZWlnaHQ6IDk4cHg7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbn1cblxuI3NpdGUtbWFpbi5iZy1vcGFxdWU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDY4LCA5OCwgMC45KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMC4zcyk7XG4gICAgei1pbmRleDogMjAwO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKiBWT0xFVCBDT01QVEVcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiN2b2xldC1jb21wdGUge1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuXG4gICAgLm5vbS1sb2dpbiB7XG4gICAgICAgIC52b2xldC1jb21wdGUtbm9tLWFkaCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnZvbGV0LWNvbXB0ZS1ub20tYWRoMSwudm9sZXQtY29tcHRlLW5vbS1hZGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgLnZvbGV0LWNvbXB0ZS1pZGVudGlmaWFudCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnZvbGV0LWNvbXB0ZS1jb25uZWN0ZWRBcyB7XG4gICAgICAgIHBhZGRpbmc6IDE2cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmlzQm9yZDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMTBweCAwO1xuXG4gICAgICAgIC5zZS1jb25uZWN0ZXItaGVhZGVyLWluZm8ge1xuICAgICAgICAgICAgY29sb3I6ICMyYjJiMmI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxpZW4tcGljdG8ge1xuICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTEyXCI7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVk9MRVQgRkFWT1JJU1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuI3ZvbGV0LWZhdm9yaXMge1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuXG4gICAgLmxpZW4tcGljdG8ge1xuICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTU0XCI7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2luZ2xlRmF2b3JpcyB7XG4gICAgICAgIHBhZGRpbmc6IDE2cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmlzQm9yZDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICAgIC5zaW5nbGVGYXZvcmlzX190eXBlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNpbmdsZUZhdm9yaXNfX2NvbnRlbnQge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XG4gICAgICAgICAgICBsaW5lLWNsYW1wOiAyO1xuICAgICAgICAgICAgLyogYXV0b3ByZWZpeGVyOiBvZmYgKi9cbiAgICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgICAgICAvKiBhdXRvcHJlZml4ZXI6IG9uICovXG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFZPTEVUIFBSSVhcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiN2b2xldC1wcml4IHtcbiAgICAucmFkaW8ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICAgIFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRncmlzQm9yZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICR2ZXJ0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFZPTEVUIFBSSVhcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiN2b2xldC1wYW5pZXJzLCAjdm9sZXQtbGlzdGVzLWFjaGF0IHtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcblxuICAgIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuNHJlbTtcbiAgICB9XG5cbiAgICAuYnRuVm9sZXRQYW5pZXIge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDE5cHg7XG4gICAgICAgIGNvbG9yOiAkYmxhbmM7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYm9yZGVyOiAwIG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuMnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgICAuYnRuTm91dmVhdVBhbmllciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR2ZXJ0O1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIitcIjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5idG5QYW5pZXJBY3RpZiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTk2NFwiO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnZvbGV0UGFuaWVyX19zZWFyY2gsIC52b2xldExpc3RlQWNoYXRfX3NlYXJjaCB7XG4gICAgICAgIG1hcmdpbjogMzBweCAwO1xuICAgIH1cblxuICAgIC5saWVuLXBpY3RvIHtcbiAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgQGV4dGVuZCAuaWNvbW9vbjtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTU0XCI7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnZvbGV0UGFuaWVyX19zZWFyY2ggZGl2LCAudm9sZXRMaXN0ZUFjaGF0X19zZWFyY2ggZGl2IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFuYztcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJ0bi1zZWFyY2gge1xuICAgICAgICAgICAgcmlnaHQ6IDJweDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGdyaXNCb3JkO1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTE1XCI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5idG4tcmVzZXQge1xuICAgICAgICAgICAgcmlnaHQ6IDM1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICAgICAgICAgIC5pY29tb29uOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvckJhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudm9sZXRQYW5pZXJfX2xpc3RlUGFuaWVyLCAudm9sZXRMaXN0ZUFjaGF0X19saXN0ZUFjaGF0IHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRncmlzRm9uY2VcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEudm9sZXRQYW5pZXJfX2xvY2tlZCB7XG4gICAgICAgIGNvbG9yOiAkZ3Jpc0ZvbmNlO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5pY29tb29uO1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MTRcIjtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnZvbGV0UGFuaWVyX19wYW5pZXJzLCAudm9sZXRQYW5pZXJfX3BhbmllcnNQYXJ0YWdlcywgLnZvbGV0UGFuaWVyX19wYW5pZXJzQVZhbGlkZXIsIC52b2xldExpc3RlQWNoYXRfX2xpc3RlcywgLnZvbGV0TGlzdGVBY2hhdF9fbGlzdGVzUGFydGFnZXMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cbn1cblxuLmNvbnRhaW5lci10eXBlLXBhbmllciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlclxufVxuLmZhLWNoZXZyb24tZG91YmxlLXJpZ2h0OjpiZWZvcmUge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAjMGU5MGQyO1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIGNvbnRlbnQ6IFwiXFxmMTAxXCI7XG4gICAgQGV4dGVuZCAuZmE7XG59XG5cbi8vdm9sZXQgaGVhZGVyXG5AaW1wb3J0ICd2b2xldC1oZWFkJztcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIFZPTEVUIEhFQURcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi52b2xldC1oZWFkZXIge1xuICAgIG1heC13aWR0aDogNDQ1cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICB6LWluZGV4OiA5OTk5OTk5O1xuXG4gICAgLnZvbGV0LWlubmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICAgIC5jb250ZW51IHtcbiAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgaDMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgICAgICBmb250LXNpemU6IDIuN3JlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbiAgICAubmF2IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyaXNNZW51O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB3aWR0aDogNy4ycmVtO1xuICAgICAgICAmLWxpbmsge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDcuMnJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDMuMnJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLmFjdGl2ZSB7XG4gICAgICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmlzQm9yZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC52b2xldC10aXRyZUV0TGllbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG5cbiAgICAuaW5uZXItY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgdWwubml2MSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgbGkgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGJsZXVPcmNhYjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy90b2FzdFxuICAgIC50b2FzdCB7XG4gICAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDE2cHggMTZweCAxNnB4IDU2cHg7XG5cbiAgICAgICAgYnV0dG9uLm5vdGlmaWNhdGlvbi1tYXJrLWFzLXJlYWQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5ub3QtcmVhZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgIC50b2FzdC1tZXNzYWdlLCAudG9hc3QtdGltZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYnV0dG9uLm5vdGlmaWNhdGlvbi1tYXJrLWFzLXJlYWQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy9jbG9zZVxuICAgIC5oaWRlLXZvbGV0LWhlYWRlciB7XG4gICAgICAgIHdpZHRoOiA0cmVtO1xuICAgICAgICBoZWlnaHQ6IDRyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuOHJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYW5jO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgLmNvbnRlbnUge1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5oaWRlLXZvbGV0LWhlYWRlciB7XG4gICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgfVxuICAgICAgICAubmF2IHtcbiAgICAgICAgICAgIHdpZHRoOiA2cmVtO1xuICAgICAgICAgICAgJi1saW5rIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDZyZW07XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjZyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogVEVNUExBVEUgRkVFRCBBQ1RVQUxJVEVTIEFDQ1VFSUxcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuJG1vYmlsZS1tZWRpdW0gOiA0MTBweDtcblxuLlRQTF9PUkNBQl9GRUVEX0VUX0FfTEFfVU5FIHtcbiAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3ctcmV2ZXJzZSB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR0YWJsZXQpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMjBweDtcbiAgICB9XG5cbiAgICAuZmVlZCB7XG4gICAgICAgICYtcHJpbWFyeSB7XG4gICAgICAgICAgICB3aWR0aDogNTkuMDQ0MzY4NjAwNjgyNTklO1xuICAgICAgICAgICAgJi1pbm5lciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAgICAgIGdhcDogMzBweCAzLjU4MzgxNTAyODkwMTc0JTtcbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgICAgIGdhcDogMTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLWVsZW1lbnQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0OC4yMDgwOTI0ODU1NDkxMyU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDNuKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5mZWVkLXVuZS1pbWcge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkZGVza3RvcC1zbWFsbCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MC40NjYxMDE2OTQ5MTUyNSU7XG4gICAgICAgICAgICAgICAgJi1lbGVtZW50IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYtc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgIHdpZHRoOiA0MC45NTU2MzEzOTkzMTc0MSU7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGRlc2t0b3Atc21hbGwpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTkuNTMzODk4MzA1MDg0NzUlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDU3LjQxNTI1NDIzNzI4ODE0JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vZmVlZCBpdGVtXG4gICAgICAgICYtaXRlbSB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3Jpc0JvcmQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweCA1cHggNXB4O1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgZ2FwOiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgJi5zaG93biB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGUpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlLW1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi1pbWcge1xuICAgICAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZS1tZWRpdW0pIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLWRldGFpbCB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICB9XG4gICAgICAgICYtdG9wIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiA1cHg7XG4gICAgICAgIH1cbiAgICAgICAgJi10eXBlIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDJweCA4cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjhyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxM3B4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgY29sb3I6ICRibGFuYztcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJhc2U7XG4gICAgICAgIH1cbiAgICAgICAgJi1hZmZpY2hhZ2UsXG4gICAgICAgICYtZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS44cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1kYXRlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIuNnJlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5ODQnO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgIEBleHRlbmQgLmljb21vb247XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWxpZ25lbWVudFk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGV1T3JjYWI7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgQGV4dGVuZCAudGl0cmUtYmxvYy1idWxsZXQ7XG4gICAgfVxuICAgIC5zdWJ0aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxldU9yY2FiO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHNlY3Rpb24ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cblxuICAgIC5wYXN0aWxsZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHggMCAwIDA7XG4gICAgfVxufSJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/