/*!************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** 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]!./assets/styles/pages/page_article_index.scss ***!
  \************************************************************************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap);
/*!****************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** 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]!./assets/styles/pages/page_article_index.scss (1) ***!
  \****************************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/* ---------------------------------------------------------------------------------------------------------------------
---- Stgs Projet
--------------------------------------------------------------------------------------------------------------------- */
/* - Couleurs
..................................................................................................................... */
/* - Variables
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Stgs Mixins
--------------------------------------------------------------------------------------------------------------------- */
/* - Shadow
..................................................................................................................... */
/* - Images
..................................................................................................................... */
/* - Interactions
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Stgs Arabica
--------------------------------------------------------------------------------------------------------------------- */
/* - fluid Mode
..................................................................................................................... */
/* - Breakpoints (colonnes, taille des boxes et modales)
..................................................................................................................... */
/* - Marges (Entre les les colonnes : class="marges" sur la row parente)
..................................................................................................................... */
/* - Nombre de colonnes de la grille
..................................................................................................................... */
/* - Modales
..................................................................................................................... */
/* - Fnct Default
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Fnct Default
--------------------------------------------------------------------------------------------------------------------- */
/* - Helper
..................................................................................................................... */
/* - Fluid Mode
..................................................................................................................... */
/* - Breakpoints (colonnes, taille des boxes et modales)
..................................................................................................................... */
/* - Marges (Entre les les colonnes : class="marges" sur la row parente)
..................................................................................................................... */
/* - Nombre de colonnes de la grille
..................................................................................................................... */
/* - Modales
..................................................................................................................... */
/* - Fnct Operations
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Fnct Opérations
--------------------------------------------------------------------------------------------------------------------- */
/* - Récupération d'une valeur sans unité
..................................................................................................................... */
/* - Fnct Medias
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Fnct Médias
--------------------------------------------------------------------------------------------------------------------- */
/* - Minimum et maximum
..................................................................................................................... */
/* - Détéction de l'orientation
..................................................................................................................... */
/* - Types de devices
..................................................................................................................... */
/* - Fnct Fluid
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Fnct Fluid
--------------------------------------------------------------------------------------------------------------------- */
/* - Variables
................................................................................................................... */
/* - Génération des tailles Fluides
................................................................................................................... */
/* - Fnct Forms
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Fnct Forms
--------------------------------------------------------------------------------------------------------------------- */
/* - Placeholder
..................................................................................................................... */
/* - Fnct Grille
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Fnct Grille
--------------------------------------------------------------------------------------------------------------------- */
/* - Boxs
..................................................................................................................... */
.box_full, .box_xl, .box_lg, .box_md, .box_sm, .box_xs {
  margin-right: auto;
  margin-left: auto;
}

.box_xs {
  max-width: 440px;
}
.box_xs.marges {
  max-width: 480px;
  padding-right: 20px;
  padding-left: 20px;
}
@media (max-width: calc(768px - 1px)) {
  .box_xs.marges {
    max-width: 456px;
    padding-right: 8px;
    padding-left: 8px;
  }
}

.box_sm {
  max-width: 576px;
}
.box_sm.marges {
  max-width: 616px;
  padding-right: 20px;
  padding-left: 20px;
}
@media (max-width: calc(768px - 1px)) {
  .box_sm.marges {
    max-width: 592px;
    padding-right: 8px;
    padding-left: 8px;
  }
}

.box_md {
  max-width: 768px;
}
.box_md.marges {
  max-width: 808px;
  padding-right: 20px;
  padding-left: 20px;
}
@media (max-width: calc(768px - 1px)) {
  .box_md.marges {
    max-width: 784px;
    padding-right: 8px;
    padding-left: 8px;
  }
}

.box_lg {
  max-width: 1024px;
}
.box_lg.marges {
  max-width: 1064px;
  padding-right: 20px;
  padding-left: 20px;
}
@media (max-width: calc(768px - 1px)) {
  .box_lg.marges {
    max-width: 1040px;
    padding-right: 8px;
    padding-left: 8px;
  }
}

.box_xl {
  max-width: 1230px;
}
.box_xl.marges {
  max-width: 1270px;
  padding-right: 20px;
  padding-left: 20px;
}
@media (max-width: calc(768px - 1px)) {
  .box_xl.marges {
    max-width: 1246px;
    padding-right: 8px;
    padding-left: 8px;
  }
}

.box_full {
  max-width: 100%;
}
.box_full.marges {
  padding-right: 20px;
  padding-left: 20px;
}

/* - Rows
..................................................................................................................... */
.row {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-grow: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
}
.row.marges {
  margin-right: -10px;
  margin-left: -10px;
}
.row.marges > [class*=col] {
  padding-right: 10px;
  padding-left: 10px;
}
@media (max-width: calc(768px - 1px)) {
  .row.marges {
    margin-right: -4px;
    margin-left: -4px;
  }
  .row.marges > [class*=col] {
    padding-right: 4px;
    padding-left: 4px;
  }
}
.row.no_wrap {
  flex-wrap: nowrap;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
}

/* - Colonnes
..................................................................................................................... */
[class^=col] {
  flex-grow: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-shrink: 1;
  -webkit-flex-shrink: 1;
  flex-basis: 0;
  -webkit-flex-basis: 0;
  -ms-flex-preferred-size: 0;
  max-width: 100%;
}

.col_content {
  flex-grow: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-shrink: 0;
  -webkit-flex-shrink: 0;
  flex-basis: auto;
  -webkit-flex-basis: auto;
  -ms-flex-preferred-size: auto;
}

.col_auto {
  flex-grow: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-shrink: 0;
  -webkit-flex-shrink: 0;
  flex-basis: auto;
  -webkit-flex-basis: auto;
  -ms-flex-preferred-size: auto;
}

.col_0 {
  flex-grow: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-shrink: 0;
  -webkit-flex-shrink: 0;
  flex-basis: 0%;
  -webkit-flex-basis: 0%;
  -ms-flex-preferred-size: 0%;
  max-width: 0%;
}

.col_0, .col_offset_0 {
  display: none;
}

.col_1 {
  flex-grow: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-shrink: 0;
  -webkit-flex-shrink: 0;
  flex-basis: 8.3333333333%;
  -webkit-flex-basis: 8.3333333333%;
  -ms-flex-preferred-size: 8.3333333333%;
  max-width: 8.3333333333%;
}

.col_2 {
  flex-grow: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-shrink: 0;
  -webkit-flex-shrink: 0;
  flex-basis: 16.6666666667%;
  -webkit-flex-basis: 16.6666666667%;
  -ms-flex-preferred-size: 16.6666666667%;
  max-width: 16.6666666667%;
}

.col_3 {
  flex-grow: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-shrink: 0;
  -webkit-flex-shrink: 0;
  flex-basis: 25%;
  -webkit-flex-basis: 25%;
  -ms-flex-preferred-size: 25%;
  max-width: 25%;
}

.col_4 {
  flex-grow: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-shrink: 0;
  -webkit-flex-shrink: 0;
  flex-basis: 33.3333333333%;
  -webkit-flex-basis: 33.3333333333%;
  -ms-flex-preferred-size: 33.3333333333%;
  max-width: 33.3333333333%;
}

.col_5 {
  flex-grow: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-shrink: 0;
  -webkit-flex-shrink: 0;
  flex-basis: 41.6666666667%;
  -webkit-flex-basis: 41.6666666667%;
  -ms-flex-preferred-size: 41.6666666667%;
  max-width: 41.6666666667%;
}

.col_6 {
  flex-grow: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-shrink: 0;
  -webkit-flex-shrink: 0;
  flex-basis: 50%;
  -webkit-flex-basis: 50%;
  -ms-flex-preferred-size: 50%;
  max-width: 50%;
}

.col_7 {
  flex-grow: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-shrink: 0;
  -webkit-flex-shrink: 0;
  flex-basis: 58.3333333333%;
  -webkit-flex-basis: 58.3333333333%;
  -ms-flex-preferred-size: 58.3333333333%;
  max-width: 58.3333333333%;
}

.col_8 {
  flex-grow: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-shrink: 0;
  -webkit-flex-shrink: 0;
  flex-basis: 66.6666666667%;
  -webkit-flex-basis: 66.6666666667%;
  -ms-flex-preferred-size: 66.6666666667%;
  max-width: 66.6666666667%;
}

.col_9 {
  flex-grow: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-shrink: 0;
  -webkit-flex-shrink: 0;
  flex-basis: 75%;
  -webkit-flex-basis: 75%;
  -ms-flex-preferred-size: 75%;
  max-width: 75%;
}

.col_10 {
  flex-grow: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-shrink: 0;
  -webkit-flex-shrink: 0;
  flex-basis: 83.3333333333%;
  -webkit-flex-basis: 83.3333333333%;
  -ms-flex-preferred-size: 83.3333333333%;
  max-width: 83.3333333333%;
}

.col_11 {
  flex-grow: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-shrink: 0;
  -webkit-flex-shrink: 0;
  flex-basis: 91.6666666667%;
  -webkit-flex-basis: 91.6666666667%;
  -ms-flex-preferred-size: 91.6666666667%;
  max-width: 91.6666666667%;
}

.col_12 {
  flex-grow: 0;
  -webkit-flex-grow: 0;
  -ms-flex-positive: 0;
  flex-shrink: 0;
  -webkit-flex-shrink: 0;
  flex-basis: 100%;
  -webkit-flex-basis: 100%;
  -ms-flex-preferred-size: 100%;
  max-width: 100%;
}

@media (min-width: 440px) {
  .col_xs_0 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 0%;
    -webkit-flex-basis: 0%;
    -ms-flex-preferred-size: 0%;
    max-width: 0%;
    display: inline-block;
  }
  .col_xs_1 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 8.3333333333%;
    -webkit-flex-basis: 8.3333333333%;
    -ms-flex-preferred-size: 8.3333333333%;
    max-width: 8.3333333333%;
    display: inline-block;
  }
  .col_xs_2 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 16.6666666667%;
    -webkit-flex-basis: 16.6666666667%;
    -ms-flex-preferred-size: 16.6666666667%;
    max-width: 16.6666666667%;
    display: inline-block;
  }
  .col_xs_3 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 25%;
    -webkit-flex-basis: 25%;
    -ms-flex-preferred-size: 25%;
    max-width: 25%;
    display: inline-block;
  }
  .col_xs_4 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 33.3333333333%;
    -webkit-flex-basis: 33.3333333333%;
    -ms-flex-preferred-size: 33.3333333333%;
    max-width: 33.3333333333%;
    display: inline-block;
  }
  .col_xs_5 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 41.6666666667%;
    -webkit-flex-basis: 41.6666666667%;
    -ms-flex-preferred-size: 41.6666666667%;
    max-width: 41.6666666667%;
    display: inline-block;
  }
  .col_xs_6 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 50%;
    -webkit-flex-basis: 50%;
    -ms-flex-preferred-size: 50%;
    max-width: 50%;
    display: inline-block;
  }
  .col_xs_7 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 58.3333333333%;
    -webkit-flex-basis: 58.3333333333%;
    -ms-flex-preferred-size: 58.3333333333%;
    max-width: 58.3333333333%;
    display: inline-block;
  }
  .col_xs_8 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 66.6666666667%;
    -webkit-flex-basis: 66.6666666667%;
    -ms-flex-preferred-size: 66.6666666667%;
    max-width: 66.6666666667%;
    display: inline-block;
  }
  .col_xs_9 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 75%;
    -webkit-flex-basis: 75%;
    -ms-flex-preferred-size: 75%;
    max-width: 75%;
    display: inline-block;
  }
  .col_xs_10 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 83.3333333333%;
    -webkit-flex-basis: 83.3333333333%;
    -ms-flex-preferred-size: 83.3333333333%;
    max-width: 83.3333333333%;
    display: inline-block;
  }
  .col_xs_11 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 91.6666666667%;
    -webkit-flex-basis: 91.6666666667%;
    -ms-flex-preferred-size: 91.6666666667%;
    max-width: 91.6666666667%;
    display: inline-block;
  }
  .col_xs_12 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 100%;
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    max-width: 100%;
    display: inline-block;
  }
  .col_xs {
    flex-grow: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-shrink: 1;
    -webkit-flex-shrink: 1;
    flex-basis: 0;
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
  }
  .col_content_xs {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: auto;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
  }
  .col_auto_xs {
    flex-grow: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: auto;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
  }
}
@media (min-width: 576px) {
  .col_sm_0 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 0%;
    -webkit-flex-basis: 0%;
    -ms-flex-preferred-size: 0%;
    max-width: 0%;
    display: inline-block;
  }
  .col_sm_1 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 8.3333333333%;
    -webkit-flex-basis: 8.3333333333%;
    -ms-flex-preferred-size: 8.3333333333%;
    max-width: 8.3333333333%;
    display: inline-block;
  }
  .col_sm_2 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 16.6666666667%;
    -webkit-flex-basis: 16.6666666667%;
    -ms-flex-preferred-size: 16.6666666667%;
    max-width: 16.6666666667%;
    display: inline-block;
  }
  .col_sm_3 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 25%;
    -webkit-flex-basis: 25%;
    -ms-flex-preferred-size: 25%;
    max-width: 25%;
    display: inline-block;
  }
  .col_sm_4 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 33.3333333333%;
    -webkit-flex-basis: 33.3333333333%;
    -ms-flex-preferred-size: 33.3333333333%;
    max-width: 33.3333333333%;
    display: inline-block;
  }
  .col_sm_5 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 41.6666666667%;
    -webkit-flex-basis: 41.6666666667%;
    -ms-flex-preferred-size: 41.6666666667%;
    max-width: 41.6666666667%;
    display: inline-block;
  }
  .col_sm_6 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 50%;
    -webkit-flex-basis: 50%;
    -ms-flex-preferred-size: 50%;
    max-width: 50%;
    display: inline-block;
  }
  .col_sm_7 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 58.3333333333%;
    -webkit-flex-basis: 58.3333333333%;
    -ms-flex-preferred-size: 58.3333333333%;
    max-width: 58.3333333333%;
    display: inline-block;
  }
  .col_sm_8 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 66.6666666667%;
    -webkit-flex-basis: 66.6666666667%;
    -ms-flex-preferred-size: 66.6666666667%;
    max-width: 66.6666666667%;
    display: inline-block;
  }
  .col_sm_9 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 75%;
    -webkit-flex-basis: 75%;
    -ms-flex-preferred-size: 75%;
    max-width: 75%;
    display: inline-block;
  }
  .col_sm_10 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 83.3333333333%;
    -webkit-flex-basis: 83.3333333333%;
    -ms-flex-preferred-size: 83.3333333333%;
    max-width: 83.3333333333%;
    display: inline-block;
  }
  .col_sm_11 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 91.6666666667%;
    -webkit-flex-basis: 91.6666666667%;
    -ms-flex-preferred-size: 91.6666666667%;
    max-width: 91.6666666667%;
    display: inline-block;
  }
  .col_sm_12 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 100%;
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    max-width: 100%;
    display: inline-block;
  }
  .col_sm {
    flex-grow: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-shrink: 1;
    -webkit-flex-shrink: 1;
    flex-basis: 0;
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
  }
  .col_content_sm {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: auto;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
  }
  .col_auto_sm {
    flex-grow: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: auto;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
  }
}
@media (min-width: 768px) {
  .col_md_0 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 0%;
    -webkit-flex-basis: 0%;
    -ms-flex-preferred-size: 0%;
    max-width: 0%;
    display: inline-block;
  }
  .col_md_1 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 8.3333333333%;
    -webkit-flex-basis: 8.3333333333%;
    -ms-flex-preferred-size: 8.3333333333%;
    max-width: 8.3333333333%;
    display: inline-block;
  }
  .col_md_2 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 16.6666666667%;
    -webkit-flex-basis: 16.6666666667%;
    -ms-flex-preferred-size: 16.6666666667%;
    max-width: 16.6666666667%;
    display: inline-block;
  }
  .col_md_3 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 25%;
    -webkit-flex-basis: 25%;
    -ms-flex-preferred-size: 25%;
    max-width: 25%;
    display: inline-block;
  }
  .col_md_4 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 33.3333333333%;
    -webkit-flex-basis: 33.3333333333%;
    -ms-flex-preferred-size: 33.3333333333%;
    max-width: 33.3333333333%;
    display: inline-block;
  }
  .col_md_5 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 41.6666666667%;
    -webkit-flex-basis: 41.6666666667%;
    -ms-flex-preferred-size: 41.6666666667%;
    max-width: 41.6666666667%;
    display: inline-block;
  }
  .col_md_6 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 50%;
    -webkit-flex-basis: 50%;
    -ms-flex-preferred-size: 50%;
    max-width: 50%;
    display: inline-block;
  }
  .col_md_7 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 58.3333333333%;
    -webkit-flex-basis: 58.3333333333%;
    -ms-flex-preferred-size: 58.3333333333%;
    max-width: 58.3333333333%;
    display: inline-block;
  }
  .col_md_8 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 66.6666666667%;
    -webkit-flex-basis: 66.6666666667%;
    -ms-flex-preferred-size: 66.6666666667%;
    max-width: 66.6666666667%;
    display: inline-block;
  }
  .col_md_9 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 75%;
    -webkit-flex-basis: 75%;
    -ms-flex-preferred-size: 75%;
    max-width: 75%;
    display: inline-block;
  }
  .col_md_10 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 83.3333333333%;
    -webkit-flex-basis: 83.3333333333%;
    -ms-flex-preferred-size: 83.3333333333%;
    max-width: 83.3333333333%;
    display: inline-block;
  }
  .col_md_11 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 91.6666666667%;
    -webkit-flex-basis: 91.6666666667%;
    -ms-flex-preferred-size: 91.6666666667%;
    max-width: 91.6666666667%;
    display: inline-block;
  }
  .col_md_12 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 100%;
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    max-width: 100%;
    display: inline-block;
  }
  .col_md {
    flex-grow: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-shrink: 1;
    -webkit-flex-shrink: 1;
    flex-basis: 0;
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
  }
  .col_content_md {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: auto;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
  }
  .col_auto_md {
    flex-grow: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: auto;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
  }
}
@media (min-width: 1024px) {
  .col_lg_0 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 0%;
    -webkit-flex-basis: 0%;
    -ms-flex-preferred-size: 0%;
    max-width: 0%;
    display: inline-block;
  }
  .col_lg_1 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 8.3333333333%;
    -webkit-flex-basis: 8.3333333333%;
    -ms-flex-preferred-size: 8.3333333333%;
    max-width: 8.3333333333%;
    display: inline-block;
  }
  .col_lg_2 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 16.6666666667%;
    -webkit-flex-basis: 16.6666666667%;
    -ms-flex-preferred-size: 16.6666666667%;
    max-width: 16.6666666667%;
    display: inline-block;
  }
  .col_lg_3 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 25%;
    -webkit-flex-basis: 25%;
    -ms-flex-preferred-size: 25%;
    max-width: 25%;
    display: inline-block;
  }
  .col_lg_4 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 33.3333333333%;
    -webkit-flex-basis: 33.3333333333%;
    -ms-flex-preferred-size: 33.3333333333%;
    max-width: 33.3333333333%;
    display: inline-block;
  }
  .col_lg_5 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 41.6666666667%;
    -webkit-flex-basis: 41.6666666667%;
    -ms-flex-preferred-size: 41.6666666667%;
    max-width: 41.6666666667%;
    display: inline-block;
  }
  .col_lg_6 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 50%;
    -webkit-flex-basis: 50%;
    -ms-flex-preferred-size: 50%;
    max-width: 50%;
    display: inline-block;
  }
  .col_lg_7 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 58.3333333333%;
    -webkit-flex-basis: 58.3333333333%;
    -ms-flex-preferred-size: 58.3333333333%;
    max-width: 58.3333333333%;
    display: inline-block;
  }
  .col_lg_8 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 66.6666666667%;
    -webkit-flex-basis: 66.6666666667%;
    -ms-flex-preferred-size: 66.6666666667%;
    max-width: 66.6666666667%;
    display: inline-block;
  }
  .col_lg_9 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 75%;
    -webkit-flex-basis: 75%;
    -ms-flex-preferred-size: 75%;
    max-width: 75%;
    display: inline-block;
  }
  .col_lg_10 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 83.3333333333%;
    -webkit-flex-basis: 83.3333333333%;
    -ms-flex-preferred-size: 83.3333333333%;
    max-width: 83.3333333333%;
    display: inline-block;
  }
  .col_lg_11 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 91.6666666667%;
    -webkit-flex-basis: 91.6666666667%;
    -ms-flex-preferred-size: 91.6666666667%;
    max-width: 91.6666666667%;
    display: inline-block;
  }
  .col_lg_12 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 100%;
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    max-width: 100%;
    display: inline-block;
  }
  .col_lg {
    flex-grow: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-shrink: 1;
    -webkit-flex-shrink: 1;
    flex-basis: 0;
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
  }
  .col_content_lg {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: auto;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
  }
  .col_auto_lg {
    flex-grow: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: auto;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
  }
}
@media (min-width: 1230px) {
  .col_xl_0 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 0%;
    -webkit-flex-basis: 0%;
    -ms-flex-preferred-size: 0%;
    max-width: 0%;
    display: inline-block;
  }
  .col_xl_1 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 8.3333333333%;
    -webkit-flex-basis: 8.3333333333%;
    -ms-flex-preferred-size: 8.3333333333%;
    max-width: 8.3333333333%;
    display: inline-block;
  }
  .col_xl_2 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 16.6666666667%;
    -webkit-flex-basis: 16.6666666667%;
    -ms-flex-preferred-size: 16.6666666667%;
    max-width: 16.6666666667%;
    display: inline-block;
  }
  .col_xl_3 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 25%;
    -webkit-flex-basis: 25%;
    -ms-flex-preferred-size: 25%;
    max-width: 25%;
    display: inline-block;
  }
  .col_xl_4 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 33.3333333333%;
    -webkit-flex-basis: 33.3333333333%;
    -ms-flex-preferred-size: 33.3333333333%;
    max-width: 33.3333333333%;
    display: inline-block;
  }
  .col_xl_5 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 41.6666666667%;
    -webkit-flex-basis: 41.6666666667%;
    -ms-flex-preferred-size: 41.6666666667%;
    max-width: 41.6666666667%;
    display: inline-block;
  }
  .col_xl_6 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 50%;
    -webkit-flex-basis: 50%;
    -ms-flex-preferred-size: 50%;
    max-width: 50%;
    display: inline-block;
  }
  .col_xl_7 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 58.3333333333%;
    -webkit-flex-basis: 58.3333333333%;
    -ms-flex-preferred-size: 58.3333333333%;
    max-width: 58.3333333333%;
    display: inline-block;
  }
  .col_xl_8 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 66.6666666667%;
    -webkit-flex-basis: 66.6666666667%;
    -ms-flex-preferred-size: 66.6666666667%;
    max-width: 66.6666666667%;
    display: inline-block;
  }
  .col_xl_9 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 75%;
    -webkit-flex-basis: 75%;
    -ms-flex-preferred-size: 75%;
    max-width: 75%;
    display: inline-block;
  }
  .col_xl_10 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 83.3333333333%;
    -webkit-flex-basis: 83.3333333333%;
    -ms-flex-preferred-size: 83.3333333333%;
    max-width: 83.3333333333%;
    display: inline-block;
  }
  .col_xl_11 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 91.6666666667%;
    -webkit-flex-basis: 91.6666666667%;
    -ms-flex-preferred-size: 91.6666666667%;
    max-width: 91.6666666667%;
    display: inline-block;
  }
  .col_xl_12 {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: 100%;
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    max-width: 100%;
    display: inline-block;
  }
  .col_xl {
    flex-grow: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-shrink: 1;
    -webkit-flex-shrink: 1;
    flex-basis: 0;
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
  }
  .col_content_xl {
    flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: auto;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
  }
  .col_auto_xl {
    flex-grow: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    flex-basis: auto;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
  }
}
.col_offset_0 {
  margin-left: 0%;
}

.col_offset_1 {
  margin-left: 8.3333333333%;
}

.col_offset_2 {
  margin-left: 16.6666666667%;
}

.col_offset_3 {
  margin-left: 25%;
}

.col_offset_4 {
  margin-left: 33.3333333333%;
}

.col_offset_5 {
  margin-left: 41.6666666667%;
}

.col_offset_6 {
  margin-left: 50%;
}

.col_offset_7 {
  margin-left: 58.3333333333%;
}

.col_offset_8 {
  margin-left: 66.6666666667%;
}

.col_offset_9 {
  margin-left: 75%;
}

.col_offset_10 {
  margin-left: 83.3333333333%;
}

.col_offset_11 {
  margin-left: 91.6666666667%;
}

.col_offset_12 {
  margin-left: 100%;
}

@media (min-width: 440px) {
  .col_offset_xs_0 {
    margin-left: 0%;
  }
  .col_offset_xs_1 {
    margin-left: 8.3333333333%;
  }
  .col_offset_xs_2 {
    margin-left: 16.6666666667%;
  }
  .col_offset_xs_3 {
    margin-left: 25%;
  }
  .col_offset_xs_4 {
    margin-left: 33.3333333333%;
  }
  .col_offset_xs_5 {
    margin-left: 41.6666666667%;
  }
  .col_offset_xs_6 {
    margin-left: 50%;
  }
  .col_offset_xs_7 {
    margin-left: 58.3333333333%;
  }
  .col_offset_xs_8 {
    margin-left: 66.6666666667%;
  }
  .col_offset_xs_9 {
    margin-left: 75%;
  }
  .col_offset_xs_10 {
    margin-left: 83.3333333333%;
  }
  .col_offset_xs_11 {
    margin-left: 91.6666666667%;
  }
  .col_offset_xs_12 {
    margin-left: 100%;
  }
}
@media (min-width: 576px) {
  .col_offset_sm_0 {
    margin-left: 0%;
  }
  .col_offset_sm_1 {
    margin-left: 8.3333333333%;
  }
  .col_offset_sm_2 {
    margin-left: 16.6666666667%;
  }
  .col_offset_sm_3 {
    margin-left: 25%;
  }
  .col_offset_sm_4 {
    margin-left: 33.3333333333%;
  }
  .col_offset_sm_5 {
    margin-left: 41.6666666667%;
  }
  .col_offset_sm_6 {
    margin-left: 50%;
  }
  .col_offset_sm_7 {
    margin-left: 58.3333333333%;
  }
  .col_offset_sm_8 {
    margin-left: 66.6666666667%;
  }
  .col_offset_sm_9 {
    margin-left: 75%;
  }
  .col_offset_sm_10 {
    margin-left: 83.3333333333%;
  }
  .col_offset_sm_11 {
    margin-left: 91.6666666667%;
  }
  .col_offset_sm_12 {
    margin-left: 100%;
  }
}
@media (min-width: 768px) {
  .col_offset_md_0 {
    margin-left: 0%;
  }
  .col_offset_md_1 {
    margin-left: 8.3333333333%;
  }
  .col_offset_md_2 {
    margin-left: 16.6666666667%;
  }
  .col_offset_md_3 {
    margin-left: 25%;
  }
  .col_offset_md_4 {
    margin-left: 33.3333333333%;
  }
  .col_offset_md_5 {
    margin-left: 41.6666666667%;
  }
  .col_offset_md_6 {
    margin-left: 50%;
  }
  .col_offset_md_7 {
    margin-left: 58.3333333333%;
  }
  .col_offset_md_8 {
    margin-left: 66.6666666667%;
  }
  .col_offset_md_9 {
    margin-left: 75%;
  }
  .col_offset_md_10 {
    margin-left: 83.3333333333%;
  }
  .col_offset_md_11 {
    margin-left: 91.6666666667%;
  }
  .col_offset_md_12 {
    margin-left: 100%;
  }
}
@media (min-width: 1024px) {
  .col_offset_lg_0 {
    margin-left: 0%;
  }
  .col_offset_lg_1 {
    margin-left: 8.3333333333%;
  }
  .col_offset_lg_2 {
    margin-left: 16.6666666667%;
  }
  .col_offset_lg_3 {
    margin-left: 25%;
  }
  .col_offset_lg_4 {
    margin-left: 33.3333333333%;
  }
  .col_offset_lg_5 {
    margin-left: 41.6666666667%;
  }
  .col_offset_lg_6 {
    margin-left: 50%;
  }
  .col_offset_lg_7 {
    margin-left: 58.3333333333%;
  }
  .col_offset_lg_8 {
    margin-left: 66.6666666667%;
  }
  .col_offset_lg_9 {
    margin-left: 75%;
  }
  .col_offset_lg_10 {
    margin-left: 83.3333333333%;
  }
  .col_offset_lg_11 {
    margin-left: 91.6666666667%;
  }
  .col_offset_lg_12 {
    margin-left: 100%;
  }
}
@media (min-width: 1230px) {
  .col_offset_xl_0 {
    margin-left: 0%;
  }
  .col_offset_xl_1 {
    margin-left: 8.3333333333%;
  }
  .col_offset_xl_2 {
    margin-left: 16.6666666667%;
  }
  .col_offset_xl_3 {
    margin-left: 25%;
  }
  .col_offset_xl_4 {
    margin-left: 33.3333333333%;
  }
  .col_offset_xl_5 {
    margin-left: 41.6666666667%;
  }
  .col_offset_xl_6 {
    margin-left: 50%;
  }
  .col_offset_xl_7 {
    margin-left: 58.3333333333%;
  }
  .col_offset_xl_8 {
    margin-left: 66.6666666667%;
  }
  .col_offset_xl_9 {
    margin-left: 75%;
  }
  .col_offset_xl_10 {
    margin-left: 83.3333333333%;
  }
  .col_offset_xl_11 {
    margin-left: 91.6666666667%;
  }
  .col_offset_xl_12 {
    margin-left: 100%;
  }
}
/* - Fnct Helper
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Fnct Intéractions
--------------------------------------------------------------------------------------------------------------------- */
/* - Aide à l'intégration
..................................................................................................................... */
/* - Fnct Alignements
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Fnct Alignements
--------------------------------------------------------------------------------------------------------------------- */
/* - Placeholder Flex
..................................................................................................................... */
/* - Alignements absolutes
..................................................................................................................... */
.x_align_absolute {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
}

.y_align_absolute {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
}

.center_align_absolute {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  -moz-transform: translateY(-50%) translateX(-50%);
  -ms-transform: translateY(-50%) translateX(-50%);
  -o-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
}

.reset_align_absolute {
  position: absolute;
  -webkit-transform: translateY(0) translateX(0);
  -moz-transform: translateY(0) translateX(0);
  -ms-transform: translateY(0) translateX(0);
  -o-transform: translateY(0) translateX(0);
  transform: translateY(0) translateX(0);
}

/* - Alignements fixes
..................................................................................................................... */
.x_align_fixed {
  position: fixed;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
}

.y_align_fixed {
  position: fixed;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
}

.center_align_fixed {
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  -moz-transform: translateY(-50%) translateX(-50%);
  -ms-transform: translateY(-50%) translateX(-50%);
  -o-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
}

.reset_align_fixed {
  position: fixed;
  top: 0;
  left: 0;
  -webkit-transform: translateY(0) translateX(0);
  -moz-transform: translateY(0) translateX(0);
  -ms-transform: translateY(0) translateX(0);
  -o-transform: translateY(0) translateX(0);
  transform: translateY(0) translateX(0);
}

/* - Alignements relative
..................................................................................................................... */
.x_align_relative {
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
}

.y_align_relative {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
}

.center_align_relative {
  position: relative;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  -moz-transform: translateY(-50%) translateX(-50%);
  -ms-transform: translateY(-50%) translateX(-50%);
  -o-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
}

.reset_align_relative {
  position: relative;
  top: 0;
  left: 0;
  -webkit-transform: translateY(0) translateX(0);
  -moz-transform: translateY(0) translateX(0);
  -ms-transform: translateY(0) translateX(0);
  -o-transform: translateY(0) translateX(0);
  transform: translateY(0) translateX(0);
}

/* - Alignements horizontaux (x)
..................................................................................................................... */
.x_start {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  justify-content: flex-start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  text-align: left;
}

.x_center {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  justify-content: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  text-align: center;
}

.x_end {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  justify-content: flex-end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  text-align: right;
}

.x_between {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
}

.x_around {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  justify-content: space-around;
  -webkit-justify-content: space-around;
  -ms-flex-pack: distribute;
}

.x_evenly {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  justify-content: space-evenly;
  -webkit-justify-content: space-evenly;
}

/* - Alignements verticaux des lignes de contenu (y)
..................................................................................................................... */
.y_content_start {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-content: flex-start;
  -webkit-align-content: flex-start;
  -ms-flex-line-pack: start;
}

.y_content_center {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-content: center;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
}

.y_content_end {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-content: flex-end;
  -webkit-align-content: flex-end;
  -ms-flex-line-pack: end;
}

.y_content_between {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-content: space-between;
  -webkit-align-content: space-between;
  -ms-flex-line-pack: justify;
}

.y_content_around {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-content: space-around;
  -webkit-align-content: space-around;
  -ms-flex-line-pack: distribute;
}

.y_content_stretch {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-content: stretch;
  -webkit-align-content: stretch;
  -ms-flex-line-pack: stretch;
}

/* - Alignements verticaux des items (y)
..................................................................................................................... */
.y_items_start {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
}

.y_items_center {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
}

.y_items_end {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
}

.y_items_stretch {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
}

/* - Alignements selfs
..................................................................................................................... */
.y_self_start {
  align-self: flex-start;
  -webkit-align-self: flex-start;
  -ms-grid-column-align: start;
}

.y_self_center {
  align-self: center;
  -webkit-align-self: center;
  -ms-grid-column-align: center;
}

.y_self_end {
  align-self: flex-end;
  -webkit-align-self: flex-end;
  -ms-grid-column-align: end;
}

/* - Alignements responsives
..................................................................................................................... */
@media (min-width: 440px) {
  .x_align_absolute_xs {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .y_align_absolute_xs {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .center_align_absolute_xs {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
  }
  .reset_align_absolute_xs {
    position: absolute;
    -webkit-transform: translateY(0) translateX(0);
    -moz-transform: translateY(0) translateX(0);
    -ms-transform: translateY(0) translateX(0);
    -o-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
  .x_align_fixed_xs {
    position: fixed;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .y_align_fixed_xs {
    position: fixed;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .center_align_fixed_xs {
    position: fixed;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
  }
  .reset_align_fixed_xs {
    position: fixed;
    top: 0;
    left: 0;
    -webkit-transform: translateY(0) translateX(0);
    -moz-transform: translateY(0) translateX(0);
    -ms-transform: translateY(0) translateX(0);
    -o-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
  .x_align_relative_xs {
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .y_align_relative_xs {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .center_align_relative_xs {
    position: relative;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
  }
  .reset_align_relative_xs {
    position: relative;
    top: 0;
    left: 0;
    -webkit-transform: translateY(0) translateX(0);
    -moz-transform: translateY(0) translateX(0);
    -ms-transform: translateY(0) translateX(0);
    -o-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
  .x_start_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: flex-start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    text-align: left;
  }
  .x_center_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    text-align: center;
  }
  .x_end_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: flex-end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    text-align: right;
  }
  .x_between_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
  }
  .x_around_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-around;
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
  }
  .x_evenly_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-evenly;
    -webkit-justify-content: space-evenly;
  }
  .y_content_start_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: flex-start;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
  }
  .y_content_center_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
  }
  .y_content_end_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: flex-end;
    -webkit-align-content: flex-end;
    -ms-flex-line-pack: end;
  }
  .y_content_between_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: space-between;
    -webkit-align-content: space-between;
    -ms-flex-line-pack: justify;
  }
  .y_content_around_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: space-around;
    -webkit-align-content: space-around;
    -ms-flex-line-pack: distribute;
  }
  .y_content_stretch_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: stretch;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
  }
  .y_items_start_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: flex-start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
  }
  .y_items_center_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
  }
  .y_items_end_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: flex-end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
  }
  .y_items_stretch_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
  }
  .y_self_start_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-self: flex-start;
    -webkit-align-self: flex-start;
    -ms-grid-column-align: start;
  }
  .y_self_center_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-self: center;
    -webkit-align-self: center;
    -ms-grid-column-align: center;
  }
  .y_self_end_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-self: flex-end;
    -webkit-align-self: flex-end;
    -ms-grid-column-align: end;
  }
}
@media (min-width: 576px) {
  .x_align_absolute_sm {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .y_align_absolute_sm {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .center_align_absolute_sm {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
  }
  .reset_align_absolute_sm {
    position: absolute;
    -webkit-transform: translateY(0) translateX(0);
    -moz-transform: translateY(0) translateX(0);
    -ms-transform: translateY(0) translateX(0);
    -o-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
  .x_align_fixed_sm {
    position: fixed;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .y_align_fixed_sm {
    position: fixed;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .center_align_fixed_sm {
    position: fixed;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
  }
  .reset_align_fixed_sm {
    position: fixed;
    top: 0;
    left: 0;
    -webkit-transform: translateY(0) translateX(0);
    -moz-transform: translateY(0) translateX(0);
    -ms-transform: translateY(0) translateX(0);
    -o-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
  .x_align_relative_sm {
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .y_align_relative_sm {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .center_align_relative_sm {
    position: relative;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
  }
  .reset_align_relative_sm {
    position: relative;
    top: 0;
    left: 0;
    -webkit-transform: translateY(0) translateX(0);
    -moz-transform: translateY(0) translateX(0);
    -ms-transform: translateY(0) translateX(0);
    -o-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
  .x_start_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: flex-start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    text-align: left;
  }
  .x_center_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    text-align: center;
  }
  .x_end_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: flex-end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    text-align: right;
  }
  .x_between_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
  }
  .x_around_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-around;
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
  }
  .x_evenly_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-evenly;
    -webkit-justify-content: space-evenly;
  }
  .y_content_start_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: flex-start;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
  }
  .y_content_center_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
  }
  .y_content_end_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: flex-end;
    -webkit-align-content: flex-end;
    -ms-flex-line-pack: end;
  }
  .y_content_between_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: space-between;
    -webkit-align-content: space-between;
    -ms-flex-line-pack: justify;
  }
  .y_content_around_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: space-around;
    -webkit-align-content: space-around;
    -ms-flex-line-pack: distribute;
  }
  .y_content_stretch_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: stretch;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
  }
  .y_items_start_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: flex-start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
  }
  .y_items_center_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
  }
  .y_items_end_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: flex-end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
  }
  .y_items_stretch_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
  }
  .y_self_start_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-self: flex-start;
    -webkit-align-self: flex-start;
    -ms-grid-column-align: start;
  }
  .y_self_center_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-self: center;
    -webkit-align-self: center;
    -ms-grid-column-align: center;
  }
  .y_self_end_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-self: flex-end;
    -webkit-align-self: flex-end;
    -ms-grid-column-align: end;
  }
}
@media (min-width: 768px) {
  .x_align_absolute_md {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .y_align_absolute_md {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .center_align_absolute_md {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
  }
  .reset_align_absolute_md {
    position: absolute;
    -webkit-transform: translateY(0) translateX(0);
    -moz-transform: translateY(0) translateX(0);
    -ms-transform: translateY(0) translateX(0);
    -o-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
  .x_align_fixed_md {
    position: fixed;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .y_align_fixed_md {
    position: fixed;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .center_align_fixed_md {
    position: fixed;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
  }
  .reset_align_fixed_md {
    position: fixed;
    top: 0;
    left: 0;
    -webkit-transform: translateY(0) translateX(0);
    -moz-transform: translateY(0) translateX(0);
    -ms-transform: translateY(0) translateX(0);
    -o-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
  .x_align_relative_md {
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .y_align_relative_md {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .center_align_relative_md {
    position: relative;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
  }
  .reset_align_relative_md {
    position: relative;
    top: 0;
    left: 0;
    -webkit-transform: translateY(0) translateX(0);
    -moz-transform: translateY(0) translateX(0);
    -ms-transform: translateY(0) translateX(0);
    -o-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
  .x_start_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: flex-start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    text-align: left;
  }
  .x_center_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    text-align: center;
  }
  .x_end_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: flex-end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    text-align: right;
  }
  .x_between_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
  }
  .x_around_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-around;
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
  }
  .x_evenly_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-evenly;
    -webkit-justify-content: space-evenly;
  }
  .y_content_start_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: flex-start;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
  }
  .y_content_center_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
  }
  .y_content_end_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: flex-end;
    -webkit-align-content: flex-end;
    -ms-flex-line-pack: end;
  }
  .y_content_between_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: space-between;
    -webkit-align-content: space-between;
    -ms-flex-line-pack: justify;
  }
  .y_content_around_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: space-around;
    -webkit-align-content: space-around;
    -ms-flex-line-pack: distribute;
  }
  .y_content_stretch_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: stretch;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
  }
  .y_items_start_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: flex-start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
  }
  .y_items_center_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
  }
  .y_items_end_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: flex-end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
  }
  .y_items_stretch_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
  }
  .y_self_start_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-self: flex-start;
    -webkit-align-self: flex-start;
    -ms-grid-column-align: start;
  }
  .y_self_center_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-self: center;
    -webkit-align-self: center;
    -ms-grid-column-align: center;
  }
  .y_self_end_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-self: flex-end;
    -webkit-align-self: flex-end;
    -ms-grid-column-align: end;
  }
}
@media (min-width: 1024px) {
  .x_align_absolute_lg {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .y_align_absolute_lg {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .center_align_absolute_lg {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
  }
  .reset_align_absolute_lg {
    position: absolute;
    -webkit-transform: translateY(0) translateX(0);
    -moz-transform: translateY(0) translateX(0);
    -ms-transform: translateY(0) translateX(0);
    -o-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
  .x_align_fixed_lg {
    position: fixed;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .y_align_fixed_lg {
    position: fixed;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .center_align_fixed_lg {
    position: fixed;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
  }
  .reset_align_fixed_lg {
    position: fixed;
    top: 0;
    left: 0;
    -webkit-transform: translateY(0) translateX(0);
    -moz-transform: translateY(0) translateX(0);
    -ms-transform: translateY(0) translateX(0);
    -o-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
  .x_align_relative_lg {
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .y_align_relative_lg {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .center_align_relative_lg {
    position: relative;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
  }
  .reset_align_relative_lg {
    position: relative;
    top: 0;
    left: 0;
    -webkit-transform: translateY(0) translateX(0);
    -moz-transform: translateY(0) translateX(0);
    -ms-transform: translateY(0) translateX(0);
    -o-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
  .x_start_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: flex-start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    text-align: left;
  }
  .x_center_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    text-align: center;
  }
  .x_end_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: flex-end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    text-align: right;
  }
  .x_between_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
  }
  .x_around_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-around;
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
  }
  .x_evenly_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-evenly;
    -webkit-justify-content: space-evenly;
  }
  .y_content_start_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: flex-start;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
  }
  .y_content_center_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
  }
  .y_content_end_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: flex-end;
    -webkit-align-content: flex-end;
    -ms-flex-line-pack: end;
  }
  .y_content_between_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: space-between;
    -webkit-align-content: space-between;
    -ms-flex-line-pack: justify;
  }
  .y_content_around_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: space-around;
    -webkit-align-content: space-around;
    -ms-flex-line-pack: distribute;
  }
  .y_content_stretch_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: stretch;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
  }
  .y_items_start_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: flex-start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
  }
  .y_items_center_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
  }
  .y_items_end_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: flex-end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
  }
  .y_items_stretch_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
  }
  .y_self_start_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-self: flex-start;
    -webkit-align-self: flex-start;
    -ms-grid-column-align: start;
  }
  .y_self_center_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-self: center;
    -webkit-align-self: center;
    -ms-grid-column-align: center;
  }
  .y_self_end_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-self: flex-end;
    -webkit-align-self: flex-end;
    -ms-grid-column-align: end;
  }
}
@media (min-width: 1230px) {
  .x_align_absolute_xl {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .y_align_absolute_xl {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .center_align_absolute_xl {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
  }
  .reset_align_absolute_xl {
    position: absolute;
    -webkit-transform: translateY(0) translateX(0);
    -moz-transform: translateY(0) translateX(0);
    -ms-transform: translateY(0) translateX(0);
    -o-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
  .x_align_fixed_xl {
    position: fixed;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .y_align_fixed_xl {
    position: fixed;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .center_align_fixed_xl {
    position: fixed;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
  }
  .reset_align_fixed_xl {
    position: fixed;
    top: 0;
    left: 0;
    -webkit-transform: translateY(0) translateX(0);
    -moz-transform: translateY(0) translateX(0);
    -ms-transform: translateY(0) translateX(0);
    -o-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
  .x_align_relative_xl {
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .y_align_relative_xl {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .center_align_relative_xl {
    position: relative;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
  }
  .reset_align_relative_xl {
    position: relative;
    top: 0;
    left: 0;
    -webkit-transform: translateY(0) translateX(0);
    -moz-transform: translateY(0) translateX(0);
    -ms-transform: translateY(0) translateX(0);
    -o-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
  .x_start_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: flex-start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    text-align: left;
  }
  .x_center_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    text-align: center;
  }
  .x_end_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: flex-end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    text-align: right;
  }
  .x_between_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
  }
  .x_around_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-around;
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
  }
  .x_evenly_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-evenly;
    -webkit-justify-content: space-evenly;
  }
  .y_content_start_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: flex-start;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
  }
  .y_content_center_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
  }
  .y_content_end_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: flex-end;
    -webkit-align-content: flex-end;
    -ms-flex-line-pack: end;
  }
  .y_content_between_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: space-between;
    -webkit-align-content: space-between;
    -ms-flex-line-pack: justify;
  }
  .y_content_around_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: space-around;
    -webkit-align-content: space-around;
    -ms-flex-line-pack: distribute;
  }
  .y_content_stretch_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-content: stretch;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
  }
  .y_items_start_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: flex-start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
  }
  .y_items_center_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
  }
  .y_items_end_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: flex-end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
  }
  .y_items_stretch_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
  }
  .y_self_start_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-self: flex-start;
    -webkit-align-self: flex-start;
    -ms-grid-column-align: start;
  }
  .y_self_center_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-self: center;
    -webkit-align-self: center;
    -ms-grid-column-align: center;
  }
  .y_self_end_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-self: flex-end;
    -webkit-align-self: flex-end;
    -ms-grid-column-align: end;
  }
}
/* - Fnct Display
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Fnct Display
--------------------------------------------------------------------------------------------------------------------- */
/* - Affichage des éléments
..................................................................................................................... */
.d_none {
  display: none;
}

.d_ib {
  display: inline-block;
}

.d_flex {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}

@media (min-width: 440px) {
  .d_none_xs {
    display: none;
  }
  .d_ib_xs {
    display: inline-block;
  }
  .d_flex_xs {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }
}
@media (min-width: 576px) {
  .d_none_sm {
    display: none;
  }
  .d_ib_sm {
    display: inline-block;
  }
  .d_flex_sm {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }
}
@media (min-width: 768px) {
  .d_none_md {
    display: none;
  }
  .d_ib_md {
    display: inline-block;
  }
  .d_flex_md {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }
}
@media (min-width: 1024px) {
  .d_none_lg {
    display: none;
  }
  .d_ib_lg {
    display: inline-block;
  }
  .d_flex_lg {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }
}
@media (min-width: 1230px) {
  .d_none_xl {
    display: none;
  }
  .d_ib_xl {
    display: inline-block;
  }
  .d_flex_xl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }
}
/* - Fnct Ordres
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Fnct Ordres
--------------------------------------------------------------------------------------------------------------------- */
/* - First
..................................................................................................................... */
.order_first {
  order: -1;
  -webkit-flex-order: -1;
  -ms-flex-order: -1;
}

/* - Last
..................................................................................................................... */
.order_last {
  order: 1;
  -webkit-flex-order: 1;
  -ms-flex-order: 1;
}

/* - Ordre responsive
..................................................................................................................... */
@media (min-width: 440px) {
  .order_first_xs {
    order: -1;
    -webkit-flex-order: -1;
    -ms-flex-order: -1;
  }
  .order_last_xs {
    order: 1;
    -webkit-flex-order: 1;
    -ms-flex-order: 1;
  }
}
@media (min-width: 576px) {
  .order_first_sm {
    order: -1;
    -webkit-flex-order: -1;
    -ms-flex-order: -1;
  }
  .order_last_sm {
    order: 1;
    -webkit-flex-order: 1;
    -ms-flex-order: 1;
  }
}
@media (min-width: 768px) {
  .order_first_md {
    order: -1;
    -webkit-flex-order: -1;
    -ms-flex-order: -1;
  }
  .order_last_md {
    order: 1;
    -webkit-flex-order: 1;
    -ms-flex-order: 1;
  }
}
@media (min-width: 1024px) {
  .order_first_lg {
    order: -1;
    -webkit-flex-order: -1;
    -ms-flex-order: -1;
  }
  .order_last_lg {
    order: 1;
    -webkit-flex-order: 1;
    -ms-flex-order: 1;
  }
}
@media (min-width: 1230px) {
  .order_first_xl {
    order: -1;
    -webkit-flex-order: -1;
    -ms-flex-order: -1;
  }
  .order_last_xl {
    order: 1;
    -webkit-flex-order: 1;
    -ms-flex-order: 1;
  }
}
/* - Fnct Directions
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Fnct Directions
--------------------------------------------------------------------------------------------------------------------- */
/* - Row
..................................................................................................................... */
.direction_x {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
}

/* - Row Revert
..................................................................................................................... */
.direction_x_revert {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

/* - Column
..................................................................................................................... */
.direction_y {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.direction_y > [class^=col] {
  -ms-flex-preferred-size: auto;
}

/* - Column Revert
..................................................................................................................... */
.direction_y_revert {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
}
.direction_y_revert > [class^=col] {
  -ms-flex-preferred-size: auto;
}

/* - Ordre responsive
..................................................................................................................... */
@media (min-width: 440px) {
  .direction_x_xs {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .direction_x_revert_xs {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .direction_y_xs {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .direction_y_xs > [class^=col] {
    -ms-flex-preferred-size: auto;
  }
  .direction_y_revert_xs {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  .direction_y_revert_xs > [class^=col] {
    -ms-flex-preferred-size: auto;
  }
}
@media (min-width: 576px) {
  .direction_x_sm {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .direction_x_revert_sm {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .direction_y_sm {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .direction_y_sm > [class^=col] {
    -ms-flex-preferred-size: auto;
  }
  .direction_y_revert_sm {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  .direction_y_revert_sm > [class^=col] {
    -ms-flex-preferred-size: auto;
  }
}
@media (min-width: 768px) {
  .direction_x_md {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .direction_x_revert_md {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .direction_y_md {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .direction_y_md > [class^=col] {
    -ms-flex-preferred-size: auto;
  }
  .direction_y_revert_md {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  .direction_y_revert_md > [class^=col] {
    -ms-flex-preferred-size: auto;
  }
}
@media (min-width: 1024px) {
  .direction_x_lg {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .direction_x_revert_lg {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .direction_y_lg {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .direction_y_lg > [class^=col] {
    -ms-flex-preferred-size: auto;
  }
  .direction_y_revert_lg {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  .direction_y_revert_lg > [class^=col] {
    -ms-flex-preferred-size: auto;
  }
}
@media (min-width: 1230px) {
  .direction_x_xl {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .direction_x_revert_xl {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .direction_y_xl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .direction_y_xl > [class^=col] {
    -ms-flex-preferred-size: auto;
  }
  .direction_y_revert_xl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  .direction_y_revert_xl > [class^=col] {
    -ms-flex-preferred-size: auto;
  }
}
/* - Fnct Tailles
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Fnct Tailles
--------------------------------------------------------------------------------------------------------------------- */
/* - Largeur forcée
..................................................................................................................... */
.w_full {
  width: 100%;
}

/* - Hauteur forcée
..................................................................................................................... */
.h_full {
  height: 100%;
}

/* - Tailles responsives
..................................................................................................................... */
@media (min-width: 440px) {
  .w_full_xs {
    width: 100%;
  }
  .h_full_xs {
    height: 100%;
  }
}
@media (min-width: 576px) {
  .w_full_sm {
    width: 100%;
  }
  .h_full_sm {
    height: 100%;
  }
}
@media (min-width: 768px) {
  .w_full_md {
    width: 100%;
  }
  .h_full_md {
    height: 100%;
  }
}
@media (min-width: 1024px) {
  .w_full_lg {
    width: 100%;
  }
  .h_full_lg {
    height: 100%;
  }
}
@media (min-width: 1230px) {
  .w_full_xl {
    width: 100%;
  }
  .h_full_xl {
    height: 100%;
  }
}
/* - Fnct Transitions
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Fnct Transitions
--------------------------------------------------------------------------------------------------------------------- */
/* - Fnct Animations
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Fnct Animations
--------------------------------------------------------------------------------------------------------------------- */
/* - Fnct Transforms
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Fnct Transforms
--------------------------------------------------------------------------------------------------------------------- */
/* - Fnct Interactions
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Fnct Intéractions
--------------------------------------------------------------------------------------------------------------------- */
/* - hover, focus, active, visited
..................................................................................................................... */
/* - Fnct Ombres
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Fnct Ombres
--------------------------------------------------------------------------------------------------------------------- */
/* - Fnct Radius
..................................................................................................................... */
/* ---------------------------------------------------------------------------------------------------------------------
---- Fnct Radius
--------------------------------------------------------------------------------------------------------------------- */
/* - Fonts
..................................................................................................................... */
/** Fonts text **/
@font-face {
  font-family: "HernandezBrosRegular";
  src: url(/build/shop/fonts/HernandezBros-Regular.74add8c8.eot);
  src: url(/build/shop/fonts/HernandezBros-Regular.74add8c8.eot?#iefix) format("embedded-opentype"), url(/build/shop/fonts/HernandezBros-Regular.36e62a87.woff2) format("woff2"), url(/build/shop/fonts/HernandezBros-Regular.dc5fafe7.woff) format("woff"), url(/build/shop/fonts/HernandezBros-Regular.17840eb2.ttf) format("truetype"), url(/build/shop/images/HernandezBros-Regular.d37668c9.svg#HernandezBros-Regular) format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
/** ReSee Font icons **/
@font-face {
  font-family: "resee";
  src: url(/build/shop/fonts/resee.a39b8d12.eot);
  src: url(/build/shop/fonts/resee.a39b8d12.eot?#iefix) format("embedded-opentype"), url(/build/shop/fonts/resee.4439cd11.woff) format("woff"), url(/build/shop/fonts/resee.45516bb8.ttf) format("truetype"), url(/build/shop/images/resee.70a233cf.svg#resee) format("svg");
  font-weight: normal;
  font-style: normal;
}
[data-icon]:before {
  font-family: "resee" !important;
  content: attr(data-icon);
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

[class^=icon-]:before,
[class*=" icon-"]:before {
  font-family: "resee" !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-camera:before {
  content: "\e000";
}

.icon-cart:before {
  content: "\e001";
}

.icon-chevron:before {
  content: "\e002";
}

.icon-clock:before {
  content: "\e003";
}

.icon-cross:before {
  content: "\e004";
}

.icon-edit:before {
  content: "\e005";
}

.icon-facebook:before {
  content: "\e006";
}

.icon-glass:before {
  content: "\e007";
}

.icon-heart:before {
  content: "\e008";
}

.icon-import:before {
  content: "\e009";
}

.icon-instagram:before {
  content: "\e00a";
}

.icon-linkedin:before {
  content: "\e00b";
}

.icon-phone:before {
  content: "\e00c";
}

.icon-rea-authentic:before {
  content: "\e00d";
}

.icon-rea-calendar:before {
  content: "\e00e";
}

.icon-rea-phone:before {
  content: "\e00f";
}

.icon-rea-secured:before {
  content: "\e010";
}

.icon-rea-selling:before {
  content: "\e011";
}

.icon-rea-worldwide:before {
  content: "\e012";
}

.icon-twitter:before {
  content: "\e013";
}

.icon-user:before {
  content: "\e014";
}

.icon-whatsapp:before {
  content: "\e015";
}

.icon-pinterest:before {
  content: "\e016";
}

.icon-heart-full:before {
  content: "\e017";
}

.icon-list-view1:before {
  content: "\e018";
}

.icon-list-view2:before {
  content: "\e019";
}

.icon-list-view3:before {
  content: "\e01a";
}

.icon-list-view4:before {
  content: "\e01b";
}

.icon-email:before {
  content: "\e01c";
}

.icon-eye:before {
  content: "\e01d";
}

.icon-hourglass:before {
  content: "\e01e";
}

.icon-check:before {
  content: "\e01f";
}

.icon-calendar:before {
  content: "\e020";
}

.icon-alert:before {
  content: "\e021";
}

.icon-world:before {
  content: "\e022";
}

.icon-bell:before {
  content: "\e023";
}

.icon-check-round:before {
  content: "\e024";
}

.icon-contact:before {
  content: "\e025";
}

.icon-package:before {
  content: "\e026";
}

.icon-stars:before {
  content: "\e027";
}

.icon-pin:before {
  content: "\e94c";
}

.icon-laundry {
  background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 64 64%27 fill=%27none%27 stroke=%27black%27 stroke-width=%274%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Cpath d=%27M32 12a8 8 0 0 1 8 8c0 4.418-3.582 8-8 8v6l24 14a4 4 0 0 1-4 6H12a4 4 0 0 1-4-6l24-14v-6%27/%3E%3Cpath d=%27M32 12a8 8 0 0 0-8 8%27 /%3E%3C/svg%3E");
  background-size: 17px;
  background-repeat: no-repeat;
  padding-left: 25px;
}

.icon-beautification:before {
  content: "\e027";
}

.icon-youtube {
  background: url(data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjZmZlOGQ2IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciICB2aWV3Qm94PSIwIDAgNTAgNTAiIHdpZHRoPSI1MHB4IiBoZWlnaHQ9IjUwcHgiPjxwYXRoIGQ9Ik0gNDQuODk4NDM4IDE0LjUgQyA0NC41IDEyLjMwMDc4MSA0Mi42MDE1NjMgMTAuNjk5MjE5IDQwLjM5ODQzOCAxMC4xOTkyMTkgQyAzNy4xMDE1NjMgOS41IDMxIDkgMjQuMzk4NDM4IDkgQyAxNy44MDA3ODEgOSAxMS42MDE1NjMgOS41IDguMzAwNzgxIDEwLjE5OTIxOSBDIDYuMTAxNTYzIDEwLjY5OTIxOSA0LjE5OTIxOSAxMi4xOTkyMTkgMy44MDA3ODEgMTQuNSBDIDMuMzk4NDM4IDE3IDMgMjAuNSAzIDI1IEMgMyAyOS41IDMuMzk4NDM4IDMzIDMuODk4NDM4IDM1LjUgQyA0LjMwMDc4MSAzNy42OTkyMTkgNi4xOTkyMTkgMzkuMzAwNzgxIDguMzk4NDM4IDM5LjgwMDc4MSBDIDExLjg5ODQzOCA0MC41IDE3Ljg5ODQzOCA0MSAyNC41IDQxIEMgMzEuMTAxNTYzIDQxIDM3LjEwMTU2MyA0MC41IDQwLjYwMTU2MyAzOS44MDA3ODEgQyA0Mi44MDA3ODEgMzkuMzAwNzgxIDQ0LjY5OTIxOSAzNy44MDA3ODEgNDUuMTAxNTYzIDM1LjUgQyA0NS41IDMzIDQ2IDI5LjM5ODQzOCA0Ni4xMDE1NjMgMjUgQyA0NS44OTg0MzggMjAuNSA0NS4zOTg0MzggMTcgNDQuODk4NDM4IDE0LjUgWiBNIDE5IDMyIEwgMTkgMTggTCAzMS4xOTkyMTkgMjUgWiIvPjwvc3ZnPg==) 50% 50% no-repeat;
  background-size: contain;
}

/* - Buttons
..................................................................................................................... */
/* - Variables
................................................................................................................... */
/* - Génération des tailles Fluides
................................................................................................................... */
@media (max-width: calc(440px - 1px)) {
  .btn_cta:not(.link_cta) {
    height: 46px;
  }
}
@media (min-width: 440px) {
  .btn_cta:not(.link_cta) {
    height: calc(46px + (4) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .btn_cta:not(.link_cta) {
    height: 50px;
  }
}
@media (max-width: calc(440px - 1px)) {
  .btn_cta:not(.link_cta) {
    padding-left: 15px;
  }
}
@media (min-width: 440px) {
  .btn_cta:not(.link_cta) {
    padding-left: calc(15px + (5) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .btn_cta:not(.link_cta) {
    padding-left: 20px;
  }
}
@media (max-width: calc(440px - 1px)) {
  .btn_cta:not(.link_cta) {
    padding-right: 15px;
  }
}
@media (min-width: 440px) {
  .btn_cta:not(.link_cta) {
    padding-right: calc(15px + (5) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .btn_cta:not(.link_cta) {
    padding-right: 20px;
  }
}

@media (max-width: calc(440px - 1px)) {
  .btn_cta.btn_small:not(.link_cta) {
    height: 40px;
  }
}
@media (min-width: 440px) {
  .btn_cta.btn_small:not(.link_cta) {
    height: calc(40px + (4) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .btn_cta.btn_small:not(.link_cta) {
    height: 44px;
  }
}
@media (max-width: calc(440px - 1px)) {
  .btn_cta.btn_small:not(.link_cta) {
    padding-left: 10px;
  }
}
@media (min-width: 440px) {
  .btn_cta.btn_small:not(.link_cta) {
    padding-left: calc(10px + (2) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .btn_cta.btn_small:not(.link_cta) {
    padding-left: 12px;
  }
}
@media (max-width: calc(440px - 1px)) {
  .btn_cta.btn_small:not(.link_cta) {
    padding-right: 10px;
  }
}
@media (min-width: 440px) {
  .btn_cta.btn_small:not(.link_cta) {
    padding-right: calc(10px + (2) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .btn_cta.btn_small:not(.link_cta) {
    padding-right: 12px;
  }
}

@media (max-width: calc(440px - 1px)) {
  .btn_cta.btn_little:not(.link_cta) {
    height: 32px;
  }
}
@media (min-width: 440px) {
  .btn_cta.btn_little:not(.link_cta) {
    height: calc(32px + (3) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .btn_cta.btn_little:not(.link_cta) {
    height: 35px;
  }
}
@media (max-width: calc(440px - 1px)) {
  .btn_cta.btn_little:not(.link_cta) {
    padding-left: 10px;
  }
}
@media (min-width: 440px) {
  .btn_cta.btn_little:not(.link_cta) {
    padding-left: calc(10px + (2) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .btn_cta.btn_little:not(.link_cta) {
    padding-left: 12px;
  }
}
@media (max-width: calc(440px - 1px)) {
  .btn_cta.btn_little:not(.link_cta) {
    padding-right: 10px;
  }
}
@media (min-width: 440px) {
  .btn_cta.btn_little:not(.link_cta) {
    padding-right: calc(10px + (2) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .btn_cta.btn_little:not(.link_cta) {
    padding-right: 12px;
  }
}

@media (max-width: calc(440px - 1px)) {
  .content_link {
    padding-top: 8px;
  }
}
@media (min-width: 440px) {
  .content_link {
    padding-top: calc(8px + (4) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .content_link {
    padding-top: 12px;
  }
}
@media (max-width: calc(440px - 1px)) {
  .content_link {
    margin-top: 15px;
  }
}
@media (min-width: 440px) {
  .content_link {
    margin-top: calc(15px + (5) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .content_link {
    margin-top: 20px;
  }
}

.btn_cta:not(.link_cta) {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  display: inline-flex;
  align-items: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  justify-content: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  text-align: center;
  font-family: "Inter", sans-serif;
  font-weight: 500;
  max-width: 100%;
  background: #ffe8d6;
  color: #121212;
  font-size: 0.875em;
  text-transform: uppercase;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}
.btn_cta:not(.link_cta) span {
  display: block;
  width: 100%;
}
.btn_cta:not(.link_cta):not(:disabled):not(.disabled) {
  cursor: pointer;
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
.btn_cta:not(.link_cta):not(:disabled):not(.disabled):hover {
  background: #f5d6bd;
}
.btn_cta:not(.link_cta):not(:disabled):not(.disabled):focus {
  background: #f5d6bd;
}
.btn_cta:not(.link_cta):not(:disabled):not(.disabled).hover {
  background: #f5d6bd;
}
.btn_cta:not(.link_cta).btn_black {
  background: #121212;
  color: #ffffff;
}
.btn_cta:not(.link_cta).btn_black:not(:disabled):not(.disabled) {
  cursor: pointer;
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
.btn_cta:not(.link_cta).btn_black:not(:disabled):not(.disabled):hover {
  background: #585858;
}
.btn_cta:not(.link_cta).btn_black:not(:disabled):not(.disabled):focus {
  background: #585858;
}
.btn_cta:not(.link_cta).btn_black:not(:disabled):not(.disabled).hover {
  background: #585858;
}
.btn_cta:not(.link_cta).btn_cream {
  background: #ea3b0c;
  color: #ffffff;
}
.btn_cta:not(.link_cta).btn_cream:not(:disabled):not(.disabled) {
  cursor: pointer;
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
.btn_cta:not(.link_cta).btn_cream:not(:disabled):not(.disabled):hover {
  background: #ea3b0c;
  color: #ffe8d6;
}
.btn_cta:not(.link_cta).btn_cream:not(:disabled):not(.disabled):focus {
  background: #ea3b0c;
  color: #ffe8d6;
}
.btn_cta:not(.link_cta).btn_cream:not(:disabled):not(.disabled).hover {
  background: #ea3b0c;
  color: #ffe8d6;
}
.btn_cta:not(.link_cta).btn_white {
  background: #ffffff;
  color: #121212;
}
.btn_cta:not(.link_cta).btn_white:not(:disabled):not(.disabled) {
  cursor: pointer;
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
.btn_cta:not(.link_cta).btn_white:not(:disabled):not(.disabled):hover {
  background: #f9f9f9;
}
.btn_cta:not(.link_cta).btn_white:not(:disabled):not(.disabled):focus {
  background: #f9f9f9;
}
.btn_cta:not(.link_cta).btn_white:not(:disabled):not(.disabled).hover {
  background: #f9f9f9;
}
.btn_cta:not(.link_cta).btn_lines {
  background: transparent;
  border: 1px solid #bdbdbd;
  color: #121212;
}
.btn_cta:not(.link_cta).btn_lines:not(:disabled):not(.disabled) {
  cursor: pointer;
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
.btn_cta:not(.link_cta).btn_lines:not(:disabled):not(.disabled):hover {
  background: #f9f9f9;
  border-color: #f9f9f9;
}
.btn_cta:not(.link_cta).btn_lines:not(:disabled):not(.disabled):focus {
  background: #f9f9f9;
  border-color: #f9f9f9;
}
.btn_cta:not(.link_cta).btn_lines:not(:disabled):not(.disabled).hover {
  background: #f9f9f9;
  border-color: #f9f9f9;
}
.btn_cta:not(.link_cta).btn_icon span {
  position: relative;
  padding-left: 24px;
}
.btn_cta:not(.link_cta).btn_icon span:before {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
  font-size: 1.1em;
}
.btn_cta:not(.link_cta).btn_dl span:before {
  content: "\e009";
  font-family: "resee";
}
.btn_cta:not(.link_cta):disabled, .btn_cta:not(.link_cta).disabled {
  background: #f9f9f9 !important;
  border-color: #f9f9f9 !important;
  color: #585858 !important;
  cursor: default;
}

.link_cta {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  display: inline-flex;
  font-family: "Inter", sans-serif;
  font-weight: 500;
  max-width: 100%;
  color: #121212;
  font-size: 0.875em;
  text-transform: uppercase;
  position: relative;
  padding-left: 24px;
  overflow: hidden;
}
.link_cta a:before, .link_cta a:after {
  content: "";
  position: absolute;
  left: -24px;
  top: 0;
  bottom: 0;
  width: 45px;
  background-image: url(/build/shop/images/chevron.97912051.svg);
  background-repeat: no-repeat;
  background-size: 5px;
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
.link_cta.link_beige {
  color: #ffe8d6;
}
.link_cta.link_beige:before, .link_cta.link_beige:after {
  background-image: url(/build/shop/images/chevron_beige.db656903.svg);
}
.link_cta.link_white {
  color: #ffffff;
}
.link_cta.link_white:before, .link_cta.link_white:after {
  background-image: url(/build/shop/images/chevron_white.23f31dc4.svg);
}
.link_cta:before {
  background-position: center left 10px;
}
.link_cta:after {
  background-position: center left 32px;
}
.link_cta:hover:before {
  background-position: center left 32px;
}
.link_cta:hover:after {
  background-position: center left 54px;
}
.link_cta:focus:before {
  background-position: center left 32px;
}
.link_cta:focus:after {
  background-position: center left 54px;
}
.link_cta.hover:before {
  background-position: center left 32px;
}
.link_cta.hover:after {
  background-position: center left 54px;
}
.link_cta.soft {
  font-family: "Inter", sans-serif;
  font-weight: 300;
  text-transform: initial;
}
.link_cta.link_next {
  padding-left: 0;
  padding-right: 24px;
}
.link_cta.link_next:before, .link_cta.link_next:after {
  right: -24px;
  left: inherit;
}
.link_cta.link_next:before {
  background-position: center right 32px;
}
.link_cta.link_next:after {
  background-position: center right 54px;
}
.link_cta.link_next:hover:before {
  background-position: center right 10px;
}
.link_cta.link_next:hover:after {
  background-position: center right 32px;
}
.link_cta.link_next:focus:before {
  background-position: center right 10px;
}
.link_cta.link_next:focus:after {
  background-position: center right 32px;
}
.link_cta.link_next.hover:before {
  background-position: center right 10px;
}
.link_cta.link_next.hover:after {
  background-position: center right 32px;
}
.link_cta.link_back {
  font-family: "Inter", sans-serif;
  font-weight: 300;
  text-transform: initial;
}
.link_cta.link_back:before, .link_cta.link_back:after {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
.link_cta.link_back:before {
  background-position: center left -10px;
}
.link_cta.link_back:after {
  background-position: center left 6px;
}
.link_cta.link_back:hover:before {
  background-position: center left 6px;
}
.link_cta.link_back:hover:after {
  background-position: center left 22px;
}
.link_cta.link_back:focus:before {
  background-position: center left 6px;
}
.link_cta.link_back:focus:after {
  background-position: center left 22px;
}
.link_cta.link_back.hover:before {
  background-position: center left 6px;
}
.link_cta.link_back.hover:after {
  background-position: center left 22px;
}

.content_link {
  display: block;
  text-align: right;
  position: relative;
  overflow: hidden;
}
.content_link:before {
  content: "";
  position: absolute;
  top: 0;
  left: -130%;
  width: 100%;
  height: 1px;
  background: #121212;
  opacity: 0.5;
  -moz-transition: all 0s ease-in-out;
  -o-transition: all 0s ease-in-out;
  -webkit-transition: all 0s ease-in-out;
  transition: all 0s ease-in-out;
}
.content_link:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #121212;
  opacity: 0.5;
  -moz-transition: all 0s ease-in-out;
  -o-transition: all 0s ease-in-out;
  -webkit-transition: all 0s ease-in-out;
  transition: all 0s ease-in-out;
}
.content_link.hover:before {
  left: 0;
  -moz-transition: all 0.6s ease-in-out;
  -o-transition: all 0.6s ease-in-out;
  -webkit-transition: all 0.6s ease-in-out;
  transition: all 0.6s ease-in-out;
}
.content_link.hover:after {
  left: 130%;
  -moz-transition: all 0.6s ease-in-out;
  -o-transition: all 0.6s ease-in-out;
  -webkit-transition: all 0.6s ease-in-out;
  transition: all 0.6s ease-in-out;
}

.login .link_cta {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

/* - Variables
................................................................................................................... */
/* - Génération des tailles Fluides
................................................................................................................... */
@media (max-width: calc(440px - 1px)) {
  body main .bloc_breadcrumbs.breadcrumbs_absolute {
    top: 70px;
  }
}
@media (min-width: 440px) {
  body main .bloc_breadcrumbs.breadcrumbs_absolute {
    top: calc(70px + (70) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  body main .bloc_breadcrumbs.breadcrumbs_absolute {
    top: 140px;
  }
}

@media (max-width: calc(440px - 1px)) {
  body .info_banner + header + main .bloc_breadcrumbs.breadcrumbs_absolute {
    top: 105px;
  }
}
@media (min-width: 440px) {
  body .info_banner + header + main .bloc_breadcrumbs.breadcrumbs_absolute {
    top: calc(105px + (83) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  body .info_banner + header + main .bloc_breadcrumbs.breadcrumbs_absolute {
    top: 188px;
  }
}

.bloc_breadcrumbs {
  padding: 20px 0;
}
.bloc_breadcrumbs nav ol {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
}
.bloc_breadcrumbs nav ol li {
  font-size: 0.875em;
}
.bloc_breadcrumbs nav ol li span, .bloc_breadcrumbs nav ol li a, .bloc_breadcrumbs nav ol li:after {
  display: block;
  color: #121212;
}
.bloc_breadcrumbs nav ol li a:hover {
  text-decoration: underline;
}
.bloc_breadcrumbs nav ol li a:focus {
  text-decoration: underline;
}
.bloc_breadcrumbs nav ol li:not(:last-child) {
  position: relative;
  padding-right: 15px;
}
.bloc_breadcrumbs nav ol li:not(:last-child):after {
  content: "/";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 5px;
}
@media (max-width: calc(768px - 1px)) {
  .bloc_breadcrumbs.breadcrumbs_dk_absolute {
    top: unset !important;
  }
}
@media (min-width: 768px) {
  .bloc_breadcrumbs.breadcrumbs_dk_absolute {
    position: absolute;
    left: 0;
    right: 0;
    z-index: 2;
    width: 100%;
  }
}

@media (max-width: calc(768px - 1px)) {
  .bloc_breadcrumbs {
    order: 999;
    position: relative;
  }
  .bloc_breadcrumbs:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: -1px;
    left: -20px;
    right: -20px;
    background: #121212;
    z-index: 1;
  }
  .bloc_breadcrumbs > div {
    position: relative;
    z-index: 2;
  }
  .bloc_breadcrumbs nav ol li span, .bloc_breadcrumbs nav ol li a, .bloc_breadcrumbs nav ol li:after {
    color: #ffe8d6;
  }
}
/* - Variables
................................................................................................................... */
/* - Génération des tailles Fluides
................................................................................................................... */
@media (max-width: calc(440px - 1px)) {
  .page_article_index .bloc_list_articles .list_wrapper .card_wrapper {
    margin-bottom: 40px;
  }
}
@media (min-width: 440px) {
  .page_article_index .bloc_list_articles .list_wrapper .card_wrapper {
    margin-bottom: calc(40px + (60) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .page_article_index .bloc_list_articles .list_wrapper .card_wrapper {
    margin-bottom: 100px;
  }
}

.page_article_index .bloc_list_articles .list_wrapper {
  position: relative;
}
.page_article_index .bloc_list_articles .list_wrapper .add_more_loader_wrapper {
  position: relative;
  width: 100%;
  height: 64px;
  margin-bottom: 24px;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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K0lKOztBUzVKRTtFQUVFO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtBVDJKSjs7QVN4S0U7RUFFRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7QVR1S0o7O0FTcExFO0VBRUU7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0FUbUxKOztBU2hNRTtFQUVFO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtBVCtMSjs7QVM1TUU7RUFFRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7QVQyTUo7O0FTeE5FO0VBRUU7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0FUdU5KOztBU3BPRTtFQUVFO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtBVG1PSjs7QVNoUEU7RUFFRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7QVQrT0o7O0FNMVpDO0VHK0xPO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQwTlI7RVN6T007SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVHNPUjtFU3JQTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUa1BSO0VTalFNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQ4UFI7RVM3UU07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDBRUjtFU3pSTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUc1JSO0VTclNNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRrU1I7RVNqVE07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDhTUjtFUzdUTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUMFRSO0VTelVNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRzVVI7RVNyVk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVGtWUjtFU2pXTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUOFZSO0VTN1dNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQwV1I7RVN2V0k7SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0VUc1dOO0VTcFdJO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtFVG1XTjtFU2pXSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVRnV047QUFDRjtBTXZsQkM7RUcrTE87SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVHNaUjtFU3JhTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUa2FSO0VTamJNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQ4YVI7RVM3Yk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDBiUjtFU3pjTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUc2NSO0VTcmRNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRrZFI7RVNqZU07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDhkUjtFUzdlTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUMGVSO0VTemZNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRzZlI7RVNyZ0JNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRrZ0JSO0VTamhCTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUOGdCUjtFUzdoQk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDBoQlI7RVN6aUJNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRzaUJSO0VTbmlCSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVRraUJOO0VTaGlCSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVQraEJOO0VTN2hCSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVQ0aEJOO0FBQ0Y7QU1ueEJDO0VHK0xPO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRrbEJSO0VTam1CTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUOGxCUjtFUzdtQk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDBtQlI7RVN6bkJNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRzbkJSO0VTcm9CTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUa29CUjtFU2pwQk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDhvQlI7RVM3cEJNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQwcEJSO0VTenFCTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUc3FCUjtFU3JyQk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVGtyQlI7RVNqc0JNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQ4ckJSO0VTN3NCTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUMHNCUjtFU3p0Qk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVHN0QlI7RVNydUJNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRrdUJSO0VTL3RCSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVQ4dEJOO0VTNXRCSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVQydEJOO0VTenRCSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVR3dEJOO0FBQ0Y7QU0vOEJDO0VHK0xPO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQ4d0JSO0VTN3hCTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUMHhCUjtFU3p5Qk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVHN5QlI7RVNyekJNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRrekJSO0VTajBCTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUOHpCUjtFUzcwQk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDAwQlI7RVN6MUJNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRzMUJSO0VTcjJCTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUazJCUjtFU2ozQk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDgyQlI7RVM3M0JNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQwM0JSO0VTejRCTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUczRCUjtFU3I1Qk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVGs1QlI7RVNqNkJNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQ4NUJSO0VTMzVCSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVQwNUJOO0VTeDVCSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVR1NUJOO0VTcjVCSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVRvNUJOO0FBQ0Y7QU0zb0NDO0VHK0xPO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQwOEJSO0VTejlCTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUczlCUjtFU3IrQk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVGsrQlI7RVNqL0JNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQ4K0JSO0VTNy9CTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUMC9CUjtFU3pnQ007SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVHNnQ1I7RVNyaENNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRraENSO0VTamlDTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUOGhDUjtFUzdpQ007SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDBpQ1I7RVN6akNNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRzakNSO0VTcmtDTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUa2tDUjtFU2psQ007SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDhrQ1I7RVM3bENNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQwbENSO0VTdmxDSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVRzbENOO0VTcGxDSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVRtbENOO0VTamxDSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVRnbENOO0FBQ0Y7QVNya0NFO0VBQ0U7QVR1a0NKOztBU3hrQ0U7RUFDRTtBVDJrQ0o7O0FTNWtDRTtFQUNFO0FUK2tDSjs7QVNobENFO0VBQ0U7QVRtbENKOztBU3BsQ0U7RUFDRTtBVHVsQ0o7O0FTeGxDRTtFQUNFO0FUMmxDSjs7QVM1bENFO0VBQ0U7QVQrbENKOztBU2htQ0U7RUFDRTtBVG1tQ0o7O0FTcG1DRTtFQUNFO0FUdW1DSjs7QVN4bUNFO0VBQ0U7QVQybUNKOztBUzVtQ0U7RUFDRTtBVCttQ0o7O0FTaG5DRTtFQUNFO0FUbW5DSjs7QVNwbkNFO0VBQ0U7QVR1bkNKOztBTTEzQ0M7RUcrUU87SUFDRTtFVCttQ1I7RVNobkNNO0lBQ0U7RVRrbkNSO0VTbm5DTTtJQUNFO0VUcW5DUjtFU3RuQ007SUFDRTtFVHduQ1I7RVN6bkNNO0lBQ0U7RVQybkNSO0VTNW5DTTtJQUNFO0VUOG5DUjtFUy9uQ007SUFDRTtFVGlvQ1I7RVNsb0NNO0lBQ0U7RVRvb0NSO0VTcm9DTTtJQUNFO0VUdW9DUjtFU3hvQ007SUFDRTtFVDBvQ1I7RVMzb0NNO0lBQ0U7RVQ2b0NSO0VTOW9DTTtJQUNFO0VUZ3BDUjtFU2pwQ007SUFDRTtFVG1wQ1I7QUFDRjtBTXA2Q0M7RUcrUU87SUFDRTtFVHdwQ1I7RVN6cENNO0lBQ0U7RVQycENSO0VTNXBDTTtJQUNFO0VUOHBDUjtFUy9wQ007SUFDRTtFVGlxQ1I7RVNscUNNO0lBQ0U7RVRvcUNSO0VTcnFDTTtJQUNFO0VUdXFDUjtFU3hxQ007SUFDRTtFVDBxQ1I7RVMzcUNNO0lBQ0U7RVQ2cUNSO0VTOXFDTTtJQUNFO0VUZ3JDUjtFU2pyQ007SUFDRTtFVG1yQ1I7RVNwckNNO0lBQ0U7RVRzckNSO0VTdnJDTTtJQUNFO0VUeXJDUjtFUzFyQ007SUFDRTtFVDRyQ1I7QUFDRjtBTTc4Q0M7RUcrUU87SUFDRTtFVGlzQ1I7RVNsc0NNO0lBQ0U7RVRvc0NSO0VTcnNDTTtJQUNFO0VUdXNDUjtFU3hzQ007SUFDRTtFVDBzQ1I7RVMzc0NNO0lBQ0U7RVQ2c0NSO0VTOXNDTTtJQUNFO0VUZ3RDUjtFU2p0Q007SUFDRTtFVG10Q1I7RVNwdENNO0lBQ0U7RVRzdENSO0VTdnRDTTtJQUNFO0VUeXRDUjtFUzF0Q007SUFDRTtFVDR0Q1I7RVM3dENNO0lBQ0U7RVQrdENSO0VTaHVDTTtJQUNFO0VUa3VDUjtFU251Q007SUFDRTtFVHF1Q1I7QUFDRjtBTXQvQ0M7RUcrUU87SUFDRTtFVDB1Q1I7RVMzdUNNO0lBQ0U7RVQ2dUNSO0VTOXVDTTtJQUNFO0VUZ3ZDUjtFU2p2Q007SUFDRTtFVG12Q1I7RVNwdkNNO0lBQ0U7RVRzdkNSO0VTdnZDTTtJQUNFO0VUeXZDUjtFUzF2Q007SUFDRTtFVDR2Q1I7RVM3dkNNO0lBQ0U7RVQrdkNSO0VTaHdDTTtJQUNFO0VUa3dDUjtFU253Q007SUFDRTtFVHF3Q1I7RVN0d0NNO0lBQ0U7RVR3d0NSO0VTendDTTtJQUNFO0VUMndDUjtFUzV3Q007SUFDRTtFVDh3Q1I7QUFDRjtBTS9oREM7RUcrUU87SUFDRTtFVG14Q1I7RVNweENNO0lBQ0U7RVRzeENSO0VTdnhDTTtJQUNFO0VUeXhDUjtFUzF4Q007SUFDRTtFVDR4Q1I7RVM3eENNO0lBQ0U7RVQreENSO0VTaHlDTTtJQUNFO0VUa3lDUjtFU255Q007SUFDRTtFVHF5Q1I7RVN0eUNNO0lBQ0U7RVR3eUNSO0VTenlDTTtJQUNFO0VUMnlDUjtFUzV5Q007SUFDRTtFVDh5Q1I7RVMveUNNO0lBQ0U7RVRpekNSO0VTbHpDTTtJQUNFO0VUb3pDUjtFU3J6Q007SUFDRTtFVHV6Q1I7QUFDRjtBRzFnREE7dUhBQUE7QU94RUE7O3VIQUFBO0FBSUE7dUhBQUE7QVB1RUE7dUhBQUE7QVEzRUE7O3VIQUFBO0FBSUE7dUhBQUE7QUFXQTt1SEFBQTtBQWVBO0VBVEM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVhnbEREOztBVzdqREE7RUFUQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWDBrREQ7O0FXdGpEQTtFQVZDO0VBQ0E7RUFDQTtF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c0IxMkhBO0VBQ0k7QXRCNjJISjs7QXNCMzJIQTtFQUNJO0F0QjgySEo7O0FzQjUySEE7RUFDSTtBdEIrMkhKOztBc0I3MkhBO0VBQ0k7QXRCZzNISjs7QXNCOTJIQTtFQUNJO0F0QmkzSEo7O0FzQi8ySEE7RUFDSTtBdEJrM0hKOztBc0JoM0hBO0VBQ0k7QXRCbTNISjs7QXNCajNIQTtFQUNJO0F0Qm8zSEo7O0FzQmwzSEE7RUFDSTtBdEJxM0hKOztBc0JuM0hBO0VBQ0k7QXRCczNISjs7QXNCcDNIQTtFQUNJO0F0QnUzSEo7O0FzQnIzSEE7RUFDSTtBdEJ3M0hKOztBc0J0M0hBO0VBQ0k7QXRCeTNISjs7QXNCdjNIQTtFQUNJO0F0QjAzSEo7O0FzQngzSEE7RUFDSTtBdEIyM0hKOztBc0J6M0hBO0VBQ0k7QXRCNDNISjs7QXNCMTNIQTtFQUNJO0F0QjYzSEo7O0FzQjMzSEE7RUFDSTtBdEI4M0hKOztBc0I1M0hBO0VBQ0k7QXRCKzNISjs7QXNCNzNIQTtFQUNJO0F0Qmc0SEo7O0FzQjkzSEE7RUFDSTtBdEJpNEhKOztBc0IvM0hBO0VBQ0k7QXRCazRISjs7QXNCaDRIQTtFQUNDO0F0Qm00SEQ7O0FzQmo0SEE7RUFDQztBdEJvNEhEOztBc0JsNEhBO0VBQ0M7QXRCcTRIRDs7QXNCbjRIQTtFQUNDO0F0QnM0SEQ7O0FzQnA0SEE7RUFDQztBdEJ1NEhEOztBc0JyNEhBO0VBQ0M7QXRCdzRIRDs7QXNCdDRIQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F0Qnk0SEo7O0FzQnY0SEE7RUFDQztBdEIwNEhEOztBc0J2NEhBO0VBQ0k7RUFDQTtBdEIwNEhKOztBRzMvSEE7dUhBQUE7QUkxR0M7cUhBQUE7QUFTQTtxSEFBQTtBREdBO0VDRUM7SUFjSSxZQVRLO0VQNmxJVDtBQUNGO0FNN21JQztFQ1VDO0lBb0JJO0VQbWxJSjtBQUNGO0FNbG5JQztFQ1VDO0lBMEJJLFlBakJNO0VQbW1JVjtBQUNGO0FNL21JQztFQ0VDO0lBY0ksa0JBVEs7RVA0bUlUO0FBQ0Y7QU01bklDO0VDVUM7SUFvQkk7RVBrbUlKO0FBQ0Y7QU1qb0lDO0VDVUM7SUEwQkksa0JBakJNO0VQa25JVjtBQUNGO0FNOW5JQztFQ0VDO0lBY0ksbUJBVEs7RVAybklUO0FBQ0Y7QU0zb0lDO0VDVUM7SUFvQkk7RVBpbklKO0FBQ0Y7QU1ocElDO0VDVUM7SUEwQkksbUJBakJNO0VQaW9JVjtBQUNGOztBTTdvSUM7RUNFQztJQWNJLFlBVEs7RVAyb0lUO0FBQ0Y7QU0zcElDO0VDVUM7SUFvQkk7RVBpb0lKO0FBQ0Y7QU1ocUlDO0VDVUM7SUEwQkksWUFqQk07RVBpcElWO0FBQ0Y7QU03cElDO0VDRUM7SUFjSSxrQkFUSztFUDBwSVQ7QUFDRjtBTTFxSUM7RUNVQztJQW9CSTtFUGdwSUo7QUFDRjtBTS9xSUM7RUNVQztJQTBCSSxrQkFqQk07RVBncUlWO0FBQ0Y7QU01cUlDO0VDRUM7SUFjSSxtQkFUSztFUHlxSVQ7QUFDRjtBTXpySUM7RUNVQztJQW9CSTtFUCtwSUo7QUFDRjtBTTlySUM7RUNVQztJQTBCSSxtQkFqQk07RVArcUlWO0FBQ0Y7O0FNM3JJQztFQ0VDO0lBY0ksWUFUSztFUHlySVQ7QUFDRjtBTXpzSUM7RUNVQztJQW9CSTtFUCtxSUo7QUFDRjtBTTlzSUM7RUNVQztJQTBCSSxZQWpCTTtFUCtySVY7QUFDRjtBTTNzSUM7RUNFQztJQWNJLGtCQVRLO0VQd3NJVDtBQUNGO0FNeHRJQztFQ1VDO0lBb0JJO0VQOHJJSjtBQUNGO0FNN3RJQztFQ1VDO0lBMEJJLGtCQWpCTTtFUDhzSVY7QUFDRjtBTTF0SUM7RUNFQztJQWNJLG1CQVRLO0VQdXRJVDtBQUNGO0FNdnVJQztFQ1VDO0lBb0JJO0VQNnNJSjtBQUNGO0FNNXVJQztFQ1VDO0lBMEJJLG1CQWpCTTtFUDZ0SVY7QUFDRjs7QU16dUlDO0VDRUM7SUFjSSxnQkFUSztFUHV1SVQ7QUFDRjtBTXZ2SUM7RUNVQztJQW9CSTtFUDZ0SUo7QUFDRjtBTTV2SUM7RUNVQztJQTBCSSxpQkFqQk07RVA2dUlWO0FBQ0Y7QU16dklDO0VDRUM7SUFjSSxnQkFUSztFUHN2SVQ7QUFDRjtBTXR3SUM7RUNVQztJQW9CSTtFUDR1SUo7QUFDRjtBTTN3SUM7RUNVQztJQTBCSSxnQkFqQk07RVA0dklWO0FBQ0Y7O0F1Qmp1SUE7RVgzQkM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFV3lCRztFWjBWSDtFQUNBO0VBQ0E7RUFyS0E7RUFDQTtFQUNBO0VBQ0E7RVdwT0c7RUFDQTtFQzZDQTtFQUNBLG1CdEJ2RGM7RXNCd0RkLGN0QnJEYztFc0JzRGQ7RUFDQTtFRjlESCwwQkUrRG1CO0VGOURuQix1QkU4RG1CO0VGN0RuQixrQkU2RG1CO0F2Qmd2SXBCO0F1Qi91SUk7RUFDSTtFQUNBO0F2Qml2SVI7QXVCL3VJSTtFQUNJO0VQckVQLHNDZjJCaUI7RWUxQmpCLG9DZjBCaUI7RWV6QmpCLHlDZnlCaUI7RWV4QmpCLGlDZndCaUI7QUQreElsQjtBRS94SUk7RXFCNkNRLG1CdEJuRU07QUR3eklsQjtBRS94SUk7RXFCMENRLG1CdEJuRU07QUQyeklsQjtBdUJ0dklRO0VBQ0ksbUJ0QnRFTTtBRDh6SWxCO0F1QnJ2SUk7RUFDSSxtQnRCeEVVO0VzQnlFVixjdEJsRVU7QUR5eklsQjtBdUJ0dklRO0VBQ0k7RVBsRlgsc0NmMkJpQjtFZTFCakIsb0NmMEJpQjtFZXpCakIseUNmeUJpQjtFZXhCakIsaUNmd0JpQjtBRG16SWxCO0FFbnpJSTtFcUIwRFksbUJ0QjdFRTtBRHkwSWxCO0FFbnpJSTtFcUJ1RFksbUJ0QjdFRTtBRDQwSWxCO0F1Qjd2SVk7RUFDSSxtQnRCaEZFO0FEKzBJbEI7QXVCM3ZJSTtFQUNJO0VBQ0EsY3RCaEZVO0FENjBJbEI7QXVCNXZJUTtFQUNJO0VQaEdYLHNDZjJCaUI7RWUxQmpCLG9DZjBCaUI7RWV6QmpCLHlDZnlCaUI7RWV4QmpCLGlDZndCaUI7QUR1MElsQjtBRXYwSUk7RXFCd0VZO0VBQ0EsY3RCaEdFO0FEazJJbEI7QUV4MElJO0VxQnFFWTtFQUNBLGN0QmhHRTtBRHMySWxCO0F1QnB3SVk7RUFDSTtFQUNBLGN0QnBHRTtBRDAySWxCO0F1Qmx3SUk7RUFDSSxtQnRCL0ZVO0VzQmdHVixjdEJ2R1U7QUQyMklsQjtBdUJud0lRO0VBQ0k7RVBoSFgsc0NmMkJpQjtFZTFCakIsb0NmMEJpQjtFZXpCakIseUNmeUJpQjtFZXhCakIsaUNmd0JpQjtBRDgxSWxCO0FFOTFJSTtFcUJ3RlksbUJ0QnZHRTtBRGczSWxCO0FFOTFJSTtFcUJxRlksbUJ0QnZHRTtBRG0zSWxCO0F1QjF3SVk7RUFDSSxtQnRCMUdFO0FEczNJbEI7QXVCeHdJSTtFQUNJO0VBQ0E7RUFDQSxjdEJ0SFU7QURnNElsQjtBdUJ6d0lRO0VBQ0k7RVAvSFgsc0NmMkJpQjtFZTFCakIsb0NmMEJpQjtFZXpCakIseUNmeUJpQjtFZXhCakIsaUNmd0JpQjtBRG0zSWxCO0FFbjNJSTtFcUJ1R1ksbUJ0QnRIRTtFc0J1SEYscUJ0QnZIRTtBRHM0SWxCO0FFcDNJSTtFcUJvR1ksbUJ0QnRIRTtFc0J1SEYscUJ0QnZIRTtBRDA0SWxCO0F1Qmp4SVk7RUFDSSxtQnRCMUhFO0VzQjJIRixxQnRCM0hFO0FEODRJbEI7QXVCOXdJUTtFQUNJO0VBQ0E7QXZCZ3hJWjtBdUIvd0lZO0VaL0dYO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VZMkdlO0VBQ0E7QXZCdXhJaEI7QXVCbHhJUTtFQUNJO0VBQ0E7QXZCb3hJWjtBdUJqeElJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXZCbXhJUjs7QXVCL3dJQTtFWDNJQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VXeUlHO0VEMUpBO0VBQ0E7RUMySkE7RUFDQSxjdEJsS2M7RXNCbUtkO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZCdXhJSjtBdUJyeElRO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VQekxQLHNDZjJCaUI7RWUxQmpCLG9DZjBCaUI7RWV6QmpCLHlDZnlCaUI7RWV4QmpCLGlDZndCaUI7QUR5N0lsQjtBdUJ2eElJO0VBQ0ksY3RCMUxVO0FEbTlJbEI7QXVCeHhJUTtFQUNJO0F2QjB4SVo7QXVCdnhJSTtFQUNJLGN0QnRMVTtBRCs4SWxCO0F1Qnh4SVE7RUFDSTtBdkIweElaO0F1QnZ4SUk7RUFDSTtBdkJ5eElSO0F1QnZ4SUk7RUFDSTtBdkJ5eElSO0F1QnR4SVE7RUFDSTtBdkJ3eElaO0F1QnR4SVE7RUFDSTtBdkJ3eElaO0F1QjV4SVE7RUFDSTtBdkI4eElaO0F1QjV4SVE7RUFDSTtBdkI4eElaO0F1QjF4SVE7RUFDSTtBdkI0eElaO0F1QjF4SVE7RUFDSTtBdkI0eElaO0F1Qnp4SUk7RUQ3TkE7RUFDQTtFQzhOSTtBdkI0eElSO0F1QjF4SUk7RUFDSTtFQUNBO0F2QjR4SVI7QXVCM3hJUTtFQUNJO0VBQ0E7QXZCNnhJWjtBdUIzeElRO0VBQ0k7QXZCNnhJWjtBdUIzeElRO0VBQ0k7QXZCNnhJWjtBdUIxeElZO0VBQ0k7QXZCNHhJaEI7QXVCMXhJWTtFQUNJO0F2QjR4SWhCO0F1Qmh5SVk7RUFDSTtBdkJreUloQjtBdUJoeUlZO0VBQ0k7QXZCa3lJaEI7QXVCOXhJWTtFQUNJO0F2Qmd5SWhCO0F1Qjl4SVk7RUFDSTtBdkJneUloQjtBdUI1eElJO0VEL1BBO0VBQ0E7RUNnUUk7QXZCK3hJUjtBdUI5eElRO0VMcFFQLGlDS3FROEI7RUxwUTlCLDhCS29ROEI7RUxuUTlCLDZCS21ROEI7RUxsUTlCLDRCS2tROEI7RUxqUTlCLHlCS2lROEI7QXZCb3lJL0I7QXVCbHlJUTtFQUNJO0F2Qm95SVo7QXVCbHlJUTtFQUNJO0F2Qm95SVo7QXVCanlJWTtFQUNJO0F2Qm15SWhCO0F1Qmp5SVk7RUFDSTtBdkJteUloQjtBdUJ2eUlZO0VBQ0k7QXZCeXlJaEI7QXVCdnlJWTtFQUNJO0F2Qnl5SWhCO0F1QnJ5SVk7RUFDSTtBdkJ1eUloQjtBdUJyeUlZO0VBQ0k7QXZCdXlJaEI7O0F1Qmp5SUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBdkJveUlKO0F1Qm55SUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQnRCclNVO0VzQnNTVjtFUDdTUCxtQ2Y2QmlCO0VlNUJqQixpQ2Y0QmlCO0VlM0JqQixzQ2YyQmlCO0VlMUJqQiw4QmYwQmlCO0FEeWpKbEI7QXVCdHlJSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1CdEJoVFU7RXNCaVRWO0VQeFRQLG1DZjZCaUI7RWU1QmpCLGlDZjRCaUI7RWUzQmpCLHNDZjJCaUI7RWUxQmpCLDhCZjBCaUI7QUR1a0psQjtBdUJ4eUlRO0VBQ0k7RVA3VFgscUNmNEJpQjtFZTNCakIsbUNmMkJpQjtFZTFCakIsd0NmMEJpQjtFZXpCakIsZ0NmeUJpQjtBRCtrSmxCO0F1QjN5SVE7RUFDSTtFUGpVWCxxQ2Y0QmlCO0VlM0JqQixtQ2YyQmlCO0VlMUJqQix3Q2YwQmlCO0VlekJqQixnQ2Z5QmlCO0FEc2xKbEI7O0F1QjF5SUk7RUFDSTtFQUNBO0VBQ0E7QXZCNnlJUjs7QU92bkpDO3FIQUFBO0FBU0E7cUhBQUE7QURHQTtFQ0VDO0lBY0ksU0FUSztFUDZtSlQ7QUFDRjtBTTduSkM7RUNVQztJQW9CSTtFUG1tSko7QUFDRjtBTWxvSkM7RUNVQztJQTBCSSxVQWpCTTtFUG1uSlY7QUFDRjs7QU0vbkpDO0VDRUM7SUFjSSxVQVRLO0VQNm5KVDtBQUNGO0FNN29KQztFQ1VDO0lBb0JJO0VQbW5KSjtBQUNGO0FNbHBKQztFQ1VDO0lBMEJJLFVBakJNO0VQbW9KVjtBQUNGOztBd0JocEpBO0VBQ0k7QXhCbXBKSjtBd0JqcEpRO0VaVVA7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFWVpXO0VBQ0E7RUFDQTtBeEJ1cEpaO0F3QnRwSlk7RUFDSTtBeEJ3cEpoQjtBd0J2cEpnQjtFQUNJO0VBQ0EsY3ZCakJGO0FEMHFKbEI7QUV0cEpJO0VzQkNvQjtBeEJ3cEp4QjtBRXRwSkk7RXNCRm9CO0F4QjJwSnhCO0F3QnhwSmdCO0VBQ0k7RUFDQTtBeEIwcEpwQjtBd0J6cEpvQjtFQUNJO0ViSHZCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VhRHVCO0F4QmlxSnhCO0FNenJKQztFa0I4Qkc7SUFFUTtFeEI2cEpWO0FBQ0Y7QU10c0pDO0VrQnNDRztJQUtRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXhCK3BKVjtBQUNGOztBTXZzSkM7RWtCOERHO0lBQ0k7SUFDQTtFeEI2b0pOO0V3QjVvSk07SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQSxtQnZCOUVNO0l1QitFTjtFeEI4b0pWO0V3QjVvSk07SUFDSTtJQUNBO0V4QjhvSlY7RXdCMW9KYztJQUNJLGN2QjNGRjtFRHV1SmhCO0FBQ0Y7QU8zdUpDO3FIQUFBO0FBU0E7cUhBQUE7QURHQTtFQ0VDO0lBY0ksbUJBVEs7RVBndUpUO0FBQ0Y7QU1odkpDO0VDVUM7SUFvQkk7RVBzdEpKO0FBQ0Y7QU1ydkpDO0VDVUM7SUEwQkksb0JBakJNO0VQc3VKVjtBQUNGOztBQXB2SlE7RUFDSTtBQXV2Slo7QUF0dkpZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QUF3dkpoQixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9wYWdlcy9wYWdlX2FydGljbGVfaW5kZXguc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3NldHRpbmdzL3N0Z3NfcHJvamV0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9zZXR0aW5ncy9zdGdzX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvc2V0dGluZ3Mvc3Rnc19wYWdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9kZWZhdWx0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9vcGVyYXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9tZWRpYXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X2ZsdWlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AY2FmZWZyYXBwZS9hcmFiaWNhL2xpYi9jc3MvZm9uY3Rpb25zL2ZuY3RfZ3JpbGxlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9oZWxwZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X2FsaWduZW1lbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9kaXNwbGF5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9vcmRyZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X2RpcmVjdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X3RhaWxsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X3RyYW5zaXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9hbmltYXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF90cmFuc2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9pbnRlcmFjdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X29tYnJlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AY2FmZWZyYXBwZS9hcmFiaWNhL2xpYi9jc3MvZm9uY3Rpb25zL2ZuY3RfcmFkaXVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9tb2xlY3VsZXMvbW9sX2ZvbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9tb2xlY3VsZXMvbW9sX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2Jsb2NzL2Jsb2NfYnJlYWRjcnVtYi5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJy4uL3NldHRpbmdzL3N0Z3NfcGFnZSc7XG5AaW1wb3J0ICcuLi9ibG9jcy9ibG9jX2JyZWFkY3J1bWInO1xuXG4kcGFnZUFydGljbGVJbmRleE1hcCA6IChcbiAgICAnLnBhZ2VfYXJ0aWNsZV9pbmRleCAuYmxvY19saXN0X2FydGljbGVzIC5saXN0X3dyYXBwZXIgLmNhcmRfd3JhcHBlcic6IChcbiAgICAgICAgJ21hcmdpbi1ib3R0b20nOiAoXG5cdFx0XHQ0MHB4LFxuXHRcdFx0MTAwcHggLy8gU2FtZSBhcyAuYmxvY19jb250ZW50LCBwb3VyIG3Dqm1lIGVzcGFjZSBlbnRyZSBsZSAxZXIgYXJ0aWNsZSBtaXMgZW4gYXZhbnQgZW4gY2FyZF9lZGl0b1xuICAgICAgICApLFxuICAgICksXG4pO1xuXG5AaW5jbHVkZSBmbHVpZCgkcGFnZUFydGljbGVJbmRleE1hcCk7XG5cbi5wYWdlX2FydGljbGVfaW5kZXgge1xuICAgIC5ibG9jX2xpc3RfYXJ0aWNsZXMge1xuICAgICAgICAubGlzdF93cmFwcGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uIDogcmVsYXRpdmU7XG4gICAgICAgICAgICAuYWRkX21vcmVfbG9hZGVyX3dyYXBwZXIgeyAvLyBMb2FkZXIgZW4gaW5pdGlhbCwgcG91ciBham91dCBkZSBwcm9kdWl0cyBhdmFudCBvdSBhcHLDqHMgbGEgbGlzdGVcbiAgICAgICAgICAgICAgICBwb3NpdGlvbiAgICAgIDogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGggICAgICAgICA6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0ICAgICAgICA6IDY0cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbSA6IDI0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0gU3RncyBQcm9qZXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtIENvdWxldXJzXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuLy8gcHJvamVjdCBjb2xvcnNcblxuJGJlaWdlICAgICAgICAgIDogI2ZmZThkNjtcbiRiZWlnZTIgICAgICAgICA6ICNmNWQ2YmQ7XG4kYnJvd24gICAgICAgICAgOiAjYjc5ZThhO1xuJGJsYWNrICAgICAgICAgIDogIzEyMTIxMjtcbiRncmV5LWRhcmsgICAgICA6ICM1ODU4NTg7XG4kZ3JleS1kYXJrMiAgICAgOiAjOGY4ZjhmO1xuJGdyZXkgICAgICAgICAgIDogI2JkYmRiZDtcbiRncmV5LWxpZ2h0ICAgICA6ICNmM2YzZjM7XG4kZ3JleS1saWdodDIgICAgOiAjZjlmOWY5O1xuJGdyZXktbGlnaHQzICAgIDogI2Q5ZDlkOTtcbiR3aGl0ZSAgICAgICAgICA6ICNmZmZmZmY7XG4kZ3JlZW4gICAgICAgICAgOiAjOTFjYmExO1xuXG4vLyBhbGVydCBjb2xvcnNcblxuJHN1Y2Nlc3MgICAgICAgIDogIzAwOTEwMDtcbiRpbmZvICAgICAgICAgICA6ICMwMDBmYjQ7XG4kd2FybmluZyAgICAgICAgOiAjYzg4ZDAwO1xuJGRhbmdlciAgICAgICAgIDogI2QwMDAwMDtcblxuLyogLSBWYXJpYWJsZXNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4kdHJhbnNpdGlvbiAgICAgOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7XG4kdHJhbnNpdGlvblNsb3cgOiBhbGwgMC42cyBlYXNlLWluLW91dDtcbiR0cmFuc2l0aW9uTnVsbCA6IGFsbCAwcyBlYXNlLWluLW91dDtcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLSBTdGdzIE1peGluc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0gU2hhZG93XG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuQG1peGluIHNoYWRvdygkc2hhZG93IDogMCAycHggMTBweCAwIHJnYmEoJGJsYWNrLCAwLjIpKSB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93IDogJHNoYWRvdztcbiAgICAtbW96LWJveC1zaGFkb3cgICAgOiAkc2hhZG93O1xuICAgIGJveC1zaGFkb3cgICAgICAgICA6ICRzaGFkb3c7XG59XG5cbi8qIC0gSW1hZ2VzXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuQG1peGluIGltYWdlRml0KCkge1xuICAgIG9iamVjdC1maXQgICAgICAgICA6IGNvdmVyO1xuICAgIC1vLW9iamVjdC1maXQgICAgICA6IGNvdmVyO1xuICAgIG9iamVjdC1wb3NpdGlvbiAgICA6IGNlbnRlcjtcbiAgICAtby1vYmplY3QtcG9zaXRpb24gOiBjZW50ZXI7XG59XG5cbkBtaXhpbiByZXNldEltYWdlRml0KCkge1xuICAgIG9iamVjdC1maXQgICAgOiB1bnNldDtcbiAgICAtby1vYmplY3QtZml0IDogdW5zZXQ7XG59XG5cbi8qIC0gSW50ZXJhY3Rpb25zXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuQG1peGluIGhvdmVyX2ZvY3VzIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgQGNvbnRlbnRcbiAgICB9XG4gICAgJjpmb2N1cyB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIGZvY3VzIHtcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG5AbWl4aW4gZm9jdXNfYWNjZXNzIHtcbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG4iLCJAdXNlIFwic2FzczptYXRoXCI7XG5cbkBpbXBvcnQgJ3N0Z3NfcHJvamV0JztcbkBpbXBvcnQgJ3N0Z3NfbWl4aW5zJztcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tIFN0Z3MgQXJhYmljYVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0gZmx1aWQgTW9kZVxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbiRmbHVpZE1vZGUgICAgICAgICAgICAgICA6IHRydWU7IC8vIFRydWUgLSBGYWxzZVxuXG4vKiAtIEJyZWFrcG9pbnRzIChjb2xvbm5lcywgdGFpbGxlIGRlcyBib3hlcyBldCBtb2RhbGVzKVxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbiRicmVha3BvaW50TWFwICAgICAgICAgICA6IChcblx0Ly8gY2xhc3M9XCJjb2xfeHNcIiAtIGNsYXNzPVwiYm94X3hzXCIgLSBjbGFzcz1cIm1vZGFsZV94c1wiXG5cdCd4cyc6IDA0NDBweCxcblx0Ly8gY2xhc3M9XCJjb2xfc21cIiAtIGNsYXNzPVwiYm94X3NtXCIgLSBjbGFzcz1cIm1vZGFsZV9zbVwiXG5cdCdzbSc6IDA1NzZweCxcblx0Ly8gY2xhc3M9XCJjb2xfbWRcIiAtIGNsYXNzPVwiYm94X21kXCIgLSBjbGFzcz1cIm1vZGFsZV9tZFwiXG5cdCdtZCc6IDA3NjhweCxcblx0Ly8gY2xhc3M9XCJjb2xfbGdcIiAtIGNsYXNzPVwiYm94X2xnXCIgLSBjbGFzcz1cIm1vZGFsZV9sZ1wiXG5cdCdsZyc6IDEwMjRweCxcblx0Ly8gY2xhc3M9XCJjb2xfeGxcIiAtIGNsYXNzPVwiYm94X3hsXCIgLSBjbGFzcz1cIm1vZGFsZV94bFwiXG5cdCd4bCc6IDEyMzBweCxcblx0Ly8gY2xhc3M9XCJjb2xfZnVsbFwiIC0gY2xhc3M9XCJib3hfZnVsbFwiIC0gY2xhc3M9XCJtb2RhbGVfZnVsbFwiXG5cdCdmdWxsJzogMDEwMCVcbik7XG5cbi8qIC0gTWFyZ2VzIChFbnRyZSBsZXMgbGVzIGNvbG9ubmVzIDogY2xhc3M9XCJtYXJnZXNcIiBzdXIgbGEgcm93IHBhcmVudGUpXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuJG1hcmdlcyAgICAgICAgICAgICAgICAgIDogMTBweDtcbiRtYXJnZXNCcmVha3BvaW50ICAgICAgICA6ICdtZCc7XG4kbWFyZ2VzTW9iaWxlICAgICAgICAgICAgOiA0cHg7XG5cbi8qIC0gTm9tYnJlIGRlIGNvbG9ubmVzIGRlIGxhIGdyaWxsZVxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbiRub21icmVDb2xvbm5lcyAgICAgICAgICA6IDEyO1xuXG4vKiAtIE1vZGFsZXNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4kbW9kYWxlUGFkZGluZyAgICAgICAgICAgOiAyNHB4O1xuJG1vZGFsZVBhZGRpbmdCcmVha3BvaW50IDogJ21kJztcbiRtb2RhbGVQYWRkaW5nTW9iaWxlICAgICA6IG1hdGguZGl2KCRtb2RhbGVQYWRkaW5nLCAyKTtcbiRtb2RhbGVCYWNrZ3JvdW5kQ29sb3IgICA6ICNmZmZmZmY7XG4kb3ZlcmxheUJhY2tncm91bmRDb2xvciAgOiAjMDAwMDAwO1xuJG92ZXJsYXlPcGFjaXR5ICAgICAgICAgIDogLjc1O1xuXG4vKiAtIEZuY3QgRGVmYXVsdFxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5AaW1wb3J0ICcuLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X2RlZmF1bHQnO1xuLyogLSBGbmN0IE9wZXJhdGlvbnNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuQGltcG9ydCAnLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9vcGVyYXRpb25zJztcbi8qIC0gRm5jdCBNZWRpYXNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuQGltcG9ydCAnLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9tZWRpYXMnO1xuLyogLSBGbmN0IEZsdWlkXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cbkBpbXBvcnQgJy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY2FmZWZyYXBwZS9hcmFiaWNhL2xpYi9jc3MvZm9uY3Rpb25zL2ZuY3RfZmx1aWQnO1xuLyogLSBGbmN0IEZvcm1zXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cbkBpbXBvcnQgJy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY2FmZWZyYXBwZS9hcmFiaWNhL2xpYi9jc3MvZm9uY3Rpb25zL2ZuY3RfZm9ybXMnO1xuLyogLSBGbmN0IEdyaWxsZVxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5AaW1wb3J0ICcuLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X2dyaWxsZSc7XG4vKiAtIEZuY3QgSGVscGVyXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cbkBpbXBvcnQgJy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY2FmZWZyYXBwZS9hcmFiaWNhL2xpYi9jc3MvZm9uY3Rpb25zL2ZuY3RfaGVscGVyJztcbi8qIC0gRm5jdCBBbGlnbmVtZW50c1xuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5AaW1wb3J0ICcuLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X2FsaWduZW1lbnRzJztcbi8qIC0gRm5jdCBEaXNwbGF5XG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cbkBpbXBvcnQgJy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY2FmZWZyYXBwZS9hcmFiaWNhL2xpYi9jc3MvZm9uY3Rpb25zL2ZuY3RfZGlzcGxheSc7XG4vKiAtIEZuY3QgT3JkcmVzXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cbkBpbXBvcnQgJy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY2FmZWZyYXBwZS9hcmFiaWNhL2xpYi9jc3MvZm9uY3Rpb25zL2ZuY3Rfb3JkcmVzJztcbi8qIC0gRm5jdCBEaXJlY3Rpb25zXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cbkBpbXBvcnQgJy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY2FmZWZyYXBwZS9hcmFiaWNhL2xpYi9jc3MvZm9uY3Rpb25zL2ZuY3RfZGlyZWN0aW9ucyc7XG4vKiAtIEZuY3QgVGFpbGxlc1xuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5AaW1wb3J0ICcuLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X3RhaWxsZXMnO1xuLyogLSBGbmN0IFRyYW5zaXRpb25zXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cbkBpbXBvcnQgJy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY2FmZWZyYXBwZS9hcmFiaWNhL2xpYi9jc3MvZm9uY3Rpb25zL2ZuY3RfdHJhbnNpdGlvbnMnO1xuLyogLSBGbmN0IEFuaW1hdGlvbnNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuQGltcG9ydCAnLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9hbmltYXRpb25zJztcbi8qIC0gRm5jdCBUcmFuc2Zvcm1zXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cbkBpbXBvcnQgJy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY2FmZWZyYXBwZS9hcmFiaWNhL2xpYi9jc3MvZm9uY3Rpb25zL2ZuY3RfdHJhbnNmb3Jtcyc7XG4vKiAtIEZuY3QgSW50ZXJhY3Rpb25zXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cbkBpbXBvcnQgJy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY2FmZWZyYXBwZS9hcmFiaWNhL2xpYi9jc3MvZm9uY3Rpb25zL2ZuY3RfaW50ZXJhY3Rpb25zJztcbi8qIC0gRm5jdCBPbWJyZXNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuQGltcG9ydCAnLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9vbWJyZXMnO1xuLyogLSBGbmN0IFJhZGl1c1xuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5AaW1wb3J0ICcuLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X3JhZGl1cyc7XG5cbi8qIC0gRm9udHNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuQGltcG9ydCAnLi4vbW9sZWN1bGVzL21vbF9mb250cyc7XG4vKiAtIEJ1dHRvbnNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuQGltcG9ydCAnLi4vbW9sZWN1bGVzL21vbF9idXR0b25zJzsiLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0gRm5jdCBEZWZhdWx0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLSBIZWxwZXJcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4kaGVscGVyTW9kZSA6IGZhbHNlICFkZWZhdWx0ICFnbG9iYWw7IC8vIFRydWUgLSBGYWxzZVxuXG4kaGVscGVyUGFkZGluZyA6IDJweCAhZGVmYXVsdCAhZ2xvYmFsO1xuJGhlbHBlckJvcmRlciA6IDJweCAhZGVmYXVsdCAhZ2xvYmFsO1xuJGhlbHBlckhlaWdodCA6IGF1dG8gIWRlZmF1bHQgIWdsb2JhbDtcblxuJGJveENvbG9yIDogcmVkICFkZWZhdWx0ICFnbG9iYWw7XG4kcm93Q29sb3IgOiBncmVlbiAhZGVmYXVsdCAhZ2xvYmFsO1xuJGNvbENvbG9yIDogYmx1ZSAhZGVmYXVsdCAhZ2xvYmFsO1xuXG4vKiAtIEZsdWlkIE1vZGVcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4kZmx1aWRNYXAgOiAoKSAhZGVmYXVsdCAhZ2xvYmFsO1xuXG4vKiAtIEJyZWFrcG9pbnRzIChjb2xvbm5lcywgdGFpbGxlIGRlcyBib3hlcyBldCBtb2RhbGVzKVxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbiRicmVha3BvaW50TWFwIDogKFxuICAvLyBjbGFzcz1cImNvbF94c1wiIC0gY2xhc3M9XCJib3hfeHNcIiAtIGNsYXNzPVwibW9kYWxlX3hzXCJcbiAgICAgICAgJ3hzJzogMDMyMHB4LFxuICAvLyBjbGFzcz1cImNvbF9zbVwiIC0gY2xhc3M9XCJib3hfc21cIiAtIGNsYXNzPVwibW9kYWxlX3NtXCJcbiAgICAgICAgJ3NtJzogMDU3NnB4LFxuICAvLyBjbGFzcz1cImNvbF9tZFwiIC0gY2xhc3M9XCJib3hfbWRcIiAtIGNsYXNzPVwibW9kYWxlX21kXCJcbiAgICAgICAgJ21kJzogMDc2OHB4LFxuICAvLyBjbGFzcz1cImNvbF9sZ1wiIC0gY2xhc3M9XCJib3hfbGdcIiAtIGNsYXNzPVwibW9kYWxlX2xnXCJcbiAgICAgICAgJ2xnJzogMTAyNHB4LFxuICAvLyBjbGFzcz1cImNvbF94bFwiIC0gY2xhc3M9XCJib3hfeGxcIiAtIGNsYXNzPVwibW9kYWxlX3hsXCJcbiAgICAgICAgJ3hsJzogMTI4MHB4LFxuICAvLyBjbGFzcz1cImNvbF9mdWxsXCIgLSBjbGFzcz1cImJveF9mdWxsXCIgLSBjbGFzcz1cIm1vZGFsZV9mdWxsXCJcbiAgICAgICAgJ2Z1bGwnOiAwMTAwJVxuKSAhZGVmYXVsdCAhZ2xvYmFsO1xuXG4vKiAtIE1hcmdlcyAoRW50cmUgbGVzIGxlcyBjb2xvbm5lcyA6IGNsYXNzPVwibWFyZ2VzXCIgc3VyIGxhIHJvdyBwYXJlbnRlKVxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbiRtYXJnZXMgOiAxMnB4ICFkZWZhdWx0ICFnbG9iYWw7XG4kbWFyZ2VzQnJlYWtwb2ludCA6ICdzbScgIWRlZmF1bHQgIWdsb2JhbDtcbiRtYXJnZXNNb2JpbGUgOiAkbWFyZ2VzIC8gMiAhZGVmYXVsdCAhZ2xvYmFsO1xuXG4vKiAtIE5vbWJyZSBkZSBjb2xvbm5lcyBkZSBsYSBncmlsbGVcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4kbm9tYnJlQ29sb25uZXMgOiAxMiAhZGVmYXVsdCAhZ2xvYmFsO1xuXG4vKiAtIE1vZGFsZXNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4kbW9kYWxlUGFkZGluZyA6IDMycHggIWRlZmF1bHQgIWdsb2JhbDtcbiRtb2RhbGVQYWRkaW5nQnJlYWtwb2ludCA6ICdzbScgIWRlZmF1bHQgIWdsb2JhbDtcbiRtb2RhbGVQYWRkaW5nTW9iaWxlIDogJG1vZGFsZVBhZGRpbmcgLyAyICFkZWZhdWx0ICFnbG9iYWw7XG4kbW9kYWxlQmFja2dyb3VuZENvbG9yIDogcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAhZGVmYXVsdCAhZ2xvYmFsO1xuJG92ZXJsYXlCYWNrZ3JvdW5kQ29sb3IgOiByZ2JhKDAsIDAsIDAsIDEpICFkZWZhdWx0ICFnbG9iYWw7XG4kb3ZlcmxheU9wYWNpdHkgOiAuNzUgIWRlZmF1bHQgIWdsb2JhbDtcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLSBGbmN0IE9ww6lyYXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLSBSw6ljdXDDqXJhdGlvbiBkJ3VuZSB2YWxldXIgc2FucyB1bml0w6lcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5AZnVuY3Rpb24gZ2V0X3ZhbHVlKCR2YWx1ZSkge1xuICBAcmV0dXJuICR2YWx1ZSAvICgkdmFsdWUgKiAwICsgMSk7XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0gRm5jdCBNw6lkaWFzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLSBNaW5pbXVtIGV0IG1heGltdW1cbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4vLyBNaW4gV2lkdGhcblxuQG1peGluIG1lZGlhX3hfbWluKCRicmVha3BvaW50KSB7XG5cdEBtZWRpYSAobWluLXdpZHRoIDogI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludCl9KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLy8gTWF4IFdpZHRoXG5cbkBtaXhpbiBtZWRpYV94X21heCgkYnJlYWtwb2ludCkge1xuXHRAbWVkaWEgKG1heC13aWR0aCA6IGNhbGMoI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludCl9IC0gMXB4KSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbi8vIEJldHdlZW4gV2lkdGhcblxuQG1peGluIG1lZGlhX3hfYmV0d2VlbigkYnJlYWtwb2ludE1pbiwgJGJyZWFrcG9pbnRNYXgpIHtcblx0QG1lZGlhIChtaW4td2lkdGggOiAje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50TWluKX0pIGFuZCAobWF4LXdpZHRoIDogY2FsYygje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50TWF4KX0gLSAxcHgpKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLy8gQXJvdW5kIFdpZHRoXG5cbkBtaXhpbiBtZWRpYV94X2Fyb3VuZCgkYnJlYWtwb2ludE1pbiwgJGJyZWFrcG9pbnRNYXgpIHtcblx0QG1lZGlhIChtYXgtd2lkdGggOiBjYWxjKCN7bWFwX2dldCgkYnJlYWtwb2ludE1hcCwgJGJyZWFrcG9pbnRNaW4pfSAtIDFweCkpIGFuZCAobWluLXdpZHRoIDogI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludE1heCl9KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLy8gTWluIEhlaWdodFxuXG5AbWl4aW4gbWVkaWFfeV9taW4oJGhhdXRldXIpIHtcblx0QG1lZGlhIChtaW4taGVpZ2h0IDogJGhhdXRldXIpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG4vLyBNYXggSGVpZ2h0XG5cbkBtaXhpbiBtZWRpYV95X21heCgkaGF1dGV1cikge1xuXHRAbWVkaWEgKG1heC1oZWlnaHQgOiAkaGF1dGV1cikge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbi8vIEJldHdlZW4gSGVpZ2h0XG5cbkBtaXhpbiBtZWRpYV95X2JldHdlZW4oJGhhdXRldXJNaW4sICRoYXV0ZXVyTWF4KSB7XG5cdEBtZWRpYSAobWluLWhlaWdodCA6ICRoYXV0ZXVyTWluKSBhbmQgKG1heC1oZWlnaHQgOiAkaGF1dGV1ck1heCkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbi8vIEFyb3VuZCBIZWlnaHRcblxuQG1peGluIG1lZGlhX3lfYXJvdW5kKCRoYXV0ZXVyTWluLCAkaGF1dGV1ck1heCkge1xuXHRAbWVkaWEgKG1heC1oZWlnaHQgOiAkaGF1dGV1ck1pbikgYW5kIChtaW4taGVpZ2h0IDogJGhhdXRldXJNYXgpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG4vKiAtIETDqXTDqWN0aW9uIGRlIGwnb3JpZW50YXRpb25cbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4vLyBQb3J0cmFpdFxuXG5AbWl4aW4gbWVkaWFfcG9ydHJhaXQge1xuXHRAbWVkaWEgKG9yaWVudGF0aW9uIDogcG9ydHJhaXQpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfcG9ydHJhaXRfeF9taW4oJGJyZWFrcG9pbnQpIHtcblx0QG1lZGlhIChvcmllbnRhdGlvbiA6IHBvcnRyYWl0KSBhbmQgKG1pbi13aWR0aCA6ICN7bWFwX2dldCgkYnJlYWtwb2ludE1hcCwgJGJyZWFrcG9pbnQpfSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV9wb3J0cmFpdF94X21heCgkYnJlYWtwb2ludCkge1xuXHRAbWVkaWEgKG9yaWVudGF0aW9uIDogcG9ydHJhaXQpIGFuZCAobWF4LXdpZHRoIDogY2FsYygje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50KX0gLSAxcHgpKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX3BvcnRyYWl0X3hfYmV0d2VlbigkYnJlYWtwb2ludE1pbiwgJGJyZWFrcG9pbnRNYXgpIHtcblx0QG1lZGlhIChvcmllbnRhdGlvbiA6IHBvcnRyYWl0KSBhbmQgKG1pbi13aWR0aCA6ICN7bWFwX2dldCgkYnJlYWtwb2ludE1hcCwgJGJyZWFrcG9pbnRNaW4pfSkgYW5kIChtYXgtd2lkdGggOiBjYWxjKCN7bWFwX2dldCgkYnJlYWtwb2ludE1hcCwgJGJyZWFrcG9pbnRNYXgpfSAtIDFweCkpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfcG9ydHJhaXRfeF9hcm91bmQoJGJyZWFrcG9pbnRNaW4sICRicmVha3BvaW50TWF4KSB7XG5cdEBtZWRpYSAob3JpZW50YXRpb24gOiBwb3J0cmFpdCkgYW5kIChtYXgtd2lkdGggOiBjYWxjKCN7bWFwX2dldCgkYnJlYWtwb2ludE1hcCwgJGJyZWFrcG9pbnRNaW4pfSAtIDFweCkpIGFuZCAobWluLXdpZHRoIDogI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludE1heCl9KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX3BvcnRyYWl0X3lfbWluKCRoYXV0ZXVyKSB7XG5cdEBtZWRpYSAob3JpZW50YXRpb24gOiBwb3J0cmFpdCkgYW5kIChtaW4taGVpZ2h0IDogJGhhdXRldXIpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfcG9ydHJhaXRfeV9tYXgoJGhhdXRldXIpIHtcblx0QG1lZGlhIChvcmllbnRhdGlvbiA6IHBvcnRyYWl0KSBhbmQgKG1heC1oZWlnaHQgOiAkaGF1dGV1cikge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV9wb3J0cmFpdF95X2JldHdlZW4oJGhhdXRldXJNaW4sICRoYXV0ZXVyTWF4KSB7XG5cdEBtZWRpYSAob3JpZW50YXRpb24gOiBwb3J0cmFpdCkgYW5kIChtaW4taGVpZ2h0IDogJGhhdXRldXJNaW4pIGFuZCAobWF4LWhlaWdodCA6ICRoYXV0ZXVyTWF4KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX3BvcnRyYWl0X3lfYXJvdW5kKCRoYXV0ZXVyTWluLCAkaGF1dGV1ck1heCkge1xuXHRAbWVkaWEgKG9yaWVudGF0aW9uIDogcG9ydHJhaXQpIGFuZCAobWF4LWhlaWdodCA6ICRoYXV0ZXVyTWluKSBhbmQgKG1pbi1oZWlnaHQgOiAkaGF1dGV1ck1heCkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbi8vIExhbmRzY2FwZVxuXG5AbWl4aW4gbWVkaWFfbGFuZHNjYXBlIHtcblx0QG1lZGlhIChvcmllbnRhdGlvbiA6IGxhbmRzY2FwZSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV9sYW5kc2NhcGVfeF9taW4oJGJyZWFrcG9pbnQpIHtcblx0QG1lZGlhIChvcmllbnRhdGlvbiA6IGxhbmRzY2FwZSkgYW5kIChtaW4td2lkdGggOiAje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50KX0pIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfbGFuZHNjYXBlX3hfbWF4KCRicmVha3BvaW50KSB7XG5cdEBtZWRpYSAob3JpZW50YXRpb24gOiBsYW5kc2NhcGUpIGFuZCAobWF4LXdpZHRoIDogY2FsYygje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50KX0gLSAxcHgpKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX2xhbmRzY2FwZV94X2JldHdlZW4oJGJyZWFrcG9pbnRNaW4sICRicmVha3BvaW50TWF4KSB7XG5cdEBtZWRpYSAob3JpZW50YXRpb24gOiBsYW5kc2NhcGUpIGFuZCAobWluLXdpZHRoIDogI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludE1pbil9KSBhbmQgKG1heC13aWR0aCA6IGNhbGMoI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludE1heCl9IC0gMXB4KSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYWxhbmRzY2FwZXRfeF9hcm91bmQoJGJyZWFrcG9pbnRNaW4sICRicmVha3BvaW50TWF4KSB7XG5cdEBtZWRpYSAob3JpZW50YXRpb24gOiBsYW5kc2NhcGUpIGFuZCAobWF4LXdpZHRoIDogY2FsYygje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50TWluKX0gLSAxcHgpKSBhbmQgKG1pbi13aWR0aCA6ICN7bWFwX2dldCgkYnJlYWtwb2ludE1hcCwgJGJyZWFrcG9pbnRNYXgpfSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV9sYW5kc2NhcGVfeV9taW4oJGhhdXRldXIpIHtcblx0QG1lZGlhIChvcmllbnRhdGlvbiA6IGxhbmRzY2FwZSkgYW5kIChtaW4taGVpZ2h0IDogJGhhdXRldXIpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfbGFuZHNjYXBlX3lfbWF4KCRoYXV0ZXVyKSB7XG5cdEBtZWRpYSAob3JpZW50YXRpb24gOiBsYW5kc2NhcGUpIGFuZCAobWF4LWhlaWdodCA6ICRoYXV0ZXVyKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX2xhbmRzY2FwZV95X2JldHdlZW4oJGhhdXRldXJNaW4sICRoYXV0ZXVyTWF4KSB7XG5cdEBtZWRpYSAob3JpZW50YXRpb24gOiBsYW5kc2NhcGUpIGFuZCAobWluLWhlaWdodCA6ICRoYXV0ZXVyTWluKSBhbmQgKG1heC1oZWlnaHQgOiAkaGF1dGV1ck1heCkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV9sYW5kc2NhcGVfeV9hcm91bmQoJGhhdXRldXJNaW4sICRoYXV0ZXVyTWF4KSB7XG5cdEBtZWRpYSAob3JpZW50YXRpb24gOiBsYW5kc2NhcGUpIGFuZCAobWF4LWhlaWdodCA6ICRoYXV0ZXVyTWluKSBhbmQgKG1pbi1oZWlnaHQgOiAkaGF1dGV1ck1heCkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbi8qIC0gVHlwZXMgZGUgZGV2aWNlc1xuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbi8vIFRvdWNoXG5cbkBtaXhpbiBtZWRpYV90b3VjaCB7XG5cdEBtZWRpYSAocG9pbnRlciA6IG5vbmUpLCAocG9pbnRlciA6IGNvYXJzZSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV90b3VjaF94X21pbigkYnJlYWtwb2ludCkge1xuXHRAbWVkaWEgKHBvaW50ZXIgOiBub25lKSwgKHBvaW50ZXIgOiBjb2Fyc2UpIGFuZCAobWluLXdpZHRoIDogI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludCl9KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX3RvdWNoX3hfbWF4KCRicmVha3BvaW50KSB7XG5cdEBtZWRpYSAocG9pbnRlciA6IG5vbmUpLCAocG9pbnRlciA6IGNvYXJzZSkgYW5kIChtYXgtd2lkdGggOiBjYWxjKCN7bWFwX2dldCgkYnJlYWtwb2ludE1hcCwgJGJyZWFrcG9pbnQpfSAtIDFweCkpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfdG91Y2hfeF9iZXR3ZWVuKCRicmVha3BvaW50TWluLCAkYnJlYWtwb2ludE1heCkge1xuXHRAbWVkaWEgKHBvaW50ZXIgOiBub25lKSwgKHBvaW50ZXIgOiBjb2Fyc2UpIGFuZCAobWluLXdpZHRoIDogI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludE1pbil9KSBhbmQgKG1heC13aWR0aCA6IGNhbGMoI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludE1heCl9IC0gMXB4KSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV90b3VjaF94X2Fyb3VuZCgkYnJlYWtwb2ludE1pbiwgJGJyZWFrcG9pbnRNYXgpIHtcblx0QG1lZGlhIChwb2ludGVyIDogbm9uZSksIChwb2ludGVyIDogY29hcnNlKSBhbmQgKG1heC13aWR0aCA6IGNhbGMoI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludE1pbil9IC0gMXB4KSkgYW5kIChtaW4td2lkdGggOiAje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50TWF4KX0pIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfdG91Y2hfeV9taW4oJGhhdXRldXIpIHtcblx0QG1lZGlhIChwb2ludGVyIDogbm9uZSksIChwb2ludGVyIDogY29hcnNlKSBhbmQgKG1pbi1oZWlnaHQgOiAkaGF1dGV1cikge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV90b3VjaF95X21heCgkaGF1dGV1cikge1xuXHRAbWVkaWEgKHBvaW50ZXIgOiBub25lKSwgKHBvaW50ZXIgOiBjb2Fyc2UpIGFuZCAobWF4LWhlaWdodCA6ICRoYXV0ZXVyKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX3RvdWNoX3lfYmV0d2VlbigkaGF1dGV1ck1pbiwgJGhhdXRldXJNYXgpIHtcblx0QG1lZGlhIChwb2ludGVyIDogbm9uZSksIChwb2ludGVyIDogY29hcnNlKSBhbmQgKG1pbi1oZWlnaHQgOiAkaGF1dGV1ck1pbikgYW5kIChtYXgtaGVpZ2h0IDogJGhhdXRldXJNYXgpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfdG91Y2hfeV9hcm91bmQoJGhhdXRldXJNaW4sICRoYXV0ZXVyTWF4KSB7XG5cdEBtZWRpYSAocG9pbnRlciA6IG5vbmUpLCAocG9pbnRlciA6IGNvYXJzZSkgYW5kIChtYXgtaGVpZ2h0IDogJGhhdXRldXJNaW4pIGFuZCAobWluLWhlaWdodCA6ICRoYXV0ZXVyTWF4KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLy8gUG9pbnRlclxuXG5AbWl4aW4gbWVkaWFfcG9pbnRlciB7XG5cdEBtZWRpYSAocG9pbnRlciA6IGZpbmUpLCAoLW1zLWhpZ2gtY29udHJhc3QgOiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3QgOiBub25lKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX3BvaW50ZXJfeF9taW4oJGJyZWFrcG9pbnQpIHtcblx0QG1lZGlhIChwb2ludGVyIDogZmluZSksICgtbXMtaGlnaC1jb250cmFzdCA6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdCA6IG5vbmUpIGFuZCAobWluLXdpZHRoIDogI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludCl9KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX3BvaW50ZXJfeF9tYXgoJGJyZWFrcG9pbnQpIHtcblx0QG1lZGlhIChwb2ludGVyIDogZmluZSksICgtbXMtaGlnaC1jb250cmFzdCA6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdCA6IG5vbmUpIGFuZCAobWF4LXdpZHRoIDogY2FsYygje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50KX0gLSAxcHgpKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX3BvaW50ZXJfeF9iZXR3ZWVuKCRicmVha3BvaW50TWluLCAkYnJlYWtwb2ludE1heCkge1xuXHRAbWVkaWEgKHBvaW50ZXIgOiBmaW5lKSwgKC1tcy1oaWdoLWNvbnRyYXN0IDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0IDogbm9uZSkgYW5kIChtaW4td2lkdGggOiAje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50TWluKX0pIGFuZCAobWF4LXdpZHRoIDogY2FsYygje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50TWF4KX0gLSAxcHgpKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX3BvaW50ZXJfeF9hcm91bmQoJGJyZWFrcG9pbnRNaW4sICRicmVha3BvaW50TWF4KSB7XG5cdEBtZWRpYSAocG9pbnRlciA6IGZpbmUpLCAoLW1zLWhpZ2gtY29udHJhc3QgOiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3QgOiBub25lKSBhbmQgKG1heC13aWR0aCA6IGNhbGMoI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludE1pbil9IC0gMXB4KSkgYW5kIChtaW4td2lkdGggOiAje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50TWF4KX0pIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfcG9pbnRlcl95X21pbigkaGF1dGV1cikge1xuXHRAbWVkaWEgKHBvaW50ZXIgOiBmaW5lKSwgKC1tcy1oaWdoLWNvbnRyYXN0IDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0IDogbm9uZSkgYW5kIChtaW4taGVpZ2h0IDogJGhhdXRldXIpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfcG9pbnRlcl95X21heCgkaGF1dGV1cikge1xuXHRAbWVkaWEgKHBvaW50ZXIgOiBmaW5lKSwgKC1tcy1oaWdoLWNvbnRyYXN0IDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0IDogbm9uZSkgYW5kIChtYXgtaGVpZ2h0IDogJGhhdXRldXIpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfcG9pbnRlcl95X2JldHdlZW4oJGhhdXRldXJNaW4sICRoYXV0ZXVyTWF4KSB7XG5cdEBtZWRpYSAocG9pbnRlciA6IGZpbmUpLCAoLW1zLWhpZ2gtY29udHJhc3QgOiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3QgOiBub25lKSBhbmQgKG1pbi1oZWlnaHQgOiAkaGF1dGV1ck1pbikgYW5kIChtYXgtaGVpZ2h0IDogJGhhdXRldXJNYXgpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfcG9pbnRlcl95X2Fyb3VuZCgkaGF1dGV1ck1pbiwgJGhhdXRldXJNYXgpIHtcblx0QG1lZGlhIChwb2ludGVyIDogZmluZSksICgtbXMtaGlnaC1jb250cmFzdCA6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdCA6IG5vbmUpIGFuZCAobWF4LWhlaWdodCA6ICRoYXV0ZXVyTWluKSBhbmQgKG1pbi1oZWlnaHQgOiAkaGF1dGV1ck1heCkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbi8vIFByaW50XG5cbkBtaXhpbiBtZWRpYV9wcmludCB7XG5cdEBtZWRpYSBwcmludCB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLSBGbmN0IEZsdWlkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQG1peGluIGZsdWlkKCRmbHVpZE1hcCkge1xuXG5cdC8qIC0gVmFyaWFibGVzXG5cdC4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuXHQkdGFpbGxlRWNyYW5DdXJyZW50IDogMTAwdnc7XG5cdCR0YWlsbGVFY3Jhbk1heCA6IG1hcF9nZXQoJGJyZWFrcG9pbnRNYXAsIG50aChudGgoJGJyZWFrcG9pbnRNYXAsIGxlbmd0aCgkYnJlYWtwb2ludE1hcCktMSksIDEpKTtcblx0JHRhaWxsZUVjcmFuTWluIDogbWFwX2dldCgkYnJlYWtwb2ludE1hcCwgbnRoKG50aCgkYnJlYWtwb2ludE1hcCwgMSksIDEpKTtcblx0JGRpZmZFY3JhbkN1cnJlbnRNaW4gOiBjYWxjKCN7JHRhaWxsZUVjcmFuQ3VycmVudH0gLSAjeyR0YWlsbGVFY3Jhbk1pbn0pO1xuXHQkZGlmZkVjcmFuTWF4TWluIDogZ2V0X3ZhbHVlKCR0YWlsbGVFY3Jhbk1heCkgLSBnZXRfdmFsdWUoJHRhaWxsZUVjcmFuTWluKTtcblxuXHQvKiAtIEfDqW7DqXJhdGlvbiBkZXMgdGFpbGxlcyBGbHVpZGVzXG5cdC4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuXHRAZWFjaCAkYmFsaXNlLCAkdmFsdWUgaW4gJGZsdWlkTWFwIHtcblxuXHRcdCN7JGJhbGlzZX0ge1xuXG5cdFx0XHRAZWFjaCAkZWxlbWVudCBpbiAkdmFsdWUge1xuXG5cdFx0XHRcdCRwcm9wcmlldGUgOiBudGgoJGVsZW1lbnQsIDEpO1xuXHRcdFx0XHQkbWluIDogbnRoKG50aCgkZWxlbWVudCwgMiksIDEpO1xuXG5cdFx0XHRcdEBpZiBsZW5ndGgobnRoKCRlbGVtZW50LCAyKSkgPiAxIHtcblxuXHRcdFx0XHRcdCRtYXggOiBudGgobnRoKCRlbGVtZW50LCAyKSwgMik7XG5cdFx0XHRcdFx0JG1heE1vaW5zTWluIDogZ2V0X3ZhbHVlKCRtYXgpIC0gZ2V0X3ZhbHVlKCRtaW4pO1xuXG5cdFx0XHRcdFx0QGluY2x1ZGUgbWVkaWFfeF9tYXgobnRoKG50aCgkYnJlYWtwb2ludE1hcCwgMSksIDEpKSB7XG5cblx0XHRcdFx0XHRcdCN7JHByb3ByaWV0ZX0gOiAkbWluO1xuXG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0QGluY2x1ZGUgbWVkaWFfeF9taW4obnRoKG50aCgkYnJlYWtwb2ludE1hcCwgMSksIDEpKSB7XG5cblx0XHRcdFx0XHRcdCN7JHByb3ByaWV0ZX0gOiBjYWxjKCN7JG1pbn0gKyAoI3skbWF4TW9pbnNNaW59KSAqICgjeyR0YWlsbGVFY3JhbkN1cnJlbnR9IC0gI3skdGFpbGxlRWNyYW5NaW59KSAvICgje2dldF92YWx1ZSgkdGFpbGxlRWNyYW5NYXgpfSAtICN7Z2V0X3ZhbHVlKCR0YWlsbGVFY3Jhbk1pbil9KSk7XG5cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBtZWRpYV94X21pbihudGgobnRoKCRicmVha3BvaW50TWFwLCBsZW5ndGgoJGJyZWFrcG9pbnRNYXApLTEpLCAxKSkge1xuXG5cdFx0XHRcdFx0XHQjeyRwcm9wcmlldGV9IDogJG1heDtcblxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHR9IEBlbHNlIHtcblxuXHRcdFx0XHRcdCN7JHByb3ByaWV0ZX0gOiAkbWluO1xuXG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuQGluY2x1ZGUgZmx1aWQoJGZsdWlkTWFwKTsiLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0gRm5jdCBGb3Jtc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0gUGxhY2Vob2xkZXJcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5AbWl4aW4gaW5wdXRfcGxhY2Vob2xkZXIge1xuXHQmOjpwbGFjZWhvbGRlciB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cblxuXHQmOjotbW96LXBsYWNlaG9sZGVyIHtcblx0XHRAY29udGVudDtcblx0fVxuXG5cdCY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuXHRcdEBjb250ZW50O1xuXHR9XG5cblx0JjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuXHRcdEBjb250ZW50O1xuXHR9XG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tIEZuY3QgR3JpbGxlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLSBCb3hzXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuLy8gQ29tcG9ydGVtZW50IGRlcyBib3hzIHBhciBkw6lmYXV0XG5cbiVib3gge1xuICBtYXJnaW4tcmlnaHQgOiBhdXRvO1xuICBtYXJnaW4tbGVmdCAgOiBhdXRvO1xufVxuXG4vLyBDb21wb3J0ZW1lbnQgZGVzIGJveHMgYXZlYyBkZXMgbWFyZ2VzXG5cbkBtaXhpbiBtYXJnZXMoJGJveFdpZHRoKSB7XG4gICYubWFyZ2VzIHtcbiAgICBAaWYgJGJveFdpZHRoICE9IG1hcF9nZXQoJGJyZWFrcG9pbnRNYXAsIGZ1bGwpIHtcbiAgICAgIG1heC13aWR0aCAgICAgOiAkYm94V2lkdGggKyAoJG1hcmdlcyAqIDQpO1xuICAgICAgcGFkZGluZy1yaWdodCA6ICRtYXJnZXMgKiAyO1xuICAgICAgcGFkZGluZy1sZWZ0ICA6ICRtYXJnZXMgKiAyO1xuICAgICAgQGluY2x1ZGUgbWVkaWFfeF9tYXgoJG1hcmdlc0JyZWFrcG9pbnQpIHtcbiAgICAgICAgbWF4LXdpZHRoICAgICA6ICRib3hXaWR0aCArICgkbWFyZ2VzTW9iaWxlICogNCk7XG4gICAgICAgIHBhZGRpbmctcmlnaHQgOiAkbWFyZ2VzTW9iaWxlICogMjtcbiAgICAgICAgcGFkZGluZy1sZWZ0ICA6ICRtYXJnZXNNb2JpbGUgKiAyO1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgcGFkZGluZy1yaWdodCA6ICRtYXJnZXMgKiAyO1xuICAgICAgcGFkZGluZy1sZWZ0ICA6ICRtYXJnZXMgKiAyO1xuICAgIH1cbiAgfVxufVxuXG5AZWFjaCAkYm94LCAkYm94U2l6ZSBpbiAkYnJlYWtwb2ludE1hcCB7XG4gIC5ib3hfI3skYm94fSB7XG4gICAgQGV4dGVuZCAlYm94O1xuICAgIEBpbmNsdWRlIG1hcmdlcygkYm94V2lkdGggOiAkYm94U2l6ZSk7XG4gICAgbWF4LXdpZHRoIDogJGJveFNpemU7XG4gIH1cbn1cblxuLyogLSBSb3dzXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuLy8gQ29tcG9ydGVtZW50IGRlcyByb3dzIHBhciBkw6lmYXV0XG5cbkBtaXhpbiByb3cge1xuICBkaXNwbGF5ICAgICAgICAgICAgICAgIDogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXkgICAgICAgICAgICAgICAgOiAtbW96LWJveDtcbiAgZGlzcGxheSAgICAgICAgICAgICAgICA6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5ICAgICAgICAgICAgICAgIDogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5ICAgICAgICAgICAgICAgIDogZmxleDtcbiAgZmxleC13cmFwICAgICAgICAgICAgICA6IHdyYXA7XG4gIC13ZWJraXQtZmxleC13cmFwICAgICAgOiB3cmFwO1xuICAtbXMtZmxleC13cmFwICAgICAgICAgIDogd3JhcDtcbiAgZmxleC1ncm93ICAgICAgICAgICAgICA6IDE7XG4gIC13ZWJraXQtZmxleC1ncm93ICAgICAgOiAxO1xuICAtbXMtZmxleC1wb3NpdGl2ZSAgICAgIDogMTtcbiAgLXdlYmtpdC1ib3gtb3JpZW50ICAgICA6IGhvcml6b250YWw7XG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbiAgOiBub3JtYWw7XG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb24gOiByb3c7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbiAgICAgOiByb3c7XG4gIGZsZXgtZGlyZWN0aW9uICAgICAgICAgOiByb3c7XG5cbiAgLy8gQ29tcG9ydGVtZW50IGRlcyByb3dzIGF2ZWMgZGVzIG1hcmdlc1xuXG4gICYubWFyZ2VzIHtcbiAgICBtYXJnaW4tcmlnaHQgOiAtJG1hcmdlcztcbiAgICBtYXJnaW4tbGVmdCAgOiAtJG1hcmdlcztcbiAgICA+IFtjbGFzcyo9XCJjb2xcIl0ge1xuICAgICAgcGFkZGluZy1yaWdodCA6ICRtYXJnZXM7XG4gICAgICBwYWRkaW5nLWxlZnQgIDogJG1hcmdlcztcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWFfeF9tYXgoJG1hcmdlc0JyZWFrcG9pbnQpIHtcbiAgICAgIG1hcmdpbi1yaWdodCA6IC0kbWFyZ2VzTW9iaWxlO1xuICAgICAgbWFyZ2luLWxlZnQgIDogLSRtYXJnZXNNb2JpbGU7XG4gICAgICA+IFtjbGFzcyo9XCJjb2xcIl0ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0IDogJG1hcmdlc01vYmlsZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0ICA6ICRtYXJnZXNNb2JpbGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ29tcG9ydGVtZW50IGRlcyByb3dzIE5vIFdyYXBcblxuICAmLm5vX3dyYXAge1xuICAgIGZsZXgtd3JhcCAgICAgICAgIDogbm93cmFwO1xuICAgIC13ZWJraXQtZmxleC13cmFwIDogbm93cmFwO1xuICAgIC1tcy1mbGV4LXdyYXAgICAgIDogbm93cmFwO1xuICB9XG59XG5cbi5yb3cge1xuICBAaW5jbHVkZSByb3c7XG59XG5cbi8qIC0gQ29sb25uZXNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4vLyBDb21wb3J0ZW1lbnQgZGVzIGNvbG9ubmVzIHBhciBkw6lmYXV0IChyw6lwYXJ0aXRpb24gw6lxdWl0YWJsZSlcblxuQG1peGluIGNvbCB7XG4gIC8vIEdyb3dcbiAgZmxleC1ncm93ICAgICAgICAgICAgICAgOiAxO1xuICAtd2Via2l0LWZsZXgtZ3JvdyAgICAgICA6IDE7XG4gIC1tcy1mbGV4LXBvc2l0aXZlICAgICAgIDogMTtcbiAgLy8gU2hyaW5rXG4gIGZsZXgtc2hyaW5rICAgICAgICAgICAgIDogMTtcbiAgLXdlYmtpdC1mbGV4LXNocmluayAgICAgOiAxO1xuICAvLyBCYXNpc1xuICBmbGV4LWJhc2lzICAgICAgICAgICAgICA6IDA7XG4gIC13ZWJraXQtZmxleC1iYXNpcyAgICAgIDogMDtcbiAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemUgOiAwO1xuICAvLyBTaXplXG4gIG1heC13aWR0aCAgICAgICAgICAgICAgIDogMTAwJTtcbn1cblxuW2NsYXNzXj1cImNvbFwiXSB7XG4gIEBpbmNsdWRlIGNvbDtcbn1cblxuLy8gQ29tcG9ydGVtZW50IGRlcyBjb2xvbm5lcyBlbiBsYXJnZXVyIGJhc8OpZSBzdXIgbGUgY29udGVudVxuXG5AbWl4aW4gY29sX2NvbnRlbnQge1xuICAvLyBHcm93XG4gIGZsZXgtZ3JvdyAgICAgICAgICAgICAgIDogMDtcbiAgLXdlYmtpdC1mbGV4LWdyb3cgICAgICAgOiAwO1xuICAtbXMtZmxleC1wb3NpdGl2ZSAgICAgICA6IDA7XG4gIC8vIFNocmlua1xuICBmbGV4LXNocmluayAgICAgICAgICAgICA6IDA7XG4gIC13ZWJraXQtZmxleC1zaHJpbmsgICAgIDogMDtcbiAgLy8gQmFzaXNcbiAgZmxleC1iYXNpcyAgICAgICAgICAgICAgOiBhdXRvO1xuICAtd2Via2l0LWZsZXgtYmFzaXMgICAgICA6IGF1dG87XG4gIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplIDogYXV0bztcbn1cblxuLmNvbF9jb250ZW50IHtcbiAgQGluY2x1ZGUgY29sX2NvbnRlbnQ7XG59XG5cbi8vIENvbXBvcnRlbWVudCBkZXMgY29sb25uZXMgZW4gbGFyZ2V1ciBmbHVpZGUgZXQgYmFzw6llIHN1ciBsZSBjb250ZW51XG5cbkBtaXhpbiBjb2xfYXV0byB7XG4gIC8vIEdyb3dcbiAgZmxleC1ncm93ICAgICAgICAgICAgICAgOiAxO1xuICAtd2Via2l0LWZsZXgtZ3JvdyAgICAgICA6IDE7XG4gIC1tcy1mbGV4LXBvc2l0aXZlICAgICAgIDogMTtcbiAgLy8gU2hyaW5rXG4gIGZsZXgtc2hyaW5rICAgICAgICAgICAgIDogMDtcbiAgLXdlYmtpdC1mbGV4LXNocmluayAgICAgOiAwO1xuICAvLyBCYXNpc1xuICBmbGV4LWJhc2lzICAgICAgICAgICAgICA6IGF1dG87XG4gIC13ZWJraXQtZmxleC1iYXNpcyAgICAgIDogYXV0bztcbiAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemUgOiBhdXRvO1xufVxuXG4uY29sX2F1dG8ge1xuICBAaW5jbHVkZSBjb2xfYXV0bztcbn1cblxuLy8gQ29tcG9ydGVtZW50IGRlcyBjb2xvbm5lcyBlbiBsYXJnZXVyIGTDqWZpbmllXG5cbkBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJG5vbWJyZUNvbG9ubmVzIHtcblxuICAvLyBDYWxjdWwgZGUgbGEgbGFyZ2V1ciBkJ3VuZSBjb2xvbm5lXG5cbiAgLmNvbF8jeyRpfSB7XG4gICAgLy8gR3Jvd1xuICAgIGZsZXgtZ3JvdyAgICAgICAgICAgICAgIDogMDtcbiAgICAtd2Via2l0LWZsZXgtZ3JvdyAgICAgICA6IDA7XG4gICAgLW1zLWZsZXgtcG9zaXRpdmUgICAgICAgOiAwO1xuICAgIC8vIFNocmlua1xuICAgIGZsZXgtc2hyaW5rICAgICAgICAgICAgIDogMDtcbiAgICAtd2Via2l0LWZsZXgtc2hyaW5rICAgICA6IDA7XG4gICAgLy8gQmFzaXNcbiAgICBmbGV4LWJhc2lzICAgICAgICAgICAgICA6IHBlcmNlbnRhZ2UoMSAvICRub21icmVDb2xvbm5lcyAqICRpKTtcbiAgICAtd2Via2l0LWZsZXgtYmFzaXMgICAgICA6IHBlcmNlbnRhZ2UoMSAvICRub21icmVDb2xvbm5lcyAqICRpKTtcbiAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZSA6IHBlcmNlbnRhZ2UoMSAvICRub21icmVDb2xvbm5lcyAqICRpKTtcbiAgICAvLyBXaWR0aFxuICAgIG1heC13aWR0aCAgICAgICAgICAgICAgIDogcGVyY2VudGFnZSgxIC8gJG5vbWJyZUNvbG9ubmVzICogJGkpO1xuICB9XG5cbiAgLy8gU2kgdW5lIGNvbG9ubmUgw6AgcG91ciB2YWxldXIgJzAnIGVuIGxhcmdldXIsIG9uIG5lIGwnYWZmaWNoZSBwYXNcblxuICBAaWYgJGkgPT0gMCB7XG4gICAgLmNvbF8jeyRpfSwgLmNvbF9vZmZzZXRfI3skaX0ge1xuICAgICAgZGlzcGxheSA6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbXBvcnRlbWVudCBkZXMgY29sb25uZXMgZW4gcmVzcG9uc2l2ZSBwYXIgYnJlYWtwb2ludFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludE1hcCkge1xuXG4gIC8vIFBvdXIgY2hhcXVlIGJyZWFrcG9pbnQsIGfDqW7DqXJhdGlvbiBkJ3VuZSBsYXJnZXVyIGTDqXRlcm1pbsOpZVxuICBAaWYgJGJyZWFrcG9pbnQgIT0gZnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWFfeF9taW4oJGJyZWFrcG9pbnQpIHtcbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJG5vbWJyZUNvbG9ubmVzIHtcbiAgICAgICAgLmNvbF8jeyRicmVha3BvaW50fV8jeyRpfSB7XG4gICAgICAgICAgLy8gR3Jvd1xuICAgICAgICAgIGZsZXgtZ3JvdyAgICAgICAgICAgICAgIDogMDtcbiAgICAgICAgICAtd2Via2l0LWZsZXgtZ3JvdyAgICAgICA6IDA7XG4gICAgICAgICAgLW1zLWZsZXgtcG9zaXRpdmUgICAgICAgOiAwO1xuICAgICAgICAgIC8vIFNocmlua1xuICAgICAgICAgIGZsZXgtc2hyaW5rICAgICAgICAgICAgIDogMDtcbiAgICAgICAgICAtd2Via2l0LWZsZXgtc2hyaW5rICAgICA6IDA7XG4gICAgICAgICAgLy8gQmFzaXNcbiAgICAgICAgICBmbGV4LWJhc2lzICAgICAgICAgICAgICA6IHBlcmNlbnRhZ2UoMSAvICRub21icmVDb2xvbm5lcyAqICRpKTtcbiAgICAgICAgICAtd2Via2l0LWZsZXgtYmFzaXMgICAgICA6IHBlcmNlbnRhZ2UoMSAvICRub21icmVDb2xvbm5lcyAqICRpKTtcbiAgICAgICAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZSA6IHBlcmNlbnRhZ2UoMSAvICRub21icmVDb2xvbm5lcyAqICRpKTtcbiAgICAgICAgICAvLyBXaWR0aFxuICAgICAgICAgIG1heC13aWR0aCAgICAgICAgICAgICAgIDogcGVyY2VudGFnZSgxIC8gJG5vbWJyZUNvbG9ubmVzICogJGkpO1xuICAgICAgICAgIC8vIERpc3BsYXlcbiAgICAgICAgICBkaXNwbGF5ICAgICAgICAgICAgICAgICA6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvbF8jeyRicmVha3BvaW50fSB7XG4gICAgICAgIC8vIEdyb3dcbiAgICAgICAgZmxleC1ncm93ICAgICAgICAgICAgICAgOiAxO1xuICAgICAgICAtd2Via2l0LWZsZXgtZ3JvdyAgICAgICA6IDE7XG4gICAgICAgIC1tcy1mbGV4LXBvc2l0aXZlICAgICAgIDogMTtcbiAgICAgICAgLy8gU2hyaW5rXG4gICAgICAgIGZsZXgtc2hyaW5rICAgICAgICAgICAgIDogMTtcbiAgICAgICAgLXdlYmtpdC1mbGV4LXNocmluayAgICAgOiAxO1xuICAgICAgICAvLyBCYXNpc1xuICAgICAgICBmbGV4LWJhc2lzICAgICAgICAgICAgICA6IDA7XG4gICAgICAgIC13ZWJraXQtZmxleC1iYXNpcyAgICAgIDogMDtcbiAgICAgICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemUgOiAwO1xuICAgICAgfVxuICAgICAgLmNvbF9jb250ZW50XyN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgLy8gR3Jvd1xuICAgICAgICBmbGV4LWdyb3cgICAgICAgICAgICAgICA6IDA7XG4gICAgICAgIC13ZWJraXQtZmxleC1ncm93ICAgICAgIDogMDtcbiAgICAgICAgLW1zLWZsZXgtcG9zaXRpdmUgICAgICAgOiAwO1xuICAgICAgICAvLyBTaHJpbmtcbiAgICAgICAgZmxleC1zaHJpbmsgICAgICAgICAgICAgOiAwO1xuICAgICAgICAtd2Via2l0LWZsZXgtc2hyaW5rICAgICA6IDA7XG4gICAgICAgIC8vIEJhc2lzXG4gICAgICAgIGZsZXgtYmFzaXMgICAgICAgICAgICAgIDogYXV0bztcbiAgICAgICAgLXdlYmtpdC1mbGV4LWJhc2lzICAgICAgOiBhdXRvO1xuICAgICAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZSA6IGF1dG87XG4gICAgICB9XG4gICAgICAuY29sX2F1dG9fI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAvLyBHcm93XG4gICAgICAgIGZsZXgtZ3JvdyAgICAgICAgICAgICAgIDogMTtcbiAgICAgICAgLXdlYmtpdC1mbGV4LWdyb3cgICAgICAgOiAxO1xuICAgICAgICAtbXMtZmxleC1wb3NpdGl2ZSAgICAgICA6IDE7XG4gICAgICAgIC8vIFNocmlua1xuICAgICAgICBmbGV4LXNocmluayAgICAgICAgICAgICA6IDA7XG4gICAgICAgIC13ZWJraXQtZmxleC1zaHJpbmsgICAgIDogMDtcbiAgICAgICAgLy8gQmFzaXNcbiAgICAgICAgZmxleC1iYXNpcyAgICAgICAgICAgICAgOiBhdXRvO1xuICAgICAgICAtd2Via2l0LWZsZXgtYmFzaXMgICAgICA6IGF1dG87XG4gICAgICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplIDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQ29tcG9ydGVtZW50IGRlcyBjb2xvbm5lcyBvZmZzZXQgZW4gbGFyZ2V1ciBkw6lmaW5pZVxuXG5AZm9yICRpIGZyb20gMCB0aHJvdWdoICRub21icmVDb2xvbm5lcyB7XG5cbiAgLy8gVXRpbGlzYXRpb24gZCd1bmUgbWFyZ2Ugw6AgZ2F1Y2hlIHBvdXIgZMOpZmluaXIgdW4gb2Zmc2V0XG5cbiAgLmNvbF9vZmZzZXRfI3skaX0ge1xuICAgIG1hcmdpbi1sZWZ0IDogcGVyY2VudGFnZSgxIC8gJG5vbWJyZUNvbG9ubmVzICogJGkpO1xuICB9XG59XG5cbi8vIENvbXBvcnRlbWVudCBkZXMgY29sb25uZXMgb2Zmc2V0IGVuIHJlc3BvbnNpdmUgcGFyIGJyZWFrcG9pbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRNYXApIHtcblxuICAvLyBQb3VyIGNoYXF1ZSBicmVha3BvaW50LCBnw6luw6lyYXRpb24gZCd1bmUgbWFyZ2Ugw6AgZ2F1Y2hlIGTDqXRlcm1pbsOpZVxuICBAaWYgJGJyZWFrcG9pbnQgIT0gZnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWFfeF9taW4oJGJyZWFrcG9pbnQpIHtcbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJG5vbWJyZUNvbG9ubmVzIHtcbiAgICAgICAgLmNvbF9vZmZzZXRfI3skYnJlYWtwb2ludH1fI3skaX0ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0IDogcGVyY2VudGFnZSgxIC8gJG5vbWJyZUNvbG9ubmVzICogJGkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0gRm5jdCBJbnTDqXJhY3Rpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLSBBaWRlIMOgIGwnaW50w6lncmF0aW9uXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuJWJveEhlbHBlciB7XG5cdGJvcmRlciAgOiAkaGVscGVyQm9yZGVyIHNvbGlkICRib3hDb2xvcjtcblx0cGFkZGluZyA6ICRoZWxwZXJQYWRkaW5nO1xufVxuXG4lcm93SGVscGVyIHtcblx0Ym9yZGVyICA6ICRoZWxwZXJCb3JkZXIgc29saWQgJHJvd0NvbG9yO1xuXHRwYWRkaW5nIDogJGhlbHBlclBhZGRpbmc7XG5cdCsgLnJvdywgKyBbY2xhc3MqPVwiYm94XCJdIHtcblx0XHRtYXJnaW4tdG9wIDogJGhlbHBlclBhZGRpbmc7XG5cdH1cbn1cblxuJWNvbEhlbHBlciB7XG5cdGJvcmRlciAgICAgOiAkaGVscGVyQm9yZGVyIHNvbGlkICRjb2xDb2xvcjtcblx0bWluLWhlaWdodCA6ICRoZWxwZXJIZWlnaHQ7XG5cdHBhZGRpbmcgICAgOiAkaGVscGVyUGFkZGluZztcbn1cblxuQGlmICRoZWxwZXJNb2RlIHtcblxuXHRbY2xhc3MqPVwiYm94XCJdIHtcblx0XHRAZXh0ZW5kICVib3hIZWxwZXI7XG5cdH1cblxuXHQucm93IHtcblx0XHRAZXh0ZW5kICVyb3dIZWxwZXI7XG5cdH1cblxuXHRbY2xhc3MqPVwiY29sXCJdIHtcblx0XHRAZXh0ZW5kICVjb2xIZWxwZXI7XG5cdH1cblxufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLSBGbmN0IEFsaWduZW1lbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLSBQbGFjZWhvbGRlciBGbGV4XG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuQG1peGluIGRfZmxleCB7XG5cdGRpc3BsYXkgOiAtd2Via2l0LWJveDtcblx0ZGlzcGxheSA6IC1tb3otYm94O1xuXHRkaXNwbGF5IDogLW1zLWZsZXhib3g7XG5cdGRpc3BsYXkgOiAtd2Via2l0LWZsZXg7XG5cdGRpc3BsYXkgOiBmbGV4O1xufVxuXG4vKiAtIEFsaWduZW1lbnRzIGFic29sdXRlc1xuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbi8vIEFsaWduZW1lbnQgaG9yaXpvbnRhbCBhYnNvbHV0ZVxuXG5AbWl4aW4geF9hbGlnbl9hYnNvbHV0ZSB7XG5cdHBvc2l0aW9uICAgICAgICAgIDogYWJzb2x1dGU7XG5cdGxlZnQgICAgICAgICAgICAgIDogNTAlO1xuXHQtd2Via2l0LXRyYW5zZm9ybSA6IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdC1tb3otdHJhbnNmb3JtICAgIDogdHJhbnNsYXRlWCgtNTAlKTtcblx0LW1zLXRyYW5zZm9ybSAgICAgOiB0cmFuc2xhdGVYKC01MCUpO1xuXHQtby10cmFuc2Zvcm0gICAgICA6IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdHRyYW5zZm9ybSAgICAgICAgIDogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLnhfYWxpZ25fYWJzb2x1dGUge1xuXHRAaW5jbHVkZSB4X2FsaWduX2Fic29sdXRlO1xufVxuXG4vLyBBbGlnbmVtZW50IHZlcnRpY2FsIGFic29sdXRlXG5cbkBtaXhpbiB5X2FsaWduX2Fic29sdXRlIHtcblx0cG9zaXRpb24gICAgICAgICAgOiBhYnNvbHV0ZTtcblx0dG9wICAgICAgICAgICAgICAgOiA1MCU7XG5cdC13ZWJraXQtdHJhbnNmb3JtIDogdHJhbnNsYXRlWSgtNTAlKTtcblx0LW1vei10cmFuc2Zvcm0gICAgOiB0cmFuc2xhdGVZKC01MCUpO1xuXHQtbXMtdHJhbnNmb3JtICAgICA6IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdC1vLXRyYW5zZm9ybSAgICAgIDogdHJhbnNsYXRlWSgtNTAlKTtcblx0dHJhbnNmb3JtICAgICAgICAgOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4ueV9hbGlnbl9hYnNvbHV0ZSB7XG5cdEBpbmNsdWRlIHlfYWxpZ25fYWJzb2x1dGU7XG59XG5cbi8vIEFsaWduZW1lbnQgY2VudHJhbCBhYnNvbHV0ZVxuXG5AbWl4aW4gY2VudGVyX2FsaWduX2Fic29sdXRlIHtcblx0cG9zaXRpb24gICAgICAgICAgOiBhYnNvbHV0ZTtcblx0dG9wICAgICAgICAgICAgICAgOiA1MCU7XG5cdGxlZnQgICAgICAgICAgICAgIDogNTAlO1xuXHQtd2Via2l0LXRyYW5zZm9ybSA6IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcblx0LW1vei10cmFuc2Zvcm0gICAgOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG5cdC1tcy10cmFuc2Zvcm0gICAgIDogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuXHQtby10cmFuc2Zvcm0gICAgICA6IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcblx0dHJhbnNmb3JtICAgICAgICAgOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi5jZW50ZXJfYWxpZ25fYWJzb2x1dGUge1xuXHRAaW5jbHVkZSBjZW50ZXJfYWxpZ25fYWJzb2x1dGU7XG59XG5cbi8vIEFsaWduZW1lbnQgcmVzZXQgYWJzb2x1dGVcblxuQG1peGluIHJlc2V0X2FsaWduX2Fic29sdXRlIHtcblx0cG9zaXRpb24gICAgICAgICAgOiBhYnNvbHV0ZTtcblx0Ly90b3AgICAgICAgICAgICAgICA6IGF1dG87XG5cdC8vbGVmdCAgICAgICAgICAgICAgOiBhdXRvO1xuXHQtd2Via2l0LXRyYW5zZm9ybSA6IHRyYW5zbGF0ZVkoMCkgdHJhbnNsYXRlWCgwKTtcblx0LW1vei10cmFuc2Zvcm0gICAgOiB0cmFuc2xhdGVZKDApIHRyYW5zbGF0ZVgoMCk7XG5cdC1tcy10cmFuc2Zvcm0gICAgIDogdHJhbnNsYXRlWSgwKSB0cmFuc2xhdGVYKDApO1xuXHQtby10cmFuc2Zvcm0gICAgICA6IHRyYW5zbGF0ZVkoMCkgdHJhbnNsYXRlWCgwKTtcblx0dHJhbnNmb3JtICAgICAgICAgOiB0cmFuc2xhdGVZKDApIHRyYW5zbGF0ZVgoMCk7XG59XG5cbi5yZXNldF9hbGlnbl9hYnNvbHV0ZSB7XG5cdEBpbmNsdWRlIHJlc2V0X2FsaWduX2Fic29sdXRlO1xufVxuXG4vKiAtIEFsaWduZW1lbnRzIGZpeGVzXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuLy8gQWxpZ25lbWVudCBob3Jpem9udGFsIGZpeGVcblxuQG1peGluIHhfYWxpZ25fZml4ZWQge1xuXHRwb3NpdGlvbiAgICAgICAgICA6IGZpeGVkO1xuXHRsZWZ0ICAgICAgICAgICAgICA6IDUwJTtcblx0LXdlYmtpdC10cmFuc2Zvcm0gOiB0cmFuc2xhdGVYKC01MCUpO1xuXHQtbW96LXRyYW5zZm9ybSAgICA6IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdC1tcy10cmFuc2Zvcm0gICAgIDogdHJhbnNsYXRlWCgtNTAlKTtcblx0LW8tdHJhbnNmb3JtICAgICAgOiB0cmFuc2xhdGVYKC01MCUpO1xuXHR0cmFuc2Zvcm0gICAgICAgICA6IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi54X2FsaWduX2ZpeGVkIHtcblx0QGluY2x1ZGUgeF9hbGlnbl9maXhlZDtcbn1cblxuLy8gQWxpZ25lbWVudCB2ZXJ0aWNhbCBmaXhlXG5cbkBtaXhpbiB5X2FsaWduX2ZpeGVkIHtcblx0cG9zaXRpb24gICAgICAgICAgOiBmaXhlZDtcblx0dG9wICAgICAgICAgICAgICAgOiA1MCU7XG5cdC13ZWJraXQtdHJhbnNmb3JtIDogdHJhbnNsYXRlWSgtNTAlKTtcblx0LW1vei10cmFuc2Zvcm0gICAgOiB0cmFuc2xhdGVZKC01MCUpO1xuXHQtbXMtdHJhbnNmb3JtICAgICA6IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdC1vLXRyYW5zZm9ybSAgICAgIDogdHJhbnNsYXRlWSgtNTAlKTtcblx0dHJhbnNmb3JtICAgICAgICAgOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4ueV9hbGlnbl9maXhlZCB7XG5cdEBpbmNsdWRlIHlfYWxpZ25fZml4ZWQ7XG59XG5cbi8vIEFsaWduZW1lbnQgY2VudHJhbCBmaXhlXG5cbkBtaXhpbiBjZW50ZXJfYWxpZ25fZml4ZWQge1xuXHRwb3NpdGlvbiAgICAgICAgICA6IGZpeGVkO1xuXHR0b3AgICAgICAgICAgICAgICA6IDUwJTtcblx0bGVmdCAgICAgICAgICAgICAgOiA1MCU7XG5cdC13ZWJraXQtdHJhbnNmb3JtIDogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuXHQtbW96LXRyYW5zZm9ybSAgICA6IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcblx0LW1zLXRyYW5zZm9ybSAgICAgOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG5cdC1vLXRyYW5zZm9ybSAgICAgIDogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuXHR0cmFuc2Zvcm0gICAgICAgICA6IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLmNlbnRlcl9hbGlnbl9maXhlZCB7XG5cdEBpbmNsdWRlIGNlbnRlcl9hbGlnbl9maXhlZDtcbn1cblxuLy8gQWxpZ25lbWVudCByZXNldCBmaXhlXG5cbkBtaXhpbiByZXNldF9hbGlnbl9maXhlZCB7XG5cdHBvc2l0aW9uICAgICAgICAgIDogZml4ZWQ7XG5cdHRvcCAgICAgICAgICAgICAgIDogMDtcblx0bGVmdCAgICAgICAgICAgICAgOiAwO1xuXHQtd2Via2l0LXRyYW5zZm9ybSA6IHRyYW5zbGF0ZVkoMCkgdHJhbnNsYXRlWCgwKTtcblx0LW1vei10cmFuc2Zvcm0gICAgOiB0cmFuc2xhdGVZKDApIHRyYW5zbGF0ZVgoMCk7XG5cdC1tcy10cmFuc2Zvcm0gICAgIDogdHJhbnNsYXRlWSgwKSB0cmFuc2xhdGVYKDApO1xuXHQtby10cmFuc2Zvcm0gICAgICA6IHRyYW5zbGF0ZVkoMCkgdHJhbnNsYXRlWCgwKTtcblx0dHJhbnNmb3JtICAgICAgICAgOiB0cmFuc2xhdGVZKDApIHRyYW5zbGF0ZVgoMCk7XG59XG5cbi5yZXNldF9hbGlnbl9maXhlZCB7XG5cdEBpbmNsdWRlIHJlc2V0X2FsaWduX2ZpeGVkO1xufVxuXG4vKiAtIEFsaWduZW1lbnRzIHJlbGF0aXZlXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuLy8gQWxpZ25lbWVudCBob3Jpem9udGFsIHJlbGF0aXZlXG5cbkBtaXhpbiB4X2FsaWduX3JlbGF0aXZlIHtcblx0cG9zaXRpb24gICAgICAgICAgOiByZWxhdGl2ZTtcblx0bGVmdCAgICAgICAgICAgICAgOiA1MCU7XG5cdC13ZWJraXQtdHJhbnNmb3JtIDogdHJhbnNsYXRlWCgtNTAlKTtcblx0LW1vei10cmFuc2Zvcm0gICAgOiB0cmFuc2xhdGVYKC01MCUpO1xuXHQtbXMtdHJhbnNmb3JtICAgICA6IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdC1vLXRyYW5zZm9ybSAgICAgIDogdHJhbnNsYXRlWCgtNTAlKTtcblx0dHJhbnNmb3JtICAgICAgICAgOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4ueF9hbGlnbl9yZWxhdGl2ZSB7XG5cdEBpbmNsdWRlIHhfYWxpZ25fcmVsYXRpdmU7XG59XG5cbi8vIEFsaWduZW1lbnQgdmVydGljYWwgcmVsYXRpdmVcblxuQG1peGluIHlfYWxpZ25fcmVsYXRpdmUge1xuXHRwb3NpdGlvbiAgICAgICAgICA6IHJlbGF0aXZlO1xuXHR0b3AgICAgICAgICAgICAgICA6IDUwJTtcblx0LXdlYmtpdC10cmFuc2Zvcm0gOiB0cmFuc2xhdGVZKC01MCUpO1xuXHQtbW96LXRyYW5zZm9ybSAgICA6IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdC1tcy10cmFuc2Zvcm0gICAgIDogdHJhbnNsYXRlWSgtNTAlKTtcblx0LW8tdHJhbnNmb3JtICAgICAgOiB0cmFuc2xhdGVZKC01MCUpO1xuXHR0cmFuc2Zvcm0gICAgICAgICA6IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi55X2FsaWduX3JlbGF0aXZlIHtcblx0QGluY2x1ZGUgeV9hbGlnbl9yZWxhdGl2ZTtcbn1cblxuLy8gQWxpZ25lbWVudCBjZW50cmFsIHJlbGF0aXZlXG5cbkBtaXhpbiBjZW50ZXJfYWxpZ25fcmVsYXRpdmUge1xuXHRwb3NpdGlvbiAgICAgICAgICA6IHJlbGF0aXZlO1xuXHR0b3AgICAgICAgICAgICAgICA6IDUwJTtcblx0bGVmdCAgICAgICAgICAgICAgOiA1MCU7XG5cdC13ZWJraXQtdHJhbnNmb3JtIDogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuXHQtbW96LXRyYW5zZm9ybSAgICA6IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcblx0LW1zLXRyYW5zZm9ybSAgICAgOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG5cdC1vLXRyYW5zZm9ybSAgICAgIDogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuXHR0cmFuc2Zvcm0gICAgICAgICA6IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLmNlbnRlcl9hbGlnbl9yZWxhdGl2ZSB7XG5cdEBpbmNsdWRlIGNlbnRlcl9hbGlnbl9yZWxhdGl2ZTtcbn1cblxuLy8gQWxpZ25lbWVudCByZXNldCByZWxhdGl2ZVxuXG5AbWl4aW4gcmVzZXRfYWxpZ25fcmVsYXRpdmUge1xuXHRwb3NpdGlvbiAgICAgICAgICA6IHJlbGF0aXZlO1xuXHR0b3AgICAgICAgICAgICAgICA6IDA7XG5cdGxlZnQgICAgICAgICAgICAgIDogMDtcblx0LXdlYmtpdC10cmFuc2Zvcm0gOiB0cmFuc2xhdGVZKDApIHRyYW5zbGF0ZVgoMCk7XG5cdC1tb3otdHJhbnNmb3JtICAgIDogdHJhbnNsYXRlWSgwKSB0cmFuc2xhdGVYKDApO1xuXHQtbXMtdHJhbnNmb3JtICAgICA6IHRyYW5zbGF0ZVkoMCkgdHJhbnNsYXRlWCgwKTtcblx0LW8tdHJhbnNmb3JtICAgICAgOiB0cmFuc2xhdGVZKDApIHRyYW5zbGF0ZVgoMCk7XG5cdHRyYW5zZm9ybSAgICAgICAgIDogdHJhbnNsYXRlWSgwKSB0cmFuc2xhdGVYKDApO1xufVxuXG4ucmVzZXRfYWxpZ25fcmVsYXRpdmUge1xuXHRAaW5jbHVkZSByZXNldF9hbGlnbl9yZWxhdGl2ZTtcbn1cblxuLyogLSBBbGlnbmVtZW50cyBob3Jpem9udGF1eCAoeClcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4vLyBBbGlnbmVtZW50IGhvcml6b250YWwgw6AgZ2F1Y2hlXG5cbkBtaXhpbiB4X3N0YXJ0IHtcblx0anVzdGlmeS1jb250ZW50ICAgICAgICAgOiBmbGV4LXN0YXJ0O1xuXHQtd2Via2l0LWp1c3RpZnktY29udGVudCA6IGZsZXgtc3RhcnQ7XG5cdC1tcy1mbGV4LXBhY2sgICAgICAgICAgIDogc3RhcnQ7XG5cdHRleHQtYWxpZ24gICAgICAgICAgICAgIDogbGVmdDtcbn1cblxuLnhfc3RhcnQge1xuXHRAaW5jbHVkZSBkX2ZsZXg7XG5cdEBpbmNsdWRlIHhfc3RhcnQ7XG59XG5cbi8vIEFsaWduZW1lbnQgaG9yaXpvbnRhbCBhdSBjZW50cmVcblxuQG1peGluIHhfY2VudGVyIHtcblx0anVzdGlmeS1jb250ZW50ICAgICAgICAgOiBjZW50ZXI7XG5cdC13ZWJraXQtanVzdGlmeS1jb250ZW50IDogY2VudGVyO1xuXHQtbXMtZmxleC1wYWNrICAgICAgICAgICA6IGNlbnRlcjtcblx0dGV4dC1hbGlnbiAgICAgICAgICAgICAgOiBjZW50ZXI7XG59XG5cbi54X2NlbnRlciB7XG5cdEBpbmNsdWRlIGRfZmxleDtcblx0QGluY2x1ZGUgeF9jZW50ZXI7XG59XG5cbi8vIEFsaWduZW1lbnQgaG9yaXpvbnRhbCDDoCBkcm9pdGVcblxuQG1peGluIHhfZW5kIHtcblx0anVzdGlmeS1jb250ZW50ICAgICAgICAgOiBmbGV4LWVuZDtcblx0LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQgOiBmbGV4LWVuZDtcblx0LW1zLWZsZXgtcGFjayAgICAgICAgICAgOiBlbmQ7XG5cdHRleHQtYWxpZ24gICAgICAgICAgICAgIDogcmlnaHQ7XG59XG5cbi54X2VuZCB7XG5cdEBpbmNsdWRlIGRfZmxleDtcblx0QGluY2x1ZGUgeF9lbmQ7XG59XG5cbi8vIEFsaWduZW1lbnQgaG9yaXpvbnRhbCBcImVzcGFjZSBsaWJyZSBlbnRyZSBsZXMgY29sb25uZXNcIlxuXG5AbWl4aW4geF9iZXR3ZWVuIHtcblx0anVzdGlmeS1jb250ZW50ICAgICAgICAgOiBzcGFjZS1iZXR3ZWVuO1xuXHQtd2Via2l0LWp1c3RpZnktY29udGVudCA6IHNwYWNlLWJldHdlZW47XG5cdC1tcy1mbGV4LXBhY2sgICAgICAgICAgIDoganVzdGlmeTtcbn1cblxuLnhfYmV0d2VlbiB7XG5cdEBpbmNsdWRlIGRfZmxleDtcblx0QGluY2x1ZGUgeF9iZXR3ZWVuO1xufVxuXG4vLyBBbGlnbmVtZW50IGhvcml6b250YWwgXCJlc3BhY2UgbGlicmUgYXV0b3VycyBkZXMgY29sb25uZXNcIlxuXG5AbWl4aW4geF9hcm91bmQge1xuXHRqdXN0aWZ5LWNvbnRlbnQgICAgICAgICA6IHNwYWNlLWFyb3VuZDtcblx0LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQgOiBzcGFjZS1hcm91bmQ7XG5cdC1tcy1mbGV4LXBhY2sgICAgICAgICAgIDogZGlzdHJpYnV0ZTtcbn1cblxuLnhfYXJvdW5kIHtcblx0QGluY2x1ZGUgZF9mbGV4O1xuXHRAaW5jbHVkZSB4X2Fyb3VuZDtcbn1cblxuLy8gQWxpZ25lbWVudCBob3Jpem9udGFsIFwiZXNwYWNlIGxpYnJlIMOpZ2FsXCJcblxuQG1peGluIHhfZXZlbmx5IHtcblx0anVzdGlmeS1jb250ZW50ICAgICAgICAgOiBzcGFjZS1ldmVubHk7XG5cdC13ZWJraXQtanVzdGlmeS1jb250ZW50IDogc3BhY2UtZXZlbmx5O1xufVxuXG4ueF9ldmVubHkge1xuXHRAaW5jbHVkZSBkX2ZsZXg7XG5cdEBpbmNsdWRlIHhfZXZlbmx5O1xufVxuXG4vKiAtIEFsaWduZW1lbnRzIHZlcnRpY2F1eCBkZXMgbGlnbmVzIGRlIGNvbnRlbnUgKHkpXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuLy8gQWxpZ25lbWVudCB2ZXJ0aWNhbCBkZXMgbGlnbmVzIGRlIGNvbnRlbnUgZW4gaGF1dFxuXG5AbWl4aW4geV9jb250ZW50X3N0YXJ0IHtcblx0YWxpZ24tY29udGVudCAgICAgICAgIDogZmxleC1zdGFydDtcblx0LXdlYmtpdC1hbGlnbi1jb250ZW50IDogZmxleC1zdGFydDtcblx0LW1zLWZsZXgtbGluZS1wYWNrICAgIDogc3RhcnQ7XG59XG5cbi55X2NvbnRlbnRfc3RhcnQge1xuXHRAaW5jbHVkZSBkX2ZsZXg7XG5cdEBpbmNsdWRlIHlfY29udGVudF9zdGFydDtcbn1cblxuLy8gQWxpZ25lbWVudCB2ZXJ0aWNhbCBkZXMgbGlnbmVzIGRlIGNvbnRlbnUgYXUgbWlsaWV1XG5cbkBtaXhpbiB5X2NvbnRlbnRfY2VudGVyIHtcblx0YWxpZ24tY29udGVudCAgICAgICAgIDogY2VudGVyO1xuXHQtd2Via2l0LWFsaWduLWNvbnRlbnQgOiBjZW50ZXI7XG5cdC1tcy1mbGV4LWxpbmUtcGFjayAgICA6IGNlbnRlcjtcbn1cblxuLnlfY29udGVudF9jZW50ZXIge1xuXHRAaW5jbHVkZSBkX2ZsZXg7XG5cdEBpbmNsdWRlIHlfY29udGVudF9jZW50ZXI7XG59XG5cbi8vIEFsaWduZW1lbnQgdmVydGljYWwgZGVzIGxpZ25lcyBkZSBjb250ZW51IGVuIGJhc1xuXG5AbWl4aW4geV9jb250ZW50X2VuZCB7XG5cdGFsaWduLWNvbnRlbnQgICAgICAgICA6IGZsZXgtZW5kO1xuXHQtd2Via2l0LWFsaWduLWNvbnRlbnQgOiBmbGV4LWVuZDtcblx0LW1zLWZsZXgtbGluZS1wYWNrICAgIDogZW5kO1xufVxuXG4ueV9jb250ZW50X2VuZCB7XG5cdEBpbmNsdWRlIGRfZmxleDtcblx0QGluY2x1ZGUgeV9jb250ZW50X2VuZDtcbn1cblxuLy8gQWxpZ25lbWVudCB2ZXJ0aWNhbCBkZXMgbGlnbmVzIGRlIGNvbnRlbnUgXCJlc3BhY2UgbGlicmUgZW50cmUgbGVzIGNvbG9ubmVzXCJcblxuQG1peGluIHlfY29udGVudF9iZXR3ZWVuIHtcblx0YWxpZ24tY29udGVudCAgICAgICAgIDogc3BhY2UtYmV0d2Vlbjtcblx0LXdlYmtpdC1hbGlnbi1jb250ZW50IDogc3BhY2UtYmV0d2Vlbjtcblx0LW1zLWZsZXgtbGluZS1wYWNrICAgIDoganVzdGlmeTtcbn1cblxuLnlfY29udGVudF9iZXR3ZWVuIHtcblx0QGluY2x1ZGUgZF9mbGV4O1xuXHRAaW5jbHVkZSB5X2NvbnRlbnRfYmV0d2Vlbjtcbn1cblxuLy8gQWxpZ25lbWVudCB2ZXJ0aWNhbCBkZXMgbGlnbmVzIGRlIGNvbnRlbnUgXCJlc3BhY2UgbGlicmUgYXV0b3VycyBkZXMgY29sb25uZXNcIlxuXG5AbWl4aW4geV9jb250ZW50X2Fyb3VuZCB7XG5cdGFsaWduLWNvbnRlbnQgICAgICAgICA6IHNwYWNlLWFyb3VuZDtcblx0LXdlYmtpdC1hbGlnbi1jb250ZW50IDogc3BhY2UtYXJvdW5kO1xuXHQtbXMtZmxleC1saW5lLXBhY2sgICAgOiBkaXN0cmlidXRlO1xufVxuXG4ueV9jb250ZW50X2Fyb3VuZCB7XG5cdEBpbmNsdWRlIGRfZmxleDtcblx0QGluY2x1ZGUgeV9jb250ZW50X2Fyb3VuZDtcbn1cblxuLy8gQWxpZ25lbWVudCB2ZXJ0aWNhbCBkZXMgbGlnbmVzIGRlIGNvbnRlbnUgZW4gcmVtcGxpc3NhZ2VcblxuQG1peGluIHlfY29udGVudF9zdHJldGNoIHtcblx0YWxpZ24tY29udGVudCAgICAgICAgIDogc3RyZXRjaDtcblx0LXdlYmtpdC1hbGlnbi1jb250ZW50IDogc3RyZXRjaDtcblx0LW1zLWZsZXgtbGluZS1wYWNrICAgIDogc3RyZXRjaDtcbn1cblxuLnlfY29udGVudF9zdHJldGNoIHtcblx0QGluY2x1ZGUgZF9mbGV4O1xuXHRAaW5jbHVkZSB5X2NvbnRlbnRfc3RyZXRjaDtcbn1cblxuLyogLSBBbGlnbmVtZW50cyB2ZXJ0aWNhdXggZGVzIGl0ZW1zICh5KVxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbi8vIEFsaWduZW1lbnQgdmVydGljYWwgZGVzIGl0ZW1zIGVuIGhhdXRcblxuQG1peGluIHlfaXRlbXNfc3RhcnQge1xuXHRhbGlnbi1pdGVtcyAgICAgICAgIDogZmxleC1zdGFydDtcblx0LXdlYmtpdC1hbGlnbi1pdGVtcyA6IGZsZXgtc3RhcnQ7XG5cdC1tcy1mbGV4LWFsaWduICAgICAgOiBzdGFydDtcbn1cblxuLnlfaXRlbXNfc3RhcnQge1xuXHRAaW5jbHVkZSBkX2ZsZXg7XG5cdEBpbmNsdWRlIHlfaXRlbXNfc3RhcnQ7XG59XG5cbi8vIEFsaWduZW1lbnQgdmVydGljYWwgZGVzIGl0ZW1zIGF1IG1pbGlldVxuXG5AbWl4aW4geV9pdGVtc19jZW50ZXIge1xuXHRhbGlnbi1pdGVtcyAgICAgICAgIDogY2VudGVyO1xuXHQtd2Via2l0LWFsaWduLWl0ZW1zIDogY2VudGVyO1xuXHQtbXMtZmxleC1hbGlnbiAgICAgIDogY2VudGVyO1xufVxuXG4ueV9pdGVtc19jZW50ZXIge1xuXHRAaW5jbHVkZSBkX2ZsZXg7XG5cdEBpbmNsdWRlIHlfaXRlbXNfY2VudGVyO1xufVxuXG4vLyBBbGlnbmVtZW50IHZlcnRpY2FsIGRlcyBpdGVtcyBlbiBiYXNcblxuQG1peGluIHlfaXRlbXNfZW5kIHtcblx0YWxpZ24taXRlbXMgICAgICAgICA6IGZsZXgtZW5kO1xuXHQtd2Via2l0LWFsaWduLWl0ZW1zIDogZmxleC1lbmQ7XG5cdC1tcy1mbGV4LWFsaWduICAgICAgOiBlbmQ7XG59XG5cbi55X2l0ZW1zX2VuZCB7XG5cdEBpbmNsdWRlIGRfZmxleDtcblx0QGluY2x1ZGUgeV9pdGVtc19lbmQ7XG59XG5cbi8vIEFsaWduZW1lbnQgdmVydGljYWwgZGVzIGl0ZW1zIGVuIHJlbXBsaXNzYWdlXG5cbkBtaXhpbiB5X2l0ZW1zX3N0cmV0Y2gge1xuXHRhbGlnbi1pdGVtcyAgICAgICAgIDogc3RyZXRjaDtcblx0LXdlYmtpdC1hbGlnbi1pdGVtcyA6IHN0cmV0Y2g7XG5cdC1tcy1mbGV4LWFsaWduICAgICAgOiBzdHJldGNoO1xufVxuXG4ueV9pdGVtc19zdHJldGNoIHtcblx0QGluY2x1ZGUgZF9mbGV4O1xuXHRAaW5jbHVkZSB5X2l0ZW1zX3N0cmV0Y2g7XG59XG5cbi8qIC0gQWxpZ25lbWVudHMgc2VsZnNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4vLyBBbGlnbmVtZW50IGRlIGwnaXRlbSBlbiBoYXV0XG5cbkBtaXhpbiB5X3NlbGZfc3RhcnQge1xuXHRhbGlnbi1zZWxmICAgICAgICAgICAgOiBmbGV4LXN0YXJ0O1xuXHQtd2Via2l0LWFsaWduLXNlbGYgICAgOiBmbGV4LXN0YXJ0O1xuXHQtbXMtZ3JpZC1jb2x1bW4tYWxpZ24gOiBzdGFydDtcbn1cblxuLnlfc2VsZl9zdGFydCB7XG5cdEBpbmNsdWRlIHlfc2VsZl9zdGFydDtcbn1cblxuLy8gQWxpZ25lbWVudCBkZSBsJ2l0ZW0gYXUgbWlsaWV1XG5cbkBtaXhpbiB5X3NlbGZfY2VudGVyIHtcblx0YWxpZ24tc2VsZiAgICAgICAgICAgIDogY2VudGVyO1xuXHQtd2Via2l0LWFsaWduLXNlbGYgICAgOiBjZW50ZXI7XG5cdC1tcy1ncmlkLWNvbHVtbi1hbGlnbiA6IGNlbnRlcjtcbn1cblxuLnlfc2VsZl9jZW50ZXIge1xuXHRAaW5jbHVkZSB5X3NlbGZfY2VudGVyO1xufVxuXG4vLyBBbGlnbmVtZW50IGRlIGwnaXRlbSBlbiBiYXNcblxuQG1peGluIHlfc2VsZl9lbmQge1xuXHRhbGlnbi1zZWxmICAgICAgICAgICAgOiBmbGV4LWVuZDtcblx0LXdlYmtpdC1hbGlnbi1zZWxmICAgIDogZmxleC1lbmQ7XG5cdC1tcy1ncmlkLWNvbHVtbi1hbGlnbiA6IGVuZDtcbn1cblxuLnlfc2VsZl9lbmQge1xuXHRAaW5jbHVkZSB5X3NlbGZfZW5kO1xufVxuXG4vKiAtIEFsaWduZW1lbnRzIHJlc3BvbnNpdmVzXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRNYXApIHtcblx0QGlmICRicmVha3BvaW50ICE9IGZ1bGwge1xuXHRcdEBpbmNsdWRlIG1lZGlhX3hfbWluKCRicmVha3BvaW50KSB7XG5cdFx0XHQueF9hbGlnbl9hYnNvbHV0ZV8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIHhfYWxpZ25fYWJzb2x1dGU7XG5cdFx0XHR9XG5cdFx0XHQueV9hbGlnbl9hYnNvbHV0ZV8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIHlfYWxpZ25fYWJzb2x1dGU7XG5cdFx0XHR9XG5cdFx0XHQuY2VudGVyX2FsaWduX2Fic29sdXRlXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgY2VudGVyX2FsaWduX2Fic29sdXRlO1xuXHRcdFx0fVxuXHRcdFx0LnJlc2V0X2FsaWduX2Fic29sdXRlXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgcmVzZXRfYWxpZ25fYWJzb2x1dGU7XG5cdFx0XHR9XG5cdFx0XHQueF9hbGlnbl9maXhlZF8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIHhfYWxpZ25fZml4ZWQ7XG5cdFx0XHR9XG5cdFx0XHQueV9hbGlnbl9maXhlZF8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIHlfYWxpZ25fZml4ZWQ7XG5cdFx0XHR9XG5cdFx0XHQuY2VudGVyX2FsaWduX2ZpeGVkXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgY2VudGVyX2FsaWduX2ZpeGVkO1xuXHRcdFx0fVxuXHRcdFx0LnJlc2V0X2FsaWduX2ZpeGVkXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgcmVzZXRfYWxpZ25fZml4ZWQ7XG5cdFx0XHR9XG5cdFx0XHQueF9hbGlnbl9yZWxhdGl2ZV8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIHhfYWxpZ25fcmVsYXRpdmU7XG5cdFx0XHR9XG5cdFx0XHQueV9hbGlnbl9yZWxhdGl2ZV8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIHlfYWxpZ25fcmVsYXRpdmU7XG5cdFx0XHR9XG5cdFx0XHQuY2VudGVyX2FsaWduX3JlbGF0aXZlXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgY2VudGVyX2FsaWduX3JlbGF0aXZlO1xuXHRcdFx0fVxuXHRcdFx0LnJlc2V0X2FsaWduX3JlbGF0aXZlXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgcmVzZXRfYWxpZ25fcmVsYXRpdmU7XG5cdFx0XHR9XG5cdFx0XHQueF9zdGFydF8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIGRfZmxleDtcblx0XHRcdFx0QGluY2x1ZGUgeF9zdGFydDtcblx0XHRcdH1cblx0XHRcdC54X2NlbnRlcl8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIGRfZmxleDtcblx0XHRcdFx0QGluY2x1ZGUgeF9jZW50ZXI7XG5cdFx0XHR9XG5cdFx0XHQueF9lbmRfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBkX2ZsZXg7XG5cdFx0XHRcdEBpbmNsdWRlIHhfZW5kO1xuXHRcdFx0fVxuXHRcdFx0LnhfYmV0d2Vlbl8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIGRfZmxleDtcblx0XHRcdFx0QGluY2x1ZGUgeF9iZXR3ZWVuO1xuXHRcdFx0fVxuXHRcdFx0LnhfYXJvdW5kXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9mbGV4O1xuXHRcdFx0XHRAaW5jbHVkZSB4X2Fyb3VuZDtcblx0XHRcdH1cblx0XHRcdC54X2V2ZW5seV8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIGRfZmxleDtcblx0XHRcdFx0QGluY2x1ZGUgeF9ldmVubHk7XG5cdFx0XHR9XG5cdFx0XHQueV9jb250ZW50X3N0YXJ0XyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9mbGV4O1xuXHRcdFx0XHRAaW5jbHVkZSB5X2NvbnRlbnRfc3RhcnQ7XG5cdFx0XHR9XG5cdFx0XHQueV9jb250ZW50X2NlbnRlcl8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIGRfZmxleDtcblx0XHRcdFx0QGluY2x1ZGUgeV9jb250ZW50X2NlbnRlcjtcblx0XHRcdH1cblx0XHRcdC55X2NvbnRlbnRfZW5kXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9mbGV4O1xuXHRcdFx0XHRAaW5jbHVkZSB5X2NvbnRlbnRfZW5kO1xuXHRcdFx0fVxuXHRcdFx0LnlfY29udGVudF9iZXR3ZWVuXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9mbGV4O1xuXHRcdFx0XHRAaW5jbHVkZSB5X2NvbnRlbnRfYmV0d2Vlbjtcblx0XHRcdH1cblx0XHRcdC55X2NvbnRlbnRfYXJvdW5kXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9mbGV4O1xuXHRcdFx0XHRAaW5jbHVkZSB5X2NvbnRlbnRfYXJvdW5kO1xuXHRcdFx0fVxuXHRcdFx0LnlfY29udGVudF9zdHJldGNoXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9mbGV4O1xuXHRcdFx0XHRAaW5jbHVkZSB5X2NvbnRlbnRfc3RyZXRjaDtcblx0XHRcdH1cblx0XHRcdC55X2l0ZW1zX3N0YXJ0XyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9mbGV4O1xuXHRcdFx0XHRAaW5jbHVkZSB5X2l0ZW1zX3N0YXJ0O1xuXHRcdFx0fVxuXHRcdFx0LnlfaXRlbXNfY2VudGVyXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9mbGV4O1xuXHRcdFx0XHRAaW5jbHVkZSB5X2l0ZW1zX2NlbnRlcjtcblx0XHRcdH1cblx0XHRcdC55X2l0ZW1zX2VuZF8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIGRfZmxleDtcblx0XHRcdFx0QGluY2x1ZGUgeV9pdGVtc19lbmQ7XG5cdFx0XHR9XG5cdFx0XHQueV9pdGVtc19zdHJldGNoXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9mbGV4O1xuXHRcdFx0XHRAaW5jbHVkZSB5X2l0ZW1zX3N0cmV0Y2g7XG5cdFx0XHR9XG5cdFx0XHQueV9zZWxmX3N0YXJ0XyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9mbGV4O1xuXHRcdFx0XHRAaW5jbHVkZSB5X3NlbGZfc3RhcnQ7XG5cdFx0XHR9XG5cdFx0XHQueV9zZWxmX2NlbnRlcl8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIGRfZmxleDtcblx0XHRcdFx0QGluY2x1ZGUgeV9zZWxmX2NlbnRlcjtcblx0XHRcdH1cblx0XHRcdC55X3NlbGZfZW5kXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9mbGV4O1xuXHRcdFx0XHRAaW5jbHVkZSB5X3NlbGZfZW5kO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLSBGbmN0IERpc3BsYXlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtIEFmZmljaGFnZSBkZXMgw6lsw6ltZW50c1xuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbi8vIE5vbmVcblxuQG1peGluIGRfbm9uZSB7XG5cdGRpc3BsYXkgOiBub25lO1xufVxuXG4uZF9ub25lIHtcblx0QGluY2x1ZGUgZF9ub25lO1xufVxuXG4vLyBJbmxpbmUtYmxvY2tcblxuQG1peGluIGRfaWIge1xuXHRkaXNwbGF5IDogaW5saW5lLWJsb2NrO1xufVxuXG4uZF9pYiB7XG5cdEBpbmNsdWRlIGRfaWI7XG59XG5cbi8vIEZsZXhcblxuQG1peGluIGRfZmxleCB7XG5cdGRpc3BsYXkgOiAtd2Via2l0LWJveDtcblx0ZGlzcGxheSA6IC1tb3otYm94O1xuXHRkaXNwbGF5IDogLW1zLWZsZXhib3g7XG5cdGRpc3BsYXkgOiAtd2Via2l0LWZsZXg7XG5cdGRpc3BsYXkgOiBmbGV4O1xufVxuXG4uZF9mbGV4IHtcblx0QGluY2x1ZGUgZF9mbGV4O1xufVxuXG4vLyBSZXNwb25zaXZlXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50TWFwKSB7XG5cdEBpZiAkYnJlYWtwb2ludCAhPSBmdWxsIHtcblx0XHRAaW5jbHVkZSBtZWRpYV94X21pbigkYnJlYWtwb2ludCkge1xuXHRcdFx0LmRfbm9uZV8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIGRfbm9uZTtcblx0XHRcdH1cblx0XHRcdC5kX2liXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9pYjtcblx0XHRcdH1cblx0XHRcdC5kX2ZsZXhfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBkX2ZsZXg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tIEZuY3QgT3JkcmVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLSBGaXJzdFxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbkBtaXhpbiBvcmRlcl9maXJzdCB7XG5cdG9yZGVyICAgICAgICAgICAgICA6IC0xO1xuXHQtd2Via2l0LWZsZXgtb3JkZXIgOiAtMTtcblx0LW1zLWZsZXgtb3JkZXIgICAgIDogLTE7XG59XG5cbi5vcmRlcl9maXJzdCB7XG5cdEBpbmNsdWRlIG9yZGVyX2ZpcnN0O1xufVxuXG4vKiAtIExhc3Rcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5AbWl4aW4gb3JkZXJfbGFzdCB7XG5cdG9yZGVyICAgICAgICAgICAgICA6IDE7XG5cdC13ZWJraXQtZmxleC1vcmRlciA6IDE7XG5cdC1tcy1mbGV4LW9yZGVyICAgICA6IDE7XG59XG5cbi5vcmRlcl9sYXN0IHtcblx0QGluY2x1ZGUgb3JkZXJfbGFzdDtcbn1cblxuLyogLSBPcmRyZSByZXNwb25zaXZlXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRNYXApIHtcblx0QGlmICRicmVha3BvaW50ICE9IGZ1bGwge1xuXHRcdEBpbmNsdWRlIG1lZGlhX3hfbWluKCRicmVha3BvaW50KSB7XG5cdFx0XHQub3JkZXJfZmlyc3RfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBvcmRlcl9maXJzdDtcblx0XHRcdH1cblx0XHRcdC5vcmRlcl9sYXN0XyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgb3JkZXJfbGFzdDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0gRm5jdCBEaXJlY3Rpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLSBSb3dcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5AbWl4aW4gZGlyZWN0aW9uX3gge1xuXHQtd2Via2l0LWJveC1vcmllbnQgICAgOiBob3Jpem9udGFsO1xuXHQtd2Via2l0LWJveC1kaXJlY3Rpb24gOiBub3JtYWw7XG5cdC1tcy1mbGV4LWRpcmVjdGlvbiAgICA6IHJvdztcblx0ZmxleC1kaXJlY3Rpb24gICAgICAgIDogcm93O1xufVxuXG4uZGlyZWN0aW9uX3gge1xuXHRAaW5jbHVkZSBkaXJlY3Rpb25feDtcbn1cblxuLyogLSBSb3cgUmV2ZXJ0XG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuQG1peGluIGRpcmVjdGlvbl94X3JldmVydCB7XG5cdC13ZWJraXQtYm94LW9yaWVudCAgICA6IGhvcml6b250YWw7XG5cdC13ZWJraXQtYm94LWRpcmVjdGlvbiA6IHJldmVyc2U7XG5cdC1tcy1mbGV4LWRpcmVjdGlvbiAgICA6IHJvdy1yZXZlcnNlO1xuXHRmbGV4LWRpcmVjdGlvbiAgICAgICAgOiByb3ctcmV2ZXJzZTtcbn1cblxuLmRpcmVjdGlvbl94X3JldmVydCB7XG5cdEBpbmNsdWRlIGRpcmVjdGlvbl94X3JldmVydDtcbn1cblxuLyogLSBDb2x1bW5cbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5AbWl4aW4gZGlyZWN0aW9uX3kge1xuXHQtd2Via2l0LWJveC1vcmllbnQgICAgOiB2ZXJ0aWNhbDtcblx0LXdlYmtpdC1ib3gtZGlyZWN0aW9uIDogbm9ybWFsO1xuXHQtbXMtZmxleC1kaXJlY3Rpb24gICAgOiBjb2x1bW47XG5cdGZsZXgtZGlyZWN0aW9uICAgICAgICA6IGNvbHVtbjtcblx0PiBbY2xhc3NePVwiY29sXCJdIHtcblx0XHQtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZSA6IGF1dG87XG5cdH1cbn1cbi5kaXJlY3Rpb25feSB7XG5cdEBpbmNsdWRlIGRpcmVjdGlvbl95O1xufVxuXG4vKiAtIENvbHVtbiBSZXZlcnRcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5AbWl4aW4gZGlyZWN0aW9uX3lfcmV2ZXJ0IHtcblx0LXdlYmtpdC1ib3gtb3JpZW50ICAgIDogdmVydGljYWw7XG5cdC13ZWJraXQtYm94LWRpcmVjdGlvbiA6IHJldmVyc2U7XG5cdC1tcy1mbGV4LWRpcmVjdGlvbiAgICA6IGNvbHVtbi1yZXZlcnNlO1xuXHRmbGV4LWRpcmVjdGlvbiAgICAgICAgOiBjb2x1bW4tcmV2ZXJzZTtcblx0PiBbY2xhc3NePVwiY29sXCJdIHtcblx0XHQtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZSA6IGF1dG87XG5cdH1cbn1cblxuLmRpcmVjdGlvbl95X3JldmVydCB7XG5cdEBpbmNsdWRlIGRpcmVjdGlvbl95X3JldmVydDtcbn1cblxuLyogLSBPcmRyZSByZXNwb25zaXZlXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRNYXApIHtcblx0QGlmICRicmVha3BvaW50ICE9IGZ1bGwge1xuXHRcdEBpbmNsdWRlIG1lZGlhX3hfbWluKCRicmVha3BvaW50KSB7XG5cdFx0XHQuZGlyZWN0aW9uX3hfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBkaXJlY3Rpb25feDtcblx0XHRcdH1cblx0XHRcdC5kaXJlY3Rpb25feF9yZXZlcnRfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBkaXJlY3Rpb25feF9yZXZlcnQ7XG5cdFx0XHR9XG5cdFx0XHQuZGlyZWN0aW9uX3lfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBkaXJlY3Rpb25feTtcblx0XHRcdH1cblx0XHRcdC5kaXJlY3Rpb25feV9yZXZlcnRfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBkaXJlY3Rpb25feV9yZXZlcnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tIEZuY3QgVGFpbGxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0gTGFyZ2V1ciBmb3Jjw6llXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuQG1peGluIHdfZnVsbCB7XG5cdHdpZHRoIDogMTAwJTtcbn1cblxuLndfZnVsbCB7XG5cdEBpbmNsdWRlIHdfZnVsbDtcbn1cblxuLyogLSBIYXV0ZXVyIGZvcmPDqWVcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5AbWl4aW4gaF9mdWxsIHtcblx0aGVpZ2h0IDogMTAwJTtcbn1cblxuLmhfZnVsbCB7XG5cdEBpbmNsdWRlIGhfZnVsbDtcbn1cblxuLyogLSBUYWlsbGVzIHJlc3BvbnNpdmVzXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRNYXApIHtcblx0QGlmICRicmVha3BvaW50ICE9IGZ1bGwge1xuXHRcdEBpbmNsdWRlIG1lZGlhX3hfbWluKCRicmVha3BvaW50KSB7XG5cdFx0XHQud19mdWxsXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgd19mdWxsO1xuXHRcdFx0fVxuXHRcdFx0LmhfZnVsbF8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIGhfZnVsbDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0gRm5jdCBUcmFuc2l0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uKSB7XG5cdC1tb3otdHJhbnNpdGlvbiAgICA6ICR0cmFuc2l0aW9uO1xuXHQtby10cmFuc2l0aW9uICAgICAgOiAkdHJhbnNpdGlvbjtcblx0LXdlYmtpdC10cmFuc2l0aW9uIDogJHRyYW5zaXRpb247XG5cdHRyYW5zaXRpb24gICAgICAgICA6ICR0cmFuc2l0aW9uO1xufVxuXG5AbWl4aW4gZGVsYXkoJGRlbGF5KSB7XG5cdC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheSA6ICRkZWxheTtcblx0LW1vei10cmFuc2l0aW9uLWRlbGF5ICAgIDogJGRlbGF5O1xuXHQtbXMtdHJhbnNpdGlvbi1kZWxheSAgICAgOiAkZGVsYXk7XG5cdC1vLXRyYW5zaXRpb24tZGVsYXkgICAgICA6ICRkZWxheTtcblx0dHJhbnNpdGlvbi1kZWxheSAgICAgICAgIDogJGRlbGF5O1xufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLSBGbmN0IEFuaW1hdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AbWl4aW4ga2V5ZnJhbWVzKCRhbmltYXRpb25fbmFtZSkge1xuXHRALXdlYmtpdC1rZXlmcmFtZXMgI3skYW5pbWF0aW9uX25hbWV9IHtcblx0XHRAY29udGVudDtcblx0fVxuXHRALW1vei1rZXlmcmFtZXMgI3skYW5pbWF0aW9uX25hbWV9IHtcblx0XHRAY29udGVudDtcblx0fVxuXHQvL0AtbXMta2V5ZnJhbWVzICN7JGFuaW1hdGlvbl9uYW1lfSB7XG5cdC8vICBAY29udGVudDtcblx0Ly99XG5cdEAtby1rZXlmcmFtZXMgI3skYW5pbWF0aW9uX25hbWV9IHtcblx0XHRAY29udGVudDtcblx0fVxuXHRAa2V5ZnJhbWVzICN7JGFuaW1hdGlvbl9uYW1lfSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGlvbikge1xuXHQtd2Via2l0LWFuaW1hdGlvbiA6ICN7JGFuaW1hdGlvbn07XG5cdC1tb3otYW5pbWF0aW9uICAgIDogI3skYW5pbWF0aW9ufTtcblx0LW1zLWFuaW1hdGlvbiAgICAgOiAjeyRhbmltYXRpb259O1xuXHQtby1hbmltYXRpb24gICAgICA6ICN7JGFuaW1hdGlvbn07XG5cdGFuaW1hdGlvbiAgICAgICAgIDogI3skYW5pbWF0aW9ufTtcbn0iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0gRm5jdCBUcmFuc2Zvcm1zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQG1peGluIHRyYW5zZm9ybSgkdHJhbnNmb3JtKSB7XG5cdC13ZWJraXQtdHJhbnNmb3JtIDogJHRyYW5zZm9ybTtcblx0LW1vei10cmFuc2Zvcm0gICAgOiAkdHJhbnNmb3JtO1xuXHQtbXMtdHJhbnNmb3JtICAgICA6ICR0cmFuc2Zvcm07XG5cdC1vLXRyYW5zZm9ybSAgICAgIDogJHRyYW5zZm9ybTtcblx0dHJhbnNmb3JtICAgICAgICAgOiAkdHJhbnNmb3JtO1xufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLSBGbmN0IEludMOpcmFjdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtIGhvdmVyLCBmb2N1cywgYWN0aXZlLCB2aXNpdGVkXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuLy8gSG92ZXJcblxuQG1peGluIGhvdmVyIHtcblx0QGluY2x1ZGUgbWVkaWFfcG9pbnRlciB7XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRAY29udGVudFxuXHRcdH1cblx0fVxufVxuXG5AbWl4aW4gaG92ZXJfeF9taW4oJGJyZWFrcG9pbnQpIHtcblx0QGluY2x1ZGUgbWVkaWFfcG9pbnRlcl94X21pbigkYnJlYWtwb2ludCkge1xuXHRcdCY6aG92ZXIge1xuXHRcdFx0QGNvbnRlbnRcblx0XHR9XG5cdH1cbn1cblxuQG1peGluIGhvdmVyX3hfbWF4KCRicmVha3BvaW50KSB7XG5cdEBpbmNsdWRlIG1lZGlhX3BvaW50ZXJfeF9tYXgoJGJyZWFrcG9pbnQpIHtcblx0XHQmOmhvdmVyIHtcblx0XHRcdEBjb250ZW50XG5cdFx0fVxuXHR9XG59XG5cbkBtaXhpbiBob3Zlcl95X21pbigkYnJlYWtwb2ludCkge1xuXHRAaW5jbHVkZSBtZWRpYV9wb2ludGVyX3lfbWluKCRicmVha3BvaW50KSB7XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRAY29udGVudFxuXHRcdH1cblx0fVxufVxuXG5AbWl4aW4gaG92ZXJfeV9tYXgoJGJyZWFrcG9pbnQpIHtcblx0QGluY2x1ZGUgbWVkaWFfcG9pbnRlcl95X21heCgkYnJlYWtwb2ludCkge1xuXHRcdCY6aG92ZXIge1xuXHRcdFx0QGNvbnRlbnRcblx0XHR9XG5cdH1cbn1cblxuLy8gRm9jdXNcblxuQG1peGluIGZvY3VzIHtcblx0QG1lZGlhIG1lZGlhX3BvaW50ZXIge1xuXHRcdCY6Zm9jdXMge1xuXHRcdFx0QGNvbnRlbnQ7XG5cdFx0fVxuXHR9XG59XG5cbkBtaXhpbiBmb2N1c194X21pbigkYnJlYWtwb2ludCkge1xuXHRAaW5jbHVkZSBtZWRpYV9wb2ludGVyX3hfbWluKCRicmVha3BvaW50KSB7XG5cdFx0Jjpmb2N1cyB7XG5cdFx0XHRAY29udGVudDtcblx0XHR9XG5cdH1cbn1cblxuQG1peGluIGZvY3VzX3hfbWF4KCRicmVha3BvaW50KSB7XG5cdEBpbmNsdWRlIG1lZGlhX3BvaW50ZXJfeF9tYXgoJGJyZWFrcG9pbnQpIHtcblx0XHQmOmZvY3VzIHtcblx0XHRcdEBjb250ZW50O1xuXHRcdH1cblx0fVxufVxuXG5AbWl4aW4gZm9jdXNfeV9taW4oJGJyZWFrcG9pbnQpIHtcblx0QGluY2x1ZGUgbWVkaWFfcG9pbnRlcl95X21pbigkYnJlYWtwb2ludCkge1xuXHRcdCY6Zm9jdXMge1xuXHRcdFx0QGNvbnRlbnQ7XG5cdFx0fVxuXHR9XG59XG5cbkBtaXhpbiBmb2N1c195X21heCgkYnJlYWtwb2ludCkge1xuXHRAaW5jbHVkZSBtZWRpYV9wb2ludGVyX3lfbWF4KCRicmVha3BvaW50KSB7XG5cdFx0Jjpmb2N1cyB7XG5cdFx0XHRAY29udGVudDtcblx0XHR9XG5cdH1cbn1cblxuLy8gQWN0aXZlXG5cbkBtaXhpbiBhY3RpdmUge1xuXHQmOmFjdGl2ZSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLy8gVmlzaXRlZFxuXG5AbWl4aW4gdmlzaXRlZCB7XG5cdCY6dmlzaXRlZCB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn0iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0gRm5jdCBPbWJyZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AbWl4aW4gb21icmUoJG9tYnJlKSB7XG5cdC13ZWJraXQtYm94LXNoYWRvdyA6ICRvbWJyZTtcblx0Ym94LXNoYWRvdyAgICAgICAgIDogJG9tYnJlO1xufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLSBGbmN0IFJhZGl1c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbkBtaXhpbiByYWRpdXMoJHJhZGl1cykge1xuXHQtd2Via2l0LWJvcmRlci1yYWRpdXMgOiAkcmFkaXVzO1xuXHQtbW96LWJvcmRlci1yYWRpdXMgICAgOiAkcmFkaXVzO1xuXHRib3JkZXItcmFkaXVzICAgICAgICAgOiAkcmFkaXVzO1xufSIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLyoqIEZvbnRzIHRleHQgKiovXG5cbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PUludGVyOndnaHRAMzAwOzQwMDs1MDA7NjAwOzcwMCZkaXNwbGF5PXN3YXAnKTtcblxuQG1peGluIGZvbnRfaW50ZXJfbGlnaHQge1xuICAgIGZvbnQtZmFtaWx5IDogJ0ludGVyJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodCA6IDMwMDtcbn1cblxuQG1peGluIGZvbnRfaW50ZXJfcmVndWxhciB7XG4gICAgZm9udC1mYW1pbHkgOiAnSW50ZXInLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0IDogNDAwO1xufVxuXG5AbWl4aW4gZm9udF9pbnRlcl9tZWRpdW0ge1xuICAgIGZvbnQtZmFtaWx5IDogJ0ludGVyJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodCA6IDUwMDtcbn1cblxuQG1peGluIGZvbnRfaW50ZXJfc2VtaWJvbGQge1xuICAgIGZvbnQtZmFtaWx5IDogJ0ludGVyJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodCA6IDYwMDtcbn1cblxuQG1peGluIGZvbnRfaW50ZXJfYm9sZCB7XG4gICAgZm9udC1mYW1pbHkgOiAnSW50ZXInLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0IDogNzAwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseSAgOiAnSGVybmFuZGV6QnJvc1JlZ3VsYXInO1xuICAgIHNyYyAgICAgICAgICA6IHVybCgnLi4vLi4vZm9udHMvSGVybmFuZGV6QnJvcy1SZWd1bGFyLmVvdCcpO1xuICAgIHNyYyAgICAgICAgICA6IHVybCgnLi4vLi4vZm9udHMvSGVybmFuZGV6QnJvcy1SZWd1bGFyLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgdXJsKCcuLi8uLi9mb250cy9IZXJuYW5kZXpCcm9zLVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgdXJsKCcuLi8uLi9mb250cy9IZXJuYW5kZXpCcm9zLVJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCgnLi4vLi4vZm9udHMvSGVybmFuZGV6QnJvcy1SZWd1bGFyLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICB1cmwoJy4uLy4uL2ZvbnRzL0hlcm5hbmRlekJyb3MtUmVndWxhci5zdmcjSGVybmFuZGV6QnJvcy1SZWd1bGFyJykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodCAgOiBub3JtYWw7XG4gICAgZm9udC1zdHlsZSAgIDogbm9ybWFsO1xuICAgIGZvbnQtZGlzcGxheSA6IHN3YXA7XG59XG5cbkBtaXhpbiBmb250X2hlcm5hbmRlel9yZWd1bGFyIHtcbiAgICBmb250LWZhbWlseSA6ICdIZXJuYW5kZXpCcm9zUmVndWxhcicsIHNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0IDogNDAwO1xufVxuXG4vKiogUmVTZWUgRm9udCBpY29ucyAqKi9cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHkgOiBcInJlc2VlXCI7XG4gICAgc3JjICAgICAgICAgOiB1cmwoXCIuLi8uLi9mb250cy9yZXNlZS5lb3RcIik7XG4gICAgc3JjICAgICAgICAgOiB1cmwoXCIuLi8uLi9mb250cy9yZXNlZS5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLFxuICAgIHVybChcIi4uLy4uL2ZvbnRzL3Jlc2VlLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICB1cmwoXCIuLi8uLi9mb250cy9yZXNlZS50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksXG4gICAgdXJsKFwiLi4vLi4vZm9udHMvcmVzZWUuc3ZnI3Jlc2VlXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgICBmb250LXdlaWdodCA6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlICA6IG5vcm1hbDtcblxufVxuXG5cbltkYXRhLWljb25dOmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHkgICAgICAgICAgICAgOiBcInJlc2VlXCIgIWltcG9ydGFudDtcbiAgICBjb250ZW50ICAgICAgICAgICAgICAgICA6IGF0dHIoZGF0YS1pY29uKTtcbiAgICBmb250LXN0eWxlICAgICAgICAgICAgICA6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0ICAgICAgICAgICAgIDogbm9ybWFsICFpbXBvcnRhbnQ7XG4gICAgZm9udC12YXJpYW50ICAgICAgICAgICAgOiBub3JtYWwgIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybSAgICAgICAgICA6IG5vbmUgIWltcG9ydGFudDtcbiAgICBzcGVhayAgICAgICAgICAgICAgICAgICA6IG5vbmU7XG4gICAgbGluZS1oZWlnaHQgICAgICAgICAgICAgOiAxO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmcgIDogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmcgOiBncmF5c2NhbGU7XG59XG5cbltjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsXG5bY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHkgICAgICAgICAgICAgOiBcInJlc2VlXCIgIWltcG9ydGFudDtcbiAgICBmb250LXN0eWxlICAgICAgICAgICAgICA6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0ICAgICAgICAgICAgIDogbm9ybWFsICFpbXBvcnRhbnQ7XG4gICAgZm9udC12YXJpYW50ICAgICAgICAgICAgOiBub3JtYWwgIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybSAgICAgICAgICA6IG5vbmUgIWltcG9ydGFudDtcbiAgICBzcGVhayAgICAgICAgICAgICAgICAgICA6IG5vbmU7XG4gICAgbGluZS1oZWlnaHQgICAgICAgICAgICAgOiAxO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmcgIDogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmcgOiBncmF5c2NhbGU7XG59XG5cbi5pY29uLWNhbWVyYTpiZWZvcmUge1xuICAgIGNvbnRlbnQgOiBcIlxcZTAwMFwiO1xufVxuLmljb24tY2FydDpiZWZvcmUge1xuICAgIGNvbnRlbnQgOiBcIlxcZTAwMVwiO1xufVxuLmljb24tY2hldnJvbjpiZWZvcmUge1xuICAgIGNvbnRlbnQgOiBcIlxcZTAwMlwiO1xufVxuLmljb24tY2xvY2s6YmVmb3JlIHtcbiAgICBjb250ZW50IDogXCJcXGUwMDNcIjtcbn1cbi5pY29uLWNyb3NzOmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDA0XCI7XG59XG4uaWNvbi1lZGl0OmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDA1XCI7XG59XG4uaWNvbi1mYWNlYm9vazpiZWZvcmUge1xuICAgIGNvbnRlbnQgOiBcIlxcZTAwNlwiO1xufVxuLmljb24tZ2xhc3M6YmVmb3JlIHtcbiAgICBjb250ZW50IDogXCJcXGUwMDdcIjtcbn1cbi5pY29uLWhlYXJ0OmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDA4XCI7XG59XG4uaWNvbi1pbXBvcnQ6YmVmb3JlIHtcbiAgICBjb250ZW50IDogXCJcXGUwMDlcIjtcbn1cbi5pY29uLWluc3RhZ3JhbTpiZWZvcmUge1xuICAgIGNvbnRlbnQgOiBcIlxcZTAwYVwiO1xufVxuLmljb24tbGlua2VkaW46YmVmb3JlIHtcbiAgICBjb250ZW50IDogXCJcXGUwMGJcIjtcbn1cbi5pY29uLXBob25lOmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDBjXCI7XG59XG4uaWNvbi1yZWEtYXV0aGVudGljOmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDBkXCI7XG59XG4uaWNvbi1yZWEtY2FsZW5kYXI6YmVmb3JlIHtcbiAgICBjb250ZW50IDogXCJcXGUwMGVcIjtcbn1cbi5pY29uLXJlYS1waG9uZTpiZWZvcmUge1xuICAgIGNvbnRlbnQgOiBcIlxcZTAwZlwiO1xufVxuLmljb24tcmVhLXNlY3VyZWQ6YmVmb3JlIHtcbiAgICBjb250ZW50IDogXCJcXGUwMTBcIjtcbn1cbi5pY29uLXJlYS1zZWxsaW5nOmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDExXCI7XG59XG4uaWNvbi1yZWEtd29ybGR3aWRlOmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDEyXCI7XG59XG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDEzXCI7XG59XG4uaWNvbi11c2VyOmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDE0XCI7XG59XG4uaWNvbi13aGF0c2FwcDpiZWZvcmUge1xuICAgIGNvbnRlbnQgOiBcIlxcZTAxNVwiO1xufVxuLmljb24tcGludGVyZXN0OmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDE2XCI7XG59XG4uaWNvbi1oZWFydC1mdWxsOmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDE3XCI7XG59XG4uaWNvbi1saXN0LXZpZXcxOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGUwMThcIjtcbn1cbi5pY29uLWxpc3QtdmlldzI6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTAxOVwiO1xufVxuLmljb24tbGlzdC12aWV3MzpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlMDFhXCI7XG59XG4uaWNvbi1saXN0LXZpZXc0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGUwMWJcIjtcbn1cbi5pY29uLWVtYWlsOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGUwMWNcIjtcbn1cbi5pY29uLWV5ZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlMDFkXCI7XG59XG4uaWNvbi1ob3VyZ2xhc3M6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTAxZVwiO1xufVxuLmljb24tY2hlY2s6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTAxZlwiO1xufVxuLmljb24tY2FsZW5kYXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTAyMFwiO1xufVxuLmljb24tYWxlcnQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTAyMVwiO1xufVxuLmljb24td29ybGQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTAyMlwiO1xufVxuLmljb24tYmVsbDpiZWZvcmUge1xuXHRjb250ZW50OiBcIlxcZTAyM1wiO1xufVxuLmljb24tY2hlY2stcm91bmQ6YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGUwMjRcIjtcbn1cbi5pY29uLWNvbnRhY3Q6YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGUwMjVcIjtcbn1cbi5pY29uLXBhY2thZ2U6YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGUwMjZcIjtcbn1cbi5pY29uLXN0YXJzOmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwiXFxlMDI3XCI7XG59XG4uaWNvbi1waW46YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGU5NGNcIjtcbn1cbi5pY29uLWxhdW5kcnkge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNjQgNjQnIGZpbGw9J25vbmUnIHN0cm9rZT0nYmxhY2snIHN0cm9rZS13aWR0aD0nNCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyUzRSUzQ3BhdGggZD0nTTMyIDEyYTggOCAwIDAgMSA4IDhjMCA0LjQxOC0zLjU4MiA4LTggOHY2bDI0IDE0YTQgNCAwIDAgMS00IDZIMTJhNCA0IDAgMCAxLTQtNmwyNC0xNHYtNicvJTNFJTNDcGF0aCBkPSdNMzIgMTJhOCA4IDAgMCAwLTggOCcgLyUzRSUzQy9zdmclM0VcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxN3B4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xufVxuLmljb24tYmVhdXRpZmljYXRpb246YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGUwMjdcIjtcbn1cblxuLmljb24teW91dHViZSB7XG4gICAgYmFja2dyb3VuZDogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUJtYVd4c1BTSWpabVpsT0dRMklpQjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlDQjJhV1YzUW05NFBTSXdJREFnTlRBZ05UQWlJSGRwWkhSb1BTSTFNSEI0SWlCb1pXbG5hSFE5SWpVd2NIZ2lQanh3WVhSb0lHUTlJazBnTkRRdU9EazRORE00SURFMExqVWdReUEwTkM0MUlERXlMak13TURjNE1TQTBNaTQyTURFMU5qTWdNVEF1TmprNU1qRTVJRFF3TGpNNU9EUXpPQ0F4TUM0eE9Ua3lNVGtnUXlBek55NHhNREUxTmpNZ09TNDFJRE14SURrZ01qUXVNems0TkRNNElEa2dReUF4Tnk0NE1EQTNPREVnT1NBeE1TNDJNREUxTmpNZ09TNDFJRGd1TXpBd056Z3hJREV3TGpFNU9USXhPU0JESURZdU1UQXhOVFl6SURFd0xqWTVPVEl4T1NBMExqRTVPVEl4T1NBeE1pNHhPVGt5TVRrZ015NDRNREEzT0RFZ01UUXVOU0JESURNdU16azRORE00SURFM0lETWdNakF1TlNBeklESTFJRU1nTXlBeU9TNDFJRE11TXprNE5ETTRJRE16SURNdU9EazRORE00SURNMUxqVWdReUEwTGpNd01EYzRNU0F6Tnk0Mk9Ua3lNVGtnTmk0eE9Ua3lNVGtnTXprdU16QXdOemd4SURndU16azRORE00SURNNUxqZ3dNRGM0TVNCRElERXhMamc1T0RRek9DQTBNQzQxSURFM0xqZzVPRFF6T0NBME1TQXlOQzQxSURReElFTWdNekV1TVRBeE5UWXpJRFF4SURNM0xqRXdNVFUyTXlBME1DNDFJRFF3TGpZd01UVTJNeUF6T1M0NE1EQTNPREVnUXlBME1pNDRNREEzT0RFZ016a3VNekF3TnpneElEUTBMalk1T1RJeE9TQXpOeTQ0TURBM09ERWdORFV1TVRBeE5UWXpJRE0xTGpVZ1F5QTBOUzQxSURNeklEUTJJREk1TGpNNU9EUXpPQ0EwTmk0eE1ERTFOak1nTWpVZ1F5QTBOUzQ0T1RnME16Z2dNakF1TlNBME5TNHpPVGcwTXpnZ01UY2dORFF1T0RrNE5ETTRJREUwTGpVZ1dpQk5JREU1SURNeUlFd2dNVGtnTVRnZ1RDQXpNUzR4T1RreU1Ua2dNalVnV2lJdlBqd3ZjM1puUGc9PScpIDUwJSA1MCUgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTpjb250YWluO1xufVxuIiwiJG1vbEJ1dHRvbnNNYXAgOiAoXG4gICAgJy5idG5fY3RhOm5vdCgubGlua19jdGEpJyA6IChcbiAgICAgICAgJ2hlaWdodCc6IChcbiAgICAgICAgICAgIDQ2cHgsXG4gICAgICAgICAgICA1MHB4XG4gICAgICAgICksXG4gICAgICAgICdwYWRkaW5nLWxlZnQnOiAoXG4gICAgICAgICAgICAxNXB4LFxuICAgICAgICAgICAgMjBweFxuICAgICAgICApLFxuICAgICAgICAncGFkZGluZy1yaWdodCc6IChcbiAgICAgICAgICAgIDE1cHgsXG4gICAgICAgICAgICAyMHB4XG4gICAgICAgICksXG4gICAgKSxcbiAgICAnLmJ0bl9jdGEuYnRuX3NtYWxsOm5vdCgubGlua19jdGEpJyA6IChcbiAgICAgICAgJ2hlaWdodCc6IChcbiAgICAgICAgICAgIDQwcHgsXG4gICAgICAgICAgICA0NHB4XG4gICAgICAgICksXG4gICAgICAgICdwYWRkaW5nLWxlZnQnOiAoXG4gICAgICAgICAgICAxMHB4LFxuICAgICAgICAgICAgMTJweFxuICAgICAgICApLFxuICAgICAgICAncGFkZGluZy1yaWdodCc6IChcbiAgICAgICAgICAgIDEwcHgsXG4gICAgICAgICAgICAxMnB4XG4gICAgICAgICksXG4gICAgKSxcbiAgICAnLmJ0bl9jdGEuYnRuX2xpdHRsZTpub3QoLmxpbmtfY3RhKScgOiAoXG4gICAgICAgICdoZWlnaHQnOiAoXG4gICAgICAgICAgICAzMnB4LFxuICAgICAgICAgICAgMzVweFxuICAgICAgICApLFxuICAgICAgICAncGFkZGluZy1sZWZ0JzogKFxuICAgICAgICAgICAgMTBweCxcbiAgICAgICAgICAgIDEycHhcbiAgICAgICAgKSxcbiAgICAgICAgJ3BhZGRpbmctcmlnaHQnOiAoXG4gICAgICAgICAgICAxMHB4LFxuICAgICAgICAgICAgMTJweFxuICAgICAgICApLFxuICAgICksXG4gICAgJy5jb250ZW50X2xpbmsnIDogKFxuICAgICAgICAncGFkZGluZy10b3AnOiAoXG4gICAgICAgICAgICA4cHgsXG4gICAgICAgICAgICAxMnB4XG4gICAgICAgICksXG4gICAgICAgICdtYXJnaW4tdG9wJzogKFxuICAgICAgICAgICAgMTVweCxcbiAgICAgICAgICAgIDIwcHhcbiAgICAgICAgKSxcbiAgICApLFxuKTtcblxuQGluY2x1ZGUgZmx1aWQoJG1vbEJ1dHRvbnNNYXApO1xuXG4uYnRuX2N0YTpub3QoLmxpbmtfY3RhKSB7XG4gICAgQGluY2x1ZGUgZF9mbGV4O1xuICAgIGRpc3BsYXkgICAgICAgIDogaW5saW5lLWZsZXg7XG4gICAgQGluY2x1ZGUgeV9pdGVtc19jZW50ZXI7XG4gICAgQGluY2x1ZGUgeF9jZW50ZXI7XG4gICAgQGluY2x1ZGUgZm9udF9pbnRlcl9tZWRpdW07XG4gICAgbWF4LXdpZHRoICAgICAgOiAxMDAlO1xuICAgIGJhY2tncm91bmQgICAgIDogJGJlaWdlO1xuICAgIGNvbG9yICAgICAgICAgIDogJGJsYWNrO1xuICAgIGZvbnQtc2l6ZSAgICAgIDogMC44NzVlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybSA6IHVwcGVyY2FzZTtcbiAgICBAaW5jbHVkZSByYWRpdXMoNXB4KTtcbiAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheSA6IGJsb2NrO1xuICAgICAgICB3aWR0aCAgIDogMTAwJTtcbiAgICB9XG4gICAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgICAgIGN1cnNvciA6IHBvaW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24pO1xuICAgICAgICBAaW5jbHVkZSBob3Zlcl9mb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kIDogJGJlaWdlMjtcbiAgICAgICAgfVxuICAgICAgICAmLmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQgOiAkYmVpZ2UyO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuX2JsYWNrIHtcbiAgICAgICAgYmFja2dyb3VuZCA6ICRibGFjaztcbiAgICAgICAgY29sb3IgICAgICA6ICR3aGl0ZTtcbiAgICAgICAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgICAgICAgICBjdXJzb3IgOiBwb2ludGVyO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbik7XG4gICAgICAgICAgICBAaW5jbHVkZSBob3Zlcl9mb2N1cyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZCA6ICRncmV5LWRhcms7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kIDogJGdyZXktZGFyaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bl9jcmVhbSB7XG4gICAgICAgIGJhY2tncm91bmQgOiAjZWEzYjBjO1xuICAgICAgICBjb2xvciAgICAgIDogJHdoaXRlO1xuICAgICAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGN1cnNvciA6IHBvaW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyX2ZvY3VzIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kIDogI2VhM2IwYztcbiAgICAgICAgICAgICAgICBjb2xvciAgICAgIDogJGJlaWdlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5ob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZCA6ICNlYTNiMGM7XG4gICAgICAgICAgICAgICAgY29sb3IgICAgICA6ICRiZWlnZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bl93aGl0ZSB7XG4gICAgICAgIGJhY2tncm91bmQgOiAkd2hpdGU7XG4gICAgICAgIGNvbG9yICAgICAgOiAkYmxhY2s7XG4gICAgICAgICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgICAgICAgICAgY3Vyc29yIDogcG9pbnRlcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24pO1xuICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXJfZm9jdXMge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQgOiAkZ3JleS1saWdodDI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kIDogJGdyZXktbGlnaHQyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuX2xpbmVzIHtcbiAgICAgICAgYmFja2dyb3VuZCA6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXIgICAgIDogMXB4IHNvbGlkICRncmV5O1xuICAgICAgICBjb2xvciAgICAgIDogJGJsYWNrO1xuICAgICAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGN1cnNvciA6IHBvaW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyX2ZvY3VzIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kICAgOiAkZ3JleS1saWdodDI7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIDogJGdyZXktbGlnaHQyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5ob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZCAgIDogJGdyZXktbGlnaHQyO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciA6ICRncmV5LWxpZ2h0MjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bl9pY29uIHtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBwb3NpdGlvbiAgICAgOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdCA6IDI0cHg7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgeV9hbGlnbl9hYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0ICAgICAgOiAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZSA6IDEuMWVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuX2RsIHtcbiAgICAgICAgc3BhbjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudCAgICAgOiBcIlxcZTAwOVwiO1xuICAgICAgICAgICAgZm9udC1mYW1pbHkgOiBcInJlc2VlXCI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJjpkaXNhYmxlZCwgJi5kaXNhYmxlZCB7XG4gICAgICAgIGJhY2tncm91bmQgICA6ICRncmV5LWxpZ2h0MiAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItY29sb3IgOiAkZ3JleS1saWdodDIgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3IgICAgICAgIDogJGdyZXktZGFyayAhaW1wb3J0YW50O1xuICAgICAgICBjdXJzb3IgICAgICAgOiBkZWZhdWx0O1xuICAgIH1cbn1cblxuLmxpbmtfY3RhIHtcbiAgICBAaW5jbHVkZSBkX2ZsZXg7XG4gICAgZGlzcGxheSAgICAgICAgOiBpbmxpbmUtZmxleDtcbiAgICBAaW5jbHVkZSBmb250X2ludGVyX21lZGl1bTtcbiAgICBtYXgtd2lkdGggICAgICA6IDEwMCU7XG4gICAgY29sb3IgICAgICAgICAgOiAkYmxhY2s7XG4gICAgZm9udC1zaXplICAgICAgOiAwLjg3NWVtO1xuICAgIHRleHQtdHJhbnNmb3JtIDogdXBwZXJjYXNlO1xuICAgIHBvc2l0aW9uICAgICAgIDogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0ICAgOiAyNHB4O1xuICAgIG92ZXJmbG93ICAgICAgIDogaGlkZGVuO1xuICAgIGF7XG4gICAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudCAgICAgICAgICAgOiAnJztcbiAgICAgICAgcG9zaXRpb24gICAgICAgICAgOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdCAgICAgICAgICAgICAgOiAtMjRweDtcbiAgICAgICAgdG9wICAgICAgICAgICAgICAgOiAwO1xuICAgICAgICBib3R0b20gICAgICAgICAgICA6IDA7XG4gICAgICAgIHdpZHRoICAgICAgICAgICAgIDogNDVweDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZSAgOiB1cmwoXCIuLi8uLi9pbWFnZXMvaWNvbnMvY2hldnJvbi5zdmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0IDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemUgICA6IDVweDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5saW5rX2JlaWdlIHtcbiAgICAgICAgY29sb3IgOiAkYmVpZ2U7XG4gICAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2UgOiB1cmwoXCIuLi8uLi9pbWFnZXMvaWNvbnMvY2hldnJvbl9iZWlnZS5zdmdcIik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5saW5rX3doaXRlIHtcbiAgICAgICAgY29sb3IgOiAkd2hpdGU7XG4gICAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2UgOiB1cmwoXCIuLi8uLi9pbWFnZXMvaWNvbnMvY2hldnJvbl93aGl0ZS5zdmdcIik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIDogY2VudGVyIGxlZnQgMTBweDtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gOiBjZW50ZXIgbGVmdCAzMnB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBob3Zlcl9mb2N1cyB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gOiBjZW50ZXIgbGVmdCAzMnB4O1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbiA6IGNlbnRlciBsZWZ0IDU0cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5ob3ZlciB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gOiBjZW50ZXIgbGVmdCAzMnB4O1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbiA6IGNlbnRlciBsZWZ0IDU0cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zb2Z0IHtcbiAgICAgICAgQGluY2x1ZGUgZm9udF9pbnRlcl9saWdodDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm0gOiBpbml0aWFsO1xuICAgIH1cbiAgICAmLmxpbmtfbmV4dCB7XG4gICAgICAgIHBhZGRpbmctbGVmdCAgOiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0IDogMjRweDtcbiAgICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgICAgICAgcmlnaHQgOiAtMjRweDtcbiAgICAgICAgICAgIGxlZnQgIDogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIDogY2VudGVyIHJpZ2h0IDMycHg7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIDogY2VudGVyIHJpZ2h0IDU0cHg7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgaG92ZXJfZm9jdXMge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gOiBjZW50ZXIgcmlnaHQgMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gOiBjZW50ZXIgcmlnaHQgMzJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmhvdmVyIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIDogY2VudGVyIHJpZ2h0IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIDogY2VudGVyIHJpZ2h0IDMycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5saW5rX2JhY2sge1xuICAgICAgICBAaW5jbHVkZSBmb250X2ludGVyX2xpZ2h0O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybSA6IGluaXRpYWw7XG4gICAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoMTgwZGVnKSk7XG4gICAgICAgIH1cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbiA6IGNlbnRlciBsZWZ0IC0xMHB4O1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbiA6IGNlbnRlciBsZWZ0IDZweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBob3Zlcl9mb2N1cyB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbiA6IGNlbnRlciBsZWZ0IDZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gOiBjZW50ZXIgbGVmdCAyMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuaG92ZXIge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gOiBjZW50ZXIgbGVmdCA2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIDogY2VudGVyIGxlZnQgMjJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbnRlbnRfbGluayB7XG4gICAgZGlzcGxheSAgICA6IGJsb2NrO1xuICAgIHRleHQtYWxpZ24gOiByaWdodDtcbiAgICBwb3NpdGlvbiAgIDogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3cgICA6IGhpZGRlbjtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQgICAgOiAnJztcbiAgICAgICAgcG9zaXRpb24gICA6IGFic29sdXRlO1xuICAgICAgICB0b3AgICAgICAgIDogMDtcbiAgICAgICAgbGVmdCAgICAgICA6IC0xMzAlO1xuICAgICAgICB3aWR0aCAgICAgIDogMTAwJTtcbiAgICAgICAgaGVpZ2h0ICAgICA6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZCA6ICRibGFjaztcbiAgICAgICAgb3BhY2l0eSAgICA6IDAuNTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbk51bGwpO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudCAgICA6ICcnO1xuICAgICAgICBwb3NpdGlvbiAgIDogYWJzb2x1dGU7XG4gICAgICAgIHRvcCAgICAgICAgOiAwO1xuICAgICAgICBsZWZ0ICAgICAgIDogMDtcbiAgICAgICAgd2lkdGggICAgICA6IDEwMCU7XG4gICAgICAgIGhlaWdodCAgICAgOiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQgOiAkYmxhY2s7XG4gICAgICAgIG9wYWNpdHkgICAgOiAwLjU7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb25OdWxsKTtcbiAgICB9XG4gICAgJi5ob3ZlciB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQgOiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvblNsb3cpO1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgbGVmdCA6IDEzMCU7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uU2xvdyk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sb2dpbiB7XG4gICAgLmxpbmtfY3Rhe1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufVxuIiwiJGJsb2NCcmVhZGNydW1ic01hcCA6IChcbiAgICAnYm9keSBtYWluIC5ibG9jX2JyZWFkY3J1bWJzLmJyZWFkY3J1bWJzX2Fic29sdXRlJyA6IChcbiAgICAgICAgJ3RvcCc6IChcbiAgICAgICAgICAgIDcwcHgsIC8vIFZvaXIgLmJsb2NfbWFpbi5zY3NzID4gZGFucyBtYXAgXCJtYWluXCIgOiBwYWRkaW5nIHRvcFxuICAgICAgICAgICAgMTQwcHhcbiAgICAgICAgKSxcbiAgICApLFxuICAgICdib2R5IC5pbmZvX2Jhbm5lciArIGhlYWRlciArIG1haW4gLmJsb2NfYnJlYWRjcnVtYnMuYnJlYWRjcnVtYnNfYWJzb2x1dGUnIDogKFxuICAgICAgICAndG9wJzogKFxuICAgICAgICAgICAgMTA1cHgsIC8vIFZvaXIgLmJsb2NfbWFpbi5zY3NzID4gZGFucyBtYXAgXCIuaW5mb19iYW5uZXIgKyAuaGVhZGVyICsgbWFpblwiIDogcGFkZGluZyB0b3BcbiAgICAgICAgICAgIDE4OHB4XG4gICAgICAgICksXG4gICAgKSxcbik7XG5cbkBpbmNsdWRlIGZsdWlkKCRibG9jQnJlYWRjcnVtYnNNYXApO1xuXG4uYmxvY19icmVhZGNydW1icyB7XG4gICAgcGFkZGluZyA6IDIwcHggMDtcbiAgICBuYXYge1xuICAgICAgICBvbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkX2ZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXAgICAgICAgICA6IHdyYXA7XG4gICAgICAgICAgICAtd2Via2l0LWZsZXgtd3JhcCA6IHdyYXA7XG4gICAgICAgICAgICAtbXMtZmxleC13cmFwICAgICA6IHdyYXA7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplIDogMC44NzVlbTtcbiAgICAgICAgICAgICAgICBzcGFuLCBhLCAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheSA6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBjb2xvciAgIDogJGJsYWNrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXJfZm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uIDogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uICAgICAgOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodCA6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudCA6ICcvJztcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHlfYWxpZ25fYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodCAgIDogNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuYnJlYWRjcnVtYnNfZGtfYWJzb2x1dGUge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYV94X21heCgnbWQnKSB7XG4gICAgICAgICAgICB0b3AgOiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhX3hfbWluKCdtZCcpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uIDogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0ICAgICA6IDA7XG4gICAgICAgICAgICByaWdodCAgICA6IDA7XG4gICAgICAgICAgICB6LWluZGV4ICA6IDI7XG4gICAgICAgICAgICB3aWR0aCAgICA6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuLy9AaW5jbHVkZSBtZWRpYV94X21pbignbWQnKSB7XG4vLyAgICAuYmxvY19icmVhZGNydW1icyB7XG4vLyAgICAgICAgJi53aGl0ZSB7XG4vLyAgICAgICAgICAgIG5hdiB7XG4vLyAgICAgICAgICAgICAgICBvbCB7XG4vLyAgICAgICAgICAgICAgICAgICAgbGkge1xuLy8gICAgICAgICAgICAgICAgICAgICAgICBzcGFuLCBhLCAmOmFmdGVyIHtcbi8vICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yIDogJHdoaXRlO1xuLy8gICAgICAgICAgICAgICAgICAgICAgICB9XG4vLyAgICAgICAgICAgICAgICAgICAgfVxuLy8gICAgICAgICAgICAgICAgfVxuLy8gICAgICAgICAgICB9XG4vLyAgICAgICAgfVxuLy8gICAgfVxuLy99XG5cbkBpbmNsdWRlIG1lZGlhX3hfbWF4KCdtZCcpIHtcbiAgICAuYmxvY19icmVhZGNydW1icyB7XG4gICAgICAgIG9yZGVyICAgIDogOTk5O1xuICAgICAgICBwb3NpdGlvbiA6IHJlbGF0aXZlO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50ICAgIDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbiAgIDogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3AgICAgICAgIDogMDtcbiAgICAgICAgICAgIGJvdHRvbSAgICAgOiAtMXB4O1xuICAgICAgICAgICAgbGVmdCAgICAgICA6IC0yMHB4O1xuICAgICAgICAgICAgcmlnaHQgICAgICA6IC0yMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZCA6ICRibGFjaztcbiAgICAgICAgICAgIHotaW5kZXggICAgOiAxO1xuICAgICAgICB9XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIHBvc2l0aW9uIDogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4ICA6IDI7XG4gICAgICAgIH1cbiAgICAgICAgbmF2IHtcbiAgICAgICAgICAgIG9sIGxpIHtcbiAgICAgICAgICAgICAgICBzcGFuLCBhLCAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3IgOiAkYmVpZ2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/