/*!******************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/css/public/contact.css ***!
  \******************************************************************************/

.contact_address_ctn {
  margin-top: 2rem;
}

.contact_address_ctn p {
  margin: 0 !important;
}

.contact_form_ctn {
  display: grid;
  grid-template-columns: 1fr;
  grid-row-gap: 20px;
  width: 100%;
}

.contact_page {
  display: grid;
  grid-template-columns: 1fr;
}

@media only screen and (min-width: 768px) {

  .contact_page {
    grid-template-columns: 1fr 1fr;
  }

}
/*!**********************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/css/public/public-form.css ***!
  \**********************************************************************************/
/* ------------------------------------------- PUBLIC FORM -------------------------------------------------*/

.buttonCtn {
  display: grid;
  justify-content: center;
}

.form_error,
.form_error_label_before {
  font-size: 0.8em;
  color: red;
}

.form_error_label_before {
  grid-column: span 2;
}

input:not([type="submit"]):not([type="button"]):not([type='checkbox']):not([type='color']),
select,
textarea,
.colorSbx {
  width: 100%;
  font-family: var(--std-font-family);
  font-size: 0.95em;
  font-weight: var(--std-font-weight);
  border: var(--form-border);
  border-radius: 3px;
  padding: 10px;
  box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%), 1px 1px 5px rgb(35 52 80 / 20%);
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}

input:not([type="submit"]):not([type="button"]):not([type='checkbox']):not([type='color']),
select {
  height: 45px;
}

input[type='checkbox'],
input[type='checkbox']:checked {
  width: 20px;
  height: 20px;
  align-self: center;
  margin: 0;
}

/* Ne marche pas. Il faut utiliser :before et :after pour styler un checkbox */
input[type='checkbox']:checked {
  color: var(--secondary-text-color);
  background-color: #31333b !important;
}

input[type='color'] {
  width: 40px;
  height: 40px;
  padding: 3px;
  border-radius: 2px;
  cursor: pointer;
  background-color: transparent;
}

input:focus,
select:focus,
input:hover,
select:hover,
textarea:focus,
textarea:hover {
  border-color: var(--primary-color) !important;
  outline: 0 !important;
  box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%), 0 0 3px rgb(35 52 80 / 35%) !important;
}

input[type="button"],
input[type="button"]:active,
input[type="button"]:visited,
input[type="submit"],
input[type="submit"]:active,
input[type="submit"]:visited,
.bButton,
.bButton:active,
.bButton:visited,
.b_anchor_button,
.b_anchor_button:visited,
.squareButton,
.squareButton:active,
.squareButton:visited {
  width: 120px;
  height: 36px;
  background-color: var(--primary-color);
  color: var(--secondary-text-color);
  font-size: 0.95em;
  border: var(--form-border);
  letter-spacing: 0.1px;
  border-radius: 2px;
  cursor: pointer;
  box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%), 1px 1px 2px rgb(35 52 80 / 40%);
}

.b_anchor_button,
.b_anchor_button:visited {
  display: grid;
  font-family: Arial;
  font-weight: 400;
  place-items: center;
}

.b_anchor_button:hover,
.b_anchor_button:visited:hover {
  background-color: #2b3f62;
  text-decoration: none;
}

input[type="button"]:hover,
input[type="submit"]:hover {
  background-color: #2b3f62;
  outline: 0;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(249, 76, 206, 0.6);
}

label {
  display: flex;
  /* align-self: center; */
  align-items: center;
}

textarea {
  resize: none;
}

.formDivWithoutLabel,
.formDivWithLabelAboveField {
  display: grid;
  align-content: start;
}

.formDivWithLabelAboveField {
  grid-row-gap: 5px;
}

.formDivWithLabelBeforeField {
  display: grid;
  grid-template-columns: 200px 1fr;
  grid-column-gap: 10px;
}

.formDivWithLabelBeforeField_AutoLabel {
  grid-template-columns: auto 1fr !important;
}

/*!**************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/css/public/public-template.css ***!
  \**************************************************************************************/
/* ----------------------------------------- PUBLIC TEMPLATE -----------------------------------------*/

:root {

  /* COULEURS DE BASE */
  /* Dark gray */
  --primary-color: #233450;
  /* Light gray */
  --secondary-color: #F8F7F9;
  /* Light blue metal */
  --tertiary-color: #d7e1ee;

  /* FONTS */
  --std-font-family: Calibri, Arial, sans-serif;
  --std-font-size: 0.95em;
  --std-font-weight: 300;

  /* FONTS COLOR */
  /* Gris (texte standard) */
  --primary-text-color: #373737;
  /* Blanc (texte footer) */
  --secondary-text-color: #fff;
  /* Bleu pour titres */
  --tertiary-text-color: #2d4a7b;

  /* BORDER RADIUS */
  --border-radius: 5px;
  --border-radius-top: var(--border-radius) var(--border-radius) 0 0;
  --border-radius-bottom: 0 0 var(--border-radius) var(--border-radius);
}

*:not(img),
*:before,
*:after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  font-family: var(--std-font-family);
  font-size: var(--std-font-size);
  font-weight: var(--std-font-weight);
  margin: 0;
  padding: 0;
}

body {
  width: 100%;
  max-width: 1920px;
  min-height: 100vh;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr auto;
}

/* --------------------------------------------- ANCHORS ---------------------------------------------*/

a,
a:active,
a:visited {
  color: var(--primary-color);
  font-weight: 600;
  text-decoration: none;
}

.card a,
.card a:active,
.card a:visited {
  color: var(--primary-text-color);
}

footer a,
footer a:active,
footer a:visited,
footer a:hover,
header a,
header a:active,
header a:visited,
header a:hover,
nav a,
nav a:active,
nav a:visited,
nav a:hover {
  color: var(--secondary-text-color);
}

footer a,
footer a:active,
footer a:visited,
footer a:hover {
  font-weight: 100;
  font-size: 0.9rem;
}

footer a:hover,
header a:hover,
.mobile_menu a:hover,
nav a:hover,
section a:hover {
  text-decoration: underline;
}

/* --------------------------------------------- TITLES ----------------------------------------------*/

h1,
h2,
h3,
h4,
h5 {
  margin-top: 0;
  /* Neutralise la valeur par défaut */
  margin-bottom: 0;
  /* Neutralise la valeur par défaut */
  margin-block-start: 0;
  /* Neutralise la valeur par défaut */
  margin-block-end: 0;
  /* Neutralise la valeur par défaut */
  margin-inline-start: 0;
  /* Neutralise la valeur par défaut */
  margin-inline-end: 0;
  /* Neutralise la valeur par défaut */
}

h1,
h2,
h3,
h4 {
  font-family: var(--std-font-family);
  color: var(--tertiary-text-color);
  font-weight: 600;
  text-align: left;
  line-height: 1em;
}

h1 {
  font-size: 1.5rem;
  font-variant-caps: all-small-caps;
  margin-top: 1.3rem;
  margin-bottom: 0.8rem;
  /*font-size: 1.25em;*/
  /*font-weight: 100;*/
}

h2 {
  font-size: 1.5rem;
  font-variant-caps: all-small-caps;
  margin-top: 1.3rem;
  margin-bottom: 0.8rem;
}

h3 {
  font-size: 1.25rem;
  font-variant-caps: all-small-caps;
  margin-top: 1.4rem;
  margin-bottom: 0.5rem;
}

h4 {
  font-size: 0.95em;
  font-weight: 600;
  margin-top: 0.5rem;
  margin-bottom: 0.3rem;
}

/* Supprime la marge supérieure si le titre est en début de div */
div > h1:first-child,
div > h2:first-child,
div > h3:first-child,
div > h4:first-child {
  margin-top: 0;
}

/* -------------------------------------------- PARAGRAPH --------------------------------------------*/

p {
  margin: 0.6em 0;
}

/* Supprime la marge supérieure du paragraphe <p> s'il est directement précédé d'un titre */
h2 + p,
h3 + p,
h4 + p {
  margin-top: 0;
}

/* Supprime la marge inférieure du paragraphe <p> s'il est directement suivi d'une  div */
p:has(+ h2),
p:has(+ h3),
p:has(+ h4) {
  margin-bottom: 0;
}

.title_highlight {
  color: var(--tertiary-text-color);
  font-weight: 600;
  font-variant: all-small-caps;
}

.comment {
  padding: 20px;
  background-color: var(--secondary-color);
  border-radius: 3px;
  text-align: justify;
}

.remark {
  padding: 20px;
  background-color: var(--secondary-color);
  border-radius: 3px;
  text-align: justify;
}

/* ---------------------------------------------- LOGO -----------------------------------------------*/

.logo_frame {
  display: grid;
  grid-template-columns: 50px 1fr;
  background: var(--primary-color);
}

.logo_ctn {
  display: grid;
  height: 100%;
  align-self: center;
  margin-right: 50px;
}

.phone_number {
  height: 16px;
  align-self: center;
  justify-self: end;
  margin-right: 8px;
}

.logo_desktop {
  height: 36px;
}

.logo_mobile {
  justify-self: center;
  align-self: center;
  height: 35px;
}

/* Bouton de fermeture du menu */

.bx_close_btn {
  display: flex;
  align-self: center;
  width: 24px;
  height: 24px;
}

.bx_close_btn:hover {
  cursor: pointer;
}

/* --------------------------------------------- HEADER ----------------------------------------------*/

header {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 50px 160px;
  color: var(--secondary-text-color);
}

header h2 {
  font-weight: 400;
  padding: 0;
  border: 0;
  color: var(--secondary-text-color);
}

header h3 {
  color: var(--secondary-text-color);
  white-space: nowrap;
  font-variant-caps: normal;
  font-weight: 400;
  font-size: 1.5rem;
  justify-self: end;
  align-self: end;
  padding: 0 10px 5px 0;
}

.header_img_frame {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  color: var(--secondary-text-color);
}

/* --------------------------------------------- FOOTER ----------------------------------------------*/

footer {
  height: fit-content;
  /*margin-top: 40px;*/
}

.footer_panel {
  display: grid;
  grid-template-columns: 1fr auto 2fr auto 2fr;
  grid-template-areas: ". footer_social . footer_address .";
  color: var(--secondary-text-color);
  font-size: 0.9rem;
  justify-content: space-around;
  padding: 40px 5px;
  background: linear-gradient(var(--primary-color), #2d4264);
}

.footer_social_ctn {
  grid-area: footer_social;
  display: grid;
  grid-template-columns: auto;
}

.footer_address_ctn {
  grid-area: footer_address;
}

.footer_logo {
  width: 130px;
}

.footer_contact_ctn {
  display: grid;
  grid-template-columns: 30px auto;
  margin-top: 40px;
}

.footer_icon {
  width: 18px;
  padding-top: 2px;
}

/* ------------------------------------------ MENU DESKTOP -------------------------------------------*/

.nav_desktop {
  grid-area: menu;
  height: 50px;
  display: grid;
  width: 100%;
  justify-self: center;
  grid-template-columns: repeat(auto-fit, minmax(70px, auto));
  background-color: rgba(50, 101, 185, 0.05);
  align-self: end;
  border-radius: 5px;
}

.nav_desktop:hover {
  /*background-color: rgba(50, 101, 185, 0.25);*/
  background-color: rgb(49 74 115 / 25%);
}

.nav_desktop a, .nav_desktop a:active, .nav_desktop a:visited {
  display: grid;
  align-items: center;
  justify-content: center;
}

/* ------------------------------------------- MENU MOBILE -------------------------------------------*/

.mobile_menu_ctn {
  display: grid;
  align-items: center;
  justify-content: end;
}

.mobile_menu_ctn:hover {
  cursor: pointer;
}

.nav_mobile {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  background-color: #192330;
  left: 0;
  position: fixed;
  right: 0;
  z-index: 3;
}

.mobile_menu_title {
  display: grid;
  grid-template-columns: 50px 1fr;
  grid-template-rows: 50px;
}

.nav_mobile h2 {
  color: var(--secondary-text-color);
  font-variant-caps: normal;
  font-weight: var(--std-font-weight);
  font-size: 1.3rem;
  margin: 0;
  padding: 0;
  border: 0;
}

.nav_mobile a, .nav_mobile a:active, .nav_mobile a:visited {
  display: grid;
  align-items: center;
  grid-template-columns: 30px 1fr;
  height: 50px;
  margin: 0 20px;
  padding-left: 7px;
  border-bottom: 1px solid var(--primary-color);
}

.nav_mobile a:hover {
  background-color: black;
}

.mobile_menu_button {
  width: 32px;
  height: 32px;
}

.mobile_menu_icon {
  width: 20px;
  height: 20px;
}

/* --------------------------------------------- EFFECTS ---------------------------------------------*/

/* État initial : éléments cachés
 * La classe slide_off décale un élément et le rend opaque dans l'attente d'être supprimée pour provoquer l'animation désirée
 * La classe slide_off doit être attribuée à un conteneur d'objet possédant des éléments slide_in_1, slide_in_2, etc.
 * Sa suppression entraine l'affichage progressif des éléments contenus et leur glissement vers leur position finale
*/
.slide_off [class*="slide_in"] {
  opacity: 0;
  transform: translateY(30px);
}

/* État final : éléments visibles
 * Le retrait de slide_off provoque le retour à l'opacité normale de 1 et une translation en position 0
 */
[class*="slide_in"] {
  transition: transform 1s cubic-bezier(.5, 0, 0, 1), opacity 1s cubic-bezier(.5, 0, 0, 1);
  /*transition: 1s cubic-bezier(.5, 0, 0, 1);*/
}

/* Ajoute un délai afin de décaler l'affichage */
.slide_in_1 {
  transition-delay: .1s;
}

.slide_in_2 {
  transition-delay: .2s;
}

/* --------------------------------------------- SECTION ---------------------------------------------*/

section {
  display: grid;
  grid-template-columns: 1fr;
}

/* ---------------------------------------- TECHNICAL CLASSES ----------------------------------------*/

/* Alignement (alignement vertical)*/
.ac_bt {
  align-content: end;
}

.as_ct {
  align-self: center;
}

.as_nd {
  align-self: end;
}

/* Colonne Span */
.cln_2 {
  grid-column: span 2;
}

.cln_3 {
  grid-column: span 3;
}

.cln_4 {
  grid-column: span 4;
}

.cln_5 {
  grid-column: span 5;
}

.cln_6 {
  grid-column: span 6;
}

/* Grid container */

.gc {
  display: grid;
}

.gc_ct {
  display: grid;
  place-items: center;
}

.gc_2c {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

/* Justify-content (alignement horizontal) */
.jc_nd {
  justify-content: end;
}

/* Justify-self (alignement horizontal) */
.js_st {
  justify-self: start;
}

.js_ct {
  justify-self: center;
}

/* Margin Left */

.ml_sm {
  margin-left: 0.5em;
}

/* Margin Right */

.mr_sm {
  margin-right: 0.5em;
}

/* Margin Top */
.mt_no {
  margin-top: 0;
}

.mt_xs {
  margin-top: 5px;
}

.mt_sm {
  margin-top: 10px;
}

.mt_md {
  margin-top: 15px;
}

.mt_lg {
  margin-top: 20px;
}

.mt_xl {
  margin-top: 30px;
}

/* Margin Bottom */

.mb_no {
  margin-bottom: 0;
}

.mb_xs {
  margin-bottom: 5px;
}

.mb_sm {
  margin-bottom: 10px;
}

.mb_md {
  margin-bottom: 15px;
}

.mb_lg {
  margin-bottom: 20px;
}

.mb_xl {
  margin-bottom: 30px;
}

/* Nowrap */
.pa_xs {
  padding: 5px;
}

/* Nowrap */
.nowrap {
  white-space: nowrap;
}

/* Row Span */
.row_2 {
  grid-row: span 2;;
  /* sur 2 lignes */
}

/* Text-Align (alignement horizontal) */
.ta_ct {
  text-align: center;
}

.ta_ju {
  text-align: justify;
}

.ta_lf {
  text-align: left;
}

.ta_rg {
  text-align: right;
}

.ta_st {
  text-align: start;
}

/* ------------------------------------------ MEDIA QUERIES ------------------------------------------*/

@media only screen and (min-width: 768px) {

  .footer_panel {
    padding: 40px 10px;
  }

  .footer_address {
    grid-template-columns: 40px 1fr;
    margin-left: 20px;
  }

  h1 {
    font-family: var(--std-font-family);
    font-size: 1.5em;
  }

  h2 {
    font-size: 1.5em;
  }

  header {
    grid-template-rows: 65px 350px !important;
    align-items: center;
  }

  header h2 {
    font-size: 1.25rem;
    font-variant-caps: normal;
    margin: 0;
  }

  header h3 {
    font-weight: 100;
    grid-area: title;
    padding: 0;
    margin: 0 50px 15px 20px !important;
  }

  .header_img_frame {
    grid-template-areas:
      ". menu ."
      ". title title";
    grid-template-columns: minmax(10px, 1fr) minmax(708px, 1000px) minmax(10px, 1fr);
    grid-template-rows: 60px 290px; /* 350px au total */
    align-items: center;
  }

  .logo_ctn {
    margin-left: 20px;
    margin-right: 0;
  }

  .logo_frame {
    grid-template-columns: 1fr;
    align-self: start;
    height: 100%;
  }

  .phone_number {
    height: 20px;
    align-self: center;
  }
}

@media only screen and (min-width: 1440px) {

  .footer_panel {
    font-size: 0.9em;
  }

  h2 {
    font-size: 1.6em;
  }

  header h3 {
    padding: 80px 20px 0 0;
  }

  .logo_desktop {
    height: 40px;
  }
}
/*!**************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./src/css/components.css ***!
  \**************************************************************************/

:root {

  /*Margin*/
  --frame-margin-small-side: 0.3rem;
  --frame-margin-small-top: 1rem;
  --frame-margin-medium: 1rem;
  --frame-margin-large: 1rem;

  /* Border */
  --cards-border: solid 8px var(--primary-color);
}

/* ------------------------------- FRAMES (COMMON CSS FOR ALL FRAMES) --------------------------------*/

.frame {
  color: var(--primary-text-color);
  border-radius: var(--border-radius);
}

.frame a,
.frame a:active,
.frame a:visited {
  font-weight: 400;
}

.frame a:hover {
  text-decoration: underline;
}

.frame h4 {
  font-size: 0.95em;
  text-transform: uppercase;
}

.frame ul {
  padding: 0;
  margin: 0;
  list-style-position: inside;
}

.frame li {
  list-style: none;
  position: relative;
  margin-bottom: 2px;
  padding-left: 20px;
}

.frame li::before {
  content: "•"; /* Symbole de puce */
  color: var(--tertiary-text-color);
  position: absolute;
  left: 0; /* Positionne la puce */
  top: 0;
}

/* ------------------------------------------- FORM FRAME --------------------------------------------*/

.form_frame {
  display: grid;
  grid-template-columns: minmax(auto, 800px);
  grid-auto-rows: min-content;
  height: fit-content;
  justify-content: center;
  padding: 25px 30px 30px 30px;
  background-color: var(--tertiary-color);
}

/* ----------------------------------------- STANDARD FRAME ------------------------------------------*/

.standard_frame {
  padding: 1.0rem;
  background-color: var(--secondary-color);
}

.standard_frame_txt_ctn {
  display: grid;
  padding: 10px;
}

/* ------------------------------------------ FRAMES MARGINS -----------------------------------------*/

.top_frame_margin {
  margin: var(--frame-margin-small-top) var(--frame-margin-small-side) 0 var(--frame-margin-small-side);
}

.bottom_frame_margin {
  margin: 1.0rem var(--frame-margin-small-side) 1.0rem var(--frame-margin-small-side);
}

.single_frame_margin {
  margin: var(--frame-margin-small-top) var(--frame-margin-small-side) 1rem var(--frame-margin-small-side);
}

/* --------------------------------------------- LAYOUT ----------------------------------------------*/

.form_buttons_layout {
  margin: 20px 0 70px 0;
}

/* Version de form_buttons_layout avec une marge plus importante en haut */
.form_buttons_layout_lt {
  margin: 40px 0 70px 0;
}

/* ---------------------------------------- CONFIRMATION FRAME ---------------------------------------*/

.confirmationFrame {
  display: grid;
  grid-template-columns: minmax(auto, 600px);
  grid-auto-rows: min-content;
  height: max-content;
  margin: 50px 20px;
  justify-self: center;
}

/* -------------------------------------------- HOME CARDS -------------------------------------------*/

.card {
  display: grid;
  grid-template-columns: minmax(320px, 370px);
  margin: 10px;
  justify-self: center;
  color: var(--secondary-text-color);
}

.card h3 {
  color: var(--secondary-text-color);
  font-size: 1.15rem;
  margin: 0;
  border: 0;
  padding: 0;
}

.card ul {
  padding-left: 20px;
}

.card_service {
  grid-template-rows: 68px auto 50px;
}

.card_service_title {
  display: grid;
  grid-template-columns: 30px 1fr;
  background-color: var(--primary-color);
  padding: 20px;
  align-items: center;
  border-radius: 5px 5px 0 0;
  border-bottom: 1px solid #bbb;
}

.card_service_core {
  display: flex;
  justify-content: center;
  background-color: var(--primary-color);
  padding: 10px 20px 20px 20px;
}

.card_service_footer {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 20px;
  font-weight: 600;
  background-color: var(--secondary-color);
  border-bottom: var(--cards-border);
  border-radius: var(--border-radius-bottom);
}

.card_teaser {
  grid-template-rows: 68px auto 50px;
}

.card_teaser_title {
  display: grid;
  grid-template-columns: 30px 1fr;
  background-color: var(--secondary-color);
  padding: 20px;
  align-items: center;
  border-top: var(--cards-border);
  border-radius: var(--border-radius-top);
  color: var(--primary-text-color);
}

.card_teaser_title h3 {
  color: var(--primary-text-color);
  font-weight: 600;
}

.card_teaser_core {
  display: flex;
  justify-content: center;
  background-color: var(--primary-color);
  padding: 10px 20px 20px 20px;
}

.card_teaser_footer {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 20px;
  font-weight: 600;
  background-color: var(--secondary-color);
  border-bottom: var(--cards-border);
  border-radius: var(--border-radius-bottom);
}

/* ------------------------------------------ MEDIA QUERIES ------------------------------------------*/

@media only screen and (min-width: 768px) {

  .bottom_frame_margin {
    margin: var(--frame-margin-medium) var(--frame-margin-medium) 2rem var(--frame-margin-medium);
  }

  .card {
    grid-template-columns: minmax(350px, 370px);
    margin: 20px;
  }

  .frame h3 {
    /*font-size: 1.3rem;*/
    /*padding-top: 0.2rem;*/
  }

  .single_frame_margin {
    margin: var(--frame-margin-medium) var(--frame-margin-medium) 3rem var(--frame-margin-medium);
  }

  .top_frame_margin {
    margin: var(--frame-margin-medium) var(--frame-margin-medium) 0 var(--frame-margin-medium);
  }

}

@media only screen and (min-width: 1440px) {


}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzL2NvbnRhY3QuZThjNzU5NmUxNzQ3YzcxYTZmMDMuY3NzIiwibWFwcGluZ3MiOiI7Ozs7QUFDQTtFQUNFLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLG9CQUFvQjtBQUN0Qjs7QUFFQTtFQUNFLGFBQWE7RUFDYiwwQkFBMEI7RUFDMUIsa0JBQWtCO0VBQ2xCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLGFBQWE7RUFDYiwwQkFBMEI7QUFDNUI7O0FBRUE7O0VBRUU7SUFDRSw4QkFBOEI7RUFDaEM7O0FBRUYsQzs7OztBQzNCQSw2R0FBNkc7O0FBRTdHO0VBQ0UsYUFBYTtFQUNiLHVCQUF1QjtBQUN6Qjs7QUFFQTs7RUFFRSxnQkFBZ0I7RUFDaEIsVUFBVTtBQUNaOztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBOzs7O0VBSUUsV0FBVztFQUNYLG1DQUFtQztFQUNuQyxpQkFBaUI7RUFDakIsbUNBQW1DO0VBQ25DLDBCQUEwQjtFQUMxQixrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLDRFQUE0RTtFQUM1RSxzRUFBc0U7QUFDeEU7O0FBRUE7O0VBRUUsWUFBWTtBQUNkOztBQUVBOztFQUVFLFdBQVc7RUFDWCxZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLFNBQVM7QUFDWDs7QUFFQSw4RUFBOEU7QUFDOUU7RUFDRSxrQ0FBa0M7RUFDbEMsb0NBQW9DO0FBQ3RDOztBQUVBO0VBQ0UsV0FBVztFQUNYLFlBQVk7RUFDWixZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZiw2QkFBNkI7QUFDL0I7O0FBRUE7Ozs7OztFQU1FLDZDQUE2QztFQUM3QyxxQkFBcUI7RUFDckIsbUZBQW1GO0FBQ3JGOztBQUVBOzs7Ozs7Ozs7Ozs7OztFQWNFLFlBQVk7RUFDWixZQUFZO0VBQ1osc0NBQXNDO0VBQ3RDLGtDQUFrQztFQUNsQyxpQkFBaUI7RUFDakIsMEJBQTBCO0VBQzFCLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLDRFQUE0RTtBQUM5RTs7QUFFQTs7RUFF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NUM7O0FBRUEsdUdBQXVHOztBQUV2Rzs7RUFFRTtJQUNFLDZGQUE2RjtFQUMvRjs7RUFFQTtJQUNFLDJDQUEyQztJQUMzQyxZQUFZO0VBQ2Q7O0VBRUE7SUFDRSxxQkFBcUI7SUFDckIsdUJBQXVCO0VBQ3pCOztFQUVBO0lBQ0UsNkZBQTZGO0VBQy9GOztFQUVBO0lBQ0UsMEZBQTBGO0VBQzVGOztBQUVGOztBQUVBOzs7QUFHQSxDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vZnJvbnRlbmQvLi9zcmMvY3NzL3B1YmxpYy9jb250YWN0LmNzcyIsIndlYnBhY2s6Ly9mcm9udGVuZC8uL3NyYy9jc3MvcHVibGljL3B1YmxpYy1mb3JtLmNzcyIsIndlYnBhY2s6Ly9mcm9udGVuZC8uL3NyYy9jc3MvcHVibGljL3B1YmxpYy10ZW1wbGF0ZS5jc3MiLCJ3ZWJwYWNrOi8vZnJvbnRlbmQvLi9zcmMvY3NzL2NvbXBvbmVudHMuY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIlxyXG4uY29udGFjdF9hZGRyZXNzX2N0biB7XHJcbiAgbWFyZ2luLXRvcDogMnJlbTtcclxufVxyXG5cclxuLmNvbnRhY3RfYWRkcmVzc19jdG4gcCB7XHJcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jb250YWN0X2Zvcm1fY3RuIHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gIGdyaWQtcm93LWdhcDogMjBweDtcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmNvbnRhY3RfcGFnZSB7XHJcbiAgZGlzcGxheTogZ3JpZDtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG5cclxuICAuY29udGFjdF9wYWdlIHtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcclxuICB9XHJcblxyXG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBQVUJMSUMgRk9STSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbi5idXR0b25DdG4ge1xyXG4gIGRpc3BsYXk6IGdyaWQ7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5mb3JtX2Vycm9yLFxyXG4uZm9ybV9lcnJvcl9sYWJlbF9iZWZvcmUge1xyXG4gIGZvbnQtc2l6ZTogMC44ZW07XHJcbiAgY29sb3I6IHJlZDtcclxufVxyXG5cclxuLmZvcm1fZXJyb3JfbGFiZWxfYmVmb3JlIHtcclxuICBncmlkLWNvbHVtbjogc3BhbiAyO1xyXG59XHJcblxyXG5pbnB1dDpub3QoW3R5cGU9XCJzdWJtaXRcIl0pOm5vdChbdHlwZT1cImJ1dHRvblwiXSk6bm90KFt0eXBlPSdjaGVja2JveCddKTpub3QoW3R5cGU9J2NvbG9yJ10pLFxyXG5zZWxlY3QsXHJcbnRleHRhcmVhLFxyXG4uY29sb3JTYngge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1zdGQtZm9udC1mYW1pbHkpO1xyXG4gIGZvbnQtc2l6ZTogMC45NWVtO1xyXG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1zdGQtZm9udC13ZWlnaHQpO1xyXG4gIGJvcmRlcjogdmFyKC0tZm9ybS1ib3JkZXIpO1xyXG4gIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICBwYWRkaW5nOiAxMHB4O1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2IoMCAwIDAgLyA4JSksIDFweCAxcHggNXB4IHJnYigzNSA1MiA4MCAvIDIwJSk7XHJcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IC4xNXMsIGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgLjE1cztcclxufVxyXG5cclxuaW5wdXQ6bm90KFt0eXBlPVwic3VibWl0XCJdKTpub3QoW3R5cGU9XCJidXR0b25cIl0pOm5vdChbdHlwZT0nY2hlY2tib3gnXSk6bm90KFt0eXBlPSdjb2xvciddKSxcclxuc2VsZWN0IHtcclxuICBoZWlnaHQ6IDQ1cHg7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9J2NoZWNrYm94J10sXHJcbmlucHV0W3R5cGU9J2NoZWNrYm94J106Y2hlY2tlZCB7XHJcbiAgd2lkdGg6IDIwcHg7XHJcbiAgaGVpZ2h0OiAyMHB4O1xyXG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbi8qIE5lIG1hcmNoZSBwYXMuIElsIGZhdXQgdXRpbGlzZXIgOmJlZm9yZSBldCA6YWZ0ZXIgcG91ciBzdHlsZXIgdW4gY2hlY2tib3ggKi9cclxuaW5wdXRbdHlwZT0nY2hlY2tib3gnXTpjaGVja2VkIHtcclxuICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LXRleHQtY29sb3IpO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMzMTMzM2IgIWltcG9ydGFudDtcclxufVxyXG5cclxuaW5wdXRbdHlwZT0nY29sb3InXSB7XHJcbiAgd2lkdGg6IDQwcHg7XHJcbiAgaGVpZ2h0OiA0MHB4O1xyXG4gIHBhZGRpbmc6IDNweDtcclxuICBib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG5pbnB1dDpmb2N1cyxcclxuc2VsZWN0OmZvY3VzLFxyXG5pbnB1dDpob3Zlcixcclxuc2VsZWN0OmhvdmVyLFxyXG50ZXh0YXJlYTpmb2N1cyxcclxudGV4dGFyZWE6aG92ZXIge1xyXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcikgIWltcG9ydGFudDtcclxuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYigwIDAgMCAvIDglKSwgMCAwIDNweCByZ2IoMzUgNTIgODAgLyAzNSUpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJidXR0b25cIl0sXHJcbmlucHV0W3R5cGU9XCJidXR0b25cIl06YWN0aXZlLFxyXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdOnZpc2l0ZWQsXHJcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXHJcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl06YWN0aXZlLFxyXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdOnZpc2l0ZWQsXHJcbi5iQnV0dG9uLFxyXG4uYkJ1dHRvbjphY3RpdmUsXHJcbi5iQnV0dG9uOnZpc2l0ZWQsXHJcbi5iX2FuY2hvcl9idXR0b24sXHJcbi5iX2FuY2hvcl9idXR0b246dmlzaXRlZCxcclxuLnNxdWFyZUJ1dHRvbixcclxuLnNxdWFyZUJ1dHRvbjphY3RpdmUsXHJcbi5zcXVhcmVCdXR0b246dmlzaXRlZCB7XHJcbiAgd2lkdGg6IDEyMHB4O1xyXG4gIGhlaWdodDogMzZweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LXRleHQtY29sb3IpO1xyXG4gIGZvbnQtc2l6ZTogMC45NWVtO1xyXG4gIGJvcmRlcjogdmFyKC0tZm9ybS1ib3JkZXIpO1xyXG4gIGxldHRlci1zcGFjaW5nOiAwLjFweDtcclxuICBib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2IoMCAwIDAgLyA4JSksIDFweCAxcHggMnB4IHJnYigzNSA1MiA4MCAvIDQwJSk7XHJcbn1cclxuXHJcbi5iX2FuY2hvcl9idXR0b24sXHJcbi5iX2FuY2hvcl9idXR0b246dmlzaXRlZCB7XHJcbiAgZGlzcGxheTogZ3JpZDtcclxuICBmb250LWZhbWlseTogQXJpYWw7XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICBwbGFjZS1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4uYl9hbmNob3JfYnV0dG9uOmhvdmVyLFxyXG4uYl9hbmNob3JfYnV0dG9uOnZpc2l0ZWQ6aG92ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMyYjNmNjI7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmhvdmVyLFxyXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmIzZjYyO1xyXG4gIG91dGxpbmU6IDA7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpLCAwIDAgOHB4IHJnYmEoMjQ5LCA3NiwgMjA2LCAwLjYpO1xyXG59XHJcblxyXG5sYWJlbCB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICAvKiBhbGlnbi1zZWxmOiBjZW50ZXI7ICovXHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxudGV4dGFyZWEge1xyXG4gIHJlc2l6ZTogbm9uZTtcclxufVxyXG5cclxuLmZvcm1EaXZXaXRob3V0TGFiZWwsXHJcbi5mb3JtRGl2V2l0aExhYmVsQWJvdmVGaWVsZCB7XHJcbiAgZGlzcGxheTogZ3JpZDtcclxuICBhbGlnbi1jb250ZW50OiBzdGFydDtcclxufVxyXG5cclxuLmZvcm1EaXZXaXRoTGFiZWxBYm92ZUZpZWxkIHtcclxuICBncmlkLXJvdy1nYXA6IDVweDtcclxufVxyXG5cclxuLmZvcm1EaXZXaXRoTGFiZWxCZWZvcmVGaWVsZCB7XHJcbiAgZGlzcGxheTogZ3JpZDtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDIwMHB4IDFmcjtcclxuICBncmlkLWNvbHVtbi1nYXA6IDEwcHg7XHJcbn1cclxuXHJcbi5mb3JtRGl2V2l0aExhYmVsQmVmb3JlRmllbGRfQXV0b0xhYmVsIHtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyICFpbXBvcnRhbnQ7XHJcbn1cclxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gUFVCTElDIFRFTVBMQVRFIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbjpyb290IHtcclxuXHJcbiAgLyogQ09VTEVVUlMgREUgQkFTRSAqL1xyXG4gIC8qIERhcmsgZ3JheSAqL1xyXG4gIC0tcHJpbWFyeS1jb2xvcjogIzIzMzQ1MDtcclxuICAvKiBMaWdodCBncmF5ICovXHJcbiAgLS1zZWNvbmRhcnktY29sb3I6ICNGOEY3Rjk7XHJcbiAgLyogTGlnaHQgYmx1ZSBtZXRhbCAqL1xyXG4gIC0tdGVydGlhcnktY29sb3I6ICNkN2UxZWU7XHJcblxyXG4gIC8qIEZPTlRTICovXHJcbiAgLS1zdGQtZm9udC1mYW1pbHk6IENhbGlicmksIEFyaWFsLCBzYW5zLXNlcmlmO1xyXG4gIC0tc3RkLWZvbnQtc2l6ZTogMC45NWVtO1xyXG4gIC0tc3RkLWZvbnQtd2VpZ2h0OiAzMDA7XHJcblxyXG4gIC8qIEZPTlRTIENPTE9SICovXHJcbiAgLyogR3JpcyAodGV4dGUgc3RhbmRhcmQpICovXHJcbiAgLS1wcmltYXJ5LXRleHQtY29sb3I6ICMzNzM3Mzc7XHJcbiAgLyogQmxhbmMgKHRleHRlIGZvb3RlcikgKi9cclxuICAtLXNlY29uZGFyeS10ZXh0LWNvbG9yOiAjZmZmO1xyXG4gIC8qIEJsZXUgcG91ciB0aXRyZXMgKi9cclxuICAtLXRlcnRpYXJ5LXRleHQtY29sb3I6ICMyZDRhN2I7XHJcblxyXG4gIC8qIEJPUkRFUiBSQURJVVMgKi9cclxuICAtLWJvcmRlci1yYWRpdXM6IDVweDtcclxuICAtLWJvcmRlci1yYWRpdXMtdG9wOiB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKSAwIDA7XHJcbiAgLS1ib3JkZXItcmFkaXVzLWJvdHRvbTogMCAwIHZhcigtLWJvcmRlci1yYWRpdXMpIHZhcigtLWJvcmRlci1yYWRpdXMpO1xyXG59XHJcblxyXG4qOm5vdChpbWcpLFxyXG4qOmJlZm9yZSxcclxuKjphZnRlciB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG5cclxuaHRtbCB7XHJcbiAgZm9udC1mYW1pbHk6IHZhcigtLXN0ZC1mb250LWZhbWlseSk7XHJcbiAgZm9udC1zaXplOiB2YXIoLS1zdGQtZm9udC1zaXplKTtcclxuICBmb250LXdlaWdodDogdmFyKC0tc3RkLWZvbnQtd2VpZ2h0KTtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG5cclxuYm9keSB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbWF4LXdpZHRoOiAxOTIwcHg7XHJcbiAgbWluLWhlaWdodDogMTAwdmg7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgZGlzcGxheTogZ3JpZDtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMWZyIGF1dG87XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBBTkNIT1JTIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG5hLFxyXG5hOmFjdGl2ZSxcclxuYTp2aXNpdGVkIHtcclxuICBjb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuXHJcbi5jYXJkIGEsXHJcbi5jYXJkIGE6YWN0aXZlLFxyXG4uY2FyZCBhOnZpc2l0ZWQge1xyXG4gIGNvbG9yOiB2YXIoLS1wcmltYXJ5LXRleHQtY29sb3IpO1xyXG59XHJcblxyXG5mb290ZXIgYSxcclxuZm9vdGVyIGE6YWN0aXZlLFxyXG5mb290ZXIgYTp2aXNpdGVkLFxyXG5mb290ZXIgYTpob3ZlcixcclxuaGVhZGVyIGEsXHJcbmhlYWRlciBhOmFjdGl2ZSxcclxuaGVhZGVyIGE6dmlzaXRlZCxcclxuaGVhZGVyIGE6aG92ZXIsXHJcbm5hdiBhLFxyXG5uYXYgYTphY3RpdmUsXHJcbm5hdiBhOnZpc2l0ZWQsXHJcbm5hdiBhOmhvdmVyIHtcclxuICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LXRleHQtY29sb3IpO1xyXG59XHJcblxyXG5mb290ZXIgYSxcclxuZm9vdGVyIGE6YWN0aXZlLFxyXG5mb290ZXIgYTp2aXNpdGVkLFxyXG5mb290ZXIgYTpob3ZlciB7XHJcbiAgZm9udC13ZWlnaHQ6IDEwMDtcclxuICBmb250LXNpemU6IDAuOXJlbTtcclxufVxyXG5cclxuZm9vdGVyIGE6aG92ZXIsXHJcbmhlYWRlciBhOmhvdmVyLFxyXG4ubW9iaWxlX21lbnUgYTpob3ZlcixcclxubmF2IGE6aG92ZXIsXHJcbnNlY3Rpb24gYTpob3ZlciB7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBUSVRMRVMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG5oMSxcclxuaDIsXHJcbmgzLFxyXG5oNCxcclxuaDUge1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbiAgLyogTmV1dHJhbGlzZSBsYSB2YWxldXIgcGFyIGTDqWZhdXQgKi9cclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIC8qIE5ldXRyYWxpc2UgbGEgdmFsZXVyIHBhciBkw6lmYXV0ICovXHJcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xyXG4gIC8qIE5ldXRyYWxpc2UgbGEgdmFsZXVyIHBhciBkw6lmYXV0ICovXHJcbiAgbWFyZ2luLWJsb2NrLWVuZDogMDtcclxuICAvKiBOZXV0cmFsaXNlIGxhIHZhbGV1ciBwYXIgZMOpZmF1dCAqL1xyXG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDA7XHJcbiAgLyogTmV1dHJhbGlzZSBsYSB2YWxldXIgcGFyIGTDqWZhdXQgKi9cclxuICBtYXJnaW4taW5saW5lLWVuZDogMDtcclxuICAvKiBOZXV0cmFsaXNlIGxhIHZhbGV1ciBwYXIgZMOpZmF1dCAqL1xyXG59XHJcblxyXG5oMSxcclxuaDIsXHJcbmgzLFxyXG5oNCB7XHJcbiAgZm9udC1mYW1pbHk6IHZhcigtLXN0ZC1mb250LWZhbWlseSk7XHJcbiAgY29sb3I6IHZhcigtLXRlcnRpYXJ5LXRleHQtY29sb3IpO1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICBsaW5lLWhlaWdodDogMWVtO1xyXG59XHJcblxyXG5oMSB7XHJcbiAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgZm9udC12YXJpYW50LWNhcHM6IGFsbC1zbWFsbC1jYXBzO1xyXG4gIG1hcmdpbi10b3A6IDEuM3JlbTtcclxuICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XHJcbiAgLypmb250LXNpemU6IDEuMjVlbTsqL1xyXG4gIC8qZm9udC13ZWlnaHQ6IDEwMDsqL1xyXG59XHJcblxyXG5oMiB7XHJcbiAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgZm9udC12YXJpYW50LWNhcHM6IGFsbC1zbWFsbC1jYXBzO1xyXG4gIG1hcmdpbi10b3A6IDEuM3JlbTtcclxuICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XHJcbn1cclxuXHJcbmgzIHtcclxuICBmb250LXNpemU6IDEuMjVyZW07XHJcbiAgZm9udC12YXJpYW50LWNhcHM6IGFsbC1zbWFsbC1jYXBzO1xyXG4gIG1hcmdpbi10b3A6IDEuNHJlbTtcclxuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcbn1cclxuXHJcbmg0IHtcclxuICBmb250LXNpemU6IDAuOTVlbTtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG4gIG1hcmdpbi10b3A6IDAuNXJlbTtcclxuICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XHJcbn1cclxuXHJcbi8qIFN1cHByaW1lIGxhIG1hcmdlIHN1cMOpcmlldXJlIHNpIGxlIHRpdHJlIGVzdCBlbiBkw6lidXQgZGUgZGl2ICovXHJcbmRpdiA+IGgxOmZpcnN0LWNoaWxkLFxyXG5kaXYgPiBoMjpmaXJzdC1jaGlsZCxcclxuZGl2ID4gaDM6Zmlyc3QtY2hpbGQsXHJcbmRpdiA+IGg0OmZpcnN0LWNoaWxkIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBQQVJBR1JBUEggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxucCB7XHJcbiAgbWFyZ2luOiAwLjZlbSAwO1xyXG59XHJcblxyXG4vKiBTdXBwcmltZSBsYSBtYXJnZSBzdXDDqXJpZXVyZSBkdSBwYXJhZ3JhcGhlIDxwPiBzJ2lsIGVzdCBkaXJlY3RlbWVudCBwcsOpY8OpZMOpIGQndW4gdGl0cmUgKi9cclxuaDIgKyBwLFxyXG5oMyArIHAsXHJcbmg0ICsgcCB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxufVxyXG5cclxuLyogU3VwcHJpbWUgbGEgbWFyZ2UgaW5mw6lyaWV1cmUgZHUgcGFyYWdyYXBoZSA8cD4gcydpbCBlc3QgZGlyZWN0ZW1lbnQgc3VpdmkgZCd1bmUgIGRpdiAqL1xyXG5wOmhhcygrIGgyKSxcclxucDpoYXMoKyBoMyksXHJcbnA6aGFzKCsgaDQpIHtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcblxyXG4udGl0bGVfaGlnaGxpZ2h0IHtcclxuICBjb2xvcjogdmFyKC0tdGVydGlhcnktdGV4dC1jb2xvcik7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICBmb250LXZhcmlhbnQ6IGFsbC1zbWFsbC1jYXBzO1xyXG59XHJcblxyXG4uY29tbWVudCB7XHJcbiAgcGFkZGluZzogMjBweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWNvbmRhcnktY29sb3IpO1xyXG4gIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG59XHJcblxyXG4ucmVtYXJrIHtcclxuICBwYWRkaW5nOiAyMHB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlY29uZGFyeS1jb2xvcik7XHJcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gTE9HTyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4ubG9nb19mcmFtZSB7XHJcbiAgZGlzcGxheTogZ3JpZDtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDUwcHggMWZyO1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG59XHJcblxyXG4ubG9nb19jdG4ge1xyXG4gIGRpc3BsYXk6IGdyaWQ7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcclxuICBtYXJnaW4tcmlnaHQ6IDUwcHg7XHJcbn1cclxuXHJcbi5waG9uZV9udW1iZXIge1xyXG4gIGhlaWdodDogMTZweDtcclxuICBhbGlnbi1zZWxmOiBjZW50ZXI7XHJcbiAganVzdGlmeS1zZWxmOiBlbmQ7XHJcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XHJcbn1cclxuXHJcbi5sb2dvX2Rlc2t0b3Age1xyXG4gIGhlaWdodDogMzZweDtcclxufVxyXG5cclxuLmxvZ29fbW9iaWxlIHtcclxuICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcclxuICBhbGlnbi1zZWxmOiBjZW50ZXI7XHJcbiAgaGVpZ2h0OiAzNXB4O1xyXG59XHJcblxyXG4vKiBCb3V0b24gZGUgZmVybWV0dXJlIGR1IG1lbnUgKi9cclxuXHJcbi5ieF9jbG9zZV9idG4ge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gIHdpZHRoOiAyNHB4O1xyXG4gIGhlaWdodDogMjRweDtcclxufVxyXG5cclxuLmJ4X2Nsb3NlX2J0bjpob3ZlciB7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gSEVBREVSIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuaGVhZGVyIHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gIGdyaWQtdGVtcGxhdGUtcm93czogNTBweCAxNjBweDtcclxuICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LXRleHQtY29sb3IpO1xyXG59XHJcblxyXG5oZWFkZXIgaDIge1xyXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBib3JkZXI6IDA7XHJcbiAgY29sb3I6IHZhcigtLXNlY29uZGFyeS10ZXh0LWNvbG9yKTtcclxufVxyXG5cclxuaGVhZGVyIGgzIHtcclxuICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LXRleHQtY29sb3IpO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgZm9udC12YXJpYW50LWNhcHM6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogNDAwO1xyXG4gIGZvbnQtc2l6ZTogMS41cmVtO1xyXG4gIGp1c3RpZnktc2VsZjogZW5kO1xyXG4gIGFsaWduLXNlbGY6IGVuZDtcclxuICBwYWRkaW5nOiAwIDEwcHggNXB4IDA7XHJcbn1cclxuXHJcbi5oZWFkZXJfaW1nX2ZyYW1lIHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gIGdyaWQtdGVtcGxhdGUtcm93czogMWZyO1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgY29sb3I6IHZhcigtLXNlY29uZGFyeS10ZXh0LWNvbG9yKTtcclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEZPT1RFUiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbmZvb3RlciB7XHJcbiAgaGVpZ2h0OiBmaXQtY29udGVudDtcclxuICAvKm1hcmdpbi10b3A6IDQwcHg7Ki9cclxufVxyXG5cclxuLmZvb3Rlcl9wYW5lbCB7XHJcbiAgZGlzcGxheTogZ3JpZDtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciBhdXRvIDJmciBhdXRvIDJmcjtcclxuICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcIi4gZm9vdGVyX3NvY2lhbCAuIGZvb3Rlcl9hZGRyZXNzIC5cIjtcclxuICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LXRleHQtY29sb3IpO1xyXG4gIGZvbnQtc2l6ZTogMC45cmVtO1xyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG4gIHBhZGRpbmc6IDQwcHggNXB4O1xyXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh2YXIoLS1wcmltYXJ5LWNvbG9yKSwgIzJkNDI2NCk7XHJcbn1cclxuXHJcbi5mb290ZXJfc29jaWFsX2N0biB7XHJcbiAgZ3JpZC1hcmVhOiBmb290ZXJfc29jaWFsO1xyXG4gIGRpc3BsYXk6IGdyaWQ7XHJcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvO1xyXG59XHJcblxyXG4uZm9vdGVyX2FkZHJlc3NfY3RuIHtcclxuICBncmlkLWFyZWE6IGZvb3Rlcl9hZGRyZXNzO1xyXG59XHJcblxyXG4uZm9vdGVyX2xvZ28ge1xyXG4gIHdpZHRoOiAxMzBweDtcclxufVxyXG5cclxuLmZvb3Rlcl9jb250YWN0X2N0biB7XHJcbiAgZGlzcGxheTogZ3JpZDtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDMwcHggYXV0bztcclxuICBtYXJnaW4tdG9wOiA0MHB4O1xyXG59XHJcblxyXG4uZm9vdGVyX2ljb24ge1xyXG4gIHdpZHRoOiAxOHB4O1xyXG4gIHBhZGRpbmctdG9wOiAycHg7XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBNRU5VIERFU0tUT1AgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4ubmF2X2Rlc2t0b3Age1xyXG4gIGdyaWQtYXJlYTogbWVudTtcclxuICBoZWlnaHQ6IDUwcHg7XHJcbiAgZGlzcGxheTogZ3JpZDtcclxuICB3aWR0aDogMTAwJTtcclxuICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDcwcHgsIGF1dG8pKTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDUwLCAxMDEsIDE4NSwgMC4wNSk7XHJcbiAgYWxpZ24tc2VsZjogZW5kO1xyXG4gIGJvcmRlci1yYWRpdXM6IDVweDtcclxufVxyXG5cclxuLm5hdl9kZXNrdG9wOmhvdmVyIHtcclxuICAvKmJhY2tncm91bmQtY29sb3I6IHJnYmEoNTAsIDEwMSwgMTg1LCAwLjI1KTsqL1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYig0OSA3NCAxMTUgLyAyNSUpO1xyXG59XHJcblxyXG4ubmF2X2Rlc2t0b3AgYSwgLm5hdl9kZXNrdG9wIGE6YWN0aXZlLCAubmF2X2Rlc2t0b3AgYTp2aXNpdGVkIHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gTUVOVSBNT0JJTEUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4ubW9iaWxlX21lbnVfY3RuIHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAganVzdGlmeS1jb250ZW50OiBlbmQ7XHJcbn1cclxuXHJcbi5tb2JpbGVfbWVudV9jdG46aG92ZXIge1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLm5hdl9tb2JpbGUge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5MjMzMDtcclxuICBsZWZ0OiAwO1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICByaWdodDogMDtcclxuICB6LWluZGV4OiAzO1xyXG59XHJcblxyXG4ubW9iaWxlX21lbnVfdGl0bGUge1xyXG4gIGRpc3BsYXk6IGdyaWQ7XHJcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA1MHB4IDFmcjtcclxuICBncmlkLXRlbXBsYXRlLXJvd3M6IDUwcHg7XHJcbn1cclxuXHJcbi5uYXZfbW9iaWxlIGgyIHtcclxuICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LXRleHQtY29sb3IpO1xyXG4gIGZvbnQtdmFyaWFudC1jYXBzOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IHZhcigtLXN0ZC1mb250LXdlaWdodCk7XHJcbiAgZm9udC1zaXplOiAxLjNyZW07XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgYm9yZGVyOiAwO1xyXG59XHJcblxyXG4ubmF2X21vYmlsZSBhLCAubmF2X21vYmlsZSBhOmFjdGl2ZSwgLm5hdl9tb2JpbGUgYTp2aXNpdGVkIHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzMHB4IDFmcjtcclxuICBoZWlnaHQ6IDUwcHg7XHJcbiAgbWFyZ2luOiAwIDIwcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiA3cHg7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXByaW1hcnktY29sb3IpO1xyXG59XHJcblxyXG4ubmF2X21vYmlsZSBhOmhvdmVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcclxufVxyXG5cclxuLm1vYmlsZV9tZW51X2J1dHRvbiB7XHJcbiAgd2lkdGg6IDMycHg7XHJcbiAgaGVpZ2h0OiAzMnB4O1xyXG59XHJcblxyXG4ubW9iaWxlX21lbnVfaWNvbiB7XHJcbiAgd2lkdGg6IDIwcHg7XHJcbiAgaGVpZ2h0OiAyMHB4O1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gRUZGRUNUUyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuLyogw4l0YXQgaW5pdGlhbCA6IMOpbMOpbWVudHMgY2FjaMOpc1xyXG4gKiBMYSBjbGFzc2Ugc2xpZGVfb2ZmIGTDqWNhbGUgdW4gw6lsw6ltZW50IGV0IGxlIHJlbmQgb3BhcXVlIGRhbnMgbCdhdHRlbnRlIGQnw6p0cmUgc3VwcHJpbcOpZSBwb3VyIHByb3ZvcXVlciBsJ2FuaW1hdGlvbiBkw6lzaXLDqWVcclxuICogTGEgY2xhc3NlIHNsaWRlX29mZiBkb2l0IMOqdHJlIGF0dHJpYnXDqWUgw6AgdW4gY29udGVuZXVyIGQnb2JqZXQgcG9zc8OpZGFudCBkZXMgw6lsw6ltZW50cyBzbGlkZV9pbl8xLCBzbGlkZV9pbl8yLCBldGMuXHJcbiAqIFNhIHN1cHByZXNzaW9uIGVudHJhaW5lIGwnYWZmaWNoYWdlIHByb2dyZXNzaWYgZGVzIMOpbMOpbWVudHMgY29udGVudXMgZXQgbGV1ciBnbGlzc2VtZW50IHZlcnMgbGV1ciBwb3NpdGlvbiBmaW5hbGVcclxuKi9cclxuLnNsaWRlX29mZiBbY2xhc3MqPVwic2xpZGVfaW5cIl0ge1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xyXG59XHJcblxyXG4vKiDDiXRhdCBmaW5hbCA6IMOpbMOpbWVudHMgdmlzaWJsZXNcclxuICogTGUgcmV0cmFpdCBkZSBzbGlkZV9vZmYgcHJvdm9xdWUgbGUgcmV0b3VyIMOgIGwnb3BhY2l0w6kgbm9ybWFsZSBkZSAxIGV0IHVuZSB0cmFuc2xhdGlvbiBlbiBwb3NpdGlvbiAwXHJcbiAqL1xyXG5bY2xhc3MqPVwic2xpZGVfaW5cIl0ge1xyXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxcyBjdWJpYy1iZXppZXIoLjUsIDAsIDAsIDEpLCBvcGFjaXR5IDFzIGN1YmljLWJlemllciguNSwgMCwgMCwgMSk7XHJcbiAgLyp0cmFuc2l0aW9uOiAxcyBjdWJpYy1iZXppZXIoLjUsIDAsIDAsIDEpOyovXHJcbn1cclxuXHJcbi8qIEFqb3V0ZSB1biBkw6lsYWkgYWZpbiBkZSBkw6ljYWxlciBsJ2FmZmljaGFnZSAqL1xyXG4uc2xpZGVfaW5fMSB7XHJcbiAgdHJhbnNpdGlvbi1kZWxheTogLjFzO1xyXG59XHJcblxyXG4uc2xpZGVfaW5fMiB7XHJcbiAgdHJhbnNpdGlvbi1kZWxheTogLjJzO1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gU0VDVElPTiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuc2VjdGlvbiB7XHJcbiAgZGlzcGxheTogZ3JpZDtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBURUNITklDQUwgQ0xBU1NFUyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbi8qIEFsaWduZW1lbnQgKGFsaWduZW1lbnQgdmVydGljYWwpKi9cclxuLmFjX2J0IHtcclxuICBhbGlnbi1jb250ZW50OiBlbmQ7XHJcbn1cclxuXHJcbi5hc19jdCB7XHJcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG59XHJcblxyXG4uYXNfbmQge1xyXG4gIGFsaWduLXNlbGY6IGVuZDtcclxufVxyXG5cclxuLyogQ29sb25uZSBTcGFuICovXHJcbi5jbG5fMiB7XHJcbiAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcclxufVxyXG5cclxuLmNsbl8zIHtcclxuICBncmlkLWNvbHVtbjogc3BhbiAzO1xyXG59XHJcblxyXG4uY2xuXzQge1xyXG4gIGdyaWQtY29sdW1uOiBzcGFuIDQ7XHJcbn1cclxuXHJcbi5jbG5fNSB7XHJcbiAgZ3JpZC1jb2x1bW46IHNwYW4gNTtcclxufVxyXG5cclxuLmNsbl82IHtcclxuICBncmlkLWNvbHVtbjogc3BhbiA2O1xyXG59XHJcblxyXG4vKiBHcmlkIGNvbnRhaW5lciAqL1xyXG5cclxuLmdjIHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG59XHJcblxyXG4uZ2NfY3Qge1xyXG4gIGRpc3BsYXk6IGdyaWQ7XHJcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLmdjXzJjIHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcclxufVxyXG5cclxuLyogSnVzdGlmeS1jb250ZW50IChhbGlnbmVtZW50IGhvcml6b250YWwpICovXHJcbi5qY19uZCB7XHJcbiAganVzdGlmeS1jb250ZW50OiBlbmQ7XHJcbn1cclxuXHJcbi8qIEp1c3RpZnktc2VsZiAoYWxpZ25lbWVudCBob3Jpem9udGFsKSAqL1xyXG4uanNfc3Qge1xyXG4gIGp1c3RpZnktc2VsZjogc3RhcnQ7XHJcbn1cclxuXHJcbi5qc19jdCB7XHJcbiAganVzdGlmeS1zZWxmOiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIE1hcmdpbiBMZWZ0ICovXHJcblxyXG4ubWxfc20ge1xyXG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcclxufVxyXG5cclxuLyogTWFyZ2luIFJpZ2h0ICovXHJcblxyXG4ubXJfc20ge1xyXG4gIG1hcmdpbi1yaWdodDogMC41ZW07XHJcbn1cclxuXHJcbi8qIE1hcmdpbiBUb3AgKi9cclxuLm10X25vIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG59XHJcblxyXG4ubXRfeHMge1xyXG4gIG1hcmdpbi10b3A6IDVweDtcclxufVxyXG5cclxuLm10X3NtIHtcclxuICBtYXJnaW4tdG9wOiAxMHB4O1xyXG59XHJcblxyXG4ubXRfbWQge1xyXG4gIG1hcmdpbi10b3A6IDE1cHg7XHJcbn1cclxuXHJcbi5tdF9sZyB7XHJcbiAgbWFyZ2luLXRvcDogMjBweDtcclxufVxyXG5cclxuLm10X3hsIHtcclxuICBtYXJnaW4tdG9wOiAzMHB4O1xyXG59XHJcblxyXG4vKiBNYXJnaW4gQm90dG9tICovXHJcblxyXG4ubWJfbm8ge1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi5tYl94cyB7XHJcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG59XHJcblxyXG4ubWJfc20ge1xyXG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbn1cclxuXHJcbi5tYl9tZCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxufVxyXG5cclxuLm1iX2xnIHtcclxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG59XHJcblxyXG4ubWJfeGwge1xyXG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcbi8qIE5vd3JhcCAqL1xyXG4ucGFfeHMge1xyXG4gIHBhZGRpbmc6IDVweDtcclxufVxyXG5cclxuLyogTm93cmFwICovXHJcbi5ub3dyYXAge1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi8qIFJvdyBTcGFuICovXHJcbi5yb3dfMiB7XHJcbiAgZ3JpZC1yb3c6IHNwYW4gMjs7XHJcbiAgLyogc3VyIDIgbGlnbmVzICovXHJcbn1cclxuXHJcbi8qIFRleHQtQWxpZ24gKGFsaWduZW1lbnQgaG9yaXpvbnRhbCkgKi9cclxuLnRhX2N0IHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi50YV9qdSB7XHJcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcclxufVxyXG5cclxuLnRhX2xmIHtcclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG4udGFfcmcge1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG59XHJcblxyXG4udGFfc3Qge1xyXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gTUVESUEgUVVFUklFUyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG5cclxuICAuZm9vdGVyX3BhbmVsIHtcclxuICAgIHBhZGRpbmc6IDQwcHggMTBweDtcclxuICB9XHJcblxyXG4gIC5mb290ZXJfYWRkcmVzcyB7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDQwcHggMWZyO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcbiAgfVxyXG5cclxuICBoMSB7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tc3RkLWZvbnQtZmFtaWx5KTtcclxuICAgIGZvbnQtc2l6ZTogMS41ZW07XHJcbiAgfVxyXG5cclxuICBoMiB7XHJcbiAgICBmb250LXNpemU6IDEuNWVtO1xyXG4gIH1cclxuXHJcbiAgaGVhZGVyIHtcclxuICAgIGdyaWQtdGVtcGxhdGUtcm93czogNjVweCAzNTBweCAhaW1wb3J0YW50O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICB9XHJcblxyXG4gIGhlYWRlciBoMiB7XHJcbiAgICBmb250LXNpemU6IDEuMjVyZW07XHJcbiAgICBmb250LXZhcmlhbnQtY2Fwczogbm9ybWFsO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxuXHJcbiAgaGVhZGVyIGgzIHtcclxuICAgIGZvbnQtd2VpZ2h0OiAxMDA7XHJcbiAgICBncmlkLWFyZWE6IHRpdGxlO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMCA1MHB4IDE1cHggMjBweCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLmhlYWRlcl9pbWdfZnJhbWUge1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcclxuICAgICAgXCIuIG1lbnUgLlwiXHJcbiAgICAgIFwiLiB0aXRsZSB0aXRsZVwiO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMTBweCwgMWZyKSBtaW5tYXgoNzA4cHgsIDEwMDBweCkgbWlubWF4KDEwcHgsIDFmcik7XHJcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDYwcHggMjkwcHg7IC8qIDM1MHB4IGF1IHRvdGFsICovXHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIH1cclxuXHJcbiAgLmxvZ29fY3RuIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gIH1cclxuXHJcbiAgLmxvZ29fZnJhbWUge1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICBhbGlnbi1zZWxmOiBzdGFydDtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICB9XHJcblxyXG4gIC5waG9uZV9udW1iZXIge1xyXG4gICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNDQwcHgpIHtcclxuXHJcbiAgLmZvb3Rlcl9wYW5lbCB7XHJcbiAgICBmb250LXNpemU6IDAuOWVtO1xyXG4gIH1cclxuXHJcbiAgaDIge1xyXG4gICAgZm9udC1zaXplOiAxLjZlbTtcclxuICB9XHJcblxyXG4gIGhlYWRlciBoMyB7XHJcbiAgICBwYWRkaW5nOiA4MHB4IDIwcHggMCAwO1xyXG4gIH1cclxuXHJcbiAgLmxvZ29fZGVza3RvcCB7XHJcbiAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgfVxyXG59IiwiXHJcbjpyb290IHtcclxuXHJcbiAgLypNYXJnaW4qL1xyXG4gIC0tZnJhbWUtbWFyZ2luLXNtYWxsLXNpZGU6IDAuM3JlbTtcclxuICAtLWZyYW1lLW1hcmdpbi1zbWFsbC10b3A6IDFyZW07XHJcbiAgLS1mcmFtZS1tYXJnaW4tbWVkaXVtOiAxcmVtO1xyXG4gIC0tZnJhbWUtbWFyZ2luLWxhcmdlOiAxcmVtO1xyXG5cclxuICAvKiBCb3JkZXIgKi9cclxuICAtLWNhcmRzLWJvcmRlcjogc29saWQgOHB4IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEZSQU1FUyAoQ09NTU9OIENTUyBGT1IgQUxMIEZSQU1FUykgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuLmZyYW1lIHtcclxuICBjb2xvcjogdmFyKC0tcHJpbWFyeS10ZXh0LWNvbG9yKTtcclxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuLmZyYW1lIGEsXHJcbi5mcmFtZSBhOmFjdGl2ZSxcclxuLmZyYW1lIGE6dmlzaXRlZCB7XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxufVxyXG5cclxuLmZyYW1lIGE6aG92ZXIge1xyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG59XHJcblxyXG4uZnJhbWUgaDQge1xyXG4gIGZvbnQtc2l6ZTogMC45NWVtO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi5mcmFtZSB1bCB7XHJcbiAgcGFkZGluZzogMDtcclxuICBtYXJnaW46IDA7XHJcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xyXG59XHJcblxyXG4uZnJhbWUgbGkge1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1hcmdpbi1ib3R0b206IDJweDtcclxuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbn1cclxuXHJcbi5mcmFtZSBsaTo6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIuKAolwiOyAvKiBTeW1ib2xlIGRlIHB1Y2UgKi9cclxuICBjb2xvcjogdmFyKC0tdGVydGlhcnktdGV4dC1jb2xvcik7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGxlZnQ6IDA7IC8qIFBvc2l0aW9ubmUgbGEgcHVjZSAqL1xyXG4gIHRvcDogMDtcclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBGT1JNIEZSQU1FIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbi5mb3JtX2ZyYW1lIHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KGF1dG8sIDgwMHB4KTtcclxuICBncmlkLWF1dG8tcm93czogbWluLWNvbnRlbnQ7XHJcbiAgaGVpZ2h0OiBmaXQtY29udGVudDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBwYWRkaW5nOiAyNXB4IDMwcHggMzBweCAzMHB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRlcnRpYXJ5LWNvbG9yKTtcclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gU1RBTkRBUkQgRlJBTUUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbi5zdGFuZGFyZF9mcmFtZSB7XHJcbiAgcGFkZGluZzogMS4wcmVtO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlY29uZGFyeS1jb2xvcik7XHJcbn1cclxuXHJcbi5zdGFuZGFyZF9mcmFtZV90eHRfY3RuIHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIHBhZGRpbmc6IDEwcHg7XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBGUkFNRVMgTUFSR0lOUyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4udG9wX2ZyYW1lX21hcmdpbiB7XHJcbiAgbWFyZ2luOiB2YXIoLS1mcmFtZS1tYXJnaW4tc21hbGwtdG9wKSB2YXIoLS1mcmFtZS1tYXJnaW4tc21hbGwtc2lkZSkgMCB2YXIoLS1mcmFtZS1tYXJnaW4tc21hbGwtc2lkZSk7XHJcbn1cclxuXHJcbi5ib3R0b21fZnJhbWVfbWFyZ2luIHtcclxuICBtYXJnaW46IDEuMHJlbSB2YXIoLS1mcmFtZS1tYXJnaW4tc21hbGwtc2lkZSkgMS4wcmVtIHZhcigtLWZyYW1lLW1hcmdpbi1zbWFsbC1zaWRlKTtcclxufVxyXG5cclxuLnNpbmdsZV9mcmFtZV9tYXJnaW4ge1xyXG4gIG1hcmdpbjogdmFyKC0tZnJhbWUtbWFyZ2luLXNtYWxsLXRvcCkgdmFyKC0tZnJhbWUtbWFyZ2luLXNtYWxsLXNpZGUpIDFyZW0gdmFyKC0tZnJhbWUtbWFyZ2luLXNtYWxsLXNpZGUpO1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gTEFZT1VUIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuLmZvcm1fYnV0dG9uc19sYXlvdXQge1xyXG4gIG1hcmdpbjogMjBweCAwIDcwcHggMDtcclxufVxyXG5cclxuLyogVmVyc2lvbiBkZSBmb3JtX2J1dHRvbnNfbGF5b3V0IGF2ZWMgdW5lIG1hcmdlIHBsdXMgaW1wb3J0YW50ZSBlbiBoYXV0ICovXHJcbi5mb3JtX2J1dHRvbnNfbGF5b3V0X2x0IHtcclxuICBtYXJnaW46IDQwcHggMCA3MHB4IDA7XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQ09ORklSTUFUSU9OIEZSQU1FIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4uY29uZmlybWF0aW9uRnJhbWUge1xyXG4gIGRpc3BsYXk6IGdyaWQ7XHJcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoYXV0bywgNjAwcHgpO1xyXG4gIGdyaWQtYXV0by1yb3dzOiBtaW4tY29udGVudDtcclxuICBoZWlnaHQ6IG1heC1jb250ZW50O1xyXG4gIG1hcmdpbjogNTBweCAyMHB4O1xyXG4gIGp1c3RpZnktc2VsZjogY2VudGVyO1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBIT01FIENBUkRTIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuLmNhcmQge1xyXG4gIGRpc3BsYXk6IGdyaWQ7XHJcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMzIwcHgsIDM3MHB4KTtcclxuICBtYXJnaW46IDEwcHg7XHJcbiAganVzdGlmeS1zZWxmOiBjZW50ZXI7XHJcbiAgY29sb3I6IHZhcigtLXNlY29uZGFyeS10ZXh0LWNvbG9yKTtcclxufVxyXG5cclxuLmNhcmQgaDMge1xyXG4gIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktdGV4dC1jb2xvcik7XHJcbiAgZm9udC1zaXplOiAxLjE1cmVtO1xyXG4gIG1hcmdpbjogMDtcclxuICBib3JkZXI6IDA7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG5cclxuLmNhcmQgdWwge1xyXG4gIHBhZGRpbmctbGVmdDogMjBweDtcclxufVxyXG5cclxuLmNhcmRfc2VydmljZSB7XHJcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiA2OHB4IGF1dG8gNTBweDtcclxufVxyXG5cclxuLmNhcmRfc2VydmljZV90aXRsZSB7XHJcbiAgZGlzcGxheTogZ3JpZDtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDMwcHggMWZyO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gIHBhZGRpbmc6IDIwcHg7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBib3JkZXItcmFkaXVzOiA1cHggNXB4IDAgMDtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2JiYjtcclxufVxyXG5cclxuLmNhcmRfc2VydmljZV9jb3JlIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByaW1hcnktY29sb3IpO1xyXG4gIHBhZGRpbmc6IDEwcHggMjBweCAyMHB4IDIwcHg7XHJcbn1cclxuXHJcbi5jYXJkX3NlcnZpY2VfZm9vdGVyIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgcGFkZGluZzogMCAyMHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcclxuICBib3JkZXItYm90dG9tOiB2YXIoLS1jYXJkcy1ib3JkZXIpO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYm90dG9tKTtcclxufVxyXG5cclxuLmNhcmRfdGVhc2VyIHtcclxuICBncmlkLXRlbXBsYXRlLXJvd3M6IDY4cHggYXV0byA1MHB4O1xyXG59XHJcblxyXG4uY2FyZF90ZWFzZXJfdGl0bGUge1xyXG4gIGRpc3BsYXk6IGdyaWQ7XHJcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzMHB4IDFmcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWNvbmRhcnktY29sb3IpO1xyXG4gIHBhZGRpbmc6IDIwcHg7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBib3JkZXItdG9wOiB2YXIoLS1jYXJkcy1ib3JkZXIpO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtdG9wKTtcclxuICBjb2xvcjogdmFyKC0tcHJpbWFyeS10ZXh0LWNvbG9yKTtcclxufVxyXG5cclxuLmNhcmRfdGVhc2VyX3RpdGxlIGgzIHtcclxuICBjb2xvcjogdmFyKC0tcHJpbWFyeS10ZXh0LWNvbG9yKTtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4uY2FyZF90ZWFzZXJfY29yZSB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcclxuICBwYWRkaW5nOiAxMHB4IDIwcHggMjBweCAyMHB4O1xyXG59XHJcblxyXG4uY2FyZF90ZWFzZXJfZm9vdGVyIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgcGFkZGluZzogMCAyMHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yKTtcclxuICBib3JkZXItYm90dG9tOiB2YXIoLS1jYXJkcy1ib3JkZXIpO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtYm90dG9tKTtcclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIE1FRElBIFFVRVJJRVMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuXHJcbiAgLmJvdHRvbV9mcmFtZV9tYXJnaW4ge1xyXG4gICAgbWFyZ2luOiB2YXIoLS1mcmFtZS1tYXJnaW4tbWVkaXVtKSB2YXIoLS1mcmFtZS1tYXJnaW4tbWVkaXVtKSAycmVtIHZhcigtLWZyYW1lLW1hcmdpbi1tZWRpdW0pO1xyXG4gIH1cclxuXHJcbiAgLmNhcmQge1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMzUwcHgsIDM3MHB4KTtcclxuICAgIG1hcmdpbjogMjBweDtcclxuICB9XHJcblxyXG4gIC5mcmFtZSBoMyB7XHJcbiAgICAvKmZvbnQtc2l6ZTogMS4zcmVtOyovXHJcbiAgICAvKnBhZGRpbmctdG9wOiAwLjJyZW07Ki9cclxuICB9XHJcblxyXG4gIC5zaW5nbGVfZnJhbWVfbWFyZ2luIHtcclxuICAgIG1hcmdpbjogdmFyKC0tZnJhbWUtbWFyZ2luLW1lZGl1bSkgdmFyKC0tZnJhbWUtbWFyZ2luLW1lZGl1bSkgM3JlbSB2YXIoLS1mcmFtZS1tYXJnaW4tbWVkaXVtKTtcclxuICB9XHJcblxyXG4gIC50b3BfZnJhbWVfbWFyZ2luIHtcclxuICAgIG1hcmdpbjogdmFyKC0tZnJhbWUtbWFyZ2luLW1lZGl1bSkgdmFyKC0tZnJhbWUtbWFyZ2luLW1lZGl1bSkgMCB2YXIoLS1mcmFtZS1tYXJnaW4tbWVkaXVtKTtcclxuICB9XHJcblxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE0NDBweCkge1xyXG5cclxuXHJcbn0iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/