/*!***********************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** 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_sell_with_us.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_sell_with_us.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.534dd206.eot);
  src: url(/build/shop/fonts/resee.534dd206.eot?#iefix) format("embedded-opentype"), url(/build/shop/fonts/resee.1c6af541.woff) format("woff"), url(/build/shop/fonts/resee.4fc91f3f.ttf) format("truetype"), url(/build/shop/images/resee.eb7ed7f8.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-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, .bloc_hero .ck-content.black .link .btn_cta:not(.link_cta) {
  background: #121212;
  color: #ffffff;
}
.btn_cta:not(.link_cta).btn_black:not(:disabled):not(.disabled), .bloc_hero .ck-content.black .link .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).btn_black:not(:disabled):not(.disabled):hover, .bloc_hero .ck-content.black .link .btn_cta:not(.link_cta):not(:disabled):not(.disabled):hover {
  background: #585858;
}
.btn_cta:not(.link_cta).btn_black:not(:disabled):not(.disabled):focus, .bloc_hero .ck-content.black .link .btn_cta:not(.link_cta):not(:disabled):not(.disabled):focus {
  background: #585858;
}
.btn_cta:not(.link_cta).btn_black:not(:disabled):not(.disabled).hover, .bloc_hero .ck-content.black .link .btn_cta:not(.link_cta):not(:disabled):not(.disabled).hover {
  background: #585858;
}
.btn_cta:not(.link_cta).btn_white, .bloc_hero .ck-content.white .link .btn_cta:not(.link_cta) {
  background: #ffffff;
  color: #121212;
}
.btn_cta:not(.link_cta).btn_white:not(:disabled):not(.disabled), .bloc_hero .ck-content.white .link .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).btn_white:not(:disabled):not(.disabled):hover, .bloc_hero .ck-content.white .link .btn_cta:not(.link_cta):not(:disabled):not(.disabled):hover {
  background: #f9f9f9;
}
.btn_cta:not(.link_cta).btn_white:not(:disabled):not(.disabled):focus, .bloc_hero .ck-content.white .link .btn_cta:not(.link_cta):not(:disabled):not(.disabled):focus {
  background: #f9f9f9;
}
.btn_cta:not(.link_cta).btn_white:not(:disabled):not(.disabled).hover, .bloc_hero .ck-content.white .link .btn_cta:not(.link_cta):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)) {
  .bloc_hero .ck-content {
    padding-bottom: 30px;
  }
}
@media (min-width: 440px) {
  .bloc_hero .ck-content {
    padding-bottom: calc(30px + (110) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .bloc_hero .ck-content {
    padding-bottom: 140px;
  }
}

@media (max-width: calc(440px - 1px)) {
  .bloc_hero .ck-content .btn_cta {
    padding-left: 30px;
  }
}
@media (min-width: 440px) {
  .bloc_hero .ck-content .btn_cta {
    padding-left: calc(30px + (50) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .bloc_hero .ck-content .btn_cta {
    padding-left: 80px;
  }
}
@media (max-width: calc(440px - 1px)) {
  .bloc_hero .ck-content .btn_cta {
    padding-right: 30px;
  }
}
@media (min-width: 440px) {
  .bloc_hero .ck-content .btn_cta {
    padding-right: calc(30px + (50) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .bloc_hero .ck-content .btn_cta {
    padding-right: 80px;
  }
}

@media (max-width: calc(440px - 1px)) {
  .bloc_hero .scroll_bottom {
    bottom: 15px;
  }
}
@media (min-width: 440px) {
  .bloc_hero .scroll_bottom {
    bottom: calc(15px + (35) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .bloc_hero .scroll_bottom {
    bottom: 50px;
  }
}

@media (max-width: calc(440px - 1px)) {
  .bloc_hero {
    top: -70px;
  }
}
@media (min-width: 440px) {
  .bloc_hero {
    top: calc(-70px + (-70) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .bloc_hero {
    top: -140px;
  }
}
@media (max-width: calc(440px - 1px)) {
  .bloc_hero {
    padding-top: 70px;
  }
}
@media (min-width: 440px) {
  .bloc_hero {
    padding-top: calc(70px + (70) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .bloc_hero {
    padding-top: 140px;
  }
}
@media (max-width: calc(440px - 1px)) {
  .bloc_hero {
    padding-bottom: 70px;
  }
}
@media (min-width: 440px) {
  .bloc_hero {
    padding-bottom: calc(70px + (10) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .bloc_hero {
    padding-bottom: 80px;
  }
}
@media (max-width: calc(440px - 1px)) {
  .bloc_hero {
    margin-bottom: -70px;
  }
}
@media (min-width: 440px) {
  .bloc_hero {
    margin-bottom: calc(-70px + (-70) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .bloc_hero {
    margin-bottom: -140px;
  }
}

@media (max-width: calc(440px - 1px)) {
  .bloc_hero + section {
    margin-top: -70px;
  }
}
@media (min-width: 440px) {
  .bloc_hero + section {
    margin-top: calc(-70px + (-10) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .bloc_hero + section {
    margin-top: -80px;
  }
}

@media (max-width: calc(440px - 1px)) {
  .info_banner + header + main .bloc_hero {
    top: -97px;
  }
}
@media (min-width: 440px) {
  .info_banner + header + main .bloc_hero {
    top: calc(-97px + (-81) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .info_banner + header + main .bloc_hero {
    top: -178px;
  }
}
@media (max-width: calc(440px - 1px)) {
  .info_banner + header + main .bloc_hero {
    padding-top: 97px;
  }
}
@media (min-width: 440px) {
  .info_banner + header + main .bloc_hero {
    padding-top: calc(97px + (81) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .info_banner + header + main .bloc_hero {
    padding-top: 178px;
  }
}
@media (max-width: calc(440px - 1px)) {
  .info_banner + header + main .bloc_hero {
    margin-bottom: -97px;
  }
}
@media (min-width: 440px) {
  .info_banner + header + main .bloc_hero {
    margin-bottom: calc(-97px + (-81) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .info_banner + header + main .bloc_hero {
    margin-bottom: -178px;
  }
}

.bloc_hero {
  background: #ffffff;
  height: calc(100vh - 10px);
}
.bloc_hero > div, .bloc_hero > a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.bloc_hero > div > div, .bloc_hero > a > div {
  position: relative;
  z-index: 2;
}
.bloc_hero img, .bloc_hero video {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  -o-object-fit: cover;
  object-position: center;
  -o-object-position: center;
}
.bloc_hero .ck-content {
  display: block;
  width: 100%;
}
.bloc_hero .ck-content .titre_h1 {
  color: #ffe8d6;
}
.bloc_hero .ck-content .link {
  display: block;
  padding-top: 30px;
  margin-top: 30px;
  border-top: 0px solid #ffe8d6;
  text-align: right;
  text-decoration: none;
}
.bloc_hero .ck-content .link:only-child {
  border: none;
  margin: 0;
  padding: 0;
  text-align: center;
}
.bloc_hero .ck-content .scroll_bottom {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  color: #ffe8d6;
  padding-bottom: 15px;
  cursor: pointer;
}
.bloc_hero .ck-content .scroll_bottom .txt {
  display: block;
  font-family: "Inter", sans-serif;
  font-weight: 500;
  font-size: 0.95em;
  text-transform: uppercase;
}
.bloc_hero .ck-content .scroll_bottom .icon {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: 0;
  font-size: 0.8em;
  animation: scroll_bottom 5s infinite;
}
.bloc_hero .ck-content .scroll_bottom .icon:before {
  display: block;
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
}
.bloc_hero .ck-content.black .titre_h1 {
  color: #121212;
}
.bloc_hero .ck-content.black .link {
  border-color: #121212;
}
.bloc_hero .ck-content.black .scroll_bottom {
  color: #121212;
}
.bloc_hero .ck-content.white .titre_h1 {
  color: #ffffff;
}
.bloc_hero .ck-content.white .link {
  border-color: #ffffff;
}
.bloc_hero .ck-content.white .scroll_bottom {
  color: #ffffff;
}

@media (min-width: 1024px) {
  .bloc_hero {
    padding-bottom: 0;
  }
  .bloc_hero + section {
    margin-top: 0;
  }
}
@media (max-width: calc(768px - 1px)) {
  .bloc_hero .ck-content .scroll_bottom {
    display: none;
  }
}
@media (max-width: calc(768px - 1px)) {
  .bloc_hero {
    height: calc(100vh - 8px);
    margin-left: -12px;
    margin-right: -12px;
  }
  .bloc_hero > div, .bloc_hero > a {
    padding-left: 12px;
    padding-right: 12px;
  }
}
@-webkit-keyframes scroll_bottom {
  0% {
    opacity: 0;
    bottom: 0;
  }
  10% {
    opacity: 1;
    bottom: 0;
  }
  50% {
    opacity: 1;
    bottom: 0;
  }
  75% {
    opacity: 1;
    bottom: -10px;
  }
  100% {
    opacity: 0;
    bottom: -10px;
  }
}
@keyframes scroll_bottom {
  0% {
    opacity: 0;
    bottom: 0;
  }
  10% {
    opacity: 1;
    bottom: 0;
  }
  50% {
    opacity: 1;
    bottom: 0;
  }
  75% {
    opacity: 1;
    bottom: -10px;
  }
  100% {
    opacity: 0;
    bottom: -10px;
  }
}
/* - Variables
................................................................................................................... */
/* - Génération des tailles Fluides
................................................................................................................... */
@media (max-width: calc(440px - 1px)) {
  .bloc_cards .title_cards {
    margin-bottom: 20px;
  }
}
@media (min-width: 440px) {
  .bloc_cards .title_cards {
    margin-bottom: calc(20px + (20) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .bloc_cards .title_cards {
    margin-bottom: 40px;
  }
}

@media (max-width: calc(440px - 1px)) {
  .bloc_cards .link_cards {
    margin-top: 20px;
  }
}
@media (min-width: 440px) {
  .bloc_cards .link_cards {
    margin-top: calc(20px + (20) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .bloc_cards .link_cards {
    margin-top: 40px;
  }
}

.bloc_cards .title_cards .title_link a {
  font-family: "Inter", sans-serif;
  font-weight: 400;
  text-decoration: underline;
}
.bloc_cards .link_cards .btn_cta {
  width: 100%;
}
@media (min-width: 576px) {
  .bloc_cards .link_cards .btn_cta {
    max-width: 320px;
  }
}
@media (max-width: calc(768px - 1px)) {
  .bloc_cards .link_cards.col_12.col_md_6 .card_product > .row {
    display: block;
  }
  .bloc_cards .link_cards.col_12.col_md_6 .card_product > .row > .col_content {
    display: block;
  }
}
.bloc_cards .slider_products .title_cards, .bloc_cards .slider_taxons .title_cards, .bloc_cards .slider_articles .title_cards {
  padding: 0 10px;
}

@media (max-width: calc(768px - 1px)) {
  .bloc_cards .slider_products .title_cards, .bloc_cards .slider_articles .title_cards {
    padding: 0 8px;
  }
}
/* - Variables
................................................................................................................... */
/* - Génération des tailles Fluides
................................................................................................................... */
@media (max-width: calc(440px - 1px)) {
  .sell_with_us .bloc_sell_with_us .ck-content {
    padding-bottom: 40px;
  }
}
@media (min-width: 440px) {
  .sell_with_us .bloc_sell_with_us .ck-content {
    padding-bottom: calc(40px + (70) * (100vw - 440px) / (1230 - 440));
  }
}
@media (min-width: 1230px) {
  .sell_with_us .bloc_sell_with_us .ck-content {
    padding-bottom: 110px;
  }
}

.sell_with_us .bloc_sell_with_us .btn_cta {
  width: 100%;
}
@media (min-width: 576px) {
  .sell_with_us .bloc_sell_with_us .btn_cta {
    max-width: 320px;
  }
}

@media (min-width: 576px) {
  .sell_with_us .bloc_hero .ck-content .titre_h1 {
    color: #121212;
  }
  .sell_with_us .bloc_hero .ck-content .link {
    border-color: #121212;
  }
}
@media (max-width: calc(576px - 1px)) {
  .sell_with_us .bloc_hero .ck-content .titre_h1 {
    color: #ffffff;
  }
  .sell_with_us .bloc_hero .ck-content .link {
    border-color: #ffffff;
  }
  .sell_with_us .bloc_hero .ck-content .btn_cta {
    width: 100%;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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K0lKOztBUzVKRTtFQUVFO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtBVDJKSjs7QVN4S0U7RUFFRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7QVR1S0o7O0FTcExFO0VBRUU7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0FUbUxKOztBU2hNRTtFQUVFO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtBVCtMSjs7QVM1TUU7RUFFRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7QVQyTUo7O0FTeE5FO0VBRUU7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0FUdU5KOztBU3BPRTtFQUVFO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtBVG1PSjs7QVNoUEU7RUFFRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7QVQrT0o7O0FNMVpDO0VHK0xPO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQwTlI7RVN6T007SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVHNPUjtFU3JQTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUa1BSO0VTalFNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQ4UFI7RVM3UU07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDBRUjtFU3pSTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUc1JSO0VTclNNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRrU1I7RVNqVE07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDhTUjtFUzdUTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUMFRSO0VTelVNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRzVVI7RVNyVk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVGtWUjtFU2pXTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUOFZSO0VTN1dNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQwV1I7RVN2V0k7SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0VUc1dOO0VTcFdJO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtFVG1XTjtFU2pXSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVRnV047QUFDRjtBTXZsQkM7RUcrTE87SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVHNaUjtFU3JhTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUa2FSO0VTamJNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQ4YVI7RVM3Yk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDBiUjtFU3pjTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUc2NSO0VTcmRNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRrZFI7RVNqZU07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDhkUjtFUzdlTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUMGVSO0VTemZNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRzZlI7RVNyZ0JNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRrZ0JSO0VTamhCTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUOGdCUjtFUzdoQk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDBoQlI7RVN6aUJNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRzaUJSO0VTbmlCSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVRraUJOO0VTaGlCSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVQraEJOO0VTN2hCSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVQ0aEJOO0FBQ0Y7QU1ueEJDO0VHK0xPO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRrbEJSO0VTam1CTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUOGxCUjtFUzdtQk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDBtQlI7RVN6bkJNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRzbkJSO0VTcm9CTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUa29CUjtFU2pwQk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDhvQlI7RVM3cEJNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQwcEJSO0VTenFCTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUc3FCUjtFU3JyQk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVGtyQlI7RVNqc0JNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQ4ckJSO0VTN3NCTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUMHNCUjtFU3p0Qk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVHN0QlI7RVNydUJNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRrdUJSO0VTL3RCSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVQ4dEJOO0VTNXRCSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVQydEJOO0VTenRCSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVR3dEJOO0FBQ0Y7QU0vOEJDO0VHK0xPO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQ4d0JSO0VTN3hCTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUMHhCUjtFU3p5Qk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVHN5QlI7RVNyekJNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRrekJSO0VTajBCTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUOHpCUjtFUzcwQk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDAwQlI7RVN6MUJNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRzMUJSO0VTcjJCTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUazJCUjtFU2ozQk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDgyQlI7RVM3M0JNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQwM0JSO0VTejRCTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUczRCUjtFU3I1Qk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVGs1QlI7RVNqNkJNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQ4NUJSO0VTMzVCSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVQwNUJOO0VTeDVCSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVR1NUJOO0VTcjVCSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVRvNUJOO0FBQ0Y7QU0zb0NDO0VHK0xPO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQwOEJSO0VTejlCTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUczlCUjtFU3IrQk07SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVGsrQlI7RVNqL0JNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQ4K0JSO0VTNy9CTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUMC9CUjtFU3pnQ007SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVHNnQ1I7RVNyaENNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRraENSO0VTamlDTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUOGhDUjtFUzdpQ007SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDBpQ1I7RVN6akNNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVRzakNSO0VTcmtDTTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7SUFFQTtJQUVBO0VUa2tDUjtFU2psQ007SUFFRTtJQUNBO0lBQ0E7SUFFQTtJQUNBO0lBRUE7SUFDQTtJQUNBO0lBRUE7SUFFQTtFVDhrQ1I7RVM3bENNO0lBRUU7SUFDQTtJQUNBO0lBRUE7SUFDQTtJQUVBO0lBQ0E7SUFDQTtJQUVBO0lBRUE7RVQwbENSO0VTdmxDSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVRzbENOO0VTcGxDSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVRtbENOO0VTamxDSTtJQUVFO0lBQ0E7SUFDQTtJQUVBO0lBQ0E7SUFFQTtJQUNBO0lBQ0E7RVRnbENOO0FBQ0Y7QVNya0NFO0VBQ0U7QVR1a0NKOztBU3hrQ0U7RUFDRTtBVDJrQ0o7O0FTNWtDRTtFQUNFO0FUK2tDSjs7QVNobENFO0VBQ0U7QVRtbENKOztBU3BsQ0U7RUFDRTtBVHVsQ0o7O0FTeGxDRTtFQUNFO0FUMmxDSjs7QVM1bENFO0VBQ0U7QVQrbENKOztBU2htQ0U7RUFDRTtBVG1tQ0o7O0FTcG1DRTtFQUNFO0FUdW1DSjs7QVN4bUNFO0VBQ0U7QVQybUNKOztBUzVtQ0U7RUFDRTtBVCttQ0o7O0FTaG5DRTtFQUNFO0FUbW5DSjs7QVNwbkNFO0VBQ0U7QVR1bkNKOztBTTEzQ0M7RUcrUU87SUFDRTtFVCttQ1I7RVNobkNNO0lBQ0U7RVRrbkNSO0VTbm5DTTtJQUNFO0VUcW5DUjtFU3RuQ007SUFDRTtFVHduQ1I7RVN6bkNNO0lBQ0U7RVQybkNSO0VTNW5DTTtJQUNFO0VUOG5DUjtFUy9uQ007SUFDRTtFVGlvQ1I7RVNsb0NNO0lBQ0U7RVRvb0NSO0VTcm9DTTtJQUNFO0VUdW9DUjtFU3hvQ007SUFDRTtFVDBvQ1I7RVMzb0NNO0lBQ0U7RVQ2b0NSO0VTOW9DTTtJQUNFO0VUZ3BDUjtFU2pwQ007SUFDRTtFVG1wQ1I7QUFDRjtBTXA2Q0M7RUcrUU87SUFDRTtFVHdwQ1I7RVN6cENNO0lBQ0U7RVQycENSO0VTNXBDTTtJQUNFO0VUOHBDUjtFUy9wQ007SUFDRTtFVGlxQ1I7RVNscUNNO0lBQ0U7RVRvcUNSO0VTcnFDTTtJQUNFO0VUdXFDUjtFU3hxQ007SUFDRTtFVDBxQ1I7RVMzcUNNO0lBQ0U7RVQ2cUNSO0VTOXFDTTtJQUNFO0VUZ3JDUjtFU2pyQ007SUFDRTtFVG1yQ1I7RVNwckNNO0lBQ0U7RVRzckNSO0VTdnJDTTtJQUNFO0VUeXJDUjtFUzFyQ007SUFDRTtFVDRyQ1I7QUFDRjtBTTc4Q0M7RUcrUU87SUFDRTtFVGlzQ1I7RVNsc0NNO0lBQ0U7RVRvc0NSO0VTcnNDTTtJQUNFO0VUdXNDUjtFU3hzQ007SUFDRTtFVDBzQ1I7RVMzc0NNO0lBQ0U7RVQ2c0NSO0VTOXNDTTtJQUNFO0VUZ3RDUjtFU2p0Q007SUFDRTtFVG10Q1I7RVNwdENNO0lBQ0U7RVRzdENSO0VTdnRDTTtJQUNFO0VUeXRDUjtFUzF0Q007SUFDRTtFVDR0Q1I7RVM3dENNO0lBQ0U7RVQrdENSO0VTaHVDTTtJQUNFO0VUa3VDUjtFU251Q007SUFDRTtFVHF1Q1I7QUFDRjtBTXQvQ0M7RUcrUU87SUFDRTtFVDB1Q1I7RVMzdUNNO0lBQ0U7RVQ2dUNSO0VTOXVDTTtJQUNFO0VUZ3ZDUjtFU2p2Q007SUFDRTtFVG12Q1I7RVNwdkNNO0lBQ0U7RVRzdkNSO0VTdnZDTTtJQUNFO0VUeXZDUjtFUzF2Q007SUFDRTtFVDR2Q1I7RVM3dkNNO0lBQ0U7RVQrdkNSO0VTaHdDTTtJQUNFO0VUa3dDUjtFU253Q007SUFDRTtFVHF3Q1I7RVN0d0NNO0lBQ0U7RVR3d0NSO0VTendDTTtJQUNFO0VUMndDUjtFUzV3Q007SUFDRTtFVDh3Q1I7QUFDRjtBTS9oREM7RUcrUU87SUFDRTtFVG14Q1I7RVNweENNO0lBQ0U7RVRzeENSO0VTdnhDTTtJQUNFO0VUeXhDUjtFUzF4Q007SUFDRTtFVDR4Q1I7RVM3eENNO0lBQ0U7RVQreENSO0VTaHlDTTtJQUNFO0VUa3lDUjtFU255Q007SUFDRTtFVHF5Q1I7RVN0eUNNO0lBQ0U7RVR3eUNSO0VTenlDTTtJQUNFO0VUMnlDUjtFUzV5Q007SUFDRTtFVDh5Q1I7RVMveUNNO0lBQ0U7RVRpekNSO0VTbHpDTTtJQUNFO0VUb3pDUjtFU3J6Q007SUFDRTtFVHV6Q1I7QUFDRjtBRzFnREE7dUhBQUE7QU94RUE7O3VIQUFBO0FBSUE7dUhBQUE7QVB1RUE7dUhBQUE7QVEzRUE7O3VIQUFBO0FBSUE7dUhBQUE7QUFXQTt1SEFBQTtBQWVBO0VBVEM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVhnbEREOztBVzdqREE7RUFUQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWDBrREQ7O0FXdGpEQTtFQVZDO0VBQ0E7RUFDQTtF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c0IzMkhBO0VBQ0k7QXRCODJISjs7QXNCNTJIQTtFQUNJO0F0QisySEo7O0FzQjcySEE7RUFDSTtBdEJnM0hKOztBc0I5MkhBO0VBQ0k7QXRCaTNISjs7QXNCLzJIQTtFQUNJO0F0QmszSEo7O0FzQmgzSEE7RUFDSTtBdEJtM0hKOztBc0JqM0hBO0VBQ0k7QXRCbzNISjs7QXNCbDNIQTtFQUNJO0F0QnEzSEo7O0FzQm4zSEE7RUFDSTtBdEJzM0hKOztBc0JwM0hBO0VBQ0k7QXRCdTNISjs7QXNCcjNIQTtFQUNJO0F0QnczSEo7O0FzQnQzSEE7RUFDSTtBdEJ5M0hKOztBc0J2M0hBO0VBQ0k7QXRCMDNISjs7QXNCeDNIQTtFQUNJO0F0QjIzSEo7O0FzQnozSEE7RUFDSTtBdEI0M0hKOztBc0IxM0hBO0VBQ0k7QXRCNjNISjs7QXNCMzNIQTtFQUNJO0F0QjgzSEo7O0FzQjUzSEE7RUFDSTtBdEIrM0hKOztBc0I3M0hBO0VBQ0k7QXRCZzRISjs7QXNCOTNIQTtFQUNJO0F0Qmk0SEo7O0FzQi8zSEE7RUFDSTtBdEJrNEhKOztBc0JoNEhBO0VBQ0k7QXRCbTRISjs7QXNCajRIQTtFQUNDO0F0Qm80SEQ7O0FzQmw0SEE7RUFDQztBdEJxNEhEOztBc0JuNEhBO0VBQ0M7QXRCczRIRDs7QXNCcDRIQTtFQUNDO0F0QnU0SEQ7O0FzQnI0SEE7RUFDQztBdEJ3NEhEOztBc0J0NEhBO0VBQ0k7RUFDQTtBdEJ5NEhKOztBRzUrSEE7dUhBQUE7QUkxR0M7cUhBQUE7QUFTQTtxSEFBQTtBREdBO0VDRUM7SUFjSSxZQVRLO0VQOGtJVDtBQUNGO0FNOWxJQztFQ1VDO0lBb0JJO0VQb2tJSjtBQUNGO0FNbm1JQztFQ1VDO0lBMEJJLFlBakJNO0VQb2xJVjtBQUNGO0FNaG1JQztFQ0VDO0lBY0ksa0JBVEs7RVA2bElUO0FBQ0Y7QU03bUlDO0VDVUM7SUFvQkk7RVBtbElKO0FBQ0Y7QU1sbklDO0VDVUM7SUEwQkksa0JBakJNO0VQbW1JVjtBQUNGO0FNL21JQztFQ0VDO0lBY0ksbUJBVEs7RVA0bUlUO0FBQ0Y7QU01bklDO0VDVUM7SUFvQkk7RVBrbUlKO0FBQ0Y7QU1qb0lDO0VDVUM7SUEwQkksbUJBakJNO0VQa25JVjtBQUNGOztBTTluSUM7RUNFQztJQWNJLFlBVEs7RVA0bklUO0FBQ0Y7QU01b0lDO0VDVUM7SUFvQkk7RVBrbklKO0FBQ0Y7QU1qcElDO0VDVUM7SUEwQkksWUFqQk07RVBrb0lWO0FBQ0Y7QU05b0lDO0VDRUM7SUFjSSxrQkFUSztFUDJvSVQ7QUFDRjtBTTNwSUM7RUNVQztJQW9CSTtFUGlvSUo7QUFDRjtBTWhxSUM7RUNVQztJQTBCSSxrQkFqQk07RVBpcElWO0FBQ0Y7QU03cElDO0VDRUM7SUFjSSxtQkFUSztFUDBwSVQ7QUFDRjtBTTFxSUM7RUNVQztJQW9CSTtFUGdwSUo7QUFDRjtBTS9xSUM7RUNVQztJQTBCSSxtQkFqQk07RVBncUlWO0FBQ0Y7O0FNNXFJQztFQ0VDO0lBY0ksWUFUSztFUDBxSVQ7QUFDRjtBTTFySUM7RUNVQztJQW9CSTtFUGdxSUo7QUFDRjtBTS9ySUM7RUNVQztJQTBCSSxZQWpCTTtFUGdySVY7QUFDRjtBTTVySUM7RUNFQztJQWNJLGtCQVRLO0VQeXJJVDtBQUNGO0FNenNJQztFQ1VDO0lBb0JJO0VQK3FJSjtBQUNGO0FNOXNJQztFQ1VDO0lBMEJJLGtCQWpCTTtFUCtySVY7QUFDRjtBTTNzSUM7RUNFQztJQWNJLG1CQVRLO0VQd3NJVDtBQUNGO0FNeHRJQztFQ1VDO0lBb0JJO0VQOHJJSjtBQUNGO0FNN3RJQztFQ1VDO0lBMEJJLG1CQWpCTTtFUDhzSVY7QUFDRjs7QU0xdElDO0VDRUM7SUFjSSxnQkFUSztFUHd0SVQ7QUFDRjtBTXh1SUM7RUNVQztJQW9CSTtFUDhzSUo7QUFDRjtBTTd1SUM7RUNVQztJQTBCSSxpQkFqQk07RVA4dElWO0FBQ0Y7QU0xdUlDO0VDRUM7SUFjSSxnQkFUSztFUHV1SVQ7QUFDRjtBTXZ2SUM7RUNVQztJQW9CSTtFUDZ0SUo7QUFDRjtBTTV2SUM7RUNVQztJQTBCSSxnQkFqQk07RVA2dUlWO0FBQ0Y7O0F1Qmx0SUE7RVgzQkM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFV3lCRztFWjBWSDtFQUNBO0VBQ0E7RUFyS0E7RUFDQTtFQUNBO0VBQ0E7RVdwT0c7RUFDQTtFQzZDQTtFQUNBLG1CdEJ2RGM7RXNCd0RkLGN0QnJEYztFc0JzRGQ7RUFDQTtFRjlESCwwQkUrRG1CO0VGOURuQix1QkU4RG1CO0VGN0RuQixrQkU2RG1CO0F2Qml1SXBCO0F1Qmh1SUk7RUFDSTtFQUNBO0F2Qmt1SVI7QXVCaHVJSTtFQUNJO0VQckVQLHNDZjJCaUI7RWUxQmpCLG9DZjBCaUI7RWV6QmpCLHlDZnlCaUI7RWV4QmpCLGlDZndCaUI7QURneElsQjtBRWh4SUk7RXFCNkNRLG1CdEJuRU07QUR5eUlsQjtBRWh4SUk7RXFCMENRLG1CdEJuRU07QUQ0eUlsQjtBdUJ2dUlRO0VBQ0ksbUJ0QnRFTTtBRCt5SWxCO0F1QnR1SUk7RUFDSSxtQnRCeEVVO0VzQnlFVixjdEJsRVU7QUQweUlsQjtBdUJ2dUlRO0VBQ0k7RVBsRlgsc0NmMkJpQjtFZTFCakIsb0NmMEJpQjtFZXpCakIseUNmeUJpQjtFZXhCakIsaUNmd0JpQjtBRG95SWxCO0FFcHlJSTtFcUIwRFksbUJ0QjdFRTtBRDB6SWxCO0FFcHlJSTtFcUJ1RFksbUJ0QjdFRTtBRDZ6SWxCO0F1Qjl1SVk7RUFDSSxtQnRCaEZFO0FEZzBJbEI7QXVCNXVJSTtFQUNJLG1CdEIvRVU7RXNCZ0ZWLGN0QnZGVTtBRHEwSWxCO0F1Qjd1SVE7RUFDSTtFUGhHWCxzQ2YyQmlCO0VlMUJqQixvQ2YwQmlCO0VlekJqQix5Q2Z5QmlCO0VleEJqQixpQ2Z3QmlCO0FEd3pJbEI7QUV4eklJO0VxQndFWSxtQnRCdkZFO0FEMDBJbEI7QUV4eklJO0VxQnFFWSxtQnRCdkZFO0FENjBJbEI7QXVCcHZJWTtFQUNJLG1CdEIxRkU7QURnMUlsQjtBdUJsdklJO0VBQ0k7RUFDQTtFQUNBLGN0QnRHVTtBRDAxSWxCO0F1Qm52SVE7RUFDSTtFUC9HWCxzQ2YyQmlCO0VlMUJqQixvQ2YwQmlCO0VlekJqQix5Q2Z5QmlCO0VleEJqQixpQ2Z3QmlCO0FENjBJbEI7QUU3MElJO0VxQnVGWSxtQnRCdEdFO0VzQnVHRixxQnRCdkdFO0FEZzJJbEI7QUU5MElJO0VxQm9GWSxtQnRCdEdFO0VzQnVHRixxQnRCdkdFO0FEbzJJbEI7QXVCM3ZJWTtFQUNJLG1CdEIxR0U7RXNCMkdGLHFCdEIzR0U7QUR3MklsQjtBdUJ4dklRO0VBQ0k7RUFDQTtBdkIwdklaO0F1Qnp2SVk7RVovRlg7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RVkyRmU7RUFDQTtBdkJpd0loQjtBdUI1dklRO0VBQ0k7RUFDQTtBdkI4dklaO0F1QjN2SUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBdkI2dklSOztBdUJ6dklBO0VYM0hDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RVd5SEc7RUQxSUE7RUFDQTtFQzJJQTtFQUNBLGN0QmxKYztFc0JtSmQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkJpd0lKO0F1Qi92SVE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RVB6S1Asc0NmMkJpQjtFZTFCakIsb0NmMEJpQjtFZXpCakIseUNmeUJpQjtFZXhCakIsaUNmd0JpQjtBRG01SWxCO0F1Qmp3SUk7RUFDSSxjdEIxS1U7QUQ2NklsQjtBdUJsd0lRO0VBQ0k7QXZCb3dJWjtBdUJqd0lJO0VBQ0ksY3RCdEtVO0FEeTZJbEI7QXVCbHdJUTtFQUNJO0F2Qm93SVo7QXVCandJSTtFQUNJO0F2Qm13SVI7QXVCandJSTtFQUNJO0F2Qm13SVI7QXVCaHdJUTtFQUNJO0F2Qmt3SVo7QXVCaHdJUTtFQUNJO0F2Qmt3SVo7QXVCdHdJUTtFQUNJO0F2Qnd3SVo7QXVCdHdJUTtFQUNJO0F2Qnd3SVo7QXVCcHdJUTtFQUNJO0F2QnN3SVo7QXVCcHdJUTtFQUNJO0F2QnN3SVo7QXVCbndJSTtFRDdNQTtFQUNBO0VDOE1JO0F2QnN3SVI7QXVCcHdJSTtFQUNJO0VBQ0E7QXZCc3dJUjtBdUJyd0lRO0VBQ0k7RUFDQTtBdkJ1d0laO0F1QnJ3SVE7RUFDSTtBdkJ1d0laO0F1QnJ3SVE7RUFDSTtBdkJ1d0laO0F1QnB3SVk7RUFDSTtBdkJzd0loQjtBdUJwd0lZO0VBQ0k7QXZCc3dJaEI7QXVCMXdJWTtFQUNJO0F2QjR3SWhCO0F1QjF3SVk7RUFDSTtBdkI0d0loQjtBdUJ4d0lZO0VBQ0k7QXZCMHdJaEI7QXVCeHdJWTtFQUNJO0F2QjB3SWhCO0F1QnR3SUk7RUQvT0E7RUFDQTtFQ2dQSTtBdkJ5d0lSO0F1Qnh3SVE7RUxwUFAsaUNLcVA4QjtFTHBQOUIsOEJLb1A4QjtFTG5QOUIsNkJLbVA4QjtFTGxQOUIsNEJLa1A4QjtFTGpQOUIseUJLaVA4QjtBdkI4d0kvQjtBdUI1d0lRO0VBQ0k7QXZCOHdJWjtBdUI1d0lRO0VBQ0k7QXZCOHdJWjtBdUIzd0lZO0VBQ0k7QXZCNndJaEI7QXVCM3dJWTtFQUNJO0F2QjZ3SWhCO0F1Qmp4SVk7RUFDSTtBdkJteEloQjtBdUJqeElZO0VBQ0k7QXZCbXhJaEI7QXVCL3dJWTtFQUNJO0F2Qml4SWhCO0F1Qi93SVk7RUFDSTtBdkJpeEloQjs7QXVCM3dJQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F2Qjh3SUo7QXVCN3dJSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLG1CdEJyUlU7RXNCc1JWO0VQN1JQLG1DZjZCaUI7RWU1QmpCLGlDZjRCaUI7RWUzQmpCLHNDZjJCaUI7RWUxQmpCLDhCZjBCaUI7QURtaEpsQjtBdUJoeElJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsbUJ0QmhTVTtFc0JpU1Y7RVB4U1AsbUNmNkJpQjtFZTVCakIsaUNmNEJpQjtFZTNCakIsc0NmMkJpQjtFZTFCakIsOEJmMEJpQjtBRGlpSmxCO0F1Qmx4SVE7RUFDSTtFUDdTWCxxQ2Y0QmlCO0VlM0JqQixtQ2YyQmlCO0VlMUJqQix3Q2YwQmlCO0VlekJqQixnQ2Z5QmlCO0FEeWlKbEI7QXVCcnhJUTtFQUNJO0VQalRYLHFDZjRCaUI7RWUzQmpCLG1DZjJCaUI7RWUxQmpCLHdDZjBCaUI7RWV6QmpCLGdDZnlCaUI7QURnakpsQjs7QXVCcHhJSTtFQUNJO0VBQ0E7RUFDQTtBdkJ1eElSOztBT2psSkM7cUhBQUE7QUFTQTtxSEFBQTtBREdBO0VDRUM7SUFjSSxTQVRLO0VQdWtKVDtBQUNGO0FNdmxKQztFQ1VDO0lBb0JJO0VQNmpKSjtBQUNGO0FNNWxKQztFQ1VDO0lBMEJJLFVBakJNO0VQNmtKVjtBQUNGOztBTXpsSkM7RUNFQztJQWNJLFVBVEs7RVB1bEpUO0FBQ0Y7QU12bUpDO0VDVUM7SUFvQkk7RVA2a0pKO0FBQ0Y7QU01bUpDO0VDVUM7SUEwQkksVUFqQk07RVA2bEpWO0FBQ0Y7O0F3QjFtSkE7RUFDSTtBeEI2bUpKO0F3QjNtSlE7RVpVUDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VZWlc7RUFDQTtFQUNBO0F4QmluSlo7QXdCaG5KWTtFQUNJO0F4QmtuSmhCO0F3QmpuSmdCO0VBQ0k7RUFDQSxjdkJqQkY7QURvb0psQjtBRWhuSkk7RXNCQ29CO0F4QmtuSnhCO0FFaG5KSTtFc0JGb0I7QXhCcW5KeEI7QXdCbG5KZ0I7RUFDSTtFQUNBO0F4Qm9uSnBCO0F3Qm5uSm9CO0VBQ0k7RWJIdkI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWFEdUI7QXhCMm5KeEI7QU1ucEpDO0VrQjhCRztJQUVRO0V4QnVuSlY7QUFDRjtBTWhxSkM7RWtCc0NHO0lBS1E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFeEJ5bkpWO0FBQ0Y7O0FNanFKQztFa0I4REc7SUFDSTtJQUNBO0V4QnVtSk47RXdCdG1KTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBLG1CdkI5RU07SXVCK0VOO0V4QndtSlY7RXdCdG1KTTtJQUNJO0lBQ0E7RXhCd21KVjtFd0JwbUpjO0lBQ0ksY3ZCM0ZGO0VEaXNKaEI7QUFDRjtBT3JzSkM7cUhBQUE7QUFTQTtxSEFBQTtBREdBO0VDRUM7SUFjSSxvQkFUSztFUDBySlQ7QUFDRjtBTTFzSkM7RUNVQztJQW9CSTtFUGdySko7QUFDRjtBTS9zSkM7RUNVQztJQTBCSSxxQkFqQk07RVBnc0pWO0FBQ0Y7O0FNNXNKQztFQ0VDO0lBY0ksa0JBVEs7RVAwc0pUO0FBQ0Y7QU0xdEpDO0VDVUM7SUFvQkk7RVBnc0pKO0FBQ0Y7QU0vdEpDO0VDVUM7SUEwQkksa0JBakJNO0VQZ3RKVjtBQUNGO0FNNXRKQztFQ0VDO0lBY0ksbUJBVEs7RVB5dEpUO0FBQ0Y7QU16dUpDO0VDVUM7SUFvQkk7RVArc0pKO0FBQ0Y7QU05dUpDO0VDVUM7SUEwQkksbUJBakJNO0VQK3RKVjtBQUNGOztBTTN1SkM7RUNFQztJQWNJLFlBVEs7RVB5dUpUO0FBQ0Y7QU16dkpDO0VDVUM7SUFvQkk7RVArdEpKO0FBQ0Y7QU05dkpDO0VDVUM7SUEwQkksWUFqQk07RVArdUpWO0FBQ0Y7O0FNM3ZKQztFQ0VDO0lBY0ksVUFUSztFUHl2SlQ7QUFDRjtBTXp3SkM7RUNVQztJQW9CSTtFUCt1Sko7QUFDRjtBTTl3SkM7RUNVQztJQTBCSSxXQWpCTTtFUCt2SlY7QUFDRjtBTTN3SkM7RUNFQztJQWNJLGlCQVRLO0VQd3dKVDtBQUNGO0FNeHhKQztFQ1VDO0lBb0JJO0VQOHZKSjtBQUNGO0FNN3hKQztFQ1VDO0lBMEJJLGtCQWpCTTtFUDh3SlY7QUFDRjtBTTF4SkM7RUNFQztJQWNJLG9CQVRLO0VQdXhKVDtBQUNGO0FNdnlKQztFQ1VDO0lBb0JJO0VQNndKSjtBQUNGO0FNNXlKQztFQ1VDO0lBMEJJLG9CQWpCTTtFUDZ4SlY7QUFDRjtBTXp5SkM7RUNFQztJQWNJLG9CQVRLO0VQc3lKVDtBQUNGO0FNdHpKQztFQ1VDO0lBb0JJO0VQNHhKSjtBQUNGO0FNM3pKQztFQ1VDO0lBMEJJLHFCQWpCTTtFUDR5SlY7QUFDRjs7QU14ekpDO0VDRUM7SUFjSSxpQkFUSztFUHN6SlQ7QUFDRjtBTXQwSkM7RUNVQztJQW9CSTtFUDR5Sko7QUFDRjtBTTMwSkM7RUNVQztJQTBCSSxpQkFqQk07RVA0ekpWO0FBQ0Y7O0FNeDBKQztFQ0VDO0lBY0ksVUFUSztFUHMwSlQ7QUFDRjtBTXQxSkM7RUNVQztJQW9CSTtFUDR6Sko7QUFDRjtBTTMxSkM7RUNVQztJQTBCSSxXQWpCTTtFUDQwSlY7QUFDRjtBTXgxSkM7RUNFQztJQWNJLGlCQVRLO0VQcTFKVDtBQUNGO0FNcjJKQztFQ1VDO0lBb0JJO0VQMjBKSjtBQUNGO0FNMTJKQztFQ1VDO0lBMEJJLGtCQWpCTTtFUDIxSlY7QUFDRjtBTXYySkM7RUNFQztJQWNJLG9CQVRLO0VQbzJKVDtBQUNGO0FNcDNKQztFQ1VDO0lBb0JJO0VQMDFKSjtBQUNGO0FNejNKQztFQ1VDO0lBMEJJLHFCQWpCTTtFUDAySlY7QUFDRjs7QXlCdjBKQTtFQUNJLG1CeEIvQ2M7RXdCZ0RkO0F6QjAwSko7QXlCejBKSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0F6QjIwSlI7QXlCMTBKUTtFQUNJO0VBQ0E7QXpCNDBKWjtBeUJ6MEpJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V2Qm5FSjtFQUNBO0VBQ0E7RUFDQTtBRis0Sko7QXlCNTBKSTtFQUNJO0VBQ0E7QXpCODBKUjtBeUI3MEpRO0VBQ0ksY3hCbEZNO0FEaTZKbEI7QXlCNzBKUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekIrMEpaO0F5QjkwSlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBekJnMUpoQjtBeUI1MEpRO0VkdkZQO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VjbUZXLGN4QnJHTTtFd0JzR047RUFDQTtBekJvMUpaO0F5Qm4xSlk7RUFDSTtFSGpHWjtFQUNBO0VHa0dZO0VBQ0E7QXpCczFKaEI7QXlCcDFKWTtFZGxHWDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFYzhGZTtFQUNBO0VBQ0E7QXpCNDFKaEI7QXlCMzFKZ0I7RUFDSTtFUHhIbkIsZ0NPeUhzQztFUHhIdEMsNkJPd0hzQztFUHZIdEMsNEJPdUhzQztFUHRIdEMsMkJPc0hzQztFUHJIdEMsd0JPcUhzQztBekJpMkp2QztBeUIzMUpZO0VBQ0ksY3hCekhFO0FEczlKbEI7QXlCMzFKWTtFQUNJLHFCeEI1SEU7QUR5OUpsQjtBeUJ4MUpZO0VBQ0ksY3hCbElFO0FENDlKbEI7QXlCdDFKWTtFQUNJLGN4QmhJRTtBRHc5SmxCO0F5QnQxSlk7RUFDSSxxQnhCbklFO0FEMjlKbEI7QXlCbjFKWTtFQUNJLGN4QnpJRTtBRDg5SmxCOztBTXYrSkM7RW1CaUtHO0lBQ0k7RXpCMDBKTjtFeUJ6MEpNO0lBQ0k7RXpCMjBKVjtBQUNGO0FNeCtKQztFbUJvS1c7SUFDSTtFekJ1MEpkO0FBQ0Y7QU03K0pDO0VtQjRLRztJQUNJO0lBQ0E7SUFDQTtFekJvMEpOO0V5Qm4wSk07SUFDSTtJQUNBO0V6QnEwSlY7QUFDRjtBeUJqMEpBO0VBQ0k7SUFDSTtJQUNBO0V6Qm0wSk47RXlCaDBKRTtJQUNJO0lBQ0E7RXpCazBKTjtFeUIvekpFO0lBQ0k7SUFDQTtFekJpMEpOO0V5Qjl6SkU7SUFDSTtJQUNBO0V6QmcwSk47RXlCN3pKRTtJQUNJO0lBQ0E7RXpCK3pKTjtBQUNGO0F5QjV6SkE7RUFDSTtJQUNJO0lBQ0E7RXpCOHpKTjtFeUIzekpFO0lBQ0k7SUFDQTtFekI2ekpOO0V5QjF6SkU7SUFDSTtJQUNBO0V6QjR6Sk47RXlCenpKRTtJQUNJO0lBQ0E7RXpCMnpKTjtFeUJ4ekpFO0lBQ0k7SUFDQTtFekIwekpOO0FBQ0Y7QU9oaktDO3FIQUFBO0FBU0E7cUhBQUE7QURHQTtFQ0VDO0lBY0ksbUJBVEs7RVBxaUtUO0FBQ0Y7QU1yaktDO0VDVUM7SUFvQkk7RVAyaEtKO0FBQ0Y7QU0xaktDO0VDVUM7SUEwQkksbUJBakJNO0VQMmlLVjtBQUNGOztBTXZqS0M7RUNFQztJQWNJLGdCQVRLO0VQcWpLVDtBQUNGO0FNcmtLQztFQ1VDO0lBb0JJO0VQMmlLSjtBQUNGO0FNMWtLQztFQ1VDO0lBMEJJLGdCQWpCTTtFUDJqS1Y7QUFDRjs7QTBCcmtLRztFSlJDO0VBQ0E7RUlTQTtBMUJ5a0tKO0EwQnBrS0U7RUFDQztBMUJza0tIO0FNeGxLQztFb0JpQkM7SUFHRTtFMUJ3a0tGO0FBQ0Y7QU1ybEtDO0VvQmtCSTtJQUNDO0UxQnNrS0o7RTBCcmtLSTtJQUNDO0UxQnVrS0w7QUFDRjtBMEJoa0tFO0VBQ0M7QTFCa2tLSDs7QU1obUtDO0VvQnNDRTtJQUNDO0UxQjhqS0Y7QUFDRjtBT2xuS0M7cUhBQUE7QUFTQTtxSEFBQTtBREdBO0VDRUM7SUFjSSxvQkFUSztFUHVtS1Q7QUFDRjtBTXZuS0M7RUNVQztJQW9CSTtFUDZsS0o7QUFDRjtBTTVuS0M7RUNVQztJQTBCSSxxQkFqQk07RVA2bUtWO0FBQ0Y7O0FBem5LUTtFQUNJO0FBNG5LWjtBTXJvS0M7RU5RTztJQUdRO0VBOG5LZDtBQUNGOztBTTFvS0M7RU5xQmU7SUFDSSxjQ3BCRjtFRDZvS2hCO0VBdm5LYztJQUNJLHFCQ3ZCRjtFRGdwS2hCO0FBQ0Y7QU0zb0tDO0VONEJlO0lBQ0ksY0M1QkY7RUQ4b0toQjtFQWhuS2M7SUFDSSxxQkMvQkY7RURpcEtoQjtFQWhuS2M7SUFDSTtFQWtuS2xCO0FBQ0YsQyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvcGFnZXMvcGFnZV9zZWxsX3dpdGhfdXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3NldHRpbmdzL3N0Z3NfcHJvamV0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9zZXR0aW5ncy9zdGdzX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvc2V0dGluZ3Mvc3Rnc19wYWdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9kZWZhdWx0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9vcGVyYXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9tZWRpYXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X2ZsdWlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AY2FmZWZyYXBwZS9hcmFiaWNhL2xpYi9jc3MvZm9uY3Rpb25zL2ZuY3RfZ3JpbGxlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9oZWxwZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X2FsaWduZW1lbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9kaXNwbGF5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9vcmRyZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X2RpcmVjdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X3RhaWxsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X3RyYW5zaXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9hbmltYXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF90cmFuc2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9pbnRlcmFjdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X29tYnJlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AY2FmZWZyYXBwZS9hcmFiaWNhL2xpYi9jc3MvZm9uY3Rpb25zL2ZuY3RfcmFkaXVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9tb2xlY3VsZXMvbW9sX2ZvbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9tb2xlY3VsZXMvbW9sX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2Jsb2NzL2Jsb2NfYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvYmxvY3MvYmxvY19oZXJvLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9ibG9jcy9ibG9jX2NhcmRzLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAnLi4vc2V0dGluZ3Mvc3Rnc19wYWdlJztcbkBpbXBvcnQgJy4uL2Jsb2NzL2Jsb2NfYnJlYWRjcnVtYic7XG5AaW1wb3J0ICcuLi9ibG9jcy9ibG9jX2hlcm8nO1xuQGltcG9ydCAnLi4vYmxvY3MvYmxvY19jYXJkcyc7XG5cbiRwYWdlU2VsbFdpdGhVc01hcCA6IChcbiAgICAnLnNlbGxfd2l0aF91cyAuYmxvY19zZWxsX3dpdGhfdXMgLmNrLWNvbnRlbnQnOiAoXG4gICAgICAgICdwYWRkaW5nLWJvdHRvbSc6IChcbiAgICAgICAgICAgIDQwcHgsXG4gICAgICAgICAgICAxMTBweFxuICAgICAgICApLFxuICAgICksXG4pO1xuXG5AaW5jbHVkZSBmbHVpZCgkcGFnZVNlbGxXaXRoVXNNYXApO1xuXG4uc2VsbF93aXRoX3VzIHtcbiAgICAuYmxvY19zZWxsX3dpdGhfdXMge1xuICAgICAgICAuYnRuX2N0YSB7XG4gICAgICAgICAgICB3aWR0aCA6IDEwMCU7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYV94X21pbignc20nKSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoIDogMzIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhX3hfbWluKCdzbScpIHtcbiAgICAuc2VsbF93aXRoX3VzIHtcbiAgICAgICAgLmJsb2NfaGVybyB7XG4gICAgICAgICAgICAuY2stY29udGVudCB7XG4gICAgICAgICAgICAgICAgLnRpdHJlX2gxIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3IgOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIDogJGJsYWNrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGluY2x1ZGUgbWVkaWFfeF9tYXgoJ3NtJykge1xuICAgIC5zZWxsX3dpdGhfdXMge1xuICAgICAgICAuYmxvY19oZXJvIHtcbiAgICAgICAgICAgIC5jay1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAudGl0cmVfaDEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvciA6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmxpbmsge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5idG5fY3RhIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGggOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLSBTdGdzIFByb2pldFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0gQ291bGV1cnNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4vLyBwcm9qZWN0IGNvbG9yc1xuXG4kYmVpZ2UgICAgICAgICAgOiAjZmZlOGQ2O1xuJGJlaWdlMiAgICAgICAgIDogI2Y1ZDZiZDtcbiRicm93biAgICAgICAgICA6ICNiNzllOGE7XG4kYmxhY2sgICAgICAgICAgOiAjMTIxMjEyO1xuJGdyZXktZGFyayAgICAgIDogIzU4NTg1ODtcbiRncmV5LWRhcmsyICAgICA6ICM4ZjhmOGY7XG4kZ3JleSAgICAgICAgICAgOiAjYmRiZGJkO1xuJGdyZXktbGlnaHQgICAgIDogI2YzZjNmMztcbiRncmV5LWxpZ2h0MiAgICA6ICNmOWY5Zjk7XG4kZ3JleS1saWdodDMgICAgOiAjZDlkOWQ5O1xuJHdoaXRlICAgICAgICAgIDogI2ZmZmZmZjtcbiRncmVlbiAgICAgICAgICA6ICM5MWNiYTE7XG5cbi8vIGFsZXJ0IGNvbG9yc1xuXG4kc3VjY2VzcyAgICAgICAgOiAjMDA5MTAwO1xuJGluZm8gICAgICAgICAgIDogIzAwMGZiNDtcbiR3YXJuaW5nICAgICAgICA6ICNjODhkMDA7XG4kZGFuZ2VyICAgICAgICAgOiAjZDAwMDAwO1xuXG4vKiAtIFZhcmlhYmxlc1xuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbiR0cmFuc2l0aW9uICAgICA6IGFsbCAwLjI1cyBlYXNlLWluLW91dDtcbiR0cmFuc2l0aW9uU2xvdyA6IGFsbCAwLjZzIGVhc2UtaW4tb3V0O1xuJHRyYW5zaXRpb25OdWxsIDogYWxsIDBzIGVhc2UtaW4tb3V0O1xuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tIFN0Z3MgTWl4aW5zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLSBTaGFkb3dcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5AbWl4aW4gc2hhZG93KCRzaGFkb3cgOiAwIDJweCAxMHB4IDAgcmdiYSgkYmxhY2ssIDAuMikpIHtcbiAgICAtd2Via2l0LWJveC1zaGFkb3cgOiAkc2hhZG93O1xuICAgIC1tb3otYm94LXNoYWRvdyAgICA6ICRzaGFkb3c7XG4gICAgYm94LXNoYWRvdyAgICAgICAgIDogJHNoYWRvdztcbn1cblxuLyogLSBJbWFnZXNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5AbWl4aW4gaW1hZ2VGaXQoKSB7XG4gICAgb2JqZWN0LWZpdCAgICAgICAgIDogY292ZXI7XG4gICAgLW8tb2JqZWN0LWZpdCAgICAgIDogY292ZXI7XG4gICAgb2JqZWN0LXBvc2l0aW9uICAgIDogY2VudGVyO1xuICAgIC1vLW9iamVjdC1wb3NpdGlvbiA6IGNlbnRlcjtcbn1cblxuQG1peGluIHJlc2V0SW1hZ2VGaXQoKSB7XG4gICAgb2JqZWN0LWZpdCAgICA6IHVuc2V0O1xuICAgIC1vLW9iamVjdC1maXQgOiB1bnNldDtcbn1cblxuLyogLSBJbnRlcmFjdGlvbnNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5AbWl4aW4gaG92ZXJfZm9jdXMge1xuICAgICY6aG92ZXIge1xuICAgICAgICBAY29udGVudFxuICAgIH1cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG5AbWl4aW4gZm9jdXMge1xuICAgICY6Zm9jdXMge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbkBtaXhpbiBmb2N1c19hY2Nlc3Mge1xuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuQGltcG9ydCAnc3Rnc19wcm9qZXQnO1xuQGltcG9ydCAnc3Rnc19taXhpbnMnO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0gU3RncyBBcmFiaWNhXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLSBmbHVpZCBNb2RlXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuJGZsdWlkTW9kZSAgICAgICAgICAgICAgIDogdHJ1ZTsgLy8gVHJ1ZSAtIEZhbHNlXG5cbi8qIC0gQnJlYWtwb2ludHMgKGNvbG9ubmVzLCB0YWlsbGUgZGVzIGJveGVzIGV0IG1vZGFsZXMpXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuJGJyZWFrcG9pbnRNYXAgICAgICAgICAgIDogKFxuXHQvLyBjbGFzcz1cImNvbF94c1wiIC0gY2xhc3M9XCJib3hfeHNcIiAtIGNsYXNzPVwibW9kYWxlX3hzXCJcblx0J3hzJzogMDQ0MHB4LFxuXHQvLyBjbGFzcz1cImNvbF9zbVwiIC0gY2xhc3M9XCJib3hfc21cIiAtIGNsYXNzPVwibW9kYWxlX3NtXCJcblx0J3NtJzogMDU3NnB4LFxuXHQvLyBjbGFzcz1cImNvbF9tZFwiIC0gY2xhc3M9XCJib3hfbWRcIiAtIGNsYXNzPVwibW9kYWxlX21kXCJcblx0J21kJzogMDc2OHB4LFxuXHQvLyBjbGFzcz1cImNvbF9sZ1wiIC0gY2xhc3M9XCJib3hfbGdcIiAtIGNsYXNzPVwibW9kYWxlX2xnXCJcblx0J2xnJzogMTAyNHB4LFxuXHQvLyBjbGFzcz1cImNvbF94bFwiIC0gY2xhc3M9XCJib3hfeGxcIiAtIGNsYXNzPVwibW9kYWxlX3hsXCJcblx0J3hsJzogMTIzMHB4LFxuXHQvLyBjbGFzcz1cImNvbF9mdWxsXCIgLSBjbGFzcz1cImJveF9mdWxsXCIgLSBjbGFzcz1cIm1vZGFsZV9mdWxsXCJcblx0J2Z1bGwnOiAwMTAwJVxuKTtcblxuLyogLSBNYXJnZXMgKEVudHJlIGxlcyBsZXMgY29sb25uZXMgOiBjbGFzcz1cIm1hcmdlc1wiIHN1ciBsYSByb3cgcGFyZW50ZSlcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4kbWFyZ2VzICAgICAgICAgICAgICAgICAgOiAxMHB4O1xuJG1hcmdlc0JyZWFrcG9pbnQgICAgICAgIDogJ21kJztcbiRtYXJnZXNNb2JpbGUgICAgICAgICAgICA6IDRweDtcblxuLyogLSBOb21icmUgZGUgY29sb25uZXMgZGUgbGEgZ3JpbGxlXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuJG5vbWJyZUNvbG9ubmVzICAgICAgICAgIDogMTI7XG5cbi8qIC0gTW9kYWxlc1xuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbiRtb2RhbGVQYWRkaW5nICAgICAgICAgICA6IDI0cHg7XG4kbW9kYWxlUGFkZGluZ0JyZWFrcG9pbnQgOiAnbWQnO1xuJG1vZGFsZVBhZGRpbmdNb2JpbGUgICAgIDogbWF0aC5kaXYoJG1vZGFsZVBhZGRpbmcsIDIpO1xuJG1vZGFsZUJhY2tncm91bmRDb2xvciAgIDogI2ZmZmZmZjtcbiRvdmVybGF5QmFja2dyb3VuZENvbG9yICA6ICMwMDAwMDA7XG4kb3ZlcmxheU9wYWNpdHkgICAgICAgICAgOiAuNzU7XG5cbi8qIC0gRm5jdCBEZWZhdWx0XG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cbkBpbXBvcnQgJy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY2FmZWZyYXBwZS9hcmFiaWNhL2xpYi9jc3MvZm9uY3Rpb25zL2ZuY3RfZGVmYXVsdCc7XG4vKiAtIEZuY3QgT3BlcmF0aW9uc1xuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5AaW1wb3J0ICcuLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X29wZXJhdGlvbnMnO1xuLyogLSBGbmN0IE1lZGlhc1xuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5AaW1wb3J0ICcuLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X21lZGlhcyc7XG4vKiAtIEZuY3QgRmx1aWRcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuQGltcG9ydCAnLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9mbHVpZCc7XG4vKiAtIEZuY3QgRm9ybXNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuQGltcG9ydCAnLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9mb3Jtcyc7XG4vKiAtIEZuY3QgR3JpbGxlXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cbkBpbXBvcnQgJy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY2FmZWZyYXBwZS9hcmFiaWNhL2xpYi9jc3MvZm9uY3Rpb25zL2ZuY3RfZ3JpbGxlJztcbi8qIC0gRm5jdCBIZWxwZXJcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuQGltcG9ydCAnLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9oZWxwZXInO1xuLyogLSBGbmN0IEFsaWduZW1lbnRzXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cbkBpbXBvcnQgJy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY2FmZWZyYXBwZS9hcmFiaWNhL2xpYi9jc3MvZm9uY3Rpb25zL2ZuY3RfYWxpZ25lbWVudHMnO1xuLyogLSBGbmN0IERpc3BsYXlcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuQGltcG9ydCAnLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9kaXNwbGF5Jztcbi8qIC0gRm5jdCBPcmRyZXNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuQGltcG9ydCAnLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9vcmRyZXMnO1xuLyogLSBGbmN0IERpcmVjdGlvbnNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuQGltcG9ydCAnLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9kaXJlY3Rpb25zJztcbi8qIC0gRm5jdCBUYWlsbGVzXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cbkBpbXBvcnQgJy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY2FmZWZyYXBwZS9hcmFiaWNhL2xpYi9jc3MvZm9uY3Rpb25zL2ZuY3RfdGFpbGxlcyc7XG4vKiAtIEZuY3QgVHJhbnNpdGlvbnNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuQGltcG9ydCAnLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF90cmFuc2l0aW9ucyc7XG4vKiAtIEZuY3QgQW5pbWF0aW9uc1xuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5AaW1wb3J0ICcuLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X2FuaW1hdGlvbnMnO1xuLyogLSBGbmN0IFRyYW5zZm9ybXNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuQGltcG9ydCAnLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF90cmFuc2Zvcm1zJztcbi8qIC0gRm5jdCBJbnRlcmFjdGlvbnNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuQGltcG9ydCAnLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0BjYWZlZnJhcHBlL2FyYWJpY2EvbGliL2Nzcy9mb25jdGlvbnMvZm5jdF9pbnRlcmFjdGlvbnMnO1xuLyogLSBGbmN0IE9tYnJlc1xuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5AaW1wb3J0ICcuLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNhZmVmcmFwcGUvYXJhYmljYS9saWIvY3NzL2ZvbmN0aW9ucy9mbmN0X29tYnJlcyc7XG4vKiAtIEZuY3QgUmFkaXVzXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cbkBpbXBvcnQgJy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY2FmZWZyYXBwZS9hcmFiaWNhL2xpYi9jc3MvZm9uY3Rpb25zL2ZuY3RfcmFkaXVzJztcblxuLyogLSBGb250c1xuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5AaW1wb3J0ICcuLi9tb2xlY3VsZXMvbW9sX2ZvbnRzJztcbi8qIC0gQnV0dG9uc1xuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5AaW1wb3J0ICcuLi9tb2xlY3VsZXMvbW9sX2J1dHRvbnMnOyIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLSBGbmN0IERlZmF1bHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtIEhlbHBlclxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbiRoZWxwZXJNb2RlIDogZmFsc2UgIWRlZmF1bHQgIWdsb2JhbDsgLy8gVHJ1ZSAtIEZhbHNlXG5cbiRoZWxwZXJQYWRkaW5nIDogMnB4ICFkZWZhdWx0ICFnbG9iYWw7XG4kaGVscGVyQm9yZGVyIDogMnB4ICFkZWZhdWx0ICFnbG9iYWw7XG4kaGVscGVySGVpZ2h0IDogYXV0byAhZGVmYXVsdCAhZ2xvYmFsO1xuXG4kYm94Q29sb3IgOiByZWQgIWRlZmF1bHQgIWdsb2JhbDtcbiRyb3dDb2xvciA6IGdyZWVuICFkZWZhdWx0ICFnbG9iYWw7XG4kY29sQ29sb3IgOiBibHVlICFkZWZhdWx0ICFnbG9iYWw7XG5cbi8qIC0gRmx1aWQgTW9kZVxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbiRmbHVpZE1hcCA6ICgpICFkZWZhdWx0ICFnbG9iYWw7XG5cbi8qIC0gQnJlYWtwb2ludHMgKGNvbG9ubmVzLCB0YWlsbGUgZGVzIGJveGVzIGV0IG1vZGFsZXMpXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuJGJyZWFrcG9pbnRNYXAgOiAoXG4gIC8vIGNsYXNzPVwiY29sX3hzXCIgLSBjbGFzcz1cImJveF94c1wiIC0gY2xhc3M9XCJtb2RhbGVfeHNcIlxuICAgICAgICAneHMnOiAwMzIwcHgsXG4gIC8vIGNsYXNzPVwiY29sX3NtXCIgLSBjbGFzcz1cImJveF9zbVwiIC0gY2xhc3M9XCJtb2RhbGVfc21cIlxuICAgICAgICAnc20nOiAwNTc2cHgsXG4gIC8vIGNsYXNzPVwiY29sX21kXCIgLSBjbGFzcz1cImJveF9tZFwiIC0gY2xhc3M9XCJtb2RhbGVfbWRcIlxuICAgICAgICAnbWQnOiAwNzY4cHgsXG4gIC8vIGNsYXNzPVwiY29sX2xnXCIgLSBjbGFzcz1cImJveF9sZ1wiIC0gY2xhc3M9XCJtb2RhbGVfbGdcIlxuICAgICAgICAnbGcnOiAxMDI0cHgsXG4gIC8vIGNsYXNzPVwiY29sX3hsXCIgLSBjbGFzcz1cImJveF94bFwiIC0gY2xhc3M9XCJtb2RhbGVfeGxcIlxuICAgICAgICAneGwnOiAxMjgwcHgsXG4gIC8vIGNsYXNzPVwiY29sX2Z1bGxcIiAtIGNsYXNzPVwiYm94X2Z1bGxcIiAtIGNsYXNzPVwibW9kYWxlX2Z1bGxcIlxuICAgICAgICAnZnVsbCc6IDAxMDAlXG4pICFkZWZhdWx0ICFnbG9iYWw7XG5cbi8qIC0gTWFyZ2VzIChFbnRyZSBsZXMgbGVzIGNvbG9ubmVzIDogY2xhc3M9XCJtYXJnZXNcIiBzdXIgbGEgcm93IHBhcmVudGUpXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuJG1hcmdlcyA6IDEycHggIWRlZmF1bHQgIWdsb2JhbDtcbiRtYXJnZXNCcmVha3BvaW50IDogJ3NtJyAhZGVmYXVsdCAhZ2xvYmFsO1xuJG1hcmdlc01vYmlsZSA6ICRtYXJnZXMgLyAyICFkZWZhdWx0ICFnbG9iYWw7XG5cbi8qIC0gTm9tYnJlIGRlIGNvbG9ubmVzIGRlIGxhIGdyaWxsZVxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbiRub21icmVDb2xvbm5lcyA6IDEyICFkZWZhdWx0ICFnbG9iYWw7XG5cbi8qIC0gTW9kYWxlc1xuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbiRtb2RhbGVQYWRkaW5nIDogMzJweCAhZGVmYXVsdCAhZ2xvYmFsO1xuJG1vZGFsZVBhZGRpbmdCcmVha3BvaW50IDogJ3NtJyAhZGVmYXVsdCAhZ2xvYmFsO1xuJG1vZGFsZVBhZGRpbmdNb2JpbGUgOiAkbW9kYWxlUGFkZGluZyAvIDIgIWRlZmF1bHQgIWdsb2JhbDtcbiRtb2RhbGVCYWNrZ3JvdW5kQ29sb3IgOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpICFkZWZhdWx0ICFnbG9iYWw7XG4kb3ZlcmxheUJhY2tncm91bmRDb2xvciA6IHJnYmEoMCwgMCwgMCwgMSkgIWRlZmF1bHQgIWdsb2JhbDtcbiRvdmVybGF5T3BhY2l0eSA6IC43NSAhZGVmYXVsdCAhZ2xvYmFsO1xuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tIEZuY3QgT3DDqXJhdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtIFLDqWN1cMOpcmF0aW9uIGQndW5lIHZhbGV1ciBzYW5zIHVuaXTDqVxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbkBmdW5jdGlvbiBnZXRfdmFsdWUoJHZhbHVlKSB7XG4gIEByZXR1cm4gJHZhbHVlIC8gKCR2YWx1ZSAqIDAgKyAxKTtcbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLSBGbmN0IE3DqWRpYXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtIE1pbmltdW0gZXQgbWF4aW11bVxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbi8vIE1pbiBXaWR0aFxuXG5AbWl4aW4gbWVkaWFfeF9taW4oJGJyZWFrcG9pbnQpIHtcblx0QG1lZGlhIChtaW4td2lkdGggOiAje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50KX0pIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG4vLyBNYXggV2lkdGhcblxuQG1peGluIG1lZGlhX3hfbWF4KCRicmVha3BvaW50KSB7XG5cdEBtZWRpYSAobWF4LXdpZHRoIDogY2FsYygje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50KX0gLSAxcHgpKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLy8gQmV0d2VlbiBXaWR0aFxuXG5AbWl4aW4gbWVkaWFfeF9iZXR3ZWVuKCRicmVha3BvaW50TWluLCAkYnJlYWtwb2ludE1heCkge1xuXHRAbWVkaWEgKG1pbi13aWR0aCA6ICN7bWFwX2dldCgkYnJlYWtwb2ludE1hcCwgJGJyZWFrcG9pbnRNaW4pfSkgYW5kIChtYXgtd2lkdGggOiBjYWxjKCN7bWFwX2dldCgkYnJlYWtwb2ludE1hcCwgJGJyZWFrcG9pbnRNYXgpfSAtIDFweCkpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG4vLyBBcm91bmQgV2lkdGhcblxuQG1peGluIG1lZGlhX3hfYXJvdW5kKCRicmVha3BvaW50TWluLCAkYnJlYWtwb2ludE1heCkge1xuXHRAbWVkaWEgKG1heC13aWR0aCA6IGNhbGMoI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludE1pbil9IC0gMXB4KSkgYW5kIChtaW4td2lkdGggOiAje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50TWF4KX0pIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG4vLyBNaW4gSGVpZ2h0XG5cbkBtaXhpbiBtZWRpYV95X21pbigkaGF1dGV1cikge1xuXHRAbWVkaWEgKG1pbi1oZWlnaHQgOiAkaGF1dGV1cikge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbi8vIE1heCBIZWlnaHRcblxuQG1peGluIG1lZGlhX3lfbWF4KCRoYXV0ZXVyKSB7XG5cdEBtZWRpYSAobWF4LWhlaWdodCA6ICRoYXV0ZXVyKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLy8gQmV0d2VlbiBIZWlnaHRcblxuQG1peGluIG1lZGlhX3lfYmV0d2VlbigkaGF1dGV1ck1pbiwgJGhhdXRldXJNYXgpIHtcblx0QG1lZGlhIChtaW4taGVpZ2h0IDogJGhhdXRldXJNaW4pIGFuZCAobWF4LWhlaWdodCA6ICRoYXV0ZXVyTWF4KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLy8gQXJvdW5kIEhlaWdodFxuXG5AbWl4aW4gbWVkaWFfeV9hcm91bmQoJGhhdXRldXJNaW4sICRoYXV0ZXVyTWF4KSB7XG5cdEBtZWRpYSAobWF4LWhlaWdodCA6ICRoYXV0ZXVyTWluKSBhbmQgKG1pbi1oZWlnaHQgOiAkaGF1dGV1ck1heCkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbi8qIC0gRMOpdMOpY3Rpb24gZGUgbCdvcmllbnRhdGlvblxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbi8vIFBvcnRyYWl0XG5cbkBtaXhpbiBtZWRpYV9wb3J0cmFpdCB7XG5cdEBtZWRpYSAob3JpZW50YXRpb24gOiBwb3J0cmFpdCkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV9wb3J0cmFpdF94X21pbigkYnJlYWtwb2ludCkge1xuXHRAbWVkaWEgKG9yaWVudGF0aW9uIDogcG9ydHJhaXQpIGFuZCAobWluLXdpZHRoIDogI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludCl9KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX3BvcnRyYWl0X3hfbWF4KCRicmVha3BvaW50KSB7XG5cdEBtZWRpYSAob3JpZW50YXRpb24gOiBwb3J0cmFpdCkgYW5kIChtYXgtd2lkdGggOiBjYWxjKCN7bWFwX2dldCgkYnJlYWtwb2ludE1hcCwgJGJyZWFrcG9pbnQpfSAtIDFweCkpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfcG9ydHJhaXRfeF9iZXR3ZWVuKCRicmVha3BvaW50TWluLCAkYnJlYWtwb2ludE1heCkge1xuXHRAbWVkaWEgKG9yaWVudGF0aW9uIDogcG9ydHJhaXQpIGFuZCAobWluLXdpZHRoIDogI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludE1pbil9KSBhbmQgKG1heC13aWR0aCA6IGNhbGMoI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludE1heCl9IC0gMXB4KSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV9wb3J0cmFpdF94X2Fyb3VuZCgkYnJlYWtwb2ludE1pbiwgJGJyZWFrcG9pbnRNYXgpIHtcblx0QG1lZGlhIChvcmllbnRhdGlvbiA6IHBvcnRyYWl0KSBhbmQgKG1heC13aWR0aCA6IGNhbGMoI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludE1pbil9IC0gMXB4KSkgYW5kIChtaW4td2lkdGggOiAje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50TWF4KX0pIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfcG9ydHJhaXRfeV9taW4oJGhhdXRldXIpIHtcblx0QG1lZGlhIChvcmllbnRhdGlvbiA6IHBvcnRyYWl0KSBhbmQgKG1pbi1oZWlnaHQgOiAkaGF1dGV1cikge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV9wb3J0cmFpdF95X21heCgkaGF1dGV1cikge1xuXHRAbWVkaWEgKG9yaWVudGF0aW9uIDogcG9ydHJhaXQpIGFuZCAobWF4LWhlaWdodCA6ICRoYXV0ZXVyKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX3BvcnRyYWl0X3lfYmV0d2VlbigkaGF1dGV1ck1pbiwgJGhhdXRldXJNYXgpIHtcblx0QG1lZGlhIChvcmllbnRhdGlvbiA6IHBvcnRyYWl0KSBhbmQgKG1pbi1oZWlnaHQgOiAkaGF1dGV1ck1pbikgYW5kIChtYXgtaGVpZ2h0IDogJGhhdXRldXJNYXgpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfcG9ydHJhaXRfeV9hcm91bmQoJGhhdXRldXJNaW4sICRoYXV0ZXVyTWF4KSB7XG5cdEBtZWRpYSAob3JpZW50YXRpb24gOiBwb3J0cmFpdCkgYW5kIChtYXgtaGVpZ2h0IDogJGhhdXRldXJNaW4pIGFuZCAobWluLWhlaWdodCA6ICRoYXV0ZXVyTWF4KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLy8gTGFuZHNjYXBlXG5cbkBtaXhpbiBtZWRpYV9sYW5kc2NhcGUge1xuXHRAbWVkaWEgKG9yaWVudGF0aW9uIDogbGFuZHNjYXBlKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX2xhbmRzY2FwZV94X21pbigkYnJlYWtwb2ludCkge1xuXHRAbWVkaWEgKG9yaWVudGF0aW9uIDogbGFuZHNjYXBlKSBhbmQgKG1pbi13aWR0aCA6ICN7bWFwX2dldCgkYnJlYWtwb2ludE1hcCwgJGJyZWFrcG9pbnQpfSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV9sYW5kc2NhcGVfeF9tYXgoJGJyZWFrcG9pbnQpIHtcblx0QG1lZGlhIChvcmllbnRhdGlvbiA6IGxhbmRzY2FwZSkgYW5kIChtYXgtd2lkdGggOiBjYWxjKCN7bWFwX2dldCgkYnJlYWtwb2ludE1hcCwgJGJyZWFrcG9pbnQpfSAtIDFweCkpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfbGFuZHNjYXBlX3hfYmV0d2VlbigkYnJlYWtwb2ludE1pbiwgJGJyZWFrcG9pbnRNYXgpIHtcblx0QG1lZGlhIChvcmllbnRhdGlvbiA6IGxhbmRzY2FwZSkgYW5kIChtaW4td2lkdGggOiAje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50TWluKX0pIGFuZCAobWF4LXdpZHRoIDogY2FsYygje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50TWF4KX0gLSAxcHgpKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhbGFuZHNjYXBldF94X2Fyb3VuZCgkYnJlYWtwb2ludE1pbiwgJGJyZWFrcG9pbnRNYXgpIHtcblx0QG1lZGlhIChvcmllbnRhdGlvbiA6IGxhbmRzY2FwZSkgYW5kIChtYXgtd2lkdGggOiBjYWxjKCN7bWFwX2dldCgkYnJlYWtwb2ludE1hcCwgJGJyZWFrcG9pbnRNaW4pfSAtIDFweCkpIGFuZCAobWluLXdpZHRoIDogI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludE1heCl9KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX2xhbmRzY2FwZV95X21pbigkaGF1dGV1cikge1xuXHRAbWVkaWEgKG9yaWVudGF0aW9uIDogbGFuZHNjYXBlKSBhbmQgKG1pbi1oZWlnaHQgOiAkaGF1dGV1cikge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV9sYW5kc2NhcGVfeV9tYXgoJGhhdXRldXIpIHtcblx0QG1lZGlhIChvcmllbnRhdGlvbiA6IGxhbmRzY2FwZSkgYW5kIChtYXgtaGVpZ2h0IDogJGhhdXRldXIpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfbGFuZHNjYXBlX3lfYmV0d2VlbigkaGF1dGV1ck1pbiwgJGhhdXRldXJNYXgpIHtcblx0QG1lZGlhIChvcmllbnRhdGlvbiA6IGxhbmRzY2FwZSkgYW5kIChtaW4taGVpZ2h0IDogJGhhdXRldXJNaW4pIGFuZCAobWF4LWhlaWdodCA6ICRoYXV0ZXVyTWF4KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX2xhbmRzY2FwZV95X2Fyb3VuZCgkaGF1dGV1ck1pbiwgJGhhdXRldXJNYXgpIHtcblx0QG1lZGlhIChvcmllbnRhdGlvbiA6IGxhbmRzY2FwZSkgYW5kIChtYXgtaGVpZ2h0IDogJGhhdXRldXJNaW4pIGFuZCAobWluLWhlaWdodCA6ICRoYXV0ZXVyTWF4KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLyogLSBUeXBlcyBkZSBkZXZpY2VzXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuLy8gVG91Y2hcblxuQG1peGluIG1lZGlhX3RvdWNoIHtcblx0QG1lZGlhIChwb2ludGVyIDogbm9uZSksIChwb2ludGVyIDogY29hcnNlKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX3RvdWNoX3hfbWluKCRicmVha3BvaW50KSB7XG5cdEBtZWRpYSAocG9pbnRlciA6IG5vbmUpLCAocG9pbnRlciA6IGNvYXJzZSkgYW5kIChtaW4td2lkdGggOiAje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50KX0pIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfdG91Y2hfeF9tYXgoJGJyZWFrcG9pbnQpIHtcblx0QG1lZGlhIChwb2ludGVyIDogbm9uZSksIChwb2ludGVyIDogY29hcnNlKSBhbmQgKG1heC13aWR0aCA6IGNhbGMoI3ttYXBfZ2V0KCRicmVha3BvaW50TWFwLCAkYnJlYWtwb2ludCl9IC0gMXB4KSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV90b3VjaF94X2JldHdlZW4oJGJyZWFrcG9pbnRNaW4sICRicmVha3BvaW50TWF4KSB7XG5cdEBtZWRpYSAocG9pbnRlciA6IG5vbmUpLCAocG9pbnRlciA6IGNvYXJzZSkgYW5kIChtaW4td2lkdGggOiAje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50TWluKX0pIGFuZCAobWF4LXdpZHRoIDogY2FsYygje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50TWF4KX0gLSAxcHgpKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX3RvdWNoX3hfYXJvdW5kKCRicmVha3BvaW50TWluLCAkYnJlYWtwb2ludE1heCkge1xuXHRAbWVkaWEgKHBvaW50ZXIgOiBub25lKSwgKHBvaW50ZXIgOiBjb2Fyc2UpIGFuZCAobWF4LXdpZHRoIDogY2FsYygje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50TWluKX0gLSAxcHgpKSBhbmQgKG1pbi13aWR0aCA6ICN7bWFwX2dldCgkYnJlYWtwb2ludE1hcCwgJGJyZWFrcG9pbnRNYXgpfSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV90b3VjaF95X21pbigkaGF1dGV1cikge1xuXHRAbWVkaWEgKHBvaW50ZXIgOiBub25lKSwgKHBvaW50ZXIgOiBjb2Fyc2UpIGFuZCAobWluLWhlaWdodCA6ICRoYXV0ZXVyKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuQG1peGluIG1lZGlhX3RvdWNoX3lfbWF4KCRoYXV0ZXVyKSB7XG5cdEBtZWRpYSAocG9pbnRlciA6IG5vbmUpLCAocG9pbnRlciA6IGNvYXJzZSkgYW5kIChtYXgtaGVpZ2h0IDogJGhhdXRldXIpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfdG91Y2hfeV9iZXR3ZWVuKCRoYXV0ZXVyTWluLCAkaGF1dGV1ck1heCkge1xuXHRAbWVkaWEgKHBvaW50ZXIgOiBub25lKSwgKHBvaW50ZXIgOiBjb2Fyc2UpIGFuZCAobWluLWhlaWdodCA6ICRoYXV0ZXVyTWluKSBhbmQgKG1heC1oZWlnaHQgOiAkaGF1dGV1ck1heCkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV90b3VjaF95X2Fyb3VuZCgkaGF1dGV1ck1pbiwgJGhhdXRldXJNYXgpIHtcblx0QG1lZGlhIChwb2ludGVyIDogbm9uZSksIChwb2ludGVyIDogY29hcnNlKSBhbmQgKG1heC1oZWlnaHQgOiAkaGF1dGV1ck1pbikgYW5kIChtaW4taGVpZ2h0IDogJGhhdXRldXJNYXgpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG4vLyBQb2ludGVyXG5cbkBtaXhpbiBtZWRpYV9wb2ludGVyIHtcblx0QG1lZGlhIChwb2ludGVyIDogZmluZSksICgtbXMtaGlnaC1jb250cmFzdCA6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdCA6IG5vbmUpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfcG9pbnRlcl94X21pbigkYnJlYWtwb2ludCkge1xuXHRAbWVkaWEgKHBvaW50ZXIgOiBmaW5lKSwgKC1tcy1oaWdoLWNvbnRyYXN0IDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0IDogbm9uZSkgYW5kIChtaW4td2lkdGggOiAje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50KX0pIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfcG9pbnRlcl94X21heCgkYnJlYWtwb2ludCkge1xuXHRAbWVkaWEgKHBvaW50ZXIgOiBmaW5lKSwgKC1tcy1oaWdoLWNvbnRyYXN0IDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0IDogbm9uZSkgYW5kIChtYXgtd2lkdGggOiBjYWxjKCN7bWFwX2dldCgkYnJlYWtwb2ludE1hcCwgJGJyZWFrcG9pbnQpfSAtIDFweCkpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfcG9pbnRlcl94X2JldHdlZW4oJGJyZWFrcG9pbnRNaW4sICRicmVha3BvaW50TWF4KSB7XG5cdEBtZWRpYSAocG9pbnRlciA6IGZpbmUpLCAoLW1zLWhpZ2gtY29udHJhc3QgOiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3QgOiBub25lKSBhbmQgKG1pbi13aWR0aCA6ICN7bWFwX2dldCgkYnJlYWtwb2ludE1hcCwgJGJyZWFrcG9pbnRNaW4pfSkgYW5kIChtYXgtd2lkdGggOiBjYWxjKCN7bWFwX2dldCgkYnJlYWtwb2ludE1hcCwgJGJyZWFrcG9pbnRNYXgpfSAtIDFweCkpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gbWVkaWFfcG9pbnRlcl94X2Fyb3VuZCgkYnJlYWtwb2ludE1pbiwgJGJyZWFrcG9pbnRNYXgpIHtcblx0QG1lZGlhIChwb2ludGVyIDogZmluZSksICgtbXMtaGlnaC1jb250cmFzdCA6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdCA6IG5vbmUpIGFuZCAobWF4LXdpZHRoIDogY2FsYygje21hcF9nZXQoJGJyZWFrcG9pbnRNYXAsICRicmVha3BvaW50TWluKX0gLSAxcHgpKSBhbmQgKG1pbi13aWR0aCA6ICN7bWFwX2dldCgkYnJlYWtwb2ludE1hcCwgJGJyZWFrcG9pbnRNYXgpfSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV9wb2ludGVyX3lfbWluKCRoYXV0ZXVyKSB7XG5cdEBtZWRpYSAocG9pbnRlciA6IGZpbmUpLCAoLW1zLWhpZ2gtY29udHJhc3QgOiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3QgOiBub25lKSBhbmQgKG1pbi1oZWlnaHQgOiAkaGF1dGV1cikge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV9wb2ludGVyX3lfbWF4KCRoYXV0ZXVyKSB7XG5cdEBtZWRpYSAocG9pbnRlciA6IGZpbmUpLCAoLW1zLWhpZ2gtY29udHJhc3QgOiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3QgOiBub25lKSBhbmQgKG1heC1oZWlnaHQgOiAkaGF1dGV1cikge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV9wb2ludGVyX3lfYmV0d2VlbigkaGF1dGV1ck1pbiwgJGhhdXRldXJNYXgpIHtcblx0QG1lZGlhIChwb2ludGVyIDogZmluZSksICgtbXMtaGlnaC1jb250cmFzdCA6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdCA6IG5vbmUpIGFuZCAobWluLWhlaWdodCA6ICRoYXV0ZXVyTWluKSBhbmQgKG1heC1oZWlnaHQgOiAkaGF1dGV1ck1heCkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5cbkBtaXhpbiBtZWRpYV9wb2ludGVyX3lfYXJvdW5kKCRoYXV0ZXVyTWluLCAkaGF1dGV1ck1heCkge1xuXHRAbWVkaWEgKHBvaW50ZXIgOiBmaW5lKSwgKC1tcy1oaWdoLWNvbnRyYXN0IDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0IDogbm9uZSkgYW5kIChtYXgtaGVpZ2h0IDogJGhhdXRldXJNaW4pIGFuZCAobWluLWhlaWdodCA6ICRoYXV0ZXVyTWF4KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLy8gUHJpbnRcblxuQG1peGluIG1lZGlhX3ByaW50IHtcblx0QG1lZGlhIHByaW50IHtcblx0XHRAY29udGVudDtcblx0fVxufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tIEZuY3QgRmx1aWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AbWl4aW4gZmx1aWQoJGZsdWlkTWFwKSB7XG5cblx0LyogLSBWYXJpYWJsZXNcblx0Li4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5cdCR0YWlsbGVFY3JhbkN1cnJlbnQgOiAxMDB2dztcblx0JHRhaWxsZUVjcmFuTWF4IDogbWFwX2dldCgkYnJlYWtwb2ludE1hcCwgbnRoKG50aCgkYnJlYWtwb2ludE1hcCwgbGVuZ3RoKCRicmVha3BvaW50TWFwKS0xKSwgMSkpO1xuXHQkdGFpbGxlRWNyYW5NaW4gOiBtYXBfZ2V0KCRicmVha3BvaW50TWFwLCBudGgobnRoKCRicmVha3BvaW50TWFwLCAxKSwgMSkpO1xuXHQkZGlmZkVjcmFuQ3VycmVudE1pbiA6IGNhbGMoI3skdGFpbGxlRWNyYW5DdXJyZW50fSAtICN7JHRhaWxsZUVjcmFuTWlufSk7XG5cdCRkaWZmRWNyYW5NYXhNaW4gOiBnZXRfdmFsdWUoJHRhaWxsZUVjcmFuTWF4KSAtIGdldF92YWx1ZSgkdGFpbGxlRWNyYW5NaW4pO1xuXG5cdC8qIC0gR8OpbsOpcmF0aW9uIGRlcyB0YWlsbGVzIEZsdWlkZXNcblx0Li4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5cdEBlYWNoICRiYWxpc2UsICR2YWx1ZSBpbiAkZmx1aWRNYXAge1xuXG5cdFx0I3skYmFsaXNlfSB7XG5cblx0XHRcdEBlYWNoICRlbGVtZW50IGluICR2YWx1ZSB7XG5cblx0XHRcdFx0JHByb3ByaWV0ZSA6IG50aCgkZWxlbWVudCwgMSk7XG5cdFx0XHRcdCRtaW4gOiBudGgobnRoKCRlbGVtZW50LCAyKSwgMSk7XG5cblx0XHRcdFx0QGlmIGxlbmd0aChudGgoJGVsZW1lbnQsIDIpKSA+IDEge1xuXG5cdFx0XHRcdFx0JG1heCA6IG50aChudGgoJGVsZW1lbnQsIDIpLCAyKTtcblx0XHRcdFx0XHQkbWF4TW9pbnNNaW4gOiBnZXRfdmFsdWUoJG1heCkgLSBnZXRfdmFsdWUoJG1pbik7XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBtZWRpYV94X21heChudGgobnRoKCRicmVha3BvaW50TWFwLCAxKSwgMSkpIHtcblxuXHRcdFx0XHRcdFx0I3skcHJvcHJpZXRlfSA6ICRtaW47XG5cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBtZWRpYV94X21pbihudGgobnRoKCRicmVha3BvaW50TWFwLCAxKSwgMSkpIHtcblxuXHRcdFx0XHRcdFx0I3skcHJvcHJpZXRlfSA6IGNhbGMoI3skbWlufSArICgjeyRtYXhNb2luc01pbn0pICogKCN7JHRhaWxsZUVjcmFuQ3VycmVudH0gLSAjeyR0YWlsbGVFY3Jhbk1pbn0pIC8gKCN7Z2V0X3ZhbHVlKCR0YWlsbGVFY3Jhbk1heCl9IC0gI3tnZXRfdmFsdWUoJHRhaWxsZUVjcmFuTWluKX0pKTtcblxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdEBpbmNsdWRlIG1lZGlhX3hfbWluKG50aChudGgoJGJyZWFrcG9pbnRNYXAsIGxlbmd0aCgkYnJlYWtwb2ludE1hcCktMSksIDEpKSB7XG5cblx0XHRcdFx0XHRcdCN7JHByb3ByaWV0ZX0gOiAkbWF4O1xuXG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdH0gQGVsc2Uge1xuXG5cdFx0XHRcdFx0I3skcHJvcHJpZXRlfSA6ICRtaW47XG5cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5AaW5jbHVkZSBmbHVpZCgkZmx1aWRNYXApOyIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLSBGbmN0IEZvcm1zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLSBQbGFjZWhvbGRlclxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbkBtaXhpbiBpbnB1dF9wbGFjZWhvbGRlciB7XG5cdCY6OnBsYWNlaG9sZGVyIHtcblx0XHRAY29udGVudDtcblx0fVxuXG5cdCY6Oi1tb3otcGxhY2Vob2xkZXIge1xuXHRcdEBjb250ZW50O1xuXHR9XG5cblx0Jjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cblxuXHQmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn0iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0gRm5jdCBHcmlsbGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtIEJveHNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4vLyBDb21wb3J0ZW1lbnQgZGVzIGJveHMgcGFyIGTDqWZhdXRcblxuJWJveCB7XG4gIG1hcmdpbi1yaWdodCA6IGF1dG87XG4gIG1hcmdpbi1sZWZ0ICA6IGF1dG87XG59XG5cbi8vIENvbXBvcnRlbWVudCBkZXMgYm94cyBhdmVjIGRlcyBtYXJnZXNcblxuQG1peGluIG1hcmdlcygkYm94V2lkdGgpIHtcbiAgJi5tYXJnZXMge1xuICAgIEBpZiAkYm94V2lkdGggIT0gbWFwX2dldCgkYnJlYWtwb2ludE1hcCwgZnVsbCkge1xuICAgICAgbWF4LXdpZHRoICAgICA6ICRib3hXaWR0aCArICgkbWFyZ2VzICogNCk7XG4gICAgICBwYWRkaW5nLXJpZ2h0IDogJG1hcmdlcyAqIDI7XG4gICAgICBwYWRkaW5nLWxlZnQgIDogJG1hcmdlcyAqIDI7XG4gICAgICBAaW5jbHVkZSBtZWRpYV94X21heCgkbWFyZ2VzQnJlYWtwb2ludCkge1xuICAgICAgICBtYXgtd2lkdGggICAgIDogJGJveFdpZHRoICsgKCRtYXJnZXNNb2JpbGUgKiA0KTtcbiAgICAgICAgcGFkZGluZy1yaWdodCA6ICRtYXJnZXNNb2JpbGUgKiAyO1xuICAgICAgICBwYWRkaW5nLWxlZnQgIDogJG1hcmdlc01vYmlsZSAqIDI7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0IDogJG1hcmdlcyAqIDI7XG4gICAgICBwYWRkaW5nLWxlZnQgIDogJG1hcmdlcyAqIDI7XG4gICAgfVxuICB9XG59XG5cbkBlYWNoICRib3gsICRib3hTaXplIGluICRicmVha3BvaW50TWFwIHtcbiAgLmJveF8jeyRib3h9IHtcbiAgICBAZXh0ZW5kICVib3g7XG4gICAgQGluY2x1ZGUgbWFyZ2VzKCRib3hXaWR0aCA6ICRib3hTaXplKTtcbiAgICBtYXgtd2lkdGggOiAkYm94U2l6ZTtcbiAgfVxufVxuXG4vKiAtIFJvd3Ncbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4vLyBDb21wb3J0ZW1lbnQgZGVzIHJvd3MgcGFyIGTDqWZhdXRcblxuQG1peGluIHJvdyB7XG4gIGRpc3BsYXkgICAgICAgICAgICAgICAgOiAtd2Via2l0LWJveDtcbiAgZGlzcGxheSAgICAgICAgICAgICAgICA6IC1tb3otYm94O1xuICBkaXNwbGF5ICAgICAgICAgICAgICAgIDogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXkgICAgICAgICAgICAgICAgOiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXkgICAgICAgICAgICAgICAgOiBmbGV4O1xuICBmbGV4LXdyYXAgICAgICAgICAgICAgIDogd3JhcDtcbiAgLXdlYmtpdC1mbGV4LXdyYXAgICAgICA6IHdyYXA7XG4gIC1tcy1mbGV4LXdyYXAgICAgICAgICAgOiB3cmFwO1xuICBmbGV4LWdyb3cgICAgICAgICAgICAgIDogMTtcbiAgLXdlYmtpdC1mbGV4LWdyb3cgICAgICA6IDE7XG4gIC1tcy1mbGV4LXBvc2l0aXZlICAgICAgOiAxO1xuICAtd2Via2l0LWJveC1vcmllbnQgICAgIDogaG9yaXpvbnRhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uICA6IG5vcm1hbDtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbiA6IHJvdztcbiAgLW1zLWZsZXgtZGlyZWN0aW9uICAgICA6IHJvdztcbiAgZmxleC1kaXJlY3Rpb24gICAgICAgICA6IHJvdztcblxuICAvLyBDb21wb3J0ZW1lbnQgZGVzIHJvd3MgYXZlYyBkZXMgbWFyZ2VzXG5cbiAgJi5tYXJnZXMge1xuICAgIG1hcmdpbi1yaWdodCA6IC0kbWFyZ2VzO1xuICAgIG1hcmdpbi1sZWZ0ICA6IC0kbWFyZ2VzO1xuICAgID4gW2NsYXNzKj1cImNvbFwiXSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0IDogJG1hcmdlcztcbiAgICAgIHBhZGRpbmctbGVmdCAgOiAkbWFyZ2VzO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYV94X21heCgkbWFyZ2VzQnJlYWtwb2ludCkge1xuICAgICAgbWFyZ2luLXJpZ2h0IDogLSRtYXJnZXNNb2JpbGU7XG4gICAgICBtYXJnaW4tbGVmdCAgOiAtJG1hcmdlc01vYmlsZTtcbiAgICAgID4gW2NsYXNzKj1cImNvbFwiXSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQgOiAkbWFyZ2VzTW9iaWxlO1xuICAgICAgICBwYWRkaW5nLWxlZnQgIDogJG1hcmdlc01vYmlsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDb21wb3J0ZW1lbnQgZGVzIHJvd3MgTm8gV3JhcFxuXG4gICYubm9fd3JhcCB7XG4gICAgZmxleC13cmFwICAgICAgICAgOiBub3dyYXA7XG4gICAgLXdlYmtpdC1mbGV4LXdyYXAgOiBub3dyYXA7XG4gICAgLW1zLWZsZXgtd3JhcCAgICAgOiBub3dyYXA7XG4gIH1cbn1cblxuLnJvdyB7XG4gIEBpbmNsdWRlIHJvdztcbn1cblxuLyogLSBDb2xvbm5lc1xuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbi8vIENvbXBvcnRlbWVudCBkZXMgY29sb25uZXMgcGFyIGTDqWZhdXQgKHLDqXBhcnRpdGlvbiDDqXF1aXRhYmxlKVxuXG5AbWl4aW4gY29sIHtcbiAgLy8gR3Jvd1xuICBmbGV4LWdyb3cgICAgICAgICAgICAgICA6IDE7XG4gIC13ZWJraXQtZmxleC1ncm93ICAgICAgIDogMTtcbiAgLW1zLWZsZXgtcG9zaXRpdmUgICAgICAgOiAxO1xuICAvLyBTaHJpbmtcbiAgZmxleC1zaHJpbmsgICAgICAgICAgICAgOiAxO1xuICAtd2Via2l0LWZsZXgtc2hyaW5rICAgICA6IDE7XG4gIC8vIEJhc2lzXG4gIGZsZXgtYmFzaXMgICAgICAgICAgICAgIDogMDtcbiAgLXdlYmtpdC1mbGV4LWJhc2lzICAgICAgOiAwO1xuICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZSA6IDA7XG4gIC8vIFNpemVcbiAgbWF4LXdpZHRoICAgICAgICAgICAgICAgOiAxMDAlO1xufVxuXG5bY2xhc3NePVwiY29sXCJdIHtcbiAgQGluY2x1ZGUgY29sO1xufVxuXG4vLyBDb21wb3J0ZW1lbnQgZGVzIGNvbG9ubmVzIGVuIGxhcmdldXIgYmFzw6llIHN1ciBsZSBjb250ZW51XG5cbkBtaXhpbiBjb2xfY29udGVudCB7XG4gIC8vIEdyb3dcbiAgZmxleC1ncm93ICAgICAgICAgICAgICAgOiAwO1xuICAtd2Via2l0LWZsZXgtZ3JvdyAgICAgICA6IDA7XG4gIC1tcy1mbGV4LXBvc2l0aXZlICAgICAgIDogMDtcbiAgLy8gU2hyaW5rXG4gIGZsZXgtc2hyaW5rICAgICAgICAgICAgIDogMDtcbiAgLXdlYmtpdC1mbGV4LXNocmluayAgICAgOiAwO1xuICAvLyBCYXNpc1xuICBmbGV4LWJhc2lzICAgICAgICAgICAgICA6IGF1dG87XG4gIC13ZWJraXQtZmxleC1iYXNpcyAgICAgIDogYXV0bztcbiAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemUgOiBhdXRvO1xufVxuXG4uY29sX2NvbnRlbnQge1xuICBAaW5jbHVkZSBjb2xfY29udGVudDtcbn1cblxuLy8gQ29tcG9ydGVtZW50IGRlcyBjb2xvbm5lcyBlbiBsYXJnZXVyIGZsdWlkZSBldCBiYXPDqWUgc3VyIGxlIGNvbnRlbnVcblxuQG1peGluIGNvbF9hdXRvIHtcbiAgLy8gR3Jvd1xuICBmbGV4LWdyb3cgICAgICAgICAgICAgICA6IDE7XG4gIC13ZWJraXQtZmxleC1ncm93ICAgICAgIDogMTtcbiAgLW1zLWZsZXgtcG9zaXRpdmUgICAgICAgOiAxO1xuICAvLyBTaHJpbmtcbiAgZmxleC1zaHJpbmsgICAgICAgICAgICAgOiAwO1xuICAtd2Via2l0LWZsZXgtc2hyaW5rICAgICA6IDA7XG4gIC8vIEJhc2lzXG4gIGZsZXgtYmFzaXMgICAgICAgICAgICAgIDogYXV0bztcbiAgLXdlYmtpdC1mbGV4LWJhc2lzICAgICAgOiBhdXRvO1xuICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZSA6IGF1dG87XG59XG5cbi5jb2xfYXV0byB7XG4gIEBpbmNsdWRlIGNvbF9hdXRvO1xufVxuXG4vLyBDb21wb3J0ZW1lbnQgZGVzIGNvbG9ubmVzIGVuIGxhcmdldXIgZMOpZmluaWVcblxuQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkbm9tYnJlQ29sb25uZXMge1xuXG4gIC8vIENhbGN1bCBkZSBsYSBsYXJnZXVyIGQndW5lIGNvbG9ubmVcblxuICAuY29sXyN7JGl9IHtcbiAgICAvLyBHcm93XG4gICAgZmxleC1ncm93ICAgICAgICAgICAgICAgOiAwO1xuICAgIC13ZWJraXQtZmxleC1ncm93ICAgICAgIDogMDtcbiAgICAtbXMtZmxleC1wb3NpdGl2ZSAgICAgICA6IDA7XG4gICAgLy8gU2hyaW5rXG4gICAgZmxleC1zaHJpbmsgICAgICAgICAgICAgOiAwO1xuICAgIC13ZWJraXQtZmxleC1zaHJpbmsgICAgIDogMDtcbiAgICAvLyBCYXNpc1xuICAgIGZsZXgtYmFzaXMgICAgICAgICAgICAgIDogcGVyY2VudGFnZSgxIC8gJG5vbWJyZUNvbG9ubmVzICogJGkpO1xuICAgIC13ZWJraXQtZmxleC1iYXNpcyAgICAgIDogcGVyY2VudGFnZSgxIC8gJG5vbWJyZUNvbG9ubmVzICogJGkpO1xuICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplIDogcGVyY2VudGFnZSgxIC8gJG5vbWJyZUNvbG9ubmVzICogJGkpO1xuICAgIC8vIFdpZHRoXG4gICAgbWF4LXdpZHRoICAgICAgICAgICAgICAgOiBwZXJjZW50YWdlKDEgLyAkbm9tYnJlQ29sb25uZXMgKiAkaSk7XG4gIH1cblxuICAvLyBTaSB1bmUgY29sb25uZSDDoCBwb3VyIHZhbGV1ciAnMCcgZW4gbGFyZ2V1ciwgb24gbmUgbCdhZmZpY2hlIHBhc1xuXG4gIEBpZiAkaSA9PSAwIHtcbiAgICAuY29sXyN7JGl9LCAuY29sX29mZnNldF8jeyRpfSB7XG4gICAgICBkaXNwbGF5IDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ29tcG9ydGVtZW50IGRlcyBjb2xvbm5lcyBlbiByZXNwb25zaXZlIHBhciBicmVha3BvaW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50TWFwKSB7XG5cbiAgLy8gUG91ciBjaGFxdWUgYnJlYWtwb2ludCwgZ8OpbsOpcmF0aW9uIGQndW5lIGxhcmdldXIgZMOpdGVybWluw6llXG4gIEBpZiAkYnJlYWtwb2ludCAhPSBmdWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYV94X21pbigkYnJlYWtwb2ludCkge1xuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkbm9tYnJlQ29sb25uZXMge1xuICAgICAgICAuY29sXyN7JGJyZWFrcG9pbnR9XyN7JGl9IHtcbiAgICAgICAgICAvLyBHcm93XG4gICAgICAgICAgZmxleC1ncm93ICAgICAgICAgICAgICAgOiAwO1xuICAgICAgICAgIC13ZWJraXQtZmxleC1ncm93ICAgICAgIDogMDtcbiAgICAgICAgICAtbXMtZmxleC1wb3NpdGl2ZSAgICAgICA6IDA7XG4gICAgICAgICAgLy8gU2hyaW5rXG4gICAgICAgICAgZmxleC1zaHJpbmsgICAgICAgICAgICAgOiAwO1xuICAgICAgICAgIC13ZWJraXQtZmxleC1zaHJpbmsgICAgIDogMDtcbiAgICAgICAgICAvLyBCYXNpc1xuICAgICAgICAgIGZsZXgtYmFzaXMgICAgICAgICAgICAgIDogcGVyY2VudGFnZSgxIC8gJG5vbWJyZUNvbG9ubmVzICogJGkpO1xuICAgICAgICAgIC13ZWJraXQtZmxleC1iYXNpcyAgICAgIDogcGVyY2VudGFnZSgxIC8gJG5vbWJyZUNvbG9ubmVzICogJGkpO1xuICAgICAgICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplIDogcGVyY2VudGFnZSgxIC8gJG5vbWJyZUNvbG9ubmVzICogJGkpO1xuICAgICAgICAgIC8vIFdpZHRoXG4gICAgICAgICAgbWF4LXdpZHRoICAgICAgICAgICAgICAgOiBwZXJjZW50YWdlKDEgLyAkbm9tYnJlQ29sb25uZXMgKiAkaSk7XG4gICAgICAgICAgLy8gRGlzcGxheVxuICAgICAgICAgIGRpc3BsYXkgICAgICAgICAgICAgICAgIDogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY29sXyN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgLy8gR3Jvd1xuICAgICAgICBmbGV4LWdyb3cgICAgICAgICAgICAgICA6IDE7XG4gICAgICAgIC13ZWJraXQtZmxleC1ncm93ICAgICAgIDogMTtcbiAgICAgICAgLW1zLWZsZXgtcG9zaXRpdmUgICAgICAgOiAxO1xuICAgICAgICAvLyBTaHJpbmtcbiAgICAgICAgZmxleC1zaHJpbmsgICAgICAgICAgICAgOiAxO1xuICAgICAgICAtd2Via2l0LWZsZXgtc2hyaW5rICAgICA6IDE7XG4gICAgICAgIC8vIEJhc2lzXG4gICAgICAgIGZsZXgtYmFzaXMgICAgICAgICAgICAgIDogMDtcbiAgICAgICAgLXdlYmtpdC1mbGV4LWJhc2lzICAgICAgOiAwO1xuICAgICAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZSA6IDA7XG4gICAgICB9XG4gICAgICAuY29sX2NvbnRlbnRfI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAvLyBHcm93XG4gICAgICAgIGZsZXgtZ3JvdyAgICAgICAgICAgICAgIDogMDtcbiAgICAgICAgLXdlYmtpdC1mbGV4LWdyb3cgICAgICAgOiAwO1xuICAgICAgICAtbXMtZmxleC1wb3NpdGl2ZSAgICAgICA6IDA7XG4gICAgICAgIC8vIFNocmlua1xuICAgICAgICBmbGV4LXNocmluayAgICAgICAgICAgICA6IDA7XG4gICAgICAgIC13ZWJraXQtZmxleC1zaHJpbmsgICAgIDogMDtcbiAgICAgICAgLy8gQmFzaXNcbiAgICAgICAgZmxleC1iYXNpcyAgICAgICAgICAgICAgOiBhdXRvO1xuICAgICAgICAtd2Via2l0LWZsZXgtYmFzaXMgICAgICA6IGF1dG87XG4gICAgICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplIDogYXV0bztcbiAgICAgIH1cbiAgICAgIC5jb2xfYXV0b18jeyRicmVha3BvaW50fSB7XG4gICAgICAgIC8vIEdyb3dcbiAgICAgICAgZmxleC1ncm93ICAgICAgICAgICAgICAgOiAxO1xuICAgICAgICAtd2Via2l0LWZsZXgtZ3JvdyAgICAgICA6IDE7XG4gICAgICAgIC1tcy1mbGV4LXBvc2l0aXZlICAgICAgIDogMTtcbiAgICAgICAgLy8gU2hyaW5rXG4gICAgICAgIGZsZXgtc2hyaW5rICAgICAgICAgICAgIDogMDtcbiAgICAgICAgLXdlYmtpdC1mbGV4LXNocmluayAgICAgOiAwO1xuICAgICAgICAvLyBCYXNpc1xuICAgICAgICBmbGV4LWJhc2lzICAgICAgICAgICAgICA6IGF1dG87XG4gICAgICAgIC13ZWJraXQtZmxleC1iYXNpcyAgICAgIDogYXV0bztcbiAgICAgICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemUgOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBDb21wb3J0ZW1lbnQgZGVzIGNvbG9ubmVzIG9mZnNldCBlbiBsYXJnZXVyIGTDqWZpbmllXG5cbkBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJG5vbWJyZUNvbG9ubmVzIHtcblxuICAvLyBVdGlsaXNhdGlvbiBkJ3VuZSBtYXJnZSDDoCBnYXVjaGUgcG91ciBkw6lmaW5pciB1biBvZmZzZXRcblxuICAuY29sX29mZnNldF8jeyRpfSB7XG4gICAgbWFyZ2luLWxlZnQgOiBwZXJjZW50YWdlKDEgLyAkbm9tYnJlQ29sb25uZXMgKiAkaSk7XG4gIH1cbn1cblxuLy8gQ29tcG9ydGVtZW50IGRlcyBjb2xvbm5lcyBvZmZzZXQgZW4gcmVzcG9uc2l2ZSBwYXIgYnJlYWtwb2ludFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludE1hcCkge1xuXG4gIC8vIFBvdXIgY2hhcXVlIGJyZWFrcG9pbnQsIGfDqW7DqXJhdGlvbiBkJ3VuZSBtYXJnZSDDoCBnYXVjaGUgZMOpdGVybWluw6llXG4gIEBpZiAkYnJlYWtwb2ludCAhPSBmdWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYV94X21pbigkYnJlYWtwb2ludCkge1xuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkbm9tYnJlQ29sb25uZXMge1xuICAgICAgICAuY29sX29mZnNldF8jeyRicmVha3BvaW50fV8jeyRpfSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQgOiBwZXJjZW50YWdlKDEgLyAkbm9tYnJlQ29sb25uZXMgKiAkaSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLSBGbmN0IEludMOpcmFjdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtIEFpZGUgw6AgbCdpbnTDqWdyYXRpb25cbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4lYm94SGVscGVyIHtcblx0Ym9yZGVyICA6ICRoZWxwZXJCb3JkZXIgc29saWQgJGJveENvbG9yO1xuXHRwYWRkaW5nIDogJGhlbHBlclBhZGRpbmc7XG59XG5cbiVyb3dIZWxwZXIge1xuXHRib3JkZXIgIDogJGhlbHBlckJvcmRlciBzb2xpZCAkcm93Q29sb3I7XG5cdHBhZGRpbmcgOiAkaGVscGVyUGFkZGluZztcblx0KyAucm93LCArIFtjbGFzcyo9XCJib3hcIl0ge1xuXHRcdG1hcmdpbi10b3AgOiAkaGVscGVyUGFkZGluZztcblx0fVxufVxuXG4lY29sSGVscGVyIHtcblx0Ym9yZGVyICAgICA6ICRoZWxwZXJCb3JkZXIgc29saWQgJGNvbENvbG9yO1xuXHRtaW4taGVpZ2h0IDogJGhlbHBlckhlaWdodDtcblx0cGFkZGluZyAgICA6ICRoZWxwZXJQYWRkaW5nO1xufVxuXG5AaWYgJGhlbHBlck1vZGUge1xuXG5cdFtjbGFzcyo9XCJib3hcIl0ge1xuXHRcdEBleHRlbmQgJWJveEhlbHBlcjtcblx0fVxuXG5cdC5yb3cge1xuXHRcdEBleHRlbmQgJXJvd0hlbHBlcjtcblx0fVxuXG5cdFtjbGFzcyo9XCJjb2xcIl0ge1xuXHRcdEBleHRlbmQgJWNvbEhlbHBlcjtcblx0fVxuXG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tIEZuY3QgQWxpZ25lbWVudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtIFBsYWNlaG9sZGVyIEZsZXhcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5AbWl4aW4gZF9mbGV4IHtcblx0ZGlzcGxheSA6IC13ZWJraXQtYm94O1xuXHRkaXNwbGF5IDogLW1vei1ib3g7XG5cdGRpc3BsYXkgOiAtbXMtZmxleGJveDtcblx0ZGlzcGxheSA6IC13ZWJraXQtZmxleDtcblx0ZGlzcGxheSA6IGZsZXg7XG59XG5cbi8qIC0gQWxpZ25lbWVudHMgYWJzb2x1dGVzXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuLy8gQWxpZ25lbWVudCBob3Jpem9udGFsIGFic29sdXRlXG5cbkBtaXhpbiB4X2FsaWduX2Fic29sdXRlIHtcblx0cG9zaXRpb24gICAgICAgICAgOiBhYnNvbHV0ZTtcblx0bGVmdCAgICAgICAgICAgICAgOiA1MCU7XG5cdC13ZWJraXQtdHJhbnNmb3JtIDogdHJhbnNsYXRlWCgtNTAlKTtcblx0LW1vei10cmFuc2Zvcm0gICAgOiB0cmFuc2xhdGVYKC01MCUpO1xuXHQtbXMtdHJhbnNmb3JtICAgICA6IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdC1vLXRyYW5zZm9ybSAgICAgIDogdHJhbnNsYXRlWCgtNTAlKTtcblx0dHJhbnNmb3JtICAgICAgICAgOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4ueF9hbGlnbl9hYnNvbHV0ZSB7XG5cdEBpbmNsdWRlIHhfYWxpZ25fYWJzb2x1dGU7XG59XG5cbi8vIEFsaWduZW1lbnQgdmVydGljYWwgYWJzb2x1dGVcblxuQG1peGluIHlfYWxpZ25fYWJzb2x1dGUge1xuXHRwb3NpdGlvbiAgICAgICAgICA6IGFic29sdXRlO1xuXHR0b3AgICAgICAgICAgICAgICA6IDUwJTtcblx0LXdlYmtpdC10cmFuc2Zvcm0gOiB0cmFuc2xhdGVZKC01MCUpO1xuXHQtbW96LXRyYW5zZm9ybSAgICA6IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdC1tcy10cmFuc2Zvcm0gICAgIDogdHJhbnNsYXRlWSgtNTAlKTtcblx0LW8tdHJhbnNmb3JtICAgICAgOiB0cmFuc2xhdGVZKC01MCUpO1xuXHR0cmFuc2Zvcm0gICAgICAgICA6IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi55X2FsaWduX2Fic29sdXRlIHtcblx0QGluY2x1ZGUgeV9hbGlnbl9hYnNvbHV0ZTtcbn1cblxuLy8gQWxpZ25lbWVudCBjZW50cmFsIGFic29sdXRlXG5cbkBtaXhpbiBjZW50ZXJfYWxpZ25fYWJzb2x1dGUge1xuXHRwb3NpdGlvbiAgICAgICAgICA6IGFic29sdXRlO1xuXHR0b3AgICAgICAgICAgICAgICA6IDUwJTtcblx0bGVmdCAgICAgICAgICAgICAgOiA1MCU7XG5cdC13ZWJraXQtdHJhbnNmb3JtIDogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuXHQtbW96LXRyYW5zZm9ybSAgICA6IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcblx0LW1zLXRyYW5zZm9ybSAgICAgOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG5cdC1vLXRyYW5zZm9ybSAgICAgIDogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuXHR0cmFuc2Zvcm0gICAgICAgICA6IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLmNlbnRlcl9hbGlnbl9hYnNvbHV0ZSB7XG5cdEBpbmNsdWRlIGNlbnRlcl9hbGlnbl9hYnNvbHV0ZTtcbn1cblxuLy8gQWxpZ25lbWVudCByZXNldCBhYnNvbHV0ZVxuXG5AbWl4aW4gcmVzZXRfYWxpZ25fYWJzb2x1dGUge1xuXHRwb3NpdGlvbiAgICAgICAgICA6IGFic29sdXRlO1xuXHQvL3RvcCAgICAgICAgICAgICAgIDogYXV0bztcblx0Ly9sZWZ0ICAgICAgICAgICAgICA6IGF1dG87XG5cdC13ZWJraXQtdHJhbnNmb3JtIDogdHJhbnNsYXRlWSgwKSB0cmFuc2xhdGVYKDApO1xuXHQtbW96LXRyYW5zZm9ybSAgICA6IHRyYW5zbGF0ZVkoMCkgdHJhbnNsYXRlWCgwKTtcblx0LW1zLXRyYW5zZm9ybSAgICAgOiB0cmFuc2xhdGVZKDApIHRyYW5zbGF0ZVgoMCk7XG5cdC1vLXRyYW5zZm9ybSAgICAgIDogdHJhbnNsYXRlWSgwKSB0cmFuc2xhdGVYKDApO1xuXHR0cmFuc2Zvcm0gICAgICAgICA6IHRyYW5zbGF0ZVkoMCkgdHJhbnNsYXRlWCgwKTtcbn1cblxuLnJlc2V0X2FsaWduX2Fic29sdXRlIHtcblx0QGluY2x1ZGUgcmVzZXRfYWxpZ25fYWJzb2x1dGU7XG59XG5cbi8qIC0gQWxpZ25lbWVudHMgZml4ZXNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4vLyBBbGlnbmVtZW50IGhvcml6b250YWwgZml4ZVxuXG5AbWl4aW4geF9hbGlnbl9maXhlZCB7XG5cdHBvc2l0aW9uICAgICAgICAgIDogZml4ZWQ7XG5cdGxlZnQgICAgICAgICAgICAgIDogNTAlO1xuXHQtd2Via2l0LXRyYW5zZm9ybSA6IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdC1tb3otdHJhbnNmb3JtICAgIDogdHJhbnNsYXRlWCgtNTAlKTtcblx0LW1zLXRyYW5zZm9ybSAgICAgOiB0cmFuc2xhdGVYKC01MCUpO1xuXHQtby10cmFuc2Zvcm0gICAgICA6IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdHRyYW5zZm9ybSAgICAgICAgIDogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLnhfYWxpZ25fZml4ZWQge1xuXHRAaW5jbHVkZSB4X2FsaWduX2ZpeGVkO1xufVxuXG4vLyBBbGlnbmVtZW50IHZlcnRpY2FsIGZpeGVcblxuQG1peGluIHlfYWxpZ25fZml4ZWQge1xuXHRwb3NpdGlvbiAgICAgICAgICA6IGZpeGVkO1xuXHR0b3AgICAgICAgICAgICAgICA6IDUwJTtcblx0LXdlYmtpdC10cmFuc2Zvcm0gOiB0cmFuc2xhdGVZKC01MCUpO1xuXHQtbW96LXRyYW5zZm9ybSAgICA6IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdC1tcy10cmFuc2Zvcm0gICAgIDogdHJhbnNsYXRlWSgtNTAlKTtcblx0LW8tdHJhbnNmb3JtICAgICAgOiB0cmFuc2xhdGVZKC01MCUpO1xuXHR0cmFuc2Zvcm0gICAgICAgICA6IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi55X2FsaWduX2ZpeGVkIHtcblx0QGluY2x1ZGUgeV9hbGlnbl9maXhlZDtcbn1cblxuLy8gQWxpZ25lbWVudCBjZW50cmFsIGZpeGVcblxuQG1peGluIGNlbnRlcl9hbGlnbl9maXhlZCB7XG5cdHBvc2l0aW9uICAgICAgICAgIDogZml4ZWQ7XG5cdHRvcCAgICAgICAgICAgICAgIDogNTAlO1xuXHRsZWZ0ICAgICAgICAgICAgICA6IDUwJTtcblx0LXdlYmtpdC10cmFuc2Zvcm0gOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG5cdC1tb3otdHJhbnNmb3JtICAgIDogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuXHQtbXMtdHJhbnNmb3JtICAgICA6IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcblx0LW8tdHJhbnNmb3JtICAgICAgOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG5cdHRyYW5zZm9ybSAgICAgICAgIDogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4uY2VudGVyX2FsaWduX2ZpeGVkIHtcblx0QGluY2x1ZGUgY2VudGVyX2FsaWduX2ZpeGVkO1xufVxuXG4vLyBBbGlnbmVtZW50IHJlc2V0IGZpeGVcblxuQG1peGluIHJlc2V0X2FsaWduX2ZpeGVkIHtcblx0cG9zaXRpb24gICAgICAgICAgOiBmaXhlZDtcblx0dG9wICAgICAgICAgICAgICAgOiAwO1xuXHRsZWZ0ICAgICAgICAgICAgICA6IDA7XG5cdC13ZWJraXQtdHJhbnNmb3JtIDogdHJhbnNsYXRlWSgwKSB0cmFuc2xhdGVYKDApO1xuXHQtbW96LXRyYW5zZm9ybSAgICA6IHRyYW5zbGF0ZVkoMCkgdHJhbnNsYXRlWCgwKTtcblx0LW1zLXRyYW5zZm9ybSAgICAgOiB0cmFuc2xhdGVZKDApIHRyYW5zbGF0ZVgoMCk7XG5cdC1vLXRyYW5zZm9ybSAgICAgIDogdHJhbnNsYXRlWSgwKSB0cmFuc2xhdGVYKDApO1xuXHR0cmFuc2Zvcm0gICAgICAgICA6IHRyYW5zbGF0ZVkoMCkgdHJhbnNsYXRlWCgwKTtcbn1cblxuLnJlc2V0X2FsaWduX2ZpeGVkIHtcblx0QGluY2x1ZGUgcmVzZXRfYWxpZ25fZml4ZWQ7XG59XG5cbi8qIC0gQWxpZ25lbWVudHMgcmVsYXRpdmVcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4vLyBBbGlnbmVtZW50IGhvcml6b250YWwgcmVsYXRpdmVcblxuQG1peGluIHhfYWxpZ25fcmVsYXRpdmUge1xuXHRwb3NpdGlvbiAgICAgICAgICA6IHJlbGF0aXZlO1xuXHRsZWZ0ICAgICAgICAgICAgICA6IDUwJTtcblx0LXdlYmtpdC10cmFuc2Zvcm0gOiB0cmFuc2xhdGVYKC01MCUpO1xuXHQtbW96LXRyYW5zZm9ybSAgICA6IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdC1tcy10cmFuc2Zvcm0gICAgIDogdHJhbnNsYXRlWCgtNTAlKTtcblx0LW8tdHJhbnNmb3JtICAgICAgOiB0cmFuc2xhdGVYKC01MCUpO1xuXHR0cmFuc2Zvcm0gICAgICAgICA6IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi54X2FsaWduX3JlbGF0aXZlIHtcblx0QGluY2x1ZGUgeF9hbGlnbl9yZWxhdGl2ZTtcbn1cblxuLy8gQWxpZ25lbWVudCB2ZXJ0aWNhbCByZWxhdGl2ZVxuXG5AbWl4aW4geV9hbGlnbl9yZWxhdGl2ZSB7XG5cdHBvc2l0aW9uICAgICAgICAgIDogcmVsYXRpdmU7XG5cdHRvcCAgICAgICAgICAgICAgIDogNTAlO1xuXHQtd2Via2l0LXRyYW5zZm9ybSA6IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdC1tb3otdHJhbnNmb3JtICAgIDogdHJhbnNsYXRlWSgtNTAlKTtcblx0LW1zLXRyYW5zZm9ybSAgICAgOiB0cmFuc2xhdGVZKC01MCUpO1xuXHQtby10cmFuc2Zvcm0gICAgICA6IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdHRyYW5zZm9ybSAgICAgICAgIDogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLnlfYWxpZ25fcmVsYXRpdmUge1xuXHRAaW5jbHVkZSB5X2FsaWduX3JlbGF0aXZlO1xufVxuXG4vLyBBbGlnbmVtZW50IGNlbnRyYWwgcmVsYXRpdmVcblxuQG1peGluIGNlbnRlcl9hbGlnbl9yZWxhdGl2ZSB7XG5cdHBvc2l0aW9uICAgICAgICAgIDogcmVsYXRpdmU7XG5cdHRvcCAgICAgICAgICAgICAgIDogNTAlO1xuXHRsZWZ0ICAgICAgICAgICAgICA6IDUwJTtcblx0LXdlYmtpdC10cmFuc2Zvcm0gOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG5cdC1tb3otdHJhbnNmb3JtICAgIDogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuXHQtbXMtdHJhbnNmb3JtICAgICA6IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcblx0LW8tdHJhbnNmb3JtICAgICAgOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG5cdHRyYW5zZm9ybSAgICAgICAgIDogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4uY2VudGVyX2FsaWduX3JlbGF0aXZlIHtcblx0QGluY2x1ZGUgY2VudGVyX2FsaWduX3JlbGF0aXZlO1xufVxuXG4vLyBBbGlnbmVtZW50IHJlc2V0IHJlbGF0aXZlXG5cbkBtaXhpbiByZXNldF9hbGlnbl9yZWxhdGl2ZSB7XG5cdHBvc2l0aW9uICAgICAgICAgIDogcmVsYXRpdmU7XG5cdHRvcCAgICAgICAgICAgICAgIDogMDtcblx0bGVmdCAgICAgICAgICAgICAgOiAwO1xuXHQtd2Via2l0LXRyYW5zZm9ybSA6IHRyYW5zbGF0ZVkoMCkgdHJhbnNsYXRlWCgwKTtcblx0LW1vei10cmFuc2Zvcm0gICAgOiB0cmFuc2xhdGVZKDApIHRyYW5zbGF0ZVgoMCk7XG5cdC1tcy10cmFuc2Zvcm0gICAgIDogdHJhbnNsYXRlWSgwKSB0cmFuc2xhdGVYKDApO1xuXHQtby10cmFuc2Zvcm0gICAgICA6IHRyYW5zbGF0ZVkoMCkgdHJhbnNsYXRlWCgwKTtcblx0dHJhbnNmb3JtICAgICAgICAgOiB0cmFuc2xhdGVZKDApIHRyYW5zbGF0ZVgoMCk7XG59XG5cbi5yZXNldF9hbGlnbl9yZWxhdGl2ZSB7XG5cdEBpbmNsdWRlIHJlc2V0X2FsaWduX3JlbGF0aXZlO1xufVxuXG4vKiAtIEFsaWduZW1lbnRzIGhvcml6b250YXV4ICh4KVxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbi8vIEFsaWduZW1lbnQgaG9yaXpvbnRhbCDDoCBnYXVjaGVcblxuQG1peGluIHhfc3RhcnQge1xuXHRqdXN0aWZ5LWNvbnRlbnQgICAgICAgICA6IGZsZXgtc3RhcnQ7XG5cdC13ZWJraXQtanVzdGlmeS1jb250ZW50IDogZmxleC1zdGFydDtcblx0LW1zLWZsZXgtcGFjayAgICAgICAgICAgOiBzdGFydDtcblx0dGV4dC1hbGlnbiAgICAgICAgICAgICAgOiBsZWZ0O1xufVxuXG4ueF9zdGFydCB7XG5cdEBpbmNsdWRlIGRfZmxleDtcblx0QGluY2x1ZGUgeF9zdGFydDtcbn1cblxuLy8gQWxpZ25lbWVudCBob3Jpem9udGFsIGF1IGNlbnRyZVxuXG5AbWl4aW4geF9jZW50ZXIge1xuXHRqdXN0aWZ5LWNvbnRlbnQgICAgICAgICA6IGNlbnRlcjtcblx0LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQgOiBjZW50ZXI7XG5cdC1tcy1mbGV4LXBhY2sgICAgICAgICAgIDogY2VudGVyO1xuXHR0ZXh0LWFsaWduICAgICAgICAgICAgICA6IGNlbnRlcjtcbn1cblxuLnhfY2VudGVyIHtcblx0QGluY2x1ZGUgZF9mbGV4O1xuXHRAaW5jbHVkZSB4X2NlbnRlcjtcbn1cblxuLy8gQWxpZ25lbWVudCBob3Jpem9udGFsIMOgIGRyb2l0ZVxuXG5AbWl4aW4geF9lbmQge1xuXHRqdXN0aWZ5LWNvbnRlbnQgICAgICAgICA6IGZsZXgtZW5kO1xuXHQtd2Via2l0LWp1c3RpZnktY29udGVudCA6IGZsZXgtZW5kO1xuXHQtbXMtZmxleC1wYWNrICAgICAgICAgICA6IGVuZDtcblx0dGV4dC1hbGlnbiAgICAgICAgICAgICAgOiByaWdodDtcbn1cblxuLnhfZW5kIHtcblx0QGluY2x1ZGUgZF9mbGV4O1xuXHRAaW5jbHVkZSB4X2VuZDtcbn1cblxuLy8gQWxpZ25lbWVudCBob3Jpem9udGFsIFwiZXNwYWNlIGxpYnJlIGVudHJlIGxlcyBjb2xvbm5lc1wiXG5cbkBtaXhpbiB4X2JldHdlZW4ge1xuXHRqdXN0aWZ5LWNvbnRlbnQgICAgICAgICA6IHNwYWNlLWJldHdlZW47XG5cdC13ZWJraXQtanVzdGlmeS1jb250ZW50IDogc3BhY2UtYmV0d2Vlbjtcblx0LW1zLWZsZXgtcGFjayAgICAgICAgICAgOiBqdXN0aWZ5O1xufVxuXG4ueF9iZXR3ZWVuIHtcblx0QGluY2x1ZGUgZF9mbGV4O1xuXHRAaW5jbHVkZSB4X2JldHdlZW47XG59XG5cbi8vIEFsaWduZW1lbnQgaG9yaXpvbnRhbCBcImVzcGFjZSBsaWJyZSBhdXRvdXJzIGRlcyBjb2xvbm5lc1wiXG5cbkBtaXhpbiB4X2Fyb3VuZCB7XG5cdGp1c3RpZnktY29udGVudCAgICAgICAgIDogc3BhY2UtYXJvdW5kO1xuXHQtd2Via2l0LWp1c3RpZnktY29udGVudCA6IHNwYWNlLWFyb3VuZDtcblx0LW1zLWZsZXgtcGFjayAgICAgICAgICAgOiBkaXN0cmlidXRlO1xufVxuXG4ueF9hcm91bmQge1xuXHRAaW5jbHVkZSBkX2ZsZXg7XG5cdEBpbmNsdWRlIHhfYXJvdW5kO1xufVxuXG4vLyBBbGlnbmVtZW50IGhvcml6b250YWwgXCJlc3BhY2UgbGlicmUgw6lnYWxcIlxuXG5AbWl4aW4geF9ldmVubHkge1xuXHRqdXN0aWZ5LWNvbnRlbnQgICAgICAgICA6IHNwYWNlLWV2ZW5seTtcblx0LXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQgOiBzcGFjZS1ldmVubHk7XG59XG5cbi54X2V2ZW5seSB7XG5cdEBpbmNsdWRlIGRfZmxleDtcblx0QGluY2x1ZGUgeF9ldmVubHk7XG59XG5cbi8qIC0gQWxpZ25lbWVudHMgdmVydGljYXV4IGRlcyBsaWduZXMgZGUgY29udGVudSAoeSlcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4vLyBBbGlnbmVtZW50IHZlcnRpY2FsIGRlcyBsaWduZXMgZGUgY29udGVudSBlbiBoYXV0XG5cbkBtaXhpbiB5X2NvbnRlbnRfc3RhcnQge1xuXHRhbGlnbi1jb250ZW50ICAgICAgICAgOiBmbGV4LXN0YXJ0O1xuXHQtd2Via2l0LWFsaWduLWNvbnRlbnQgOiBmbGV4LXN0YXJ0O1xuXHQtbXMtZmxleC1saW5lLXBhY2sgICAgOiBzdGFydDtcbn1cblxuLnlfY29udGVudF9zdGFydCB7XG5cdEBpbmNsdWRlIGRfZmxleDtcblx0QGluY2x1ZGUgeV9jb250ZW50X3N0YXJ0O1xufVxuXG4vLyBBbGlnbmVtZW50IHZlcnRpY2FsIGRlcyBsaWduZXMgZGUgY29udGVudSBhdSBtaWxpZXVcblxuQG1peGluIHlfY29udGVudF9jZW50ZXIge1xuXHRhbGlnbi1jb250ZW50ICAgICAgICAgOiBjZW50ZXI7XG5cdC13ZWJraXQtYWxpZ24tY29udGVudCA6IGNlbnRlcjtcblx0LW1zLWZsZXgtbGluZS1wYWNrICAgIDogY2VudGVyO1xufVxuXG4ueV9jb250ZW50X2NlbnRlciB7XG5cdEBpbmNsdWRlIGRfZmxleDtcblx0QGluY2x1ZGUgeV9jb250ZW50X2NlbnRlcjtcbn1cblxuLy8gQWxpZ25lbWVudCB2ZXJ0aWNhbCBkZXMgbGlnbmVzIGRlIGNvbnRlbnUgZW4gYmFzXG5cbkBtaXhpbiB5X2NvbnRlbnRfZW5kIHtcblx0YWxpZ24tY29udGVudCAgICAgICAgIDogZmxleC1lbmQ7XG5cdC13ZWJraXQtYWxpZ24tY29udGVudCA6IGZsZXgtZW5kO1xuXHQtbXMtZmxleC1saW5lLXBhY2sgICAgOiBlbmQ7XG59XG5cbi55X2NvbnRlbnRfZW5kIHtcblx0QGluY2x1ZGUgZF9mbGV4O1xuXHRAaW5jbHVkZSB5X2NvbnRlbnRfZW5kO1xufVxuXG4vLyBBbGlnbmVtZW50IHZlcnRpY2FsIGRlcyBsaWduZXMgZGUgY29udGVudSBcImVzcGFjZSBsaWJyZSBlbnRyZSBsZXMgY29sb25uZXNcIlxuXG5AbWl4aW4geV9jb250ZW50X2JldHdlZW4ge1xuXHRhbGlnbi1jb250ZW50ICAgICAgICAgOiBzcGFjZS1iZXR3ZWVuO1xuXHQtd2Via2l0LWFsaWduLWNvbnRlbnQgOiBzcGFjZS1iZXR3ZWVuO1xuXHQtbXMtZmxleC1saW5lLXBhY2sgICAgOiBqdXN0aWZ5O1xufVxuXG4ueV9jb250ZW50X2JldHdlZW4ge1xuXHRAaW5jbHVkZSBkX2ZsZXg7XG5cdEBpbmNsdWRlIHlfY29udGVudF9iZXR3ZWVuO1xufVxuXG4vLyBBbGlnbmVtZW50IHZlcnRpY2FsIGRlcyBsaWduZXMgZGUgY29udGVudSBcImVzcGFjZSBsaWJyZSBhdXRvdXJzIGRlcyBjb2xvbm5lc1wiXG5cbkBtaXhpbiB5X2NvbnRlbnRfYXJvdW5kIHtcblx0YWxpZ24tY29udGVudCAgICAgICAgIDogc3BhY2UtYXJvdW5kO1xuXHQtd2Via2l0LWFsaWduLWNvbnRlbnQgOiBzcGFjZS1hcm91bmQ7XG5cdC1tcy1mbGV4LWxpbmUtcGFjayAgICA6IGRpc3RyaWJ1dGU7XG59XG5cbi55X2NvbnRlbnRfYXJvdW5kIHtcblx0QGluY2x1ZGUgZF9mbGV4O1xuXHRAaW5jbHVkZSB5X2NvbnRlbnRfYXJvdW5kO1xufVxuXG4vLyBBbGlnbmVtZW50IHZlcnRpY2FsIGRlcyBsaWduZXMgZGUgY29udGVudSBlbiByZW1wbGlzc2FnZVxuXG5AbWl4aW4geV9jb250ZW50X3N0cmV0Y2gge1xuXHRhbGlnbi1jb250ZW50ICAgICAgICAgOiBzdHJldGNoO1xuXHQtd2Via2l0LWFsaWduLWNvbnRlbnQgOiBzdHJldGNoO1xuXHQtbXMtZmxleC1saW5lLXBhY2sgICAgOiBzdHJldGNoO1xufVxuXG4ueV9jb250ZW50X3N0cmV0Y2gge1xuXHRAaW5jbHVkZSBkX2ZsZXg7XG5cdEBpbmNsdWRlIHlfY29udGVudF9zdHJldGNoO1xufVxuXG4vKiAtIEFsaWduZW1lbnRzIHZlcnRpY2F1eCBkZXMgaXRlbXMgKHkpXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuLy8gQWxpZ25lbWVudCB2ZXJ0aWNhbCBkZXMgaXRlbXMgZW4gaGF1dFxuXG5AbWl4aW4geV9pdGVtc19zdGFydCB7XG5cdGFsaWduLWl0ZW1zICAgICAgICAgOiBmbGV4LXN0YXJ0O1xuXHQtd2Via2l0LWFsaWduLWl0ZW1zIDogZmxleC1zdGFydDtcblx0LW1zLWZsZXgtYWxpZ24gICAgICA6IHN0YXJ0O1xufVxuXG4ueV9pdGVtc19zdGFydCB7XG5cdEBpbmNsdWRlIGRfZmxleDtcblx0QGluY2x1ZGUgeV9pdGVtc19zdGFydDtcbn1cblxuLy8gQWxpZ25lbWVudCB2ZXJ0aWNhbCBkZXMgaXRlbXMgYXUgbWlsaWV1XG5cbkBtaXhpbiB5X2l0ZW1zX2NlbnRlciB7XG5cdGFsaWduLWl0ZW1zICAgICAgICAgOiBjZW50ZXI7XG5cdC13ZWJraXQtYWxpZ24taXRlbXMgOiBjZW50ZXI7XG5cdC1tcy1mbGV4LWFsaWduICAgICAgOiBjZW50ZXI7XG59XG5cbi55X2l0ZW1zX2NlbnRlciB7XG5cdEBpbmNsdWRlIGRfZmxleDtcblx0QGluY2x1ZGUgeV9pdGVtc19jZW50ZXI7XG59XG5cbi8vIEFsaWduZW1lbnQgdmVydGljYWwgZGVzIGl0ZW1zIGVuIGJhc1xuXG5AbWl4aW4geV9pdGVtc19lbmQge1xuXHRhbGlnbi1pdGVtcyAgICAgICAgIDogZmxleC1lbmQ7XG5cdC13ZWJraXQtYWxpZ24taXRlbXMgOiBmbGV4LWVuZDtcblx0LW1zLWZsZXgtYWxpZ24gICAgICA6IGVuZDtcbn1cblxuLnlfaXRlbXNfZW5kIHtcblx0QGluY2x1ZGUgZF9mbGV4O1xuXHRAaW5jbHVkZSB5X2l0ZW1zX2VuZDtcbn1cblxuLy8gQWxpZ25lbWVudCB2ZXJ0aWNhbCBkZXMgaXRlbXMgZW4gcmVtcGxpc3NhZ2VcblxuQG1peGluIHlfaXRlbXNfc3RyZXRjaCB7XG5cdGFsaWduLWl0ZW1zICAgICAgICAgOiBzdHJldGNoO1xuXHQtd2Via2l0LWFsaWduLWl0ZW1zIDogc3RyZXRjaDtcblx0LW1zLWZsZXgtYWxpZ24gICAgICA6IHN0cmV0Y2g7XG59XG5cbi55X2l0ZW1zX3N0cmV0Y2gge1xuXHRAaW5jbHVkZSBkX2ZsZXg7XG5cdEBpbmNsdWRlIHlfaXRlbXNfc3RyZXRjaDtcbn1cblxuLyogLSBBbGlnbmVtZW50cyBzZWxmc1xuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbi8vIEFsaWduZW1lbnQgZGUgbCdpdGVtIGVuIGhhdXRcblxuQG1peGluIHlfc2VsZl9zdGFydCB7XG5cdGFsaWduLXNlbGYgICAgICAgICAgICA6IGZsZXgtc3RhcnQ7XG5cdC13ZWJraXQtYWxpZ24tc2VsZiAgICA6IGZsZXgtc3RhcnQ7XG5cdC1tcy1ncmlkLWNvbHVtbi1hbGlnbiA6IHN0YXJ0O1xufVxuXG4ueV9zZWxmX3N0YXJ0IHtcblx0QGluY2x1ZGUgeV9zZWxmX3N0YXJ0O1xufVxuXG4vLyBBbGlnbmVtZW50IGRlIGwnaXRlbSBhdSBtaWxpZXVcblxuQG1peGluIHlfc2VsZl9jZW50ZXIge1xuXHRhbGlnbi1zZWxmICAgICAgICAgICAgOiBjZW50ZXI7XG5cdC13ZWJraXQtYWxpZ24tc2VsZiAgICA6IGNlbnRlcjtcblx0LW1zLWdyaWQtY29sdW1uLWFsaWduIDogY2VudGVyO1xufVxuXG4ueV9zZWxmX2NlbnRlciB7XG5cdEBpbmNsdWRlIHlfc2VsZl9jZW50ZXI7XG59XG5cbi8vIEFsaWduZW1lbnQgZGUgbCdpdGVtIGVuIGJhc1xuXG5AbWl4aW4geV9zZWxmX2VuZCB7XG5cdGFsaWduLXNlbGYgICAgICAgICAgICA6IGZsZXgtZW5kO1xuXHQtd2Via2l0LWFsaWduLXNlbGYgICAgOiBmbGV4LWVuZDtcblx0LW1zLWdyaWQtY29sdW1uLWFsaWduIDogZW5kO1xufVxuXG4ueV9zZWxmX2VuZCB7XG5cdEBpbmNsdWRlIHlfc2VsZl9lbmQ7XG59XG5cbi8qIC0gQWxpZ25lbWVudHMgcmVzcG9uc2l2ZXNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludE1hcCkge1xuXHRAaWYgJGJyZWFrcG9pbnQgIT0gZnVsbCB7XG5cdFx0QGluY2x1ZGUgbWVkaWFfeF9taW4oJGJyZWFrcG9pbnQpIHtcblx0XHRcdC54X2FsaWduX2Fic29sdXRlXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgeF9hbGlnbl9hYnNvbHV0ZTtcblx0XHRcdH1cblx0XHRcdC55X2FsaWduX2Fic29sdXRlXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgeV9hbGlnbl9hYnNvbHV0ZTtcblx0XHRcdH1cblx0XHRcdC5jZW50ZXJfYWxpZ25fYWJzb2x1dGVfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBjZW50ZXJfYWxpZ25fYWJzb2x1dGU7XG5cdFx0XHR9XG5cdFx0XHQucmVzZXRfYWxpZ25fYWJzb2x1dGVfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSByZXNldF9hbGlnbl9hYnNvbHV0ZTtcblx0XHRcdH1cblx0XHRcdC54X2FsaWduX2ZpeGVkXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgeF9hbGlnbl9maXhlZDtcblx0XHRcdH1cblx0XHRcdC55X2FsaWduX2ZpeGVkXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgeV9hbGlnbl9maXhlZDtcblx0XHRcdH1cblx0XHRcdC5jZW50ZXJfYWxpZ25fZml4ZWRfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBjZW50ZXJfYWxpZ25fZml4ZWQ7XG5cdFx0XHR9XG5cdFx0XHQucmVzZXRfYWxpZ25fZml4ZWRfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSByZXNldF9hbGlnbl9maXhlZDtcblx0XHRcdH1cblx0XHRcdC54X2FsaWduX3JlbGF0aXZlXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgeF9hbGlnbl9yZWxhdGl2ZTtcblx0XHRcdH1cblx0XHRcdC55X2FsaWduX3JlbGF0aXZlXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgeV9hbGlnbl9yZWxhdGl2ZTtcblx0XHRcdH1cblx0XHRcdC5jZW50ZXJfYWxpZ25fcmVsYXRpdmVfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBjZW50ZXJfYWxpZ25fcmVsYXRpdmU7XG5cdFx0XHR9XG5cdFx0XHQucmVzZXRfYWxpZ25fcmVsYXRpdmVfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSByZXNldF9hbGlnbl9yZWxhdGl2ZTtcblx0XHRcdH1cblx0XHRcdC54X3N0YXJ0XyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9mbGV4O1xuXHRcdFx0XHRAaW5jbHVkZSB4X3N0YXJ0O1xuXHRcdFx0fVxuXHRcdFx0LnhfY2VudGVyXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9mbGV4O1xuXHRcdFx0XHRAaW5jbHVkZSB4X2NlbnRlcjtcblx0XHRcdH1cblx0XHRcdC54X2VuZF8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIGRfZmxleDtcblx0XHRcdFx0QGluY2x1ZGUgeF9lbmQ7XG5cdFx0XHR9XG5cdFx0XHQueF9iZXR3ZWVuXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9mbGV4O1xuXHRcdFx0XHRAaW5jbHVkZSB4X2JldHdlZW47XG5cdFx0XHR9XG5cdFx0XHQueF9hcm91bmRfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBkX2ZsZXg7XG5cdFx0XHRcdEBpbmNsdWRlIHhfYXJvdW5kO1xuXHRcdFx0fVxuXHRcdFx0LnhfZXZlbmx5XyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9mbGV4O1xuXHRcdFx0XHRAaW5jbHVkZSB4X2V2ZW5seTtcblx0XHRcdH1cblx0XHRcdC55X2NvbnRlbnRfc3RhcnRfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBkX2ZsZXg7XG5cdFx0XHRcdEBpbmNsdWRlIHlfY29udGVudF9zdGFydDtcblx0XHRcdH1cblx0XHRcdC55X2NvbnRlbnRfY2VudGVyXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9mbGV4O1xuXHRcdFx0XHRAaW5jbHVkZSB5X2NvbnRlbnRfY2VudGVyO1xuXHRcdFx0fVxuXHRcdFx0LnlfY29udGVudF9lbmRfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBkX2ZsZXg7XG5cdFx0XHRcdEBpbmNsdWRlIHlfY29udGVudF9lbmQ7XG5cdFx0XHR9XG5cdFx0XHQueV9jb250ZW50X2JldHdlZW5fI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBkX2ZsZXg7XG5cdFx0XHRcdEBpbmNsdWRlIHlfY29udGVudF9iZXR3ZWVuO1xuXHRcdFx0fVxuXHRcdFx0LnlfY29udGVudF9hcm91bmRfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBkX2ZsZXg7XG5cdFx0XHRcdEBpbmNsdWRlIHlfY29udGVudF9hcm91bmQ7XG5cdFx0XHR9XG5cdFx0XHQueV9jb250ZW50X3N0cmV0Y2hfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBkX2ZsZXg7XG5cdFx0XHRcdEBpbmNsdWRlIHlfY29udGVudF9zdHJldGNoO1xuXHRcdFx0fVxuXHRcdFx0LnlfaXRlbXNfc3RhcnRfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBkX2ZsZXg7XG5cdFx0XHRcdEBpbmNsdWRlIHlfaXRlbXNfc3RhcnQ7XG5cdFx0XHR9XG5cdFx0XHQueV9pdGVtc19jZW50ZXJfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBkX2ZsZXg7XG5cdFx0XHRcdEBpbmNsdWRlIHlfaXRlbXNfY2VudGVyO1xuXHRcdFx0fVxuXHRcdFx0LnlfaXRlbXNfZW5kXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9mbGV4O1xuXHRcdFx0XHRAaW5jbHVkZSB5X2l0ZW1zX2VuZDtcblx0XHRcdH1cblx0XHRcdC55X2l0ZW1zX3N0cmV0Y2hfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBkX2ZsZXg7XG5cdFx0XHRcdEBpbmNsdWRlIHlfaXRlbXNfc3RyZXRjaDtcblx0XHRcdH1cblx0XHRcdC55X3NlbGZfc3RhcnRfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBkX2ZsZXg7XG5cdFx0XHRcdEBpbmNsdWRlIHlfc2VsZl9zdGFydDtcblx0XHRcdH1cblx0XHRcdC55X3NlbGZfY2VudGVyXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9mbGV4O1xuXHRcdFx0XHRAaW5jbHVkZSB5X3NlbGZfY2VudGVyO1xuXHRcdFx0fVxuXHRcdFx0Lnlfc2VsZl9lbmRfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBkX2ZsZXg7XG5cdFx0XHRcdEBpbmNsdWRlIHlfc2VsZl9lbmQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tIEZuY3QgRGlzcGxheVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0gQWZmaWNoYWdlIGRlcyDDqWzDqW1lbnRzXG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuLy8gTm9uZVxuXG5AbWl4aW4gZF9ub25lIHtcblx0ZGlzcGxheSA6IG5vbmU7XG59XG5cbi5kX25vbmUge1xuXHRAaW5jbHVkZSBkX25vbmU7XG59XG5cbi8vIElubGluZS1ibG9ja1xuXG5AbWl4aW4gZF9pYiB7XG5cdGRpc3BsYXkgOiBpbmxpbmUtYmxvY2s7XG59XG5cbi5kX2liIHtcblx0QGluY2x1ZGUgZF9pYjtcbn1cblxuLy8gRmxleFxuXG5AbWl4aW4gZF9mbGV4IHtcblx0ZGlzcGxheSA6IC13ZWJraXQtYm94O1xuXHRkaXNwbGF5IDogLW1vei1ib3g7XG5cdGRpc3BsYXkgOiAtbXMtZmxleGJveDtcblx0ZGlzcGxheSA6IC13ZWJraXQtZmxleDtcblx0ZGlzcGxheSA6IGZsZXg7XG59XG5cbi5kX2ZsZXgge1xuXHRAaW5jbHVkZSBkX2ZsZXg7XG59XG5cbi8vIFJlc3BvbnNpdmVcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRNYXApIHtcblx0QGlmICRicmVha3BvaW50ICE9IGZ1bGwge1xuXHRcdEBpbmNsdWRlIG1lZGlhX3hfbWluKCRicmVha3BvaW50KSB7XG5cdFx0XHQuZF9ub25lXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgZF9ub25lO1xuXHRcdFx0fVxuXHRcdFx0LmRfaWJfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBkX2liO1xuXHRcdFx0fVxuXHRcdFx0LmRfZmxleF8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIGRfZmxleDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0gRm5jdCBPcmRyZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtIEZpcnN0XG4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gKi9cblxuQG1peGluIG9yZGVyX2ZpcnN0IHtcblx0b3JkZXIgICAgICAgICAgICAgIDogLTE7XG5cdC13ZWJraXQtZmxleC1vcmRlciA6IC0xO1xuXHQtbXMtZmxleC1vcmRlciAgICAgOiAtMTtcbn1cblxuLm9yZGVyX2ZpcnN0IHtcblx0QGluY2x1ZGUgb3JkZXJfZmlyc3Q7XG59XG5cbi8qIC0gTGFzdFxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbkBtaXhpbiBvcmRlcl9sYXN0IHtcblx0b3JkZXIgICAgICAgICAgICAgIDogMTtcblx0LXdlYmtpdC1mbGV4LW9yZGVyIDogMTtcblx0LW1zLWZsZXgtb3JkZXIgICAgIDogMTtcbn1cblxuLm9yZGVyX2xhc3Qge1xuXHRAaW5jbHVkZSBvcmRlcl9sYXN0O1xufVxuXG4vKiAtIE9yZHJlIHJlc3BvbnNpdmVcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludE1hcCkge1xuXHRAaWYgJGJyZWFrcG9pbnQgIT0gZnVsbCB7XG5cdFx0QGluY2x1ZGUgbWVkaWFfeF9taW4oJGJyZWFrcG9pbnQpIHtcblx0XHRcdC5vcmRlcl9maXJzdF8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIG9yZGVyX2ZpcnN0O1xuXHRcdFx0fVxuXHRcdFx0Lm9yZGVyX2xhc3RfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSBvcmRlcl9sYXN0O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLSBGbmN0IERpcmVjdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtIFJvd1xuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbkBtaXhpbiBkaXJlY3Rpb25feCB7XG5cdC13ZWJraXQtYm94LW9yaWVudCAgICA6IGhvcml6b250YWw7XG5cdC13ZWJraXQtYm94LWRpcmVjdGlvbiA6IG5vcm1hbDtcblx0LW1zLWZsZXgtZGlyZWN0aW9uICAgIDogcm93O1xuXHRmbGV4LWRpcmVjdGlvbiAgICAgICAgOiByb3c7XG59XG5cbi5kaXJlY3Rpb25feCB7XG5cdEBpbmNsdWRlIGRpcmVjdGlvbl94O1xufVxuXG4vKiAtIFJvdyBSZXZlcnRcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5AbWl4aW4gZGlyZWN0aW9uX3hfcmV2ZXJ0IHtcblx0LXdlYmtpdC1ib3gtb3JpZW50ICAgIDogaG9yaXpvbnRhbDtcblx0LXdlYmtpdC1ib3gtZGlyZWN0aW9uIDogcmV2ZXJzZTtcblx0LW1zLWZsZXgtZGlyZWN0aW9uICAgIDogcm93LXJldmVyc2U7XG5cdGZsZXgtZGlyZWN0aW9uICAgICAgICA6IHJvdy1yZXZlcnNlO1xufVxuXG4uZGlyZWN0aW9uX3hfcmV2ZXJ0IHtcblx0QGluY2x1ZGUgZGlyZWN0aW9uX3hfcmV2ZXJ0O1xufVxuXG4vKiAtIENvbHVtblxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbkBtaXhpbiBkaXJlY3Rpb25feSB7XG5cdC13ZWJraXQtYm94LW9yaWVudCAgICA6IHZlcnRpY2FsO1xuXHQtd2Via2l0LWJveC1kaXJlY3Rpb24gOiBub3JtYWw7XG5cdC1tcy1mbGV4LWRpcmVjdGlvbiAgICA6IGNvbHVtbjtcblx0ZmxleC1kaXJlY3Rpb24gICAgICAgIDogY29sdW1uO1xuXHQ+IFtjbGFzc149XCJjb2xcIl0ge1xuXHRcdC1tcy1mbGV4LXByZWZlcnJlZC1zaXplIDogYXV0bztcblx0fVxufVxuLmRpcmVjdGlvbl95IHtcblx0QGluY2x1ZGUgZGlyZWN0aW9uX3k7XG59XG5cbi8qIC0gQ29sdW1uIFJldmVydFxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbkBtaXhpbiBkaXJlY3Rpb25feV9yZXZlcnQge1xuXHQtd2Via2l0LWJveC1vcmllbnQgICAgOiB2ZXJ0aWNhbDtcblx0LXdlYmtpdC1ib3gtZGlyZWN0aW9uIDogcmV2ZXJzZTtcblx0LW1zLWZsZXgtZGlyZWN0aW9uICAgIDogY29sdW1uLXJldmVyc2U7XG5cdGZsZXgtZGlyZWN0aW9uICAgICAgICA6IGNvbHVtbi1yZXZlcnNlO1xuXHQ+IFtjbGFzc149XCJjb2xcIl0ge1xuXHRcdC1tcy1mbGV4LXByZWZlcnJlZC1zaXplIDogYXV0bztcblx0fVxufVxuXG4uZGlyZWN0aW9uX3lfcmV2ZXJ0IHtcblx0QGluY2x1ZGUgZGlyZWN0aW9uX3lfcmV2ZXJ0O1xufVxuXG4vKiAtIE9yZHJlIHJlc3BvbnNpdmVcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludE1hcCkge1xuXHRAaWYgJGJyZWFrcG9pbnQgIT0gZnVsbCB7XG5cdFx0QGluY2x1ZGUgbWVkaWFfeF9taW4oJGJyZWFrcG9pbnQpIHtcblx0XHRcdC5kaXJlY3Rpb25feF8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIGRpcmVjdGlvbl94O1xuXHRcdFx0fVxuXHRcdFx0LmRpcmVjdGlvbl94X3JldmVydF8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIGRpcmVjdGlvbl94X3JldmVydDtcblx0XHRcdH1cblx0XHRcdC5kaXJlY3Rpb25feV8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIGRpcmVjdGlvbl95O1xuXHRcdFx0fVxuXHRcdFx0LmRpcmVjdGlvbl95X3JldmVydF8jeyRicmVha3BvaW50fSB7XG5cdFx0XHRcdEBpbmNsdWRlIGRpcmVjdGlvbl95X3JldmVydDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0gRm5jdCBUYWlsbGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLSBMYXJnZXVyIGZvcmPDqWVcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5AbWl4aW4gd19mdWxsIHtcblx0d2lkdGggOiAxMDAlO1xufVxuXG4ud19mdWxsIHtcblx0QGluY2x1ZGUgd19mdWxsO1xufVxuXG4vKiAtIEhhdXRldXIgZm9yY8OpZVxuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICovXG5cbkBtaXhpbiBoX2Z1bGwge1xuXHRoZWlnaHQgOiAxMDAlO1xufVxuXG4uaF9mdWxsIHtcblx0QGluY2x1ZGUgaF9mdWxsO1xufVxuXG4vKiAtIFRhaWxsZXMgcmVzcG9uc2l2ZXNcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludE1hcCkge1xuXHRAaWYgJGJyZWFrcG9pbnQgIT0gZnVsbCB7XG5cdFx0QGluY2x1ZGUgbWVkaWFfeF9taW4oJGJyZWFrcG9pbnQpIHtcblx0XHRcdC53X2Z1bGxfI3skYnJlYWtwb2ludH0ge1xuXHRcdFx0XHRAaW5jbHVkZSB3X2Z1bGw7XG5cdFx0XHR9XG5cdFx0XHQuaF9mdWxsXyN7JGJyZWFrcG9pbnR9IHtcblx0XHRcdFx0QGluY2x1ZGUgaF9mdWxsO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLSBGbmN0IFRyYW5zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24pIHtcblx0LW1vei10cmFuc2l0aW9uICAgIDogJHRyYW5zaXRpb247XG5cdC1vLXRyYW5zaXRpb24gICAgICA6ICR0cmFuc2l0aW9uO1xuXHQtd2Via2l0LXRyYW5zaXRpb24gOiAkdHJhbnNpdGlvbjtcblx0dHJhbnNpdGlvbiAgICAgICAgIDogJHRyYW5zaXRpb247XG59XG5cbkBtaXhpbiBkZWxheSgkZGVsYXkpIHtcblx0LXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5IDogJGRlbGF5O1xuXHQtbW96LXRyYW5zaXRpb24tZGVsYXkgICAgOiAkZGVsYXk7XG5cdC1tcy10cmFuc2l0aW9uLWRlbGF5ICAgICA6ICRkZWxheTtcblx0LW8tdHJhbnNpdGlvbi1kZWxheSAgICAgIDogJGRlbGF5O1xuXHR0cmFuc2l0aW9uLWRlbGF5ICAgICAgICAgOiAkZGVsYXk7XG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tIEZuY3QgQW5pbWF0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbkBtaXhpbiBrZXlmcmFtZXMoJGFuaW1hdGlvbl9uYW1lKSB7XG5cdEAtd2Via2l0LWtleWZyYW1lcyAjeyRhbmltYXRpb25fbmFtZX0ge1xuXHRcdEBjb250ZW50O1xuXHR9XG5cdEAtbW96LWtleWZyYW1lcyAjeyRhbmltYXRpb25fbmFtZX0ge1xuXHRcdEBjb250ZW50O1xuXHR9XG5cdC8vQC1tcy1rZXlmcmFtZXMgI3skYW5pbWF0aW9uX25hbWV9IHtcblx0Ly8gIEBjb250ZW50O1xuXHQvL31cblx0QC1vLWtleWZyYW1lcyAjeyRhbmltYXRpb25fbmFtZX0ge1xuXHRcdEBjb250ZW50O1xuXHR9XG5cdEBrZXlmcmFtZXMgI3skYW5pbWF0aW9uX25hbWV9IHtcblx0XHRAY29udGVudDtcblx0fVxufVxuQG1peGluIGFuaW1hdGlvbigkYW5pbWF0aW9uKSB7XG5cdC13ZWJraXQtYW5pbWF0aW9uIDogI3skYW5pbWF0aW9ufTtcblx0LW1vei1hbmltYXRpb24gICAgOiAjeyRhbmltYXRpb259O1xuXHQtbXMtYW5pbWF0aW9uICAgICA6ICN7JGFuaW1hdGlvbn07XG5cdC1vLWFuaW1hdGlvbiAgICAgIDogI3skYW5pbWF0aW9ufTtcblx0YW5pbWF0aW9uICAgICAgICAgOiAjeyRhbmltYXRpb259O1xufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLSBGbmN0IFRyYW5zZm9ybXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AbWl4aW4gdHJhbnNmb3JtKCR0cmFuc2Zvcm0pIHtcblx0LXdlYmtpdC10cmFuc2Zvcm0gOiAkdHJhbnNmb3JtO1xuXHQtbW96LXRyYW5zZm9ybSAgICA6ICR0cmFuc2Zvcm07XG5cdC1tcy10cmFuc2Zvcm0gICAgIDogJHRyYW5zZm9ybTtcblx0LW8tdHJhbnNmb3JtICAgICAgOiAkdHJhbnNmb3JtO1xuXHR0cmFuc2Zvcm0gICAgICAgICA6ICR0cmFuc2Zvcm07XG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tIEZuY3QgSW50w6lyYWN0aW9uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0gaG92ZXIsIGZvY3VzLCBhY3RpdmUsIHZpc2l0ZWRcbi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLiAqL1xuXG4vLyBIb3ZlclxuXG5AbWl4aW4gaG92ZXIge1xuXHRAaW5jbHVkZSBtZWRpYV9wb2ludGVyIHtcblx0XHQmOmhvdmVyIHtcblx0XHRcdEBjb250ZW50XG5cdFx0fVxuXHR9XG59XG5cbkBtaXhpbiBob3Zlcl94X21pbigkYnJlYWtwb2ludCkge1xuXHRAaW5jbHVkZSBtZWRpYV9wb2ludGVyX3hfbWluKCRicmVha3BvaW50KSB7XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRAY29udGVudFxuXHRcdH1cblx0fVxufVxuXG5AbWl4aW4gaG92ZXJfeF9tYXgoJGJyZWFrcG9pbnQpIHtcblx0QGluY2x1ZGUgbWVkaWFfcG9pbnRlcl94X21heCgkYnJlYWtwb2ludCkge1xuXHRcdCY6aG92ZXIge1xuXHRcdFx0QGNvbnRlbnRcblx0XHR9XG5cdH1cbn1cblxuQG1peGluIGhvdmVyX3lfbWluKCRicmVha3BvaW50KSB7XG5cdEBpbmNsdWRlIG1lZGlhX3BvaW50ZXJfeV9taW4oJGJyZWFrcG9pbnQpIHtcblx0XHQmOmhvdmVyIHtcblx0XHRcdEBjb250ZW50XG5cdFx0fVxuXHR9XG59XG5cbkBtaXhpbiBob3Zlcl95X21heCgkYnJlYWtwb2ludCkge1xuXHRAaW5jbHVkZSBtZWRpYV9wb2ludGVyX3lfbWF4KCRicmVha3BvaW50KSB7XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRAY29udGVudFxuXHRcdH1cblx0fVxufVxuXG4vLyBGb2N1c1xuXG5AbWl4aW4gZm9jdXMge1xuXHRAbWVkaWEgbWVkaWFfcG9pbnRlciB7XG5cdFx0Jjpmb2N1cyB7XG5cdFx0XHRAY29udGVudDtcblx0XHR9XG5cdH1cbn1cblxuQG1peGluIGZvY3VzX3hfbWluKCRicmVha3BvaW50KSB7XG5cdEBpbmNsdWRlIG1lZGlhX3BvaW50ZXJfeF9taW4oJGJyZWFrcG9pbnQpIHtcblx0XHQmOmZvY3VzIHtcblx0XHRcdEBjb250ZW50O1xuXHRcdH1cblx0fVxufVxuXG5AbWl4aW4gZm9jdXNfeF9tYXgoJGJyZWFrcG9pbnQpIHtcblx0QGluY2x1ZGUgbWVkaWFfcG9pbnRlcl94X21heCgkYnJlYWtwb2ludCkge1xuXHRcdCY6Zm9jdXMge1xuXHRcdFx0QGNvbnRlbnQ7XG5cdFx0fVxuXHR9XG59XG5cbkBtaXhpbiBmb2N1c195X21pbigkYnJlYWtwb2ludCkge1xuXHRAaW5jbHVkZSBtZWRpYV9wb2ludGVyX3lfbWluKCRicmVha3BvaW50KSB7XG5cdFx0Jjpmb2N1cyB7XG5cdFx0XHRAY29udGVudDtcblx0XHR9XG5cdH1cbn1cblxuQG1peGluIGZvY3VzX3lfbWF4KCRicmVha3BvaW50KSB7XG5cdEBpbmNsdWRlIG1lZGlhX3BvaW50ZXJfeV9tYXgoJGJyZWFrcG9pbnQpIHtcblx0XHQmOmZvY3VzIHtcblx0XHRcdEBjb250ZW50O1xuXHRcdH1cblx0fVxufVxuXG4vLyBBY3RpdmVcblxuQG1peGluIGFjdGl2ZSB7XG5cdCY6YWN0aXZlIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG4vLyBWaXNpdGVkXG5cbkBtaXhpbiB2aXNpdGVkIHtcblx0Jjp2aXNpdGVkIHtcblx0XHRAY29udGVudDtcblx0fVxufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLSBGbmN0IE9tYnJlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbkBtaXhpbiBvbWJyZSgkb21icmUpIHtcblx0LXdlYmtpdC1ib3gtc2hhZG93IDogJG9tYnJlO1xuXHRib3gtc2hhZG93ICAgICAgICAgOiAkb21icmU7XG59IiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tIEZuY3QgUmFkaXVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQG1peGluIHJhZGl1cygkcmFkaXVzKSB7XG5cdC13ZWJraXQtYm9yZGVyLXJhZGl1cyA6ICRyYWRpdXM7XG5cdC1tb3otYm9yZGVyLXJhZGl1cyAgICA6ICRyYWRpdXM7XG5cdGJvcmRlci1yYWRpdXMgICAgICAgICA6ICRyYWRpdXM7XG59IiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vKiogRm9udHMgdGV4dCAqKi9cblxuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9SW50ZXI6d2dodEAzMDA7NDAwOzUwMDs2MDA7NzAwJmRpc3BsYXk9c3dhcCcpO1xuXG5AbWl4aW4gZm9udF9pbnRlcl9saWdodCB7XG4gICAgZm9udC1mYW1pbHkgOiAnSW50ZXInLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0IDogMzAwO1xufVxuXG5AbWl4aW4gZm9udF9pbnRlcl9yZWd1bGFyIHtcbiAgICBmb250LWZhbWlseSA6ICdJbnRlcicsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQgOiA0MDA7XG59XG5cbkBtaXhpbiBmb250X2ludGVyX21lZGl1bSB7XG4gICAgZm9udC1mYW1pbHkgOiAnSW50ZXInLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0IDogNTAwO1xufVxuXG5AbWl4aW4gZm9udF9pbnRlcl9zZW1pYm9sZCB7XG4gICAgZm9udC1mYW1pbHkgOiAnSW50ZXInLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0IDogNjAwO1xufVxuXG5AbWl4aW4gZm9udF9pbnRlcl9ib2xkIHtcbiAgICBmb250LWZhbWlseSA6ICdJbnRlcicsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQgOiA3MDA7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5ICA6ICdIZXJuYW5kZXpCcm9zUmVndWxhcic7XG4gICAgc3JjICAgICAgICAgIDogdXJsKCcuLi8uLi9mb250cy9IZXJuYW5kZXpCcm9zLVJlZ3VsYXIuZW90Jyk7XG4gICAgc3JjICAgICAgICAgIDogdXJsKCcuLi8uLi9mb250cy9IZXJuYW5kZXpCcm9zLVJlZ3VsYXIuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICB1cmwoJy4uLy4uL2ZvbnRzL0hlcm5hbmRlekJyb3MtUmVndWxhci53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICB1cmwoJy4uLy4uL2ZvbnRzL0hlcm5hbmRlekJyb3MtUmVndWxhci53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCcuLi8uLi9mb250cy9IZXJuYW5kZXpCcm9zLVJlZ3VsYXIudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgIHVybCgnLi4vLi4vZm9udHMvSGVybmFuZGV6QnJvcy1SZWd1bGFyLnN2ZyNIZXJuYW5kZXpCcm9zLVJlZ3VsYXInKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0ICA6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlICAgOiBub3JtYWw7XG4gICAgZm9udC1kaXNwbGF5IDogc3dhcDtcbn1cblxuQG1peGluIGZvbnRfaGVybmFuZGV6X3JlZ3VsYXIge1xuICAgIGZvbnQtZmFtaWx5IDogJ0hlcm5hbmRlekJyb3NSZWd1bGFyJywgc2VyaWY7XG4gICAgZm9udC13ZWlnaHQgOiA0MDA7XG59XG5cbi8qKiBSZVNlZSBGb250IGljb25zICoqL1xuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseSA6IFwicmVzZWVcIjtcbiAgICBzcmMgICAgICAgICA6IHVybChcIi4uLy4uL2ZvbnRzL3Jlc2VlLmVvdFwiKTtcbiAgICBzcmMgICAgICAgICA6IHVybChcIi4uLy4uL2ZvbnRzL3Jlc2VlLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXG4gICAgdXJsKFwiLi4vLi4vZm9udHMvcmVzZWUud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxuICAgIHVybChcIi4uLy4uL2ZvbnRzL3Jlc2VlLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSxcbiAgICB1cmwoXCIuLi8uLi9mb250cy9yZXNlZS5zdmcjcmVzZWVcIikgZm9ybWF0KFwic3ZnXCIpO1xuICAgIGZvbnQtd2VpZ2h0IDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGUgIDogbm9ybWFsO1xuXG59XG5cbltkYXRhLWljb25dOmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHkgICAgICAgICAgICAgOiBcInJlc2VlXCIgIWltcG9ydGFudDtcbiAgICBjb250ZW50ICAgICAgICAgICAgICAgICA6IGF0dHIoZGF0YS1pY29uKTtcbiAgICBmb250LXN0eWxlICAgICAgICAgICAgICA6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0ICAgICAgICAgICAgIDogbm9ybWFsICFpbXBvcnRhbnQ7XG4gICAgZm9udC12YXJpYW50ICAgICAgICAgICAgOiBub3JtYWwgIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybSAgICAgICAgICA6IG5vbmUgIWltcG9ydGFudDtcbiAgICBzcGVhayAgICAgICAgICAgICAgICAgICA6IG5vbmU7XG4gICAgbGluZS1oZWlnaHQgICAgICAgICAgICAgOiAxO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmcgIDogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmcgOiBncmF5c2NhbGU7XG59XG5cbltjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsXG5bY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHkgICAgICAgICAgICAgOiBcInJlc2VlXCIgIWltcG9ydGFudDtcbiAgICBmb250LXN0eWxlICAgICAgICAgICAgICA6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0ICAgICAgICAgICAgIDogbm9ybWFsICFpbXBvcnRhbnQ7XG4gICAgZm9udC12YXJpYW50ICAgICAgICAgICAgOiBub3JtYWwgIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybSAgICAgICAgICA6IG5vbmUgIWltcG9ydGFudDtcbiAgICBzcGVhayAgICAgICAgICAgICAgICAgICA6IG5vbmU7XG4gICAgbGluZS1oZWlnaHQgICAgICAgICAgICAgOiAxO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmcgIDogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmcgOiBncmF5c2NhbGU7XG59XG5cbi5pY29uLWNhbWVyYTpiZWZvcmUge1xuICAgIGNvbnRlbnQgOiBcIlxcZTAwMFwiO1xufVxuLmljb24tY2FydDpiZWZvcmUge1xuICAgIGNvbnRlbnQgOiBcIlxcZTAwMVwiO1xufVxuLmljb24tY2hldnJvbjpiZWZvcmUge1xuICAgIGNvbnRlbnQgOiBcIlxcZTAwMlwiO1xufVxuLmljb24tY2xvY2s6YmVmb3JlIHtcbiAgICBjb250ZW50IDogXCJcXGUwMDNcIjtcbn1cbi5pY29uLWNyb3NzOmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDA0XCI7XG59XG4uaWNvbi1lZGl0OmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDA1XCI7XG59XG4uaWNvbi1mYWNlYm9vazpiZWZvcmUge1xuICAgIGNvbnRlbnQgOiBcIlxcZTAwNlwiO1xufVxuLmljb24tZ2xhc3M6YmVmb3JlIHtcbiAgICBjb250ZW50IDogXCJcXGUwMDdcIjtcbn1cbi5pY29uLWhlYXJ0OmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDA4XCI7XG59XG4uaWNvbi1pbXBvcnQ6YmVmb3JlIHtcbiAgICBjb250ZW50IDogXCJcXGUwMDlcIjtcbn1cbi5pY29uLWluc3RhZ3JhbTpiZWZvcmUge1xuICAgIGNvbnRlbnQgOiBcIlxcZTAwYVwiO1xufVxuLmljb24tbGlua2VkaW46YmVmb3JlIHtcbiAgICBjb250ZW50IDogXCJcXGUwMGJcIjtcbn1cbi5pY29uLXBob25lOmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDBjXCI7XG59XG4uaWNvbi1yZWEtYXV0aGVudGljOmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDBkXCI7XG59XG4uaWNvbi1yZWEtY2FsZW5kYXI6YmVmb3JlIHtcbiAgICBjb250ZW50IDogXCJcXGUwMGVcIjtcbn1cbi5pY29uLXJlYS1waG9uZTpiZWZvcmUge1xuICAgIGNvbnRlbnQgOiBcIlxcZTAwZlwiO1xufVxuLmljb24tcmVhLXNlY3VyZWQ6YmVmb3JlIHtcbiAgICBjb250ZW50IDogXCJcXGUwMTBcIjtcbn1cbi5pY29uLXJlYS1zZWxsaW5nOmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDExXCI7XG59XG4uaWNvbi1yZWEtd29ybGR3aWRlOmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDEyXCI7XG59XG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDEzXCI7XG59XG4uaWNvbi11c2VyOmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDE0XCI7XG59XG4uaWNvbi13aGF0c2FwcDpiZWZvcmUge1xuICAgIGNvbnRlbnQgOiBcIlxcZTAxNVwiO1xufVxuLmljb24tcGludGVyZXN0OmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDE2XCI7XG59XG4uaWNvbi1oZWFydC1mdWxsOmJlZm9yZSB7XG4gICAgY29udGVudCA6IFwiXFxlMDE3XCI7XG59XG4uaWNvbi1saXN0LXZpZXcxOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGUwMThcIjtcbn1cbi5pY29uLWxpc3QtdmlldzI6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTAxOVwiO1xufVxuLmljb24tbGlzdC12aWV3MzpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlMDFhXCI7XG59XG4uaWNvbi1saXN0LXZpZXc0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGUwMWJcIjtcbn1cbi5pY29uLWVtYWlsOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGUwMWNcIjtcbn1cbi5pY29uLWV5ZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlMDFkXCI7XG59XG4uaWNvbi1ob3VyZ2xhc3M6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTAxZVwiO1xufVxuLmljb24tY2hlY2s6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTAxZlwiO1xufVxuLmljb24tY2FsZW5kYXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTAyMFwiO1xufVxuLmljb24tYWxlcnQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTAyMVwiO1xufVxuLmljb24td29ybGQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTAyMlwiO1xufVxuLmljb24tYmVsbDpiZWZvcmUge1xuXHRjb250ZW50OiBcIlxcZTAyM1wiO1xufVxuLmljb24tY2hlY2stcm91bmQ6YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGUwMjRcIjtcbn1cbi5pY29uLWNvbnRhY3Q6YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGUwMjVcIjtcbn1cbi5pY29uLXBhY2thZ2U6YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGUwMjZcIjtcbn1cbi5pY29uLXN0YXJzOmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwiXFxlMDI3XCI7XG59XG4uaWNvbi15b3V0dWJlIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5Qm1hV3hzUFNJalptWmxPR1EySWlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUNCMmFXVjNRbTk0UFNJd0lEQWdOVEFnTlRBaUlIZHBaSFJvUFNJMU1IQjRJaUJvWldsbmFIUTlJalV3Y0hnaVBqeHdZWFJvSUdROUlrMGdORFF1T0RrNE5ETTRJREUwTGpVZ1F5QTBOQzQxSURFeUxqTXdNRGM0TVNBME1pNDJNREUxTmpNZ01UQXVOams1TWpFNUlEUXdMak01T0RRek9DQXhNQzR4T1RreU1Ua2dReUF6Tnk0eE1ERTFOak1nT1M0MUlETXhJRGtnTWpRdU16azRORE00SURrZ1F5QXhOeTQ0TURBM09ERWdPU0F4TVM0Mk1ERTFOak1nT1M0MUlEZ3VNekF3TnpneElERXdMakU1T1RJeE9TQkRJRFl1TVRBeE5UWXpJREV3TGpZNU9USXhPU0EwTGpFNU9USXhPU0F4TWk0eE9Ua3lNVGtnTXk0NE1EQTNPREVnTVRRdU5TQkRJRE11TXprNE5ETTRJREUzSURNZ01qQXVOU0F6SURJMUlFTWdNeUF5T1M0MUlETXVNems0TkRNNElETXpJRE11T0RrNE5ETTRJRE0xTGpVZ1F5QTBMak13TURjNE1TQXpOeTQyT1RreU1Ua2dOaTR4T1RreU1Ua2dNemt1TXpBd056Z3hJRGd1TXprNE5ETTRJRE01TGpnd01EYzRNU0JESURFeExqZzVPRFF6T0NBME1DNDFJREUzTGpnNU9EUXpPQ0EwTVNBeU5DNDFJRFF4SUVNZ016RXVNVEF4TlRZeklEUXhJRE0zTGpFd01UVTJNeUEwTUM0MUlEUXdMall3TVRVMk15QXpPUzQ0TURBM09ERWdReUEwTWk0NE1EQTNPREVnTXprdU16QXdOemd4SURRMExqWTVPVEl4T1NBek55NDRNREEzT0RFZ05EVXVNVEF4TlRZeklETTFMalVnUXlBME5TNDFJRE16SURRMklESTVMak01T0RRek9DQTBOaTR4TURFMU5qTWdNalVnUXlBME5TNDRPVGcwTXpnZ01qQXVOU0EwTlM0ek9UZzBNemdnTVRjZ05EUXVPRGs0TkRNNElERTBMalVnV2lCTklERTVJRE15SUV3Z01Ua2dNVGdnVENBek1TNHhPVGt5TVRrZ01qVWdXaUl2UGp3dmMzWm5QZz09JykgNTAlIDUwJSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOmNvbnRhaW47XG59XG4iLCIkbW9sQnV0dG9uc01hcCA6IChcbiAgICAnLmJ0bl9jdGE6bm90KC5saW5rX2N0YSknIDogKFxuICAgICAgICAnaGVpZ2h0JzogKFxuICAgICAgICAgICAgNDZweCxcbiAgICAgICAgICAgIDUwcHhcbiAgICAgICAgKSxcbiAgICAgICAgJ3BhZGRpbmctbGVmdCc6IChcbiAgICAgICAgICAgIDE1cHgsXG4gICAgICAgICAgICAyMHB4XG4gICAgICAgICksXG4gICAgICAgICdwYWRkaW5nLXJpZ2h0JzogKFxuICAgICAgICAgICAgMTVweCxcbiAgICAgICAgICAgIDIwcHhcbiAgICAgICAgKSxcbiAgICApLFxuICAgICcuYnRuX2N0YS5idG5fc21hbGw6bm90KC5saW5rX2N0YSknIDogKFxuICAgICAgICAnaGVpZ2h0JzogKFxuICAgICAgICAgICAgNDBweCxcbiAgICAgICAgICAgIDQ0cHhcbiAgICAgICAgKSxcbiAgICAgICAgJ3BhZGRpbmctbGVmdCc6IChcbiAgICAgICAgICAgIDEwcHgsXG4gICAgICAgICAgICAxMnB4XG4gICAgICAgICksXG4gICAgICAgICdwYWRkaW5nLXJpZ2h0JzogKFxuICAgICAgICAgICAgMTBweCxcbiAgICAgICAgICAgIDEycHhcbiAgICAgICAgKSxcbiAgICApLFxuICAgICcuYnRuX2N0YS5idG5fbGl0dGxlOm5vdCgubGlua19jdGEpJyA6IChcbiAgICAgICAgJ2hlaWdodCc6IChcbiAgICAgICAgICAgIDMycHgsXG4gICAgICAgICAgICAzNXB4XG4gICAgICAgICksXG4gICAgICAgICdwYWRkaW5nLWxlZnQnOiAoXG4gICAgICAgICAgICAxMHB4LFxuICAgICAgICAgICAgMTJweFxuICAgICAgICApLFxuICAgICAgICAncGFkZGluZy1yaWdodCc6IChcbiAgICAgICAgICAgIDEwcHgsXG4gICAgICAgICAgICAxMnB4XG4gICAgICAgICksXG4gICAgKSxcbiAgICAnLmNvbnRlbnRfbGluaycgOiAoXG4gICAgICAgICdwYWRkaW5nLXRvcCc6IChcbiAgICAgICAgICAgIDhweCxcbiAgICAgICAgICAgIDEycHhcbiAgICAgICAgKSxcbiAgICAgICAgJ21hcmdpbi10b3AnOiAoXG4gICAgICAgICAgICAxNXB4LFxuICAgICAgICAgICAgMjBweFxuICAgICAgICApLFxuICAgICksXG4pO1xuXG5AaW5jbHVkZSBmbHVpZCgkbW9sQnV0dG9uc01hcCk7XG5cbi5idG5fY3RhOm5vdCgubGlua19jdGEpIHtcbiAgICBAaW5jbHVkZSBkX2ZsZXg7XG4gICAgZGlzcGxheSAgICAgICAgOiBpbmxpbmUtZmxleDtcbiAgICBAaW5jbHVkZSB5X2l0ZW1zX2NlbnRlcjtcbiAgICBAaW5jbHVkZSB4X2NlbnRlcjtcbiAgICBAaW5jbHVkZSBmb250X2ludGVyX21lZGl1bTtcbiAgICBtYXgtd2lkdGggICAgICA6IDEwMCU7XG4gICAgYmFja2dyb3VuZCAgICAgOiAkYmVpZ2U7XG4gICAgY29sb3IgICAgICAgICAgOiAkYmxhY2s7XG4gICAgZm9udC1zaXplICAgICAgOiAwLjg3NWVtO1xuICAgIHRleHQtdHJhbnNmb3JtIDogdXBwZXJjYXNlO1xuICAgIEBpbmNsdWRlIHJhZGl1cyg1cHgpO1xuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5IDogYmxvY2s7XG4gICAgICAgIHdpZHRoICAgOiAxMDAlO1xuICAgIH1cbiAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgICAgY3Vyc29yIDogcG9pbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbik7XG4gICAgICAgIEBpbmNsdWRlIGhvdmVyX2ZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQgOiAkYmVpZ2UyO1xuICAgICAgICB9XG4gICAgICAgICYuaG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZCA6ICRiZWlnZTI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5idG5fYmxhY2sge1xuICAgICAgICBiYWNrZ3JvdW5kIDogJGJsYWNrO1xuICAgICAgICBjb2xvciAgICAgIDogJHdoaXRlO1xuICAgICAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGN1cnNvciA6IHBvaW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyX2ZvY3VzIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kIDogJGdyZXktZGFyaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuaG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQgOiAkZ3JleS1kYXJrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuX3doaXRlIHtcbiAgICAgICAgYmFja2dyb3VuZCA6ICR3aGl0ZTtcbiAgICAgICAgY29sb3IgICAgICA6ICRibGFjaztcbiAgICAgICAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgICAgICAgICBjdXJzb3IgOiBwb2ludGVyO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbik7XG4gICAgICAgICAgICBAaW5jbHVkZSBob3Zlcl9mb2N1cyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZCA6ICRncmV5LWxpZ2h0MjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuaG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQgOiAkZ3JleS1saWdodDI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5idG5fbGluZXMge1xuICAgICAgICBiYWNrZ3JvdW5kIDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlciAgICAgOiAxcHggc29saWQgJGdyZXk7XG4gICAgICAgIGNvbG9yICAgICAgOiAkYmxhY2s7XG4gICAgICAgICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgICAgICAgICAgY3Vyc29yIDogcG9pbnRlcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24pO1xuICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXJfZm9jdXMge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQgICA6ICRncmV5LWxpZ2h0MjtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgOiAkZ3JleS1saWdodDI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kICAgOiAkZ3JleS1saWdodDI7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIDogJGdyZXktbGlnaHQyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuYnRuX2ljb24ge1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIHBvc2l0aW9uICAgICA6IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0IDogMjRweDtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB5X2FsaWduX2Fic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQgICAgICA6IDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplIDogMS4xZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5idG5fZGwge1xuICAgICAgICBzcGFuOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50ICAgICA6IFwiXFxlMDA5XCI7XG4gICAgICAgICAgICBmb250LWZhbWlseSA6IFwicmVzZWVcIjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmOmRpc2FibGVkLCAmLmRpc2FibGVkIHtcbiAgICAgICAgYmFja2dyb3VuZCAgIDogJGdyZXktbGlnaHQyICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1jb2xvciA6ICRncmV5LWxpZ2h0MiAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvciAgICAgICAgOiAkZ3JleS1kYXJrICFpbXBvcnRhbnQ7XG4gICAgICAgIGN1cnNvciAgICAgICA6IGRlZmF1bHQ7XG4gICAgfVxufVxuXG4ubGlua19jdGEge1xuICAgIEBpbmNsdWRlIGRfZmxleDtcbiAgICBkaXNwbGF5ICAgICAgICA6IGlubGluZS1mbGV4O1xuICAgIEBpbmNsdWRlIGZvbnRfaW50ZXJfbWVkaXVtO1xuICAgIG1heC13aWR0aCAgICAgIDogMTAwJTtcbiAgICBjb2xvciAgICAgICAgICA6ICRibGFjaztcbiAgICBmb250LXNpemUgICAgICA6IDAuODc1ZW07XG4gICAgdGV4dC10cmFuc2Zvcm0gOiB1cHBlcmNhc2U7XG4gICAgcG9zaXRpb24gICAgICAgOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQgICA6IDI0cHg7XG4gICAgb3ZlcmZsb3cgICAgICAgOiBoaWRkZW47XG4gICAgYXtcbiAgICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50ICAgICAgICAgICA6ICcnO1xuICAgICAgICBwb3NpdGlvbiAgICAgICAgICA6IGFic29sdXRlO1xuICAgICAgICBsZWZ0ICAgICAgICAgICAgICA6IC0yNHB4O1xuICAgICAgICB0b3AgICAgICAgICAgICAgICA6IDA7XG4gICAgICAgIGJvdHRvbSAgICAgICAgICAgIDogMDtcbiAgICAgICAgd2lkdGggICAgICAgICAgICAgOiA0NXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlICA6IHVybChcIi4uLy4uL2ltYWdlcy9pY29ucy9jaGV2cm9uLnN2Z1wiKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQgOiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZSAgIDogNXB4O1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmxpbmtfYmVpZ2Uge1xuICAgICAgICBjb2xvciA6ICRiZWlnZTtcbiAgICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZSA6IHVybChcIi4uLy4uL2ltYWdlcy9pY29ucy9jaGV2cm9uX2JlaWdlLnN2Z1wiKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmxpbmtfd2hpdGUge1xuICAgICAgICBjb2xvciA6ICR3aGl0ZTtcbiAgICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZSA6IHVybChcIi4uLy4uL2ltYWdlcy9pY29ucy9jaGV2cm9uX3doaXRlLnN2Z1wiKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gOiBjZW50ZXIgbGVmdCAxMHB4O1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbiA6IGNlbnRlciBsZWZ0IDMycHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGhvdmVyX2ZvY3VzIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbiA6IGNlbnRlciBsZWZ0IDMycHg7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIDogY2VudGVyIGxlZnQgNTRweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmhvdmVyIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbiA6IGNlbnRlciBsZWZ0IDMycHg7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIDogY2VudGVyIGxlZnQgNTRweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnNvZnQge1xuICAgICAgICBAaW5jbHVkZSBmb250X2ludGVyX2xpZ2h0O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybSA6IGluaXRpYWw7XG4gICAgfVxuICAgICYubGlua19uZXh0IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0ICA6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQgOiAyNHB4O1xuICAgICAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICAgICAgICByaWdodCA6IC0yNHB4O1xuICAgICAgICAgICAgbGVmdCAgOiBpbmhlcml0O1xuICAgICAgICB9XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gOiBjZW50ZXIgcmlnaHQgMzJweDtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gOiBjZW50ZXIgcmlnaHQgNTRweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBob3Zlcl9mb2N1cyB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbiA6IGNlbnRlciByaWdodCAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbiA6IGNlbnRlciByaWdodCAzMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuaG92ZXIge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gOiBjZW50ZXIgcmlnaHQgMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gOiBjZW50ZXIgcmlnaHQgMzJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmxpbmtfYmFjayB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnRfaW50ZXJfbGlnaHQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtIDogaW5pdGlhbDtcbiAgICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgxODBkZWcpKTtcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIDogY2VudGVyIGxlZnQgLTEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIDogY2VudGVyIGxlZnQgNnB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGhvdmVyX2ZvY3VzIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIDogY2VudGVyIGxlZnQgNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbiA6IGNlbnRlciBsZWZ0IDIycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5ob3ZlciB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbiA6IGNlbnRlciBsZWZ0IDZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gOiBjZW50ZXIgbGVmdCAyMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uY29udGVudF9saW5rIHtcbiAgICBkaXNwbGF5ICAgIDogYmxvY2s7XG4gICAgdGV4dC1hbGlnbiA6IHJpZ2h0O1xuICAgIHBvc2l0aW9uICAgOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdyAgIDogaGlkZGVuO1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudCAgICA6ICcnO1xuICAgICAgICBwb3NpdGlvbiAgIDogYWJzb2x1dGU7XG4gICAgICAgIHRvcCAgICAgICAgOiAwO1xuICAgICAgICBsZWZ0ICAgICAgIDogLTEzMCU7XG4gICAgICAgIHdpZHRoICAgICAgOiAxMDAlO1xuICAgICAgICBoZWlnaHQgICAgIDogMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kIDogJGJsYWNrO1xuICAgICAgICBvcGFjaXR5ICAgIDogMC41O1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uTnVsbCk7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50ICAgIDogJyc7XG4gICAgICAgIHBvc2l0aW9uICAgOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wICAgICAgICA6IDA7XG4gICAgICAgIGxlZnQgICAgICAgOiAwO1xuICAgICAgICB3aWR0aCAgICAgIDogMTAwJTtcbiAgICAgICAgaGVpZ2h0ICAgICA6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZCA6ICRibGFjaztcbiAgICAgICAgb3BhY2l0eSAgICA6IDAuNTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbk51bGwpO1xuICAgIH1cbiAgICAmLmhvdmVyIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgbGVmdCA6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uU2xvdyk7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBsZWZ0IDogMTMwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb25TbG93KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxvZ2luIHtcbiAgICAubGlua19jdGF7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG4iLCIkYmxvY0JyZWFkY3J1bWJzTWFwIDogKFxuICAgICdib2R5IG1haW4gLmJsb2NfYnJlYWRjcnVtYnMuYnJlYWRjcnVtYnNfYWJzb2x1dGUnIDogKFxuICAgICAgICAndG9wJzogKFxuICAgICAgICAgICAgNzBweCwgLy8gVm9pciAuYmxvY19tYWluLnNjc3MgPiBkYW5zIG1hcCBcIm1haW5cIiA6IHBhZGRpbmcgdG9wXG4gICAgICAgICAgICAxNDBweFxuICAgICAgICApLFxuICAgICksXG4gICAgJ2JvZHkgLmluZm9fYmFubmVyICsgaGVhZGVyICsgbWFpbiAuYmxvY19icmVhZGNydW1icy5icmVhZGNydW1ic19hYnNvbHV0ZScgOiAoXG4gICAgICAgICd0b3AnOiAoXG4gICAgICAgICAgICAxMDVweCwgLy8gVm9pciAuYmxvY19tYWluLnNjc3MgPiBkYW5zIG1hcCBcIi5pbmZvX2Jhbm5lciArIC5oZWFkZXIgKyBtYWluXCIgOiBwYWRkaW5nIHRvcFxuICAgICAgICAgICAgMTg4cHhcbiAgICAgICAgKSxcbiAgICApLFxuKTtcblxuQGluY2x1ZGUgZmx1aWQoJGJsb2NCcmVhZGNydW1ic01hcCk7XG5cbi5ibG9jX2JyZWFkY3J1bWJzIHtcbiAgICBwYWRkaW5nIDogMjBweCAwO1xuICAgIG5hdiB7XG4gICAgICAgIG9sIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRfZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcCAgICAgICAgIDogd3JhcDtcbiAgICAgICAgICAgIC13ZWJraXQtZmxleC13cmFwIDogd3JhcDtcbiAgICAgICAgICAgIC1tcy1mbGV4LXdyYXAgICAgIDogd3JhcDtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemUgOiAwLjg3NWVtO1xuICAgICAgICAgICAgICAgIHNwYW4sIGEsICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5IDogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yICAgOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBob3Zlcl9mb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24gOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gICAgICA6IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0IDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50IDogJy8nO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgeV9hbGlnbl9hYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0ICAgOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5icmVhZGNydW1ic19ka19hYnNvbHV0ZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhX3hfbWF4KCdtZCcpIHtcbiAgICAgICAgICAgIHRvcCA6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWFfeF9taW4oJ21kJykge1xuICAgICAgICAgICAgcG9zaXRpb24gOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQgICAgIDogMDtcbiAgICAgICAgICAgIHJpZ2h0ICAgIDogMDtcbiAgICAgICAgICAgIHotaW5kZXggIDogMjtcbiAgICAgICAgICAgIHdpZHRoICAgIDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4vL0BpbmNsdWRlIG1lZGlhX3hfbWluKCdtZCcpIHtcbi8vICAgIC5ibG9jX2JyZWFkY3J1bWJzIHtcbi8vICAgICAgICAmLndoaXRlIHtcbi8vICAgICAgICAgICAgbmF2IHtcbi8vICAgICAgICAgICAgICAgIG9sIHtcbi8vICAgICAgICAgICAgICAgICAgICBsaSB7XG4vLyAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4sIGEsICY6YWZ0ZXIge1xuLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3IgOiAkd2hpdGU7XG4vLyAgICAgICAgICAgICAgICAgICAgICAgIH1cbi8vICAgICAgICAgICAgICAgICAgICB9XG4vLyAgICAgICAgICAgICAgICB9XG4vLyAgICAgICAgICAgIH1cbi8vICAgICAgICB9XG4vLyAgICB9XG4vL31cblxuQGluY2x1ZGUgbWVkaWFfeF9tYXgoJ21kJykge1xuICAgIC5ibG9jX2JyZWFkY3J1bWJzIHtcbiAgICAgICAgb3JkZXIgICAgOiA5OTk7XG4gICAgICAgIHBvc2l0aW9uIDogcmVsYXRpdmU7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQgICAgOiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uICAgOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcCAgICAgICAgOiAwO1xuICAgICAgICAgICAgYm90dG9tICAgICA6IC0xcHg7XG4gICAgICAgICAgICBsZWZ0ICAgICAgIDogLTIwcHg7XG4gICAgICAgICAgICByaWdodCAgICAgIDogLTIwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kIDogJGJsYWNrO1xuICAgICAgICAgICAgei1pbmRleCAgICA6IDE7XG4gICAgICAgIH1cbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgcG9zaXRpb24gOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXggIDogMjtcbiAgICAgICAgfVxuICAgICAgICBuYXYge1xuICAgICAgICAgICAgb2wgbGkge1xuICAgICAgICAgICAgICAgIHNwYW4sIGEsICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvciA6ICRiZWlnZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIkYmxvY0hlcm9NYXAgOiAoXG4gICAgJy5ibG9jX2hlcm8gLmNrLWNvbnRlbnQnIDogKFxuICAgICAgICAncGFkZGluZy1ib3R0b20nOiAoXG4gICAgICAgICAgICAzMHB4LFxuICAgICAgICAgICAgMTQwcHhcbiAgICAgICAgKSxcbiAgICApLFxuICAgICcuYmxvY19oZXJvIC5jay1jb250ZW50IC5idG5fY3RhJyA6IChcbiAgICAgICAgJ3BhZGRpbmctbGVmdCc6IChcbiAgICAgICAgICAgIDMwcHgsXG4gICAgICAgICAgICA4MHB4XG4gICAgICAgICksXG4gICAgICAgICdwYWRkaW5nLXJpZ2h0JzogKFxuICAgICAgICAgICAgMzBweCxcbiAgICAgICAgICAgIDgwcHhcbiAgICAgICAgKSxcbiAgICApLFxuICAgICcuYmxvY19oZXJvIC5zY3JvbGxfYm90dG9tJyA6IChcbiAgICAgICAgJ2JvdHRvbSc6IChcbiAgICAgICAgICAgIDE1cHgsXG4gICAgICAgICAgICA1MHB4XG4gICAgICAgICksXG4gICAgKSxcbiAgICAnLmJsb2NfaGVybycgOiAoXG4gICAgICAgICd0b3AnOiAoXG4gICAgICAgICAgICAtNzBweCwgLy8gSGF1dGV1ciBkdSBibG9jIGhlYWRlclxuICAgICAgICAgICAgLTE0MHB4XG4gICAgICAgICksXG4gICAgICAgICdwYWRkaW5nLXRvcCc6IChcbiAgICAgICAgICAgIDcwcHgsIC8vIEhhdXRldXIgZHUgYmxvYyBoZWFkZXJcbiAgICAgICAgICAgIDE0MHB4XG4gICAgICAgICksXG4gICAgICAgICdwYWRkaW5nLWJvdHRvbSc6IChcbiAgICAgICAgICAgIDcwcHgsXG4gICAgICAgICAgICA4MHB4XG4gICAgICAgICksXG4gICAgICAgICdtYXJnaW4tYm90dG9tJzogKFxuICAgICAgICAgICAgLTcwcHgsIC8vIEhhdXRldXIgZHUgYmxvYyBoZWFkZXJcbiAgICAgICAgICAgIC0xNDBweFxuICAgICAgICApLFxuICAgICksXG4gICAgJy5ibG9jX2hlcm8gKyBzZWN0aW9uJyA6IChcbiAgICAgICAgJ21hcmdpbi10b3AnOiAoXG4gICAgICAgICAgICAtNzBweCxcbiAgICAgICAgICAgIC04MHB4XG4gICAgICAgICksXG4gICAgKSxcbiAgICAnLmluZm9fYmFubmVyICsgaGVhZGVyICsgbWFpbiAuYmxvY19oZXJvJyA6IChcbiAgICAgICAgJ3RvcCc6IChcbiAgICAgICAgICAgIC05N3B4LCAvLyBIYXV0ZXVyIGR1IGJsb2MgaGVhZGVyICsgYmxvYyAuaW5mb19iYW5uZXJcbiAgICAgICAgICAgIC0xNzhweFxuICAgICAgICApLFxuICAgICAgICAncGFkZGluZy10b3AnOiAoXG4gICAgICAgICAgICA5N3B4LCAvLyBIYXV0ZXVyIGR1IGJsb2MgaGVhZGVyICsgYmxvYyAuaW5mb19iYW5uZXJcbiAgICAgICAgICAgIDE3OHB4XG4gICAgICAgICksXG4gICAgICAgICdtYXJnaW4tYm90dG9tJzogKFxuICAgICAgICAgICAgLTk3cHgsIC8vIEhhdXRldXIgZHUgYmxvYyBoZWFkZXIgKyBibG9jIC5pbmZvX2Jhbm5lclxuICAgICAgICAgICAgLTE3OHB4XG4gICAgICAgICksXG4gICAgKSxcbik7XG5cbkBpbmNsdWRlIGZsdWlkKCRibG9jSGVyb01hcCk7XG5cbi5ibG9jX2hlcm8ge1xuICAgIGJhY2tncm91bmQgOiAkd2hpdGU7XG4gICAgaGVpZ2h0ICAgICA6IGNhbGMoMTAwdmggLSAxMHB4KTtcbiAgICA+IGRpdiwgPiBhIHtcbiAgICAgICAgZGlzcGxheSAgOiBibG9jaztcbiAgICAgICAgd2lkdGggICAgOiAxMDAlO1xuICAgICAgICBoZWlnaHQgICA6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uIDogcmVsYXRpdmU7XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIHBvc2l0aW9uIDogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4ICA6IDI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaW1nLCB2aWRlbyB7XG4gICAgICAgIHBvc2l0aW9uIDogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXggIDogMTtcbiAgICAgICAgdG9wICAgICAgOiAwO1xuICAgICAgICBsZWZ0ICAgICA6IDA7XG4gICAgICAgIHdpZHRoICAgIDogMTAwJTtcbiAgICAgICAgaGVpZ2h0ICAgOiAxMDAlO1xuICAgICAgICBAaW5jbHVkZSBpbWFnZUZpdDtcbiAgICB9XG4gICAgLmNrLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5IDogYmxvY2s7XG4gICAgICAgIHdpZHRoICAgOiAxMDAlO1xuICAgICAgICAudGl0cmVfaDEge1xuICAgICAgICAgICAgY29sb3IgOiAkYmVpZ2U7XG4gICAgICAgIH1cbiAgICAgICAgLmxpbmsge1xuICAgICAgICAgICAgZGlzcGxheSAgICAgICAgIDogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcCAgICAgOiAzMHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcCAgICAgIDogMzBweDtcbiAgICAgICAgICAgIGJvcmRlci10b3AgICAgICA6IDBweCBzb2xpZCAkYmVpZ2U7XG4gICAgICAgICAgICB0ZXh0LWFsaWduICAgICAgOiByaWdodDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbiA6IG5vbmU7XG4gICAgICAgICAgICAmOm9ubHktY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlciAgICAgOiBub25lO1xuICAgICAgICAgICAgICAgIG1hcmdpbiAgICAgOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmcgICAgOiAwO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ24gOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2Nyb2xsX2JvdHRvbSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB4X2FsaWduX2Fic29sdXRlO1xuICAgICAgICAgICAgY29sb3IgICAgICAgICAgOiAkYmVpZ2U7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbSA6IDE1cHg7XG4gICAgICAgICAgICBjdXJzb3IgICAgICAgICA6IHBvaW50ZXI7XG4gICAgICAgICAgICAudHh0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5ICAgICAgICA6IGJsb2NrO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnRfaW50ZXJfbWVkaXVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZSAgICAgIDogMC45NWVtO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtIDogdXBwZXJjYXNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHhfYWxpZ25fYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYm90dG9tICAgIDogMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemUgOiAwLjhlbTtcbiAgICAgICAgICAgICAgICBhbmltYXRpb24gOiBzY3JvbGxfYm90dG9tIDVzIGluZmluaXRlO1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheSA6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDkwZGVnKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5ibGFjayB7XG4gICAgICAgICAgICAudGl0cmVfaDEge1xuICAgICAgICAgICAgICAgIGNvbG9yIDogJGJsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmxpbmsge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciA6ICRibGFjaztcbiAgICAgICAgICAgICAgICAuYnRuX2N0YSB7XG4gICAgICAgICAgICAgICAgICAgIEBleHRlbmQgLmJ0bl9ibGFjaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc2Nyb2xsX2JvdHRvbSB7XG4gICAgICAgICAgICAgICAgY29sb3IgOiAkYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi53aGl0ZSB7XG4gICAgICAgICAgICAudGl0cmVfaDEge1xuICAgICAgICAgICAgICAgIGNvbG9yIDogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmxpbmsge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciA6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAuYnRuX2N0YSB7XG4gICAgICAgICAgICAgICAgICAgIEBleHRlbmQgLmJ0bl93aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc2Nyb2xsX2JvdHRvbSB7XG4gICAgICAgICAgICAgICAgY29sb3IgOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLz4gYXtcbiAgICAvLyAgICBAaW5jbHVkZSBob3Zlcl9mb2N1c3tcbiAgICAvLyAgICAgICAgLmNrLWNvbnRlbnQgLmxpbmsgLmJ0bl9jdGF7XG4gICAgLy8gICAgICAgICAgICBAZXh0ZW5kIC5ob3ZlcjtcbiAgICAvLyAgICAgICAgfVxuICAgIC8vICAgIH1cbiAgICAvL31cbn1cblxuQGluY2x1ZGUgbWVkaWFfeF9taW4oJ2xnJykge1xuICAgIC5ibG9jX2hlcm8ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbSA6IDA7XG4gICAgICAgICsgc2VjdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wIDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGluY2x1ZGUgbWVkaWFfeF9tYXgoJ21kJykge1xuICAgIC5ibG9jX2hlcm8ge1xuICAgICAgICAuY2stY29udGVudCB7XG4gICAgICAgICAgICAuc2Nyb2xsX2JvdHRvbSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheSA6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhX3hfbWF4KCdtZCcpIHtcbiAgICAuYmxvY19oZXJvIHtcbiAgICAgICAgaGVpZ2h0ICAgICAgIDogY2FsYygxMDB2aCAtIDhweCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0ICA6IC0xMnB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQgOiAtMTJweDtcbiAgICAgICAgPiBkaXYsID4gYSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQgIDogMTJweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQgOiAxMnB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2Nyb2xsX2JvdHRvbSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5IDogMDtcbiAgICAgICAgYm90dG9tICA6IDA7XG4gICAgfVxuXG4gICAgMTAlIHtcbiAgICAgICAgb3BhY2l0eSA6IDE7XG4gICAgICAgIGJvdHRvbSAgOiAwO1xuICAgIH1cblxuICAgIDUwJSB7XG4gICAgICAgIG9wYWNpdHkgOiAxO1xuICAgICAgICBib3R0b20gIDogMDtcbiAgICB9XG5cbiAgICA3NSUge1xuICAgICAgICBvcGFjaXR5IDogMTtcbiAgICAgICAgYm90dG9tICA6IC0xMHB4O1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5IDogMDtcbiAgICAgICAgYm90dG9tICA6IC0xMHB4O1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBzY3JvbGxfYm90dG9tIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHkgOiAwO1xuICAgICAgICBib3R0b20gIDogMDtcbiAgICB9XG5cbiAgICAxMCUge1xuICAgICAgICBvcGFjaXR5IDogMTtcbiAgICAgICAgYm90dG9tICA6IDA7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgICAgb3BhY2l0eSA6IDE7XG4gICAgICAgIGJvdHRvbSAgOiAwO1xuICAgIH1cblxuICAgIDc1JSB7XG4gICAgICAgIG9wYWNpdHkgOiAxO1xuICAgICAgICBib3R0b20gIDogLTEwcHg7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHkgOiAwO1xuICAgICAgICBib3R0b20gIDogLTEwcHg7XG4gICAgfVxufVxuIiwiJGJsb2NDYXJkc01hcCA6IChcblx0Jy5ibG9jX2NhcmRzIC50aXRsZV9jYXJkcycgOiAoXG5cdFx0J21hcmdpbi1ib3R0b20nOiAoXG5cdFx0XHQyMHB4LFxuXHRcdFx0NDBweFxuXHRcdCksXG5cdCksXG5cdCcuYmxvY19jYXJkcyAubGlua19jYXJkcycgOiAoXG5cdFx0J21hcmdpbi10b3AnOiAoXG5cdFx0XHQyMHB4LFxuXHRcdFx0NDBweFxuXHRcdCksXG5cdCksXG4pO1xuXG5AaW5jbHVkZSBmbHVpZCgkYmxvY0NhcmRzTWFwKTtcblxuLmJsb2NfY2FyZHMge1xuXHQudGl0bGVfY2FyZHMge1xuXHRcdC50aXRsZV9saW5rIHtcblx0XHRcdGEge1xuXHRcdFx0XHRAaW5jbHVkZSBmb250X2ludGVyX3JlZ3VsYXI7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbiA6IHVuZGVybGluZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LmxpbmtfY2FyZHMge1xuXHRcdC5idG5fY3RhIHtcblx0XHRcdHdpZHRoIDogMTAwJTtcblx0XHRcdEBpbmNsdWRlIG1lZGlhX3hfbWluKCdzbScpIHtcblx0XHRcdFx0bWF4LXdpZHRoIDogMzIwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdEBpbmNsdWRlIG1lZGlhX3hfbWF4KCdtZCcpIHtcblx0XHRcdCYuY29sXzEyLmNvbF9tZF82IHtcblx0XHRcdFx0LmNhcmRfcHJvZHVjdCB7XG5cdFx0XHRcdFx0PiAucm93IHtcblx0XHRcdFx0XHRcdGRpc3BsYXkgOiBibG9jaztcblx0XHRcdFx0XHRcdD4gLmNvbF9jb250ZW50IHtcblx0XHRcdFx0XHRcdFx0ZGlzcGxheSA6IGJsb2NrO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQuc2xpZGVyX3Byb2R1Y3RzLCAuc2xpZGVyX3RheG9ucywgLnNsaWRlcl9hcnRpY2xlcyB7XG5cdFx0LnRpdGxlX2NhcmRzIHtcblx0XHRcdHBhZGRpbmcgOiAwIDEwcHg7XG5cdFx0fVxuXHR9XG59XG5cbkBpbmNsdWRlIG1lZGlhX3hfbWF4KCdtZCcpIHtcblx0LmJsb2NfY2FyZHMge1xuXHRcdC5zbGlkZXJfcHJvZHVjdHMsIC5zbGlkZXJfYXJ0aWNsZXMge1xuXHRcdFx0LnRpdGxlX2NhcmRzIHtcblx0XHRcdFx0cGFkZGluZyA6IDAgOHB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/