@charset "UTF-8";

/* ==========================================================================
   #Colors
   ========================================================================== */

/* ==========================================================================
   #pages
   ========================================================================== */

/* Largeur menu navigation mobile */

/* Largeur menu filter */

/* Hauteur cps input - select */

/* Hauteur cta */

/* ==========================================================================
   #GRID
   ========================================================================== */

/**
 * This plugin provides a flexbox grid for inuitcss. Support for IE9 currently
 * prevents inuitcss from using the flexbox layout mode.
 *
 * Cells are full-width and will stack on top of each other by default:
 *
 * <div class="o-grid">
 *   <div class="o-grid__cell">
 *   </div>
 *   <div class="o-grid__cell">
 *   </div>
 * </div>
 *
 * Cells will in most cases be accompanied by utility classes that divide
 * the grid into fractions. These are provided by inuitcss:
 *
 * <div class="o-grid">
 *   <div class="o-grid__cell u-1/2">
 *   </div>
 *   <div class="o-grid__cell u-1/2">
 *   </div>
 * </div>
 *
 * Several modifier classes are provided. For example, `o-grid--auto` will
 * divide the space equally between all containing cells without the need
 * for width utility classes.
 *
 * <div class="o-grid--auto">
 *   <div class="o-grid__cell">
 *   </div>
 *   <div class="o-grid__cell">
 *   </div>
 * </div>
 */

/* The grid
   ========================================================================== */

.o-grid {
  display: flex;
  flex-flow: row wrap;
  list-style: none;
  padding: 0;
}

/**
 * 1. Cells are full-width and stack on top of each other by default.
 */

.o-grid__cell {
  flex: 0 1 auto;
  width: 100%;
  /* [1] */
}

/* Gutters
   ========================================================================== */

/**
 * 1. The map $inuit-flexgrid-spacing-sizes contains a `null` key which
 *    will be our default gutter size.
 * 2. Add a negative margin on one side only. That way we aren't required to use
 *    a wrapper with the same amount of spacing, though it's common to do so.
 * 3. Neutralize the left margin on `o-grid`.
 */

.o-grid {
  /* [1] */
  margin-left: -24px;
  /* [2] */
}

.o-grid > .o-grid__cell {
  padding-left: 24px;
  /* [3] */
}

.o-grid--tiny {
  /* [1] */
  margin-left: -6px;
  /* [2] */
}

.o-grid--tiny > .o-grid__cell {
  padding-left: 6px;
  /* [3] */
}

.o-grid--small {
  /* [1] */
  margin-left: -12px;
  /* [2] */
}

.o-grid--small > .o-grid__cell {
  padding-left: 12px;
  /* [3] */
}

.o-grid--large {
  /* [1] */
  margin-left: -48px;
  /* [2] */
}

.o-grid--large > .o-grid__cell {
  padding-left: 48px;
  /* [3] */
}

.o-grid--huge {
  /* [1] */
  margin-left: -96px;
  /* [2] */
}

.o-grid--huge > .o-grid__cell {
  padding-left: 96px;
  /* [3] */
}

.o-grid--flush {
  /* [1] */
  margin-left: 0;
  /* [2] */
}

.o-grid--flush > .o-grid__cell {
  padding-left: 0;
  /* [3] */
}

/* Automatically size cells by distributing them equally
   ========================================================================== */

.o-grid--auto > .o-grid__cell {
  flex: 1 0 0;
}

/* Horizontal alignment
   ========================================================================== */

.o-grid--left {
  justify-content: flex-start;
}

.o-grid--center {
  justify-content: center;
}

.o-grid--right {
  justify-content: flex-end;
}

.o-grid--between {
  justify-content: space-between;
}

.o-grid--around {
  justify-content: space-around;
}

/* Pull behavior
   ========================================================================== */

.o-grid__cell--pull-left {
  margin-right: auto;
}

.o-grid__cell--pull-right {
  margin-left: auto;
}

/* Vertical alignment
   ========================================================================== */

.o-grid--top {
  align-items: flex-start;
}

.o-grid--middle {
  align-items: center;
}

.o-grid--bottom {
  align-items: flex-end;
}

.o-grid--baseline {
  align-items: baseline;
}

.o-grid--stretch {
  align-items: stretch;
}

.o-grid__cell--top {
  align-self: flex-start;
}

.o-grid__cell--middle {
  align-self: center;
}

.o-grid__cell--bottom {
  align-self: flex-end;
}

.o-grid__cell--baseline {
  align-self: baseline;
}

.o-grid__cell--stretch {
  align-self: stretch;
}

/* Content distribution
   ========================================================================== */

.o-grid--reverse {
  flex-direction: row-reverse;
}

.o-grid--column {
  flex-direction: column;
}

.o-grid--column-reverse {
  flex-direction: column-reverse;
}

.c-list-rs {
  display: flex;
  flex-direction: row;
  width: 100%;
  margin: 0;
}

.c-list-rs.rs-mobile {
  justify-content: center;
}

@media (min-width: 46.25em) {
  .c-list-rs.rs-mobile {
    justify-content: flex-start;
  }
}

.c-list-rs__item {
  width: 26px;
  height: 26px;
  margin-right: 10px;
  border-radius: 50%;
  background: #192C4E;
}

.c-list-rs__item:last-child {
  margin-right: 0;
}

.c-list-rs__item a {
  display: inline-block;
  width: 100%;
  height: 100%;
  color: #ffffff;
}

.c-list-rs__item a .icon {
  position: relative;
  display: block;
  margin: auto;
}

.c-list-rs__item a .icon svg {
  position: absolute;
  top: 5px;
  left: 0;
  right: 0;
  margin: auto;
  width: 15px;
  height: 15px;
}

.c-catalog__title {
  font-size: 20px;
  font-size: 1.25rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-catalog__title .border {
  display: block;
  width: 100%;
  height: 1px;
  background: #FB736E;
}

.o-catalog-best {
  position: relative;
  padding: 35px 0 0;
}

@media (min-width: 46.25em) {
  .o-catalog-best.operateur .u-1\/2\@tablet .c-card.simple .c-card--border,
  .o-catalog-best.operateur .u-1\/2\@tablet .c-card.code-promo .c-card--border {
    padding: 10px 50px 15px;
  }
}

@media (min-width: 61.25em) {
  .o-catalog-best.operateur .u-1\/2\@tablet .c-card.simple .c-card--border,
  .o-catalog-best.operateur .u-1\/2\@tablet .c-card.code-promo .c-card--border {
    padding: 10px 100px 15px;
  }
}

.o-catalog-best.operateur .c-card .c-card-cta .c-cta {
  font-size: 14px;
  font-size: 0.875rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.o-catalog-best:after {
  content: '';
  background: #d8d8d8;
  position: absolute;
  width: 100vw;
  top: 0;
  left: 50%;
  height: 100%;
  z-index: -10;
  transform: translate(-50%, 0);
}

.c-catalog-filter {
  display: flex;
  align-items: center;
  max-width: 400px;
  width: 100%;
  margin-left: -5px;
}

.c-catalog-filter .c-catalog-filter__item {
  width: 50%;
  margin-left: 5px;
}

.c-catalog-filter .c-catalog-filter__btn {
  width: 100%;
  height: 35px;
  padding: 5px 10px;
  background: #192C4E;
  color: #ffffff;
  border-radius: 5px;
}

.c-catalog-filter .c-catalog-filter__btn .c-ico {
  display: none;
}

.c-catalog-filter .c-catalog-filter__btn span {
  display: inline-block;
  vertical-align: middle;
  padding-left: 5px;
  font-size: 12px;
  font-size: 0.75rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-catalog-filter .c-catalog-filter__link {
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  width: 100%;
  height: 35px;
  border: 1px solid #192C4E;
  border-radius: 5px;
  background: #FFFFFF;
}

.c-catalog-filter .c-catalog-filter__link span {
  color: #192C4E;
  font-size: 12px;
  font-size: 0.75rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

@media (min-width: 22.5em) {
  .c-catalog-filter {
    margin-left: -15px;
  }

  .c-catalog-filter .c-catalog-filter__item {
    margin-left: 15px;
  }

  .c-catalog-filter .c-catalog-filter__btn span {
    font-size: 13px;
    font-size: 0.8125rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-catalog-filter .c-catalog-filter__link span {
    font-size: 13px;
    font-size: 0.8125rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }
}

@media (min-width: 23.4375em) {
  .c-catalog-filter .c-catalog-filter__btn .c-ico {
    display: inline-block;
    vertical-align: middle;
    object-fit: contain;
    color: #ffffff;
    width: 13px;
    height: 20px;
  }

  .c-catalog-filter .c-catalog-filter__btn span {
    font-size: 12px;
    font-size: 0.75rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-catalog-filter .c-catalog-filter__link {
    position: relative;
  }

  .c-catalog-filter .c-catalog-filter__link span {
    font-size: 12px;
    font-size: 0.75rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-catalog-filter .c-catalog-filter__link:after {
    content: '';
    position: absolute;
    top: 12px;
    left: 8px;
    width: 9px;
    height: 9px;
    border: 1px solid #192C4E;
    border-left: 1px solid transparent;
    border-top: 1px solid transparent;
    transform: rotate(-45deg);
  }
}

@media (min-width: 46.25em) {
  .c-catalog-filter {
    max-width: 460px;
  }

  .c-catalog-filter .c-catalog-filter__btn .c-ico {
    width: 20px;
    height: 20px;
  }

  .c-catalog-filter .c-catalog-filter__btn span {
    font-size: 14px;
    font-size: 0.875rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-catalog-filter .c-catalog-filter__link span {
    font-size: 14px;
    font-size: 0.875rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-catalog-filter .c-catalog-filter__link:after {
    top: 10px;
    width: 13px;
    height: 13px;
  }
}

.c-filter-sticky {
  position: -webkit-sticky;
  position: -moz-sticky;
  position: -ms-sticky;
  position: -o-sticky;
  position: sticky;
  top: 85px;
  z-index: 2;
}

.c-filter-sticky.u-height-1 {
  height: 1px;
}

.c-card {
  /*  a {
    &.c-cark-link {
      display: block;
      text-decoration: none;
      &:hover {
        color: inherit;
        .c-cta {
          background: $color-corail;
          span {
            color: #ffffff;
          }
        }
      }
    }
  }

  .c-card-cta {
    a {
      color: $color-corail;;
        &:hover {
          color: inherit;
          &.c-cta {
            background: $color-corail;
            color: #ffffff;
            span {
              color: #ffffff;
            }
          }
        }
    }
  }

  .c-link-descriptif {
    display: block;
    text-align: center;
    margin-top: 5px;
    padding: 10px 10px 15px;
    background: #FFFFFF;

    border: 1px solid $color-grey;
    border-radius: $global-radius;
  }*/
}

.c-card.promo,
.c-card.simple,
.c-card.code-link-promos {
  position: relative;
  max-width: 350px;
  margin: auto auto 30px;
  line-height: 1.2;
}

.c-card.promo p,
.c-card.simple p,
.c-card.code-link-promos p {
  text-align: left;
  line-height: 1.2;
}

.c-card.promo .c-card-favoris,
.c-card.simple .c-card-favoris,
.c-card.code-link-promos .c-card-favoris {
  position: absolute;
  top: -17px;
  right: 0;
  font-size: 13px;
  font-size: 0.8125rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card.promo .c-card-head,
.c-card.simple .c-card-head,
.c-card.code-link-promos .c-card-head {
  border-bottom: 1px solid #D8D8D8;
}

.c-card.promo .c-card-head,
.c-card.promo .c-card-content,
.c-card.simple .c-card-head,
.c-card.simple .c-card-content,
.c-card.code-link-promos .c-card-head,
.c-card.code-link-promos .c-card-content {
  padding: 0 15px;
}

.c-card.promo .c-card-content,
.c-card.simple .c-card-content,
.c-card.code-link-promos .c-card-content {
  padding-top: 6px;
  padding-bottom: 10px;
}

.c-card.promo .c-card-content p,
.c-card.simple .c-card-content p,
.c-card.code-link-promos .c-card-content p {
  line-height: 1.2;
}

.c-card.promo .c-card__logo,
.c-card.simple .c-card__logo,
.c-card.code-link-promos .c-card__logo {
  position: absolute;
  right: 9px;
  top: 30px;
  width: 60px;
  height: 60px;
}

.c-card.promo .c-card__price,
.c-card.simple .c-card__price,
.c-card.code-link-promos .c-card__price {
  color: #FB6660;
}

.c-card.promo .c-card__price.u-text--blue,
.c-card.simple .c-card__price.u-text--blue,
.c-card.code-link-promos .c-card__price.u-text--blue {
  color: #192C4E;
}

.c-card.promo .c-card__price span,
.c-card.simple .c-card__price span,
.c-card.code-link-promos .c-card__price span {
  display: inline-block;
  vertical-align: middle;
}

.c-card.promo .c-card__price sup,
.c-card.promo .c-card__price sub,
.c-card.simple .c-card__price sup,
.c-card.simple .c-card__price sub,
.c-card.code-link-promos .c-card__price sup,
.c-card.code-link-promos .c-card__price sub {
  display: block;
}

.c-card.promo .c-card__price .symbol-e,
.c-card.simple .c-card__price .symbol-e,
.c-card.code-link-promos .c-card__price .symbol-e {
  font-style: normal;
  font-size: 36px;
  font-size: 2.25rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card.promo .c-card__price .tall,
.c-card.simple .c-card__price .tall,
.c-card.code-link-promos .c-card__price .tall {
  font-size: 94px;
  font-size: 5.875rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card.promo .c-card__price .mid-medium,
.c-card.simple .c-card__price .mid-medium,
.c-card.code-link-promos .c-card__price .mid-medium {
  font-size: 28px;
  font-size: 1.75rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  line-height: 2;
}

.c-card.promo .c-card__price .medium,
.c-card.simple .c-card__price .medium,
.c-card.code-link-promos .c-card__price .medium {
  font-size: 30px;
  font-size: 1.875rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card.promo .c-card__price .small,
.c-card.simple .c-card__price .small,
.c-card.code-link-promos .c-card__price .small {
  font-size: 27px;
  font-size: 1.6875rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  position: relative;
  top: 3px;
}

.c-card.promo .c-card__mentions,
.c-card.simple .c-card__mentions,
.c-card.code-link-promos .c-card__mentions {
  margin-bottom: 10px;
  font-size: 12px;
  font-size: 0.75rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  line-height: 1;
}

.c-card.promo .c-card__mentions span,
.c-card.simple .c-card__mentions span,
.c-card.code-link-promos .c-card__mentions span {
  display: block;
}

.c-card.promo .c-card__title,
.c-card.simple .c-card__title,
.c-card.code-link-promos .c-card__title {
  height: 45px;
  margin-top: 10px;
  margin-bottom: 0;
  font-size: 21px;
  font-size: 1.3125rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  font-weight: 700;
  overflow: hidden;
}

.c-card.promo .c-card__title.h-auto,
.c-card.simple .c-card__title.h-auto,
.c-card.code-link-promos .c-card__title.h-auto {
  height: auto;
}

.c-card.promo .c-card__list,
.c-card.simple .c-card__list,
.c-card.code-link-promos .c-card__list {
  margin-bottom: 12px;
}

.c-card.promo .c-card__list .c-list,
.c-card.simple .c-card__list .c-list,
.c-card.code-link-promos .c-card__list .c-list {
  font-size: 15px;
  font-size: 0.9375rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card.promo .c-card__list .c-list.equipment,
.c-card.simple .c-card__list .c-list.equipment,
.c-card.code-link-promos .c-card__list .c-list.equipment {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  height: auto;
}

.c-card.promo .c-card__list .c-list.equipment .c-list__item,
.c-card.simple .c-card__list .c-list.equipment .c-list__item,
.c-card.code-link-promos .c-card__list .c-list.equipment .c-list__item {
  position: relative;
  padding-right: 15px;
}

.c-card.promo .c-card__list .c-list.equipment .c-list__item:after,
.c-card.simple .c-card__list .c-list.equipment .c-list__item:after,
.c-card.code-link-promos .c-card__list .c-list.equipment .c-list__item:after {
  content: '-';
  position: absolute;
  right: 5px;
  top: 0;
}

.c-card.promo .c-card__list .c-list.equipment .c-list__item:last-child:after,
.c-card.simple .c-card__list .c-list.equipment .c-list__item:last-child:after,
.c-card.code-link-promos .c-card__list .c-list.equipment .c-list__item:last-child:after {
  content: '';
}

.c-card.promo .c-card__list .c-list.technical,
.c-card.simple .c-card__list .c-list.technical,
.c-card.code-link-promos .c-card__list .c-list.technical {
  display: flex;
  flex-wrap: wrap;
  height: auto;
  margin: 10px 0;
}

.c-card.promo .c-card__list .c-list.technical .techno,
.c-card.simple .c-card__list .c-list.technical .techno,
.c-card.code-link-promos .c-card__list .c-list.technical .techno {
  margin: 0;
}

.c-card.promo .c-card__list .c-list.technical .techno span,
.c-card.simple .c-card__list .c-list.technical .techno span,
.c-card.code-link-promos .c-card__list .c-list.technical .techno span {
  display: block;
  padding: 0;
  text-align: left;
}

.c-card.promo .c-card__list .c-list.technical .techno span.type-techno,
.c-card.simple .c-card__list .c-list.technical .techno span.type-techno,
.c-card.code-link-promos .c-card__list .c-list.technical .techno span.type-techno {
  display: inline;
  padding: 0;
}

.c-card.promo .c-card__list .c-list.options,
.c-card.simple .c-card__list .c-list.options,
.c-card.code-link-promos .c-card__list .c-list.options {
  margin-left: 24px;
}

.c-card.promo .c-card__list .c-list.options .c-list__item,
.c-card.simple .c-card__list .c-list.options .c-list__item,
.c-card.code-link-promos .c-card__list .c-list.options .c-list__item {
  list-style-type: circle;
  margin-left: -4px;
}

.c-card.promo .c-card__infos,
.c-card.simple .c-card__infos,
.c-card.code-link-promos .c-card__infos {
  display: table;
  height: 45px;
  font-size: 13px;
  font-size: 0.8125rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  overflow: hidden;
}

.c-card.promo .c-card__infos p,
.c-card.simple .c-card__infos p,
.c-card.code-link-promos .c-card__infos p {
  display: table-cell;
  vertical-align: middle;
}

.c-card.promo .c-card__infos .type-promo,
.c-card.simple .c-card__infos .type-promo,
.c-card.code-link-promos .c-card__infos .type-promo {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.c-card.promo .c-card__infos .type-promo svg,
.c-card.simple .c-card__infos .type-promo svg,
.c-card.code-link-promos .c-card__infos .type-promo svg {
  width: 25px;
  height: 25px;
}

.c-card.promo .c-card__infos .type-promo span,
.c-card.simple .c-card__infos .type-promo span,
.c-card.code-link-promos .c-card__infos .type-promo span {
  padding-left: 15px;
  font-size: 12px;
  font-size: 0.75rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card.promo .c-card__infos .type-promo.promo-time,
.c-card.promo .c-card__infos .type-promo.promo-info,
.c-card.simple .c-card__infos .type-promo.promo-time,
.c-card.simple .c-card__infos .type-promo.promo-info,
.c-card.code-link-promos .c-card__infos .type-promo.promo-time,
.c-card.code-link-promos .c-card__infos .type-promo.promo-info {
  color: #529407;
}

.c-card.promo .c-card__infos .type-promo.promo-bonPlan,
.c-card.simple .c-card__infos .type-promo.promo-bonPlan,
.c-card.code-link-promos .c-card__infos .type-promo.promo-bonPlan {
  color: #f5a623;
}

.c-card.promo .c-card__infos .type-promo.promo-price,
.c-card.simple .c-card__infos .type-promo.promo-price,
.c-card.code-link-promos .c-card__infos .type-promo.promo-price {
  color: #FB6660;
}

.c-card.promo .c-card-cta,
.c-card.simple .c-card-cta,
.c-card.code-link-promos .c-card-cta {
  max-width: 250px;
  margin: auto;
  padding: 0 5px 10px;
}

.c-card.promo .c-card-timer,
.c-card.simple .c-card-timer,
.c-card.code-link-promos .c-card-timer {
  display: flex;
  align-items: center;
  height: 45px;
  margin: 15px 0;
  color: #529407;
  font-size: 13px;
  font-size: 0.8125rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card.promo .c-card-timer svg,
.c-card.simple .c-card-timer svg,
.c-card.code-link-promos .c-card-timer svg {
  display: inline-block;
  vertical-align: middle;
  width: 27px;
  height: 24px;
}

.c-card.promo .c-card-timer .text,
.c-card.simple .c-card-timer .text,
.c-card.code-link-promos .c-card-timer .text {
  display: inline-block;
  vertical-align: middle;
  padding-left: 10px;
}

@media (min-width: 46.25em) {
  .c-card.promo .c-card-head,
  .c-card.promo .c-card-content,
  .c-card.simple .c-card-head,
  .c-card.simple .c-card-content,
  .c-card.code-link-promos .c-card-head,
  .c-card.code-link-promos .c-card-content {
    padding: 0 15px;
  }

  .c-card.promo .c-card__logo,
  .c-card.simple .c-card__logo,
  .c-card.code-link-promos .c-card__logo {
    top: 23px;
  }

  .c-card.promo .c-card__title,
  .c-card.simple .c-card__title,
  .c-card.code-link-promos .c-card__title {
    font-size: 20px;
    font-size: 1.25rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-card.promo .c-card__price .symbol-e,
  .c-card.simple .c-card__price .symbol-e,
  .c-card.code-link-promos .c-card__price .symbol-e {
    font-size: 26px;
    font-size: 1.625rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
    top: -4px;
  }

  .c-card.promo .c-card__price .tall,
  .c-card.simple .c-card__price .tall,
  .c-card.code-link-promos .c-card__price .tall {
    font-size: 60px;
    font-size: 3.75rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-card.promo .c-card__price .medium,
  .c-card.simple .c-card__price .medium,
  .c-card.code-link-promos .c-card__price .medium {
    font-size: 20px;
    font-size: 1.25rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-card.promo .c-card__price .small,
  .c-card.simple .c-card__price .small,
  .c-card.code-link-promos .c-card__price .small {
    top: 0;
    font-size: 17px;
    font-size: 1.0625rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-card.promo .c-card__mentions,
  .c-card.simple .c-card__mentions,
  .c-card.code-link-promos .c-card__mentions {
    display: block;
    height: 35px;
    margin-top: 5px;
    margin-bottom: 5px;
  }

  .c-card.promo .c-card__mentions span,
  .c-card.simple .c-card__mentions span,
  .c-card.code-link-promos .c-card__mentions span {
    display: inline;
    height: 100%;
    line-height: 0;
  }

  .c-card.promo .c-card__list .c-list.equipment,
  .c-card.simple .c-card__list .c-list.equipment,
  .c-card.code-link-promos .c-card__list .c-list.equipment {
    height: 48px;
  }

  .c-card.promo .c-card__list .c-list.technical,
  .c-card.simple .c-card__list .c-list.technical,
  .c-card.code-link-promos .c-card__list .c-list.technical {
    height: auto;
  }

  .c-card.promo .c-card__list .c-list.technical .techno span.type-techno,
  .c-card.simple .c-card__list .c-list.technical .techno span.type-techno,
  .c-card.code-link-promos .c-card__list .c-list.technical .techno span.type-techno {
    display: block;
  }

  .c-card.promo .c-card__infos,
  .c-card.simple .c-card__infos,
  .c-card.code-link-promos .c-card__infos {
    height: 85px;
    margin-bottom: 15px;
  }
}

@media (min-width: 60em) {
  .c-card.promo .c-card__logo,
  .c-card.simple .c-card__logo,
  .c-card.code-link-promos .c-card__logo {
    top: 30px;
  }

  .c-card.promo .c-card__price .symbol-e,
  .c-card.simple .c-card__price .symbol-e,
  .c-card.code-link-promos .c-card__price .symbol-e {
    font-size: 36px;
    font-size: 2.25rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-card.promo .c-card__price .tall,
  .c-card.simple .c-card__price .tall,
  .c-card.code-link-promos .c-card__price .tall {
    font-size: 94px;
    font-size: 5.875rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-card.promo .c-card__price .medium,
  .c-card.simple .c-card__price .medium,
  .c-card.code-link-promos .c-card__price .medium {
    font-size: 30px;
    font-size: 1.875rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-card.promo .c-card__price .small,
  .c-card.simple .c-card__price .small,
  .c-card.code-link-promos .c-card__price .small {
    font-size: 27px;
    font-size: 1.6875rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
    top: 3px;
  }

  .c-card.promo .c-card__mentions,
  .c-card.simple .c-card__mentions,
  .c-card.code-link-promos .c-card__mentions {
    margin-top: 0;
    height: 35px;
    font-size: 13px;
    font-size: 0.8125rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
    line-height: 1.4;
  }

  .c-card.promo .c-card__list .c-list.equipment,
  .c-card.simple .c-card__list .c-list.equipment,
  .c-card.code-link-promos .c-card__list .c-list.equipment {
    height: auto;
  }

  .c-card.promo .c-card__list .c-list.technical,
  .c-card.simple .c-card__list .c-list.technical,
  .c-card.code-link-promos .c-card__list .c-list.technical {
    height: auto;
  }

  .c-card.promo .c-card__list .c-list.technical .techno span.type-techno,
  .c-card.simple .c-card__list .c-list.technical .techno span.type-techno,
  .c-card.code-link-promos .c-card__list .c-list.technical .techno span.type-techno {
    display: inline;
    padding: 0;
  }

  .c-card.promo .c-card__infos,
  .c-card.simple .c-card__infos,
  .c-card.code-link-promos .c-card__infos {
    height: 45px;
  }
}

.c-card.promo:hover .c-card__mentions,
.c-card.simple:hover .c-card__mentions,
.c-card.code-link-promos:hover .c-card__mentions {
  color: #192C4E;
}

.c-card.simple {
  position: relative;
  text-decoration: none;
  cursor: default;
}

@media (min-width: 46.25em) {
  .c-card.simple {
    max-width: 100%;
  }

  .c-card.simple .c-card-content .c-card__title {
    height: 78px;
  }

  .c-card.simple .c-card-content .c-card__title.h-auto {
    height: auto;
  }
}

.c-card.simple .c-card-label {
  z-index: 0;
  position: absolute;
  left: 24px;
  top: -16px;
  padding-top: 5px;
  border-radius: 50%;
  height: 48px;
  width: 48px;
  background: #ffffff;
}

@media (min-width: 46.25em) {
  .c-card.simple .c-card-label {
    left: 11px;
  }
}

.c-card.simple .c-card-label svg {
  display: block;
  margin: auto;
  position: relative;
}

.c-card.simple .c-card-label svg.mobile {
  left: 3px;
  width: 16px;
  height: 16px;
}

.c-card.simple .c-card-label svg.box {
  left: 0;
  width: 20px;
  height: 16px;
}

.c-card.simple .c-card-label p {
  font-size: 10px;
  font-size: 0.625rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  text-align: center;
}

.c-card.simple .c-card-head {
  position: relative;
  z-index: 1;
  margin-top: 9px;
}

.c-card.simple .c-card__logo {
  top: 0;
}

.c-card.simple .c-card--border {
  border: 0;
}

.c-card.simple .c-card-cta:hover .c-cta {
  background: #FB6660;
}

.c-card.simple .c-card-cta:hover .c-cta span {
  color: #ffffff;
}

.c-card.simple:hover .c-card-label {
  color: #192C4E;
}

.c-card.simple:hover .c-cta {
  background: #ffffff;
}

.c-card.simple:hover .c-cta span {
  color: #FB6660;
}

.c-card.code-link-promos {
  text-decoration: none;
  cursor: default;
}

.c-card.code-link-promos .c-card-head {
  padding: 0;
  border-bottom: 0;
}

@media (min-width: 46.25em) {
  .c-card.code-link-promos {
    max-width: 100%;
  }

  .c-card.code-link-promos .c-card-head {
    padding: 0 15px;
    height: 238px;
  }
}

@media (min-width: 60em) {
  .c-card.code-link-promos {
    max-width: 100%;
  }

  .c-card.code-link-promos .c-card-head {
    height: 244px;
  }
}

.c-card.code-link-promos p {
  text-align: justify;
}

.c-card.code-link-promos .c-card__price {
  color: #192C4E;
  text-align: center;
  line-height: 1;
  font-weight: 700;
}

.c-card.code-link-promos .c-card__price p {
  margin-bottom: 0;
}

.c-card.code-link-promos .c-card__price .c-text-tall {
  font-size: 40px;
  font-size: 2.5rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card.code-link-promos .c-card__price .c-text-small {
  font-size: 16px;
  font-size: 1rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

@media (min-width: 61.25em) {
  .c-card.code-link-promos .c-card__price .c-text-tall {
    font-size: 69px;
    font-size: 4.3125rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-card.code-link-promos .c-card__price .c-text-small {
    font-size: 20px;
    font-size: 1.25rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }
}

.c-card.code-link-promos .c-card__mentions {
  margin-top: 10px;
  font-size: 16px;
  font-size: 1rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card.code-link-promos .c-card__mentions.desk {
  display: none;
}

@media (min-width: 61.25em) {
  .c-card.code-link-promos .c-card__mentions.desk {
    display: block;
  }

  .c-card.code-link-promos .c-card__mentions.mob {
    display: none;
  }
}

.c-card.code-link-promos .c-card--border {
  padding: 10px 22px 15px;
  border: 0;
}

.c-card.c-code-promo {
  position: relative;
  max-width: 1024px;
  margin: auto auto 40px;
  padding: 10px 30px 20px;
  text-align: center;
  background: #ffffff;
}

@media (min-width: 61.25em) {
  .c-card.c-code-promo {
    padding-bottom: 10px;
  }
}

.c-card.c-code-promo .o-grid {
  align-items: center;
}

@media (min-width: 46.25em) {
  .c-card.c-code-promo .o-grid {
    justify-content: flex-end;
  }
}

@media (min-width: 61.25em) {
  .c-card.c-code-promo .o-grid {
    justify-content: space-between;
  }
}

.c-card.c-code-promo .c-card-label {
  z-index: 0;
  position: absolute;
  left: 24px;
  top: -16px;
  padding-top: 5px;
  border-radius: 50%;
  height: 48px;
  width: 48px;
  background: #ffffff;
}

@media (min-width: 46.25em) {
  .c-card.c-code-promo .c-card-label {
    left: 11px;
  }
}

.c-card.c-code-promo .c-card-label svg {
  display: block;
  margin: auto;
  position: relative;
}

.c-card.c-code-promo .c-card-label svg.mobile {
  left: 3px;
  width: 16px;
  height: 16px;
}

.c-card.c-code-promo .c-card-label svg.box {
  left: 0;
  width: 20px;
  height: 16px;
}

.c-card.c-code-promo .c-card-label p {
  font-size: 10px;
  font-size: 0.625rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  text-align: center;
}

.c-card.c-code-promo .c-card__price {
  color: #FB6660;
}

.c-card.c-code-promo .c-card__price span {
  display: inline-block;
  vertical-align: middle;
}

.c-card.c-code-promo .c-card__price sup,
.c-card.c-code-promo .c-card__price sub {
  display: block;
}

.c-card.c-code-promo .c-card__price .symbol-e {
  font-style: normal;
  font-size: 36px;
  font-size: 2.25rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card.c-code-promo .c-card__price .tall {
  font-size: 94px;
  font-size: 5.875rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card.c-code-promo .c-card__price .medium {
  font-size: 30px;
  font-size: 1.875rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card.c-code-promo .c-card__price .small {
  font-size: 27px;
  font-size: 1.6875rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  position: relative;
  top: 3px;
}

@media (min-width: 46.25em) {
  .c-card.c-code-promo .c-card__price {
    width: 31%;
    padding-right: 15px;
    text-align: right;
  }

  .c-card.c-code-promo .c-card__price .symbol-e {
    font-size: 26px;
    font-size: 1.625rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-card.c-code-promo .c-card__price .tall {
    font-size: 74px;
    font-size: 4.625rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-card.c-code-promo .c-card__price .medium {
    font-size: 20px;
    font-size: 1.25rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-card.c-code-promo .c-card__price .small {
    font-size: 17px;
    font-size: 1.0625rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }
}

@media (min-width: 61.25em) {
  .c-card.c-code-promo .c-card__price {
    width: 25%;
  }
}

.c-card.c-code-promo .c-card__mentions {
  margin: 20px 0;
  font-size: 14px;
  font-size: 0.875rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card.c-code-promo .c-card__mentions span {
  display: block;
}

@media (min-width: 46.25em) {
  .c-card.c-code-promo .c-card__mentions {
    width: 69%;
    text-align: left;
  }
}

@media (min-width: 61.25em) {
  .c-card.c-code-promo .c-card__mentions {
    width: 50%;
  }
}

.c-card.c-code-promo .c-card-cta {
  max-width: 200px;
  margin: auto auto;
  padding: 0 5px 10px;
}

.c-card.c-code-promo .c-card-cta a {
  font-size: 16px;
  font-size: 1rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

@media (min-width: 46.25em) {
  .c-card.c-code-promo .c-card-cta {
    margin: 0;
  }
}

@media (min-width: 61.25em) {
  .c-card.c-code-promo .c-card-cta {
    width: 25%;
  }
}

.c-card.c-code-promo .c-card-cta:hover .c-cta {
  background: #FB6660;
}

.c-card.c-code-promo .c-card-cta:hover .c-cta span {
  color: #ffffff;
}

.c-card.c-code-promo .c-code {
  display: none;
}

@media (min-width: 46.25em) {
  .c-card.c-code-promo.showCode .o-grid {
    justify-content: flex-end;
  }
}

@media (min-width: 61.25em) {
  .c-card.c-code-promo.showCode .c-card__mentions {
    width: 75%;
  }
}

.c-card.c-code-promo.showCode .c-card-cta {
  display: none;
}

.c-card.c-code-promo.showCode .c-code {
  display: block;
}

.c-card.c-code-promo.showCode .c-code .c-code__cell.code {
  max-width: 400px;
  width: 100%;
  margin: 0 auto 20px;
  padding: 15px;
  background: #6CDFDF;
  border-radius: 5px;
}

.c-card.c-code-promo.showCode .c-code .c-code__cell.code span {
  display: inline-block;
  width: 70%;
  padding: 15px;
  word-wrap: break-word;
  -webkit-word-wrap: break-word;
  -moz-word-wrap: break-word;
  -ms-word-wrap: break-word;
  background: #ffffff;
}

@media (min-width: 30em) {
  .c-card.c-code-promo.showCode .c-code .c-code__cell.code span {
    width: 80%;
  }
}

.c-card.c-code-promo.showCode .c-code .c-code__cell.code button {
  background: transparent;
  font-size: 14px;
  font-size: 0.875rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  color: #192C4E;
}

.c-card.c-code-promo.showCode .c-code .c-code__cell.c-card-cta {
  display: block;
  max-width: 250px;
  width: 100%;
  margin: auto;
  padding: 0 5px 10px;
}

@media (min-width: 46.25em) {
  .c-card.c-code-promo.showCode .c-code {
    width: 69%;
  }

  .c-card.c-code-promo.showCode .c-code .c-code__cell.code {
    max-width: 100%;
  }

  .c-card.c-code-promo.showCode .c-code .c-code__cell.c-card-cta {
    float: right;
  }
}

@media (min-width: 61.25em) {
  .c-card.c-code-promo.showCode .c-code {
    width: 75%;
  }
}

.c-card.c-code-promo.bonPlan .c-card__price {
  color: #192C4E;
}

@media (min-width: 46.25em) {
  .c-card.c-code-promo.bonPlan .c-card__price .c-card__price__cell {
    padding-right: 15px;
    text-align: right;
  }
}

.c-card.c-code-promo.bonPlan .c-card__price .c-card__price__cell p {
  margin-bottom: 0;
}

.c-card.c-code-promo.bonPlan .c-card__price .c-card__price__cell p.text-number {
  font-weight: 700;
  line-height: 0.9;
  font-size: 94px;
  font-size: 5.875rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card.c-code-promo.bonPlan .c-card__price .c-card__price__cell p.text-number span {
  position: relative;
  display: inline;
}

.c-card.c-code-promo.bonPlan .c-card__price .c-card__price__cell p.text-number span:after {
  content: '\20AC';
  position: absolute;
  top: 5px;
  right: -10px;
  font-weight: 400;
  font-size: 36px;
  font-size: 2.25rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

@media (min-width: 46.25em) {
  .c-card.c-code-promo.bonPlan .c-card__price .c-card__price__cell p.text-number {
    font-size: 74px;
    font-size: 4.625rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-card.c-code-promo.bonPlan .c-card__price .c-card__price__cell p.text-number span:after {
    font-size: 26px;
    font-size: 1.625rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }
}

.c-card.c-code-promo.bonPlan .c-card__price .c-card__price__cell p.text-primary {
  position: relative;
  z-index: 1;
  text-align: center;
  font-size: 32px;
  font-size: 2rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  font-weight: 700;
}

.c-card.c-code-promo.bonPlan .c-card__price .c-card__price__cell p.text-second {
  text-align: center;
  font-size: 22px;
  font-size: 1.375rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  font-weight: 400;
}

@media (min-width: 46.25em) {
  .c-card.c-code-promo.bonPlan .c-card__price .c-card__price__cell p.text-primary,
  .c-card.c-code-promo.bonPlan .c-card__price .c-card__price__cell p.text-second,
  .c-card.c-code-promo.bonPlan .c-card__price .c-card__price__cell p.text-number {
    text-align: right;
  }
}

.c-card.c-code-promo:last-child {
  margin-bottom: 0;
}

.c-card--border {
  border: 1px solid #D8D8D8;
  border-radius: 5px;
}

.c-card-offre {
  position: relative;
  max-width: 275px;
  margin: auto;
  background: #FFFFFF;
  border: 1px solid #dddbdd;
  border-radius: 10px;
  overflow-x: hidden;
  box-shadow: 0 3px 2px rgba(0, 0, 0, 0.1);
  transition: background .3s, box-shadow .3s, -webkit-box-shadow .3s;
}

.c-card-offre:hover {
  box-shadow: 0 3px 2px rgba(0, 0, 0, 0.4);
}

.c-card-offre__item.item-footer {
  padding: 0 12px 12px;
}

.c-card-offre__item .content-offre {
  padding: 12px 12px 0;
}

.c-card-offre__item .content-offre .header {
  margin-bottom: 10px;
  border-bottom: 1px solid #dddbdd;
}

.c-card-offre__item .content-offre .header .h-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin-left: 0;
}

.c-card-offre__item .content-offre .header .h-grid__item {
  padding-left: 0;
  margin-bottom: 0;
}

.c-card-offre__item .content-offre .header .h-grid__item.item-price {
  width: 70%;
  line-height: 1.2;
}

.c-card-offre__item .content-offre .header .h-grid__item.item-logo {
  width: 30%;
}

.c-card-offre__item .content-offre .header .h-grid__item.item-mention {
  width: 100%;
  margin-top: 5px;
  margin-bottom: 12px;
}

.c-card-offre__item .content-offre .header .price {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #192C4E;
}

.c-card-offre__item .content-offre .header .price .text-tall {
  font-size: 40px;
  font-size: 2.5rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  font-weight: 700;
}

.c-card-offre__item .content-offre .header .price .text-small sup,
.c-card-offre__item .content-offre .header .price .text-small sub {
  display: block;
}

.c-card-offre__item .content-offre .header .price .text-small i {
  font-style: normal;
  font-size: 16px;
  font-size: 1rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card-offre__item .content-offre .header .price .text-small sup {
  font-size: 13px;
  font-size: 0.8125rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card-offre__item .content-offre .header .price .text-small sub {
  font-size: 12px;
  font-size: 0.75rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  font-weight: 300;
}

.c-card-offre__item .content-offre .header .logo {
  width: 52px;
  height: 52px;
  margin: auto;
}

.c-card-offre__item .content-offre .header .mention {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 30px;
  text-align: center;
  font-size: 10px;
  font-size: 0.625rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card-offre__item .content-offre .header .mention span {
  display: block;
}

.c-card-offre__item .content-offre .content {
  /*  .type-picture {
          width: 100%;
          height: 56px;
          margin: 5px 0;
          text-align: center;
          background: #FFFFFF;
        }*/
}

.c-card-offre__item .content-offre .content .type-title {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 45px;
  text-align: center;
  font-weight: 700;
  font-size: 18px;
  font-size: 1.125rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card-offre__item .content-offre .content .type-title a {
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  color: #192C4E;
  font-weight: 700;
}

.c-card-offre__item .content-offre .content .type-services {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 75px;
  /*.toggler-indicators {
          display: flex;
          align-items: center;
          justify-content: center;
          width: 27px;
          height: 27px;
          margin: auto;
          .horizontal {
            position: absolute;
            width: 12px;
            height: 2px;
            margin-left: 0;
            margin-top: 0;
            background-color: $color-blue;
          }
          .vertical {
            position: absolute;
            width: 2px;
            height: 12px;
            margin-left: 0;
            margin-top: 0;
            background-color: $color-blue;
          }
        }*/
}

.c-card-offre__item .content-offre .content .type-services .list-service {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  height: 30px;
  padding: 0;
  margin: 0;
  text-align: center;
}

.c-card-offre__item .content-offre .content .type-services .list-service li {
  position: relative;
  padding: 0 10px;
  list-style-type: none;
  font-size: 15px;
  font-size: 0.9375rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card-offre__item .content-offre .content .type-services .list-service li:after {
  content: '-';
  position: absolute;
  right: 0;
  top: 0;
}

.c-card-offre__item .content-offre .content .type-services .list-service li:last-child:after {
  content: '';
}

.c-card-offre__item .content-offre .content .type-services .list-service.technical {
  height: 25px;
}

.c-card-offre__item .content-offre .content .type-services .list-service.technical:after {
  content: '';
}

.c-card-offre__item .content-footer .em-btn {
  max-width: 200px;
  height: 34px;
  border-radius: 50px;
  margin-top: 10px;
}

.c-card-offre__item .content-footer .em-btn span {
  font-weight: 400;
  font-size: 14px;
  font-size: 0.875rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card-offre__item .content-footer .type-promo {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.c-card-offre__item .content-footer .type-promo svg {
  width: 25px;
  height: 25px;
}

.c-card-offre__item .content-footer .type-promo span {
  padding-left: 5px;
  font-size: 12px;
  font-size: 0.75rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-card-offre__item .content-footer .type-promo.promo-time,
.c-card-offre__item .content-footer .type-promo.promo-info {
  color: #529407;
}

.c-card-offre__item .content-footer .type-promo.promo-bonPlan {
  color: #f5a623;
}

.c-card-offre__item .content-footer .type-promo.promo-price {
  color: #FB6660;
}

.c-card-offre__item .content-footer .link-detail {
  display: block;
  text-align: center;
  font-size: 14px;
  font-size: 0.875rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  margin-top: 10px;
}

.c-card-autoPromo {
  display: block;
  position: relative;
  max-width: 275px;
  margin: auto;
  background: #ffffff;
  border: 1px solid #dddbdd;
  border-radius: 10px;
  color: #192C4E;
  overflow-x: hidden;
  box-shadow: 0 3px 2px rgba(0, 0, 0, 0.1);
  transition: background .3s, box-shadow .3s, -webkit-box-shadow .3s;
  text-decoration: none;
  cursor: pointer;
}

.c-card-autoPromo:hover {
  color: #192C4E;
  box-shadow: 0 3px 2px rgba(0, 0, 0, 0.4);
}

.c-card-autoPromo:hover .header .h-grid__item.item-title {
  text-decoration: underline;
}

.c-card-autoPromo .c-card-offre__item .content-autoPromo {
  padding: 20px;
}

.c-card-autoPromo .c-card-offre__item .header {
  border-bottom: 0;
}

.c-card-autoPromo .c-card-offre__item .header .h-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin-left: 0;
}

.c-card-autoPromo .c-card-offre__item .header .h-grid__item {
  width: 100%;
  padding-left: 0;
  margin-bottom: 0;
}

.c-card-autoPromo .c-card-offre__item .header .h-grid__item.item-picto svg {
  display: block;
  margin: auto;
  width: 45px;
  height: 45px;
}

.c-card-autoPromo .c-card-offre__item .header .h-grid__item.item-title {
  margin-top: 20px;
}

.c-card-autoPromo .c-card-offre__item .header .h-grid__item.item-title p {
  text-align: center;
  font-size: 17px;
  font-size: 1.0625rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  font-weight: 600;
}

.c-card-autoPromo .c-card-offre__item .header .h-grid__item.item-title p span {
  display: block;
}

.c-card-autoPromo .c-card-offre__item .content {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 35px;
}

.c-card-autoPromo .c-card-offre__item .content .type-info {
  text-align: center;
  line-height: 1.5;
}

.c-card-autoPromo .c-card-offre__item .content .type-info ul {
  text-align: center;
}

.c-card-autoPromo .c-card-offre__item .content .type-info ul li {
  margin-bottom: 10px;
}

.c-card-autoPromo .c-card-offre__item .content .type-info ul li:last-child {
  margin-bottom: 0;
}

.c-card-autoPromo .c-card-offre__item .content-footer .em-btn {
  position: relative;
  top: -4px;
  margin: 0 auto 25px;
}

.c-card-autoPromo .c-card-offre__item .content-footer .em-btn span {
  line-height: 0;
}

@media (min-width: 64em) {
  .c-card-offre__item .content-offre .header .price .text-tall {
    font-size: 55px;
    font-size: 3.4375rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-card-offre__item .content-offre .header .price .text-small i {
    font-size: 23px;
    font-size: 1.4375rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-card-offre__item .content-offre .header .price .text-small sup {
    font-size: 23px;
    font-size: 1.4375rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-card-offre__item .content-offre .header .price .text-small sub {
    font-size: 17px;
    font-size: 1.0625rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-card-offre__item .content-offre .header .mention {
    font-size: 12px;
    font-size: 0.75rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .c-card-autoPromo .c-card-offre__item .header .h-grid__item.item-title p {
    font-size: 22px;
    font-size: 1.375rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }
}

/* ==========================================================================
   #Code Promo
   ========================================================================== */

.c-codePromo-header .c-date {
  display: flex;
  justify-content: flex-start;
  margin-bottom: 10px;
  font-size: 11px;
  font-size: 0.6875rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  font-weight: 400;
}

.c-codePromo-header .c-date .c-date__item {
  margin: auto 0;
}

.c-codePromo-header .c-date .date {
  margin-right: 10px;
}

.c-codePromo-header .c-descriptif {
  font-size: 16px;
  font-size: 1rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  font-weight: 400;
}

.c-codePromo-header.logo {
  position: relative;
}

.c-codePromo-header.logo .o-flex .o-flex__item.logo {
  position: absolute;
  top: 4px;
  right: 11px;
  /* border: 1px solid $color-grey-1;*/
  width: 65px;
}

@media (min-width: 25em) {
  .c-codePromo-header.logo .o-flex .o-flex__item.logo {
    width: 80px;
  }
}

@media (min-width: 46.25em) {
  .c-codePromo-header.logo .o-flex .o-flex__item.logo {
    max-width: 145px;
    width: 100%;
  }
}

@media (min-width: 61.25em) {
  .c-codePromo-header.logo .o-flex .o-flex__item.logo {
    max-width: 174px;
    width: 100%;
  }
}

.c-codePromo-header.logo .o-flex .o-flex__item.logo img {
  max-width: 100%;
}

.c-filter-listPromo {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 0;
  margin: 0 0 15px;
}

@media (min-width: 30em) {
  .c-filter-listPromo {
    flex-direction: row;
  }
}

.c-filter-listPromo__item {
  width: 150px;
  margin-bottom: 15px;
}

.c-filter-listPromo__item:first-child {
  width: 90px;
}

.c-filter-listPromo__item.selected .c-filter-optionPromo .sort-check {
  display: inline-block;
}

.c-filter-listPromo__item .c-ico-filter {
  width: 22px;
  height: 22px;
  display: inline-block;
  vertical-align: middle;
}

.c-filter-listPromo__item .text-filter {
  display: inline-block;
  vertical-align: middle;
  padding-left: 5px;
  font-size: 14px;
  font-size: 0.875rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

@media (min-width: 30em) {
  .c-filter-listPromo__item {
    margin-bottom: 0;
  }
}

.c-filter-optionPromo {
  position: relative;
  width: 105px;
  height: 24px;
  padding: 5px 10px;
  border-radius: 5px;
  font-size: 14px;
  font-size: 0.875rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
}

.c-filter-optionPromo input {
  display: none;
}

.c-filter-optionPromo .c-filter-label {
  text-align: center;
  cursor: pointer;
}

.c-filter-optionPromo .sort-check {
  position: absolute;
  right: -18px;
  display: none;
}

.c-filter-optionPromo .sort-check svg {
  width: 13px;
  height: 13px;
  object-fit: contain;
  color: #192C4E;
}

.em-btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 38px;
  margin: auto;
  border-radius: 50px;
  border: 0;
  text-decoration: none;
  font-size: 18px;
  font-size: 1.125rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  font-weight: 400;
  cursor: pointer;
}

.em-btn.color-01 {
  background: #FB6660;
  color: #FFFFFF;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}

.em-btn.color-01:hover,
.em-btn.color-01:active {
  color: #FB6660;
  background: #FFFFFF;
  border: 1px solid #FB6660;
}

.em-btn.color-01--uni {
  background: #FB6660;
  color: #FFFFFF;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}

.em-btn.color-01--uni:hover,
.em-btn.color-01--uni:active {
  color: #FFFFFF;
  background: #bd0c05;
}

.em-btn.color-02 {
  background: #192C4E;
  color: #FFFFFF;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}

.em-btn.color-02:hover,
.em-btn.color-02:active {
  color: #192C4E;
  background: #FFFFFF;
  border: 1px solid #192C4E;
}

.em-btn.color-03 {
  background: #49a262;
  color: #FFFFFF;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}

.em-btn.color-03:hover,
.em-btn.color-03:active {
  color: #49a262;
  background: #FFFFFF;
  border: 1px solid #49a262;
}

.em-btn.border-01 {
  border: 1px solid #FB6660;
  color: #FB6660;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}

.em-btn.border-01:hover,
.em-btn.border-01:active {
  color: #FFFFFF;
  background: #FB6660;
}

.em-btn.border-02 {
  border: 1px solid #192C4E;
  color: #192C4E;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}

.em-btn.border-02:hover,
.em-btn.border-02:active {
  color: #FFFFFF;
  background: #192C4E;
}

.em-btn.ext {
  padding: 15px;
}

.em-rebond {
  width: 100%;
  height: auto;
  padding: 15px;
  margin-bottom: 15px;
  border: 1px solid #d8d8d8;
  border-radius: 5px;
}

.em-rebond .title {
  margin-bottom: 10px;
  border-bottom: 1px solid #FB6660;
}

.u-1\/1 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

.u-1\/2 {
  flex: 0 0 50% !important;
  max-width: 50% !important;
}

.u-2\/2 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

.u-1\/3 {
  flex: 0 0 33.33333% !important;
  max-width: 33.33333% !important;
}

.u-2\/3 {
  flex: 0 0 66.66667% !important;
  max-width: 66.66667% !important;
}

.u-3\/3 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

.u-1\/4 {
  flex: 0 0 25% !important;
  max-width: 25% !important;
}

.u-2\/4 {
  flex: 0 0 50% !important;
  max-width: 50% !important;
}

.u-3\/4 {
  flex: 0 0 75% !important;
  max-width: 75% !important;
}

.u-4\/4 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

.u-1\/5 {
  flex: 0 0 20% !important;
  max-width: 20% !important;
}

.u-2\/5 {
  flex: 0 0 40% !important;
  max-width: 40% !important;
}

.u-3\/5 {
  flex: 0 0 60% !important;
  max-width: 60% !important;
}

.u-4\/5 {
  flex: 0 0 80% !important;
  max-width: 80% !important;
}

.u-5\/5 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

.u-1\/6 {
  flex: 0 0 16.66667% !important;
  max-width: 16.66667% !important;
}

.u-2\/6 {
  flex: 0 0 33.33333% !important;
  max-width: 33.33333% !important;
}

.u-3\/6 {
  flex: 0 0 50% !important;
  max-width: 50% !important;
}

.u-4\/6 {
  flex: 0 0 66.66667% !important;
  max-width: 66.66667% !important;
}

.u-5\/6 {
  flex: 0 0 83.33333% !important;
  max-width: 83.33333% !important;
}

.u-6\/6 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

.u-1\/7 {
  flex: 0 0 14.28571% !important;
  max-width: 14.28571% !important;
}

.u-2\/7 {
  flex: 0 0 28.57143% !important;
  max-width: 28.57143% !important;
}

.u-3\/7 {
  flex: 0 0 42.85714% !important;
  max-width: 42.85714% !important;
}

.u-4\/7 {
  flex: 0 0 57.14286% !important;
  max-width: 57.14286% !important;
}

.u-5\/7 {
  flex: 0 0 71.42857% !important;
  max-width: 71.42857% !important;
}

.u-6\/7 {
  flex: 0 0 85.71429% !important;
  max-width: 85.71429% !important;
}

.u-7\/7 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

.u-1\/8 {
  flex: 0 0 12.5% !important;
  max-width: 12.5% !important;
}

.u-2\/8 {
  flex: 0 0 25% !important;
  max-width: 25% !important;
}

.u-3\/8 {
  flex: 0 0 37.5% !important;
  max-width: 37.5% !important;
}

.u-4\/8 {
  flex: 0 0 50% !important;
  max-width: 50% !important;
}

.u-5\/8 {
  flex: 0 0 62.5% !important;
  max-width: 62.5% !important;
}

.u-6\/8 {
  flex: 0 0 75% !important;
  max-width: 75% !important;
}

.u-7\/8 {
  flex: 0 0 87.5% !important;
  max-width: 87.5% !important;
}

.u-8\/8 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

.u-1\/9 {
  flex: 0 0 11.11111% !important;
  max-width: 11.11111% !important;
}

.u-2\/9 {
  flex: 0 0 22.22222% !important;
  max-width: 22.22222% !important;
}

.u-3\/9 {
  flex: 0 0 33.33333% !important;
  max-width: 33.33333% !important;
}

.u-4\/9 {
  flex: 0 0 44.44444% !important;
  max-width: 44.44444% !important;
}

.u-5\/9 {
  flex: 0 0 55.55556% !important;
  max-width: 55.55556% !important;
}

.u-6\/9 {
  flex: 0 0 66.66667% !important;
  max-width: 66.66667% !important;
}

.u-7\/9 {
  flex: 0 0 77.77778% !important;
  max-width: 77.77778% !important;
}

.u-8\/9 {
  flex: 0 0 88.88889% !important;
  max-width: 88.88889% !important;
}

.u-9\/9 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

.u-1\/10 {
  flex: 0 0 10% !important;
  max-width: 10% !important;
}

.u-2\/10 {
  flex: 0 0 20% !important;
  max-width: 20% !important;
}

.u-3\/10 {
  flex: 0 0 30% !important;
  max-width: 30% !important;
}

.u-4\/10 {
  flex: 0 0 40% !important;
  max-width: 40% !important;
}

.u-5\/10 {
  flex: 0 0 50% !important;
  max-width: 50% !important;
}

.u-6\/10 {
  flex: 0 0 60% !important;
  max-width: 60% !important;
}

.u-7\/10 {
  flex: 0 0 70% !important;
  max-width: 70% !important;
}

.u-8\/10 {
  flex: 0 0 80% !important;
  max-width: 80% !important;
}

.u-9\/10 {
  flex: 0 0 90% !important;
  max-width: 90% !important;
}

.u-10\/10 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}

@media (min-width: 20em) {
  .u-1\/1\@mobile {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/2\@mobile {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-2\/2\@mobile {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/3\@mobile {
    flex: 0 0 33.33333% !important;
    max-width: 33.33333% !important;
  }

  .u-2\/3\@mobile {
    flex: 0 0 66.66667% !important;
    max-width: 66.66667% !important;
  }

  .u-3\/3\@mobile {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/4\@mobile {
    flex: 0 0 25% !important;
    max-width: 25% !important;
  }

  .u-2\/4\@mobile {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-3\/4\@mobile {
    flex: 0 0 75% !important;
    max-width: 75% !important;
  }

  .u-4\/4\@mobile {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/5\@mobile {
    flex: 0 0 20% !important;
    max-width: 20% !important;
  }

  .u-2\/5\@mobile {
    flex: 0 0 40% !important;
    max-width: 40% !important;
  }

  .u-3\/5\@mobile {
    flex: 0 0 60% !important;
    max-width: 60% !important;
  }

  .u-4\/5\@mobile {
    flex: 0 0 80% !important;
    max-width: 80% !important;
  }

  .u-5\/5\@mobile {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/6\@mobile {
    flex: 0 0 16.66667% !important;
    max-width: 16.66667% !important;
  }

  .u-2\/6\@mobile {
    flex: 0 0 33.33333% !important;
    max-width: 33.33333% !important;
  }

  .u-3\/6\@mobile {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-4\/6\@mobile {
    flex: 0 0 66.66667% !important;
    max-width: 66.66667% !important;
  }

  .u-5\/6\@mobile {
    flex: 0 0 83.33333% !important;
    max-width: 83.33333% !important;
  }

  .u-6\/6\@mobile {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/7\@mobile {
    flex: 0 0 14.28571% !important;
    max-width: 14.28571% !important;
  }

  .u-2\/7\@mobile {
    flex: 0 0 28.57143% !important;
    max-width: 28.57143% !important;
  }

  .u-3\/7\@mobile {
    flex: 0 0 42.85714% !important;
    max-width: 42.85714% !important;
  }

  .u-4\/7\@mobile {
    flex: 0 0 57.14286% !important;
    max-width: 57.14286% !important;
  }

  .u-5\/7\@mobile {
    flex: 0 0 71.42857% !important;
    max-width: 71.42857% !important;
  }

  .u-6\/7\@mobile {
    flex: 0 0 85.71429% !important;
    max-width: 85.71429% !important;
  }

  .u-7\/7\@mobile {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/8\@mobile {
    flex: 0 0 12.5% !important;
    max-width: 12.5% !important;
  }

  .u-2\/8\@mobile {
    flex: 0 0 25% !important;
    max-width: 25% !important;
  }

  .u-3\/8\@mobile {
    flex: 0 0 37.5% !important;
    max-width: 37.5% !important;
  }

  .u-4\/8\@mobile {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-5\/8\@mobile {
    flex: 0 0 62.5% !important;
    max-width: 62.5% !important;
  }

  .u-6\/8\@mobile {
    flex: 0 0 75% !important;
    max-width: 75% !important;
  }

  .u-7\/8\@mobile {
    flex: 0 0 87.5% !important;
    max-width: 87.5% !important;
  }

  .u-8\/8\@mobile {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/9\@mobile {
    flex: 0 0 11.11111% !important;
    max-width: 11.11111% !important;
  }

  .u-2\/9\@mobile {
    flex: 0 0 22.22222% !important;
    max-width: 22.22222% !important;
  }

  .u-3\/9\@mobile {
    flex: 0 0 33.33333% !important;
    max-width: 33.33333% !important;
  }

  .u-4\/9\@mobile {
    flex: 0 0 44.44444% !important;
    max-width: 44.44444% !important;
  }

  .u-5\/9\@mobile {
    flex: 0 0 55.55556% !important;
    max-width: 55.55556% !important;
  }

  .u-6\/9\@mobile {
    flex: 0 0 66.66667% !important;
    max-width: 66.66667% !important;
  }

  .u-7\/9\@mobile {
    flex: 0 0 77.77778% !important;
    max-width: 77.77778% !important;
  }

  .u-8\/9\@mobile {
    flex: 0 0 88.88889% !important;
    max-width: 88.88889% !important;
  }

  .u-9\/9\@mobile {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/10\@mobile {
    flex: 0 0 10% !important;
    max-width: 10% !important;
  }

  .u-2\/10\@mobile {
    flex: 0 0 20% !important;
    max-width: 20% !important;
  }

  .u-3\/10\@mobile {
    flex: 0 0 30% !important;
    max-width: 30% !important;
  }

  .u-4\/10\@mobile {
    flex: 0 0 40% !important;
    max-width: 40% !important;
  }

  .u-5\/10\@mobile {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-6\/10\@mobile {
    flex: 0 0 60% !important;
    max-width: 60% !important;
  }

  .u-7\/10\@mobile {
    flex: 0 0 70% !important;
    max-width: 70% !important;
  }

  .u-8\/10\@mobile {
    flex: 0 0 80% !important;
    max-width: 80% !important;
  }

  .u-9\/10\@mobile {
    flex: 0 0 90% !important;
    max-width: 90% !important;
  }

  .u-10\/10\@mobile {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

@media (min-width: 46.25em) {
  .u-1\/1\@tablet {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/2\@tablet {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-2\/2\@tablet {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/3\@tablet {
    flex: 0 0 33.33333% !important;
    max-width: 33.33333% !important;
  }

  .u-2\/3\@tablet {
    flex: 0 0 66.66667% !important;
    max-width: 66.66667% !important;
  }

  .u-3\/3\@tablet {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/4\@tablet {
    flex: 0 0 25% !important;
    max-width: 25% !important;
  }

  .u-2\/4\@tablet {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-3\/4\@tablet {
    flex: 0 0 75% !important;
    max-width: 75% !important;
  }

  .u-4\/4\@tablet {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/5\@tablet {
    flex: 0 0 20% !important;
    max-width: 20% !important;
  }

  .u-2\/5\@tablet {
    flex: 0 0 40% !important;
    max-width: 40% !important;
  }

  .u-3\/5\@tablet {
    flex: 0 0 60% !important;
    max-width: 60% !important;
  }

  .u-4\/5\@tablet {
    flex: 0 0 80% !important;
    max-width: 80% !important;
  }

  .u-5\/5\@tablet {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/6\@tablet {
    flex: 0 0 16.66667% !important;
    max-width: 16.66667% !important;
  }

  .u-2\/6\@tablet {
    flex: 0 0 33.33333% !important;
    max-width: 33.33333% !important;
  }

  .u-3\/6\@tablet {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-4\/6\@tablet {
    flex: 0 0 66.66667% !important;
    max-width: 66.66667% !important;
  }

  .u-5\/6\@tablet {
    flex: 0 0 83.33333% !important;
    max-width: 83.33333% !important;
  }

  .u-6\/6\@tablet {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/7\@tablet {
    flex: 0 0 14.28571% !important;
    max-width: 14.28571% !important;
  }

  .u-2\/7\@tablet {
    flex: 0 0 28.57143% !important;
    max-width: 28.57143% !important;
  }

  .u-3\/7\@tablet {
    flex: 0 0 42.85714% !important;
    max-width: 42.85714% !important;
  }

  .u-4\/7\@tablet {
    flex: 0 0 57.14286% !important;
    max-width: 57.14286% !important;
  }

  .u-5\/7\@tablet {
    flex: 0 0 71.42857% !important;
    max-width: 71.42857% !important;
  }

  .u-6\/7\@tablet {
    flex: 0 0 85.71429% !important;
    max-width: 85.71429% !important;
  }

  .u-7\/7\@tablet {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/8\@tablet {
    flex: 0 0 12.5% !important;
    max-width: 12.5% !important;
  }

  .u-2\/8\@tablet {
    flex: 0 0 25% !important;
    max-width: 25% !important;
  }

  .u-3\/8\@tablet {
    flex: 0 0 37.5% !important;
    max-width: 37.5% !important;
  }

  .u-4\/8\@tablet {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-5\/8\@tablet {
    flex: 0 0 62.5% !important;
    max-width: 62.5% !important;
  }

  .u-6\/8\@tablet {
    flex: 0 0 75% !important;
    max-width: 75% !important;
  }

  .u-7\/8\@tablet {
    flex: 0 0 87.5% !important;
    max-width: 87.5% !important;
  }

  .u-8\/8\@tablet {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/9\@tablet {
    flex: 0 0 11.11111% !important;
    max-width: 11.11111% !important;
  }

  .u-2\/9\@tablet {
    flex: 0 0 22.22222% !important;
    max-width: 22.22222% !important;
  }

  .u-3\/9\@tablet {
    flex: 0 0 33.33333% !important;
    max-width: 33.33333% !important;
  }

  .u-4\/9\@tablet {
    flex: 0 0 44.44444% !important;
    max-width: 44.44444% !important;
  }

  .u-5\/9\@tablet {
    flex: 0 0 55.55556% !important;
    max-width: 55.55556% !important;
  }

  .u-6\/9\@tablet {
    flex: 0 0 66.66667% !important;
    max-width: 66.66667% !important;
  }

  .u-7\/9\@tablet {
    flex: 0 0 77.77778% !important;
    max-width: 77.77778% !important;
  }

  .u-8\/9\@tablet {
    flex: 0 0 88.88889% !important;
    max-width: 88.88889% !important;
  }

  .u-9\/9\@tablet {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/10\@tablet {
    flex: 0 0 10% !important;
    max-width: 10% !important;
  }

  .u-2\/10\@tablet {
    flex: 0 0 20% !important;
    max-width: 20% !important;
  }

  .u-3\/10\@tablet {
    flex: 0 0 30% !important;
    max-width: 30% !important;
  }

  .u-4\/10\@tablet {
    flex: 0 0 40% !important;
    max-width: 40% !important;
  }

  .u-5\/10\@tablet {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-6\/10\@tablet {
    flex: 0 0 60% !important;
    max-width: 60% !important;
  }

  .u-7\/10\@tablet {
    flex: 0 0 70% !important;
    max-width: 70% !important;
  }

  .u-8\/10\@tablet {
    flex: 0 0 80% !important;
    max-width: 80% !important;
  }

  .u-9\/10\@tablet {
    flex: 0 0 90% !important;
    max-width: 90% !important;
  }

  .u-10\/10\@tablet {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

@media (min-width: 61.25em) {
  .u-1\/1\@desktop {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/2\@desktop {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-2\/2\@desktop {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/3\@desktop {
    flex: 0 0 33.33333% !important;
    max-width: 33.33333% !important;
  }

  .u-2\/3\@desktop {
    flex: 0 0 66.66667% !important;
    max-width: 66.66667% !important;
  }

  .u-3\/3\@desktop {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/4\@desktop {
    flex: 0 0 25% !important;
    max-width: 25% !important;
  }

  .u-2\/4\@desktop {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-3\/4\@desktop {
    flex: 0 0 75% !important;
    max-width: 75% !important;
  }

  .u-4\/4\@desktop {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/5\@desktop {
    flex: 0 0 20% !important;
    max-width: 20% !important;
  }

  .u-2\/5\@desktop {
    flex: 0 0 40% !important;
    max-width: 40% !important;
  }

  .u-3\/5\@desktop {
    flex: 0 0 60% !important;
    max-width: 60% !important;
  }

  .u-4\/5\@desktop {
    flex: 0 0 80% !important;
    max-width: 80% !important;
  }

  .u-5\/5\@desktop {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/6\@desktop {
    flex: 0 0 16.66667% !important;
    max-width: 16.66667% !important;
  }

  .u-2\/6\@desktop {
    flex: 0 0 33.33333% !important;
    max-width: 33.33333% !important;
  }

  .u-3\/6\@desktop {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-4\/6\@desktop {
    flex: 0 0 66.66667% !important;
    max-width: 66.66667% !important;
  }

  .u-5\/6\@desktop {
    flex: 0 0 83.33333% !important;
    max-width: 83.33333% !important;
  }

  .u-6\/6\@desktop {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/7\@desktop {
    flex: 0 0 14.28571% !important;
    max-width: 14.28571% !important;
  }

  .u-2\/7\@desktop {
    flex: 0 0 28.57143% !important;
    max-width: 28.57143% !important;
  }

  .u-3\/7\@desktop {
    flex: 0 0 42.85714% !important;
    max-width: 42.85714% !important;
  }

  .u-4\/7\@desktop {
    flex: 0 0 57.14286% !important;
    max-width: 57.14286% !important;
  }

  .u-5\/7\@desktop {
    flex: 0 0 71.42857% !important;
    max-width: 71.42857% !important;
  }

  .u-6\/7\@desktop {
    flex: 0 0 85.71429% !important;
    max-width: 85.71429% !important;
  }

  .u-7\/7\@desktop {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/8\@desktop {
    flex: 0 0 12.5% !important;
    max-width: 12.5% !important;
  }

  .u-2\/8\@desktop {
    flex: 0 0 25% !important;
    max-width: 25% !important;
  }

  .u-3\/8\@desktop {
    flex: 0 0 37.5% !important;
    max-width: 37.5% !important;
  }

  .u-4\/8\@desktop {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-5\/8\@desktop {
    flex: 0 0 62.5% !important;
    max-width: 62.5% !important;
  }

  .u-6\/8\@desktop {
    flex: 0 0 75% !important;
    max-width: 75% !important;
  }

  .u-7\/8\@desktop {
    flex: 0 0 87.5% !important;
    max-width: 87.5% !important;
  }

  .u-8\/8\@desktop {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/9\@desktop {
    flex: 0 0 11.11111% !important;
    max-width: 11.11111% !important;
  }

  .u-2\/9\@desktop {
    flex: 0 0 22.22222% !important;
    max-width: 22.22222% !important;
  }

  .u-3\/9\@desktop {
    flex: 0 0 33.33333% !important;
    max-width: 33.33333% !important;
  }

  .u-4\/9\@desktop {
    flex: 0 0 44.44444% !important;
    max-width: 44.44444% !important;
  }

  .u-5\/9\@desktop {
    flex: 0 0 55.55556% !important;
    max-width: 55.55556% !important;
  }

  .u-6\/9\@desktop {
    flex: 0 0 66.66667% !important;
    max-width: 66.66667% !important;
  }

  .u-7\/9\@desktop {
    flex: 0 0 77.77778% !important;
    max-width: 77.77778% !important;
  }

  .u-8\/9\@desktop {
    flex: 0 0 88.88889% !important;
    max-width: 88.88889% !important;
  }

  .u-9\/9\@desktop {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/10\@desktop {
    flex: 0 0 10% !important;
    max-width: 10% !important;
  }

  .u-2\/10\@desktop {
    flex: 0 0 20% !important;
    max-width: 20% !important;
  }

  .u-3\/10\@desktop {
    flex: 0 0 30% !important;
    max-width: 30% !important;
  }

  .u-4\/10\@desktop {
    flex: 0 0 40% !important;
    max-width: 40% !important;
  }

  .u-5\/10\@desktop {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-6\/10\@desktop {
    flex: 0 0 60% !important;
    max-width: 60% !important;
  }

  .u-7\/10\@desktop {
    flex: 0 0 70% !important;
    max-width: 70% !important;
  }

  .u-8\/10\@desktop {
    flex: 0 0 80% !important;
    max-width: 80% !important;
  }

  .u-9\/10\@desktop {
    flex: 0 0 90% !important;
    max-width: 90% !important;
  }

  .u-10\/10\@desktop {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

@media (min-width: 81.25em) {
  .u-1\/1\@wide {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/2\@wide {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-2\/2\@wide {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/3\@wide {
    flex: 0 0 33.33333% !important;
    max-width: 33.33333% !important;
  }

  .u-2\/3\@wide {
    flex: 0 0 66.66667% !important;
    max-width: 66.66667% !important;
  }

  .u-3\/3\@wide {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/4\@wide {
    flex: 0 0 25% !important;
    max-width: 25% !important;
  }

  .u-2\/4\@wide {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-3\/4\@wide {
    flex: 0 0 75% !important;
    max-width: 75% !important;
  }

  .u-4\/4\@wide {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/5\@wide {
    flex: 0 0 20% !important;
    max-width: 20% !important;
  }

  .u-2\/5\@wide {
    flex: 0 0 40% !important;
    max-width: 40% !important;
  }

  .u-3\/5\@wide {
    flex: 0 0 60% !important;
    max-width: 60% !important;
  }

  .u-4\/5\@wide {
    flex: 0 0 80% !important;
    max-width: 80% !important;
  }

  .u-5\/5\@wide {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/6\@wide {
    flex: 0 0 16.66667% !important;
    max-width: 16.66667% !important;
  }

  .u-2\/6\@wide {
    flex: 0 0 33.33333% !important;
    max-width: 33.33333% !important;
  }

  .u-3\/6\@wide {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-4\/6\@wide {
    flex: 0 0 66.66667% !important;
    max-width: 66.66667% !important;
  }

  .u-5\/6\@wide {
    flex: 0 0 83.33333% !important;
    max-width: 83.33333% !important;
  }

  .u-6\/6\@wide {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/7\@wide {
    flex: 0 0 14.28571% !important;
    max-width: 14.28571% !important;
  }

  .u-2\/7\@wide {
    flex: 0 0 28.57143% !important;
    max-width: 28.57143% !important;
  }

  .u-3\/7\@wide {
    flex: 0 0 42.85714% !important;
    max-width: 42.85714% !important;
  }

  .u-4\/7\@wide {
    flex: 0 0 57.14286% !important;
    max-width: 57.14286% !important;
  }

  .u-5\/7\@wide {
    flex: 0 0 71.42857% !important;
    max-width: 71.42857% !important;
  }

  .u-6\/7\@wide {
    flex: 0 0 85.71429% !important;
    max-width: 85.71429% !important;
  }

  .u-7\/7\@wide {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/8\@wide {
    flex: 0 0 12.5% !important;
    max-width: 12.5% !important;
  }

  .u-2\/8\@wide {
    flex: 0 0 25% !important;
    max-width: 25% !important;
  }

  .u-3\/8\@wide {
    flex: 0 0 37.5% !important;
    max-width: 37.5% !important;
  }

  .u-4\/8\@wide {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-5\/8\@wide {
    flex: 0 0 62.5% !important;
    max-width: 62.5% !important;
  }

  .u-6\/8\@wide {
    flex: 0 0 75% !important;
    max-width: 75% !important;
  }

  .u-7\/8\@wide {
    flex: 0 0 87.5% !important;
    max-width: 87.5% !important;
  }

  .u-8\/8\@wide {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/9\@wide {
    flex: 0 0 11.11111% !important;
    max-width: 11.11111% !important;
  }

  .u-2\/9\@wide {
    flex: 0 0 22.22222% !important;
    max-width: 22.22222% !important;
  }

  .u-3\/9\@wide {
    flex: 0 0 33.33333% !important;
    max-width: 33.33333% !important;
  }

  .u-4\/9\@wide {
    flex: 0 0 44.44444% !important;
    max-width: 44.44444% !important;
  }

  .u-5\/9\@wide {
    flex: 0 0 55.55556% !important;
    max-width: 55.55556% !important;
  }

  .u-6\/9\@wide {
    flex: 0 0 66.66667% !important;
    max-width: 66.66667% !important;
  }

  .u-7\/9\@wide {
    flex: 0 0 77.77778% !important;
    max-width: 77.77778% !important;
  }

  .u-8\/9\@wide {
    flex: 0 0 88.88889% !important;
    max-width: 88.88889% !important;
  }

  .u-9\/9\@wide {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .u-1\/10\@wide {
    flex: 0 0 10% !important;
    max-width: 10% !important;
  }

  .u-2\/10\@wide {
    flex: 0 0 20% !important;
    max-width: 20% !important;
  }

  .u-3\/10\@wide {
    flex: 0 0 30% !important;
    max-width: 30% !important;
  }

  .u-4\/10\@wide {
    flex: 0 0 40% !important;
    max-width: 40% !important;
  }

  .u-5\/10\@wide {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .u-6\/10\@wide {
    flex: 0 0 60% !important;
    max-width: 60% !important;
  }

  .u-7\/10\@wide {
    flex: 0 0 70% !important;
    max-width: 70% !important;
  }

  .u-8\/10\@wide {
    flex: 0 0 80% !important;
    max-width: 80% !important;
  }

  .u-9\/10\@wide {
    flex: 0 0 90% !important;
    max-width: 90% !important;
  }

  .u-10\/10\@wide {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

.u-width-full {
  width: 100%;
}

.u-mwidth-150 {
  max-width: 150px;
  width: 100%;
}

.u-mwidth-200 {
  max-width: 200px;
  width: 100%;
}

.u-mwidth-250 {
  max-width: 250px;
  width: 100%;
}

.u-mwidth-330 {
  max-width: 330px;
  width: 100%;
}

.u-mwidth-300 {
  max-width: 300px;
  width: 100%;
}

.u-mwidth-500 {
  max-width: 500px;
  width: 100%;
}

.u-height38 {
  height: 38px;
}

.u-height50 {
  height: 50px;
}

.u-bg-white {
  background: #ffffff;
}

.u-bg-blue {
  background: #192C4E;
}

.u-bg-blue--1 {
  background: #1EA8BA;
}

.u-bg-blue--2 {
  background: #6CDFDF;
}

.u-bg-grey {
  background: #D8D8D8;
}

.u-bg-grey--1 {
  background: #D8D8D8;
}

/*Textes Color*/

.u-text--white {
  color: #ffffff;
}

.u-text--corail {
  color: #FB6660;
}

.u-text--blue {
  color: #192C4E !important;
}

/*
This .scss loop will create "margin helpers" and "padding helpers" for use in your web projects.
It will generate several classes such as:
.u-m-r-10 which gives margin-right 10 pixels.
.u-m-r-15 gives MARGIN to the RIGHT 15 pixels.
.u-m-t-15 gives MARGIN to the TOP 15 pixels and so on.
.u-p-b-5 gives PADDING to the BOTTOM of 5 pixels
.u-p-l-40 gives PADDING to the LEFT of 40 pixels
The first letter is "m" or "p" for MARGIN or PADDING
Second letter is "t", "b", "l", or "r" for TOP, BOTTOM, LEFT, or RIGHT
Third letter is the number of spacing in pixels. Adjust the amounts generated by editing the $spaceamounts variable below.
*/

.u-m-t-0 {
  margin-top: 0px !important;
}

.u-p-t-0 {
  padding-top: 0px !important;
}

.u-m-b-0 {
  margin-bottom: 0px !important;
}

.u-p-b-0 {
  padding-bottom: 0px !important;
}

.u-m-l-0 {
  margin-left: 0px !important;
}

.u-p-l-0 {
  padding-left: 0px !important;
}

.u-m-r-0 {
  margin-right: 0px !important;
}

.u-p-r-0 {
  padding-right: 0px !important;
}

.u-m-t-5 {
  margin-top: 5px !important;
}

.u-p-t-5 {
  padding-top: 5px !important;
}

.u-m-b-5 {
  margin-bottom: 5px !important;
}

.u-p-b-5 {
  padding-bottom: 5px !important;
}

.u-m-l-5 {
  margin-left: 5px !important;
}

.u-p-l-5 {
  padding-left: 5px !important;
}

.u-m-r-5 {
  margin-right: 5px !important;
}

.u-p-r-5 {
  padding-right: 5px !important;
}

.u-m-t-10 {
  margin-top: 10px !important;
}

.u-p-t-10 {
  padding-top: 10px !important;
}

.u-m-b-10 {
  margin-bottom: 10px !important;
}

.u-p-b-10 {
  padding-bottom: 10px !important;
}

.u-m-l-10 {
  margin-left: 10px !important;
}

.u-p-l-10 {
  padding-left: 10px !important;
}

.u-m-r-10 {
  margin-right: 10px !important;
}

.u-p-r-10 {
  padding-right: 10px !important;
}

.u-m-t-15 {
  margin-top: 15px !important;
}

.u-p-t-15 {
  padding-top: 15px !important;
}

.u-m-b-15 {
  margin-bottom: 15px !important;
}

.u-p-b-15 {
  padding-bottom: 15px !important;
}

.u-m-l-15 {
  margin-left: 15px !important;
}

.u-p-l-15 {
  padding-left: 15px !important;
}

.u-m-r-15 {
  margin-right: 15px !important;
}

.u-p-r-15 {
  padding-right: 15px !important;
}

.u-m-t-20 {
  margin-top: 20px !important;
}

.u-p-t-20 {
  padding-top: 20px !important;
}

.u-m-b-20 {
  margin-bottom: 20px !important;
}

.u-p-b-20 {
  padding-bottom: 20px !important;
}

.u-m-l-20 {
  margin-left: 20px !important;
}

.u-p-l-20 {
  padding-left: 20px !important;
}

.u-m-r-20 {
  margin-right: 20px !important;
}

.u-p-r-20 {
  padding-right: 20px !important;
}

.u-m-t-25 {
  margin-top: 25px !important;
}

.u-p-t-25 {
  padding-top: 25px !important;
}

.u-m-b-25 {
  margin-bottom: 25px !important;
}

.u-p-b-25 {
  padding-bottom: 25px !important;
}

.u-m-l-25 {
  margin-left: 25px !important;
}

.u-p-l-25 {
  padding-left: 25px !important;
}

.u-m-r-25 {
  margin-right: 25px !important;
}

.u-p-r-25 {
  padding-right: 25px !important;
}

.u-m-t-30 {
  margin-top: 30px !important;
}

.u-p-t-30 {
  padding-top: 30px !important;
}

.u-m-b-30 {
  margin-bottom: 30px !important;
}

.u-p-b-30 {
  padding-bottom: 30px !important;
}

.u-m-l-30 {
  margin-left: 30px !important;
}

.u-p-l-30 {
  padding-left: 30px !important;
}

.u-m-r-30 {
  margin-right: 30px !important;
}

.u-p-r-30 {
  padding-right: 30px !important;
}

.u-m-t-35 {
  margin-top: 35px !important;
}

.u-p-t-35 {
  padding-top: 35px !important;
}

.u-m-b-35 {
  margin-bottom: 35px !important;
}

.u-p-b-35 {
  padding-bottom: 35px !important;
}

.u-m-l-35 {
  margin-left: 35px !important;
}

.u-p-l-35 {
  padding-left: 35px !important;
}

.u-m-r-35 {
  margin-right: 35px !important;
}

.u-p-r-35 {
  padding-right: 35px !important;
}

.u-m-t-40 {
  margin-top: 40px !important;
}

.u-p-t-40 {
  padding-top: 40px !important;
}

.u-m-b-40 {
  margin-bottom: 40px !important;
}

.u-p-b-40 {
  padding-bottom: 40px !important;
}

.u-m-l-40 {
  margin-left: 40px !important;
}

.u-p-l-40 {
  padding-left: 40px !important;
}

.u-m-r-40 {
  margin-right: 40px !important;
}

.u-p-r-40 {
  padding-right: 40px !important;
}

.u-m-t-45 {
  margin-top: 45px !important;
}

.u-p-t-45 {
  padding-top: 45px !important;
}

.u-m-b-45 {
  margin-bottom: 45px !important;
}

.u-p-b-45 {
  padding-bottom: 45px !important;
}

.u-m-l-45 {
  margin-left: 45px !important;
}

.u-p-l-45 {
  padding-left: 45px !important;
}

.u-m-r-45 {
  margin-right: 45px !important;
}

.u-p-r-45 {
  padding-right: 45px !important;
}

.u-m-t-50 {
  margin-top: 50px !important;
}

.u-p-t-50 {
  padding-top: 50px !important;
}

.u-m-b-50 {
  margin-bottom: 50px !important;
}

.u-p-b-50 {
  padding-bottom: 50px !important;
}

.u-m-l-50 {
  margin-left: 50px !important;
}

.u-p-l-50 {
  padding-left: 50px !important;
}

.u-m-r-50 {
  margin-right: 50px !important;
}

.u-p-r-50 {
  padding-right: 50px !important;
}

.u-m-t-75 {
  margin-top: 75px !important;
}

.u-p-t-75 {
  padding-top: 75px !important;
}

.u-m-b-75 {
  margin-bottom: 75px !important;
}

.u-p-b-75 {
  padding-bottom: 75px !important;
}

.u-m-l-75 {
  margin-left: 75px !important;
}

.u-p-l-75 {
  padding-left: 75px !important;
}

.u-m-r-75 {
  margin-right: 75px !important;
}

.u-p-r-75 {
  padding-right: 75px !important;
}

.u-m-t-100 {
  margin-top: 100px !important;
}

.u-p-t-100 {
  padding-top: 100px !important;
}

.u-m-b-100 {
  margin-bottom: 100px !important;
}

.u-p-b-100 {
  padding-bottom: 100px !important;
}

.u-m-l-100 {
  margin-left: 100px !important;
}

.u-p-l-100 {
  padding-left: 100px !important;
}

.u-m-r-100 {
  margin-right: 100px !important;
}

.u-p-r-100 {
  padding-right: 100px !important;
}

/*
  RUN GULP to generate the classes. Now you can use these helpers to customize spacing on HTML elements.
*/

.u-plr-15 {
  padding: 0 15px;
}

.u-p-15 {
  padding: 15px;
}

.u-p-24 {
  padding: 24px;
}

.u-ptlr-15 {
  padding: 15px 15px 0;
}

.u-ptb-15 {
  padding: 15px 0;
}

.u-ptb-30 {
  padding: 30px 0;
}

.u-ptb-40 {
  padding: 40px 0;
}

.u-p-30-15 {
  padding: 30px 15px;
}

.u-p-35-15 {
  padding: 35px 15px;
}

.u-p-40-15 {
  padding: 40px 15px;
}

.u-p-45-15 {
  padding: 45px 15px;
}

.u-m-auto {
  margin: auto;
}

.u-mb-0 {
  margin-bottom: 0;
}

.u-m-0 {
  margin: 0;
}

.u-mtb-15 {
  margin: 15px 0;
}

.u-mtb-30 {
  margin: 30px 0;
}

.u-mt-30 {
  margin: 30px 0 0;
}

.u-mr-0 {
  margin-right: 0;
}

/* ==========================================================================
   #HIDE
   ========================================================================== */

/**
 * Hide visually and from screen readers.
 */

.u-hidden {
  display: none;
}

.u-hide-mob {
  display: none;
}

@media (min-width: 61.25em) {
  .u-hide-mob.u-show-desk {
    display: block;
  }
}

@media (min-width: 64em) {
  .u-hide-mob.u-show-desk-nav {
    display: block;
  }
}

@media (min-width: 46.25em) {
  .u-hide-mob.u-show-tablet {
    display: block;
  }
}

.u-show-mob {
  display: block;
}

@media (min-width: 61.25em) {
  .u-show-mob.u-hide-desk {
    display: none;
  }
}

@media (min-width: 64em) {
  .u-show-mob.u-hide-desk-nav {
    display: none;
  }
}

.u-bold {
  font-weight: 700;
}

.u-text-center {
  text-align: center;
}

.u-text-right {
  text-align: right;
}

.u-text-left {
  text-align: left;
}

.u-text-maj {
  text-transform: uppercase;
}

.u-height--full {
  height: auto !important;
}

@media (min-width: 61.25em) {
  .u-height--full {
    height: 100% !important;
  }
}

.u-height--auto {
  height: auto;
}

.u-block {
  display: block;
}

.u-textDeco {
  text-decoration: underline;
}

.u-textDeco--none {
  text-decoration: none;
}

.u-float--none {
  float: none;
}

.u-float--right {
  float: right;
}

.u-float--left {
  float: left;
}

.u-fz--14 {
  font-size: 14px !important;
}

.u-fz--20 {
  font-size: 20px !important;
}

.u-fz--25 {
  font-size: 25px !important;
}

.u-fz--30 {
  font-size: 30px !important;
}

.u-border-grey {
  border: 1px solid #D8D8D8 !important;
}

.v-code-promo h1 {
  font-size: 30px;
  font-size: 1.875rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  font-weight: 700;
}

.v-code-promo h1 span {
  color: #FB6660;
}

.v-code-promo h2.descriptif {
  font-size: 16px;
  font-size: 1rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  font-weight: 400;
}

.v-code-promo .o-header__item.text {
  padding-bottom: 30px;
}

.v-code-promo .o-header__item.picture {
  display: none;
}

.v-code-promo .o-header__item .c-date {
  display: flex;
  justify-content: flex-start;
  margin-bottom: 10px;
  font-size: 11px;
  font-size: 0.6875rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  font-weight: 400;
}

.v-code-promo .o-header__item .c-date .c-date__item {
  margin: auto 0;
}

.v-code-promo .o-header__item .c-date .date {
  margin-right: 10px;
}

.v-code-promo .o-promo-catalog {
  position: relative;
  padding: 30px 0;
}

.v-code-promo .o-promo-catalog:after {
  content: '';
  background: #d8d8d8;
  position: absolute;
  width: 100vw;
  top: 0;
  left: 50%;
  height: 100%;
  z-index: -10;
  transform: translate(-50%, 0);
}

.v-code-promo .c-card-cta a {
  color: #FB6660;
}

.v-code-promo .c-card-cta a:hover {
  color: #FFFFFF;
}

.v-code-promo .o-box-art article {
  margin-bottom: 15px;
}

.v-code-promo .o-box-art article h3,
.v-code-promo .o-box-art article h2 {
  font-size: 16px;
  font-size: 1rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  font-weight: 700;
}

.v-code-promo .o-box-art.c-landing-art {
  margin-bottom: 15px;
}

.v-code-promo .o-box-art.c-landing-art h3,
.v-code-promo .o-box-art.c-landing-art h2 {
  font-size: 16px;
  font-size: 1rem;
  /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  font-weight: 700;
}

.v-code-promo .o-box-rebond {
  margin-top: 30px;
  margin-bottom: 30px;
}

.v-code-promo .c-card.c-code-promo .c-card__price {
  z-index: 2;
}

@media (min-width: 46.25em) {
  .v-code-promo h1 {
    font-size: 40px;
    font-size: 2.5rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .v-code-promo .o-header {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    margin-left: -30px;
  }

  .v-code-promo .o-header .c-date {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 10px;
    font-size: 11px;
    font-size: 0.6875rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
    font-weight: 400;
  }

  .v-code-promo .o-header .c-date .c-date__item {
    margin: auto 0;
  }

  .v-code-promo .o-header .c-date .date {
    margin-right: 10px;
  }

  .v-code-promo .o-header__item {
    padding-left: 30px;
  }

  .v-code-promo .o-header__item.text {
    width: 80%;
  }

  .v-code-promo .o-header__item.picture {
    display: block;
    width: 20%;
    text-align: right;
  }

  .v-code-promo .o-box-art article h3,
  .v-code-promo .o-box-art article h2 {
    font-size: 18px;
    font-size: 1.125rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .v-code-promo .o-box-art.c-landing-art h3,
  .v-code-promo .o-box-art.c-landing-art h2 {
    font-size: 18px;
    font-size: 1.125rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }

  .v-code-promo .o-box-rebond {
    display: flex;
    flex-wrap: wrap;
    margin-left: -30px;
  }

  .v-code-promo .o-box-rebond .o-box-rebond__item {
    width: 33.33%;
    padding-left: 30px;
  }

  .v-code-promo .o-box-rebond .o-box-rebond__item .em-rebond {
    height: 100%;
  }
}

@media (min-width: 60em) {
  .v-code-promo .o-catalog-best .c-card--border .em-btn span {
    font-size: 18px;
    font-size: 1.125rem;
    /* @if ($line-height == "auto") {

    // Define how many grid lines each text line should span.
    // By default, we set it to the minimum number of lines necessary
    // in order to contain the defined font-size, +1 for some breathing room.
    // This can be modified with the `$modifier` parameter.
    $lines: ceil($font-size / $inuit-global-baseline) + $modifier + 1;
    $line-height: $lines * $inuit-global-baseline;

    line-height: ($line-height / $font-size) $important;
  }

  @else {

    @if (type-of($line-height) == number or $line-height == "inherit" or $line-height == "normal") {
      line-height: $line-height $important;
    }

    @else if ($line-height != 'none' and $line-height != false) {
      @error "D’oh! `auto` is not a valid value for `$line-height`."
    }

  }*/
  }
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9hc3NldHMvc2Fzcy9wYWdlcy9fcGFnZS5jb2Rlcy1wcm9tb3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc2Fzcy9zZXR0aW5ncy9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Nhc3Mvb2JqZWN0cy9fb2JqZWN0cy5ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9fY29tcG9uZW50cy5saXN0UlMuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc2Fzcy90b29scy9fbXEuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc2Fzcy9jb21wb25lbnRzL19jb21wb25lbnRzLmNhdGFsb2cuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc2Fzcy90b29scy9fdG9vbC5mb250LXNpemUuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc2Fzcy9jb21wb25lbnRzL19jb21wb25lbnRzLmNhcmQuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc2Fzcy9jb21wb25lbnRzL19jb21wb25lbnRzLmNvZGVQcm9tby5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zYXNzL2NvbXBvbmVudHMvZW1waGFzZXMvX2VtcGhhc2VzLmJ0bi5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zYXNzL2NvbXBvbmVudHMvZW1waGFzZXMvX2VtcGhhc2VzLnJlYm9uZC5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zYXNzL3V0aWxpdGllcy9fdXRpbGl0aWVzLndpZHRocy5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zYXNzL3V0aWxpdGllcy9fdXRpbGl0aWVzLmJhY2tncm91bmQuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc2Fzcy91dGlsaXRpZXMvX3V0aWxpdGllcy5tYXJnZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc2Fzcy91dGlsaXRpZXMvX3V0aWxpdGllcy5oaWRlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3Nhc3MvdXRpbGl0aWVzL191dGlsaXRpZXMuaGVscGVyLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FDQUE7O2dGRElnRjs7QUM4QmhGOztnRkQxQmdGOztBQzZCaEY7O0FBT0E7O0FBR0E7O0FBR0E7O0FDbERBOztnRkZvQmdGOztBRWhCaEY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHRm1ERzs7QUVxQkg7Z0ZGbEJnRjs7QUVxQmhGO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7Q0ZsQkg7O0FFcUJEOztHRmpCRzs7QUVxQkg7RUFDSTtFQUNBO0VBQWE7Q0ZqQmhCOztBRXFCRDtnRkZsQmdGOztBRXFCaEY7Ozs7OztHRmJHOztBRXNCQztFQUE0QjtFQUN4QjtFQUFxQjtDRmpCNUI7O0FFZ0JHO0VBR1E7RUFBcUI7Q0ZkaEM7O0FFV0c7RUFBNEI7RUFDeEI7RUFBcUI7Q0ZONUI7O0FFS0c7RUFHUTtFQUFxQjtDRkhoQzs7QUVBRztFQUE0QjtFQUN4QjtFQUFxQjtDRks1Qjs7QUVORztFQUdRO0VBQXFCO0NGUWhDOztBRVhHO0VBQTRCO0VBQ3hCO0VBQXFCO0NGZ0I1Qjs7QUVqQkc7RUFHUTtFQUFxQjtDRm1CaEM7O0FFdEJHO0VBQTRCO0VBQ3hCO0VBQXFCO0NGMkI1Qjs7QUU1Qkc7RUFHUTtFQUFxQjtDRjhCaEM7O0FFakNHO0VBQTRCO0VBQ3hCO0VBQXFCO0NGc0M1Qjs7QUV2Q0c7RUFHUTtFQUFxQjtDRnlDaEM7O0FFbkNEO2dGRnNDZ0Y7O0FFbkNoRjtFQUVRO0NGcUNQOztBRWhDRDtnRkZtQ2dGOztBRS9CNUU7RUFDSTtDRmtDUDs7QUVuQ0c7RUFDSTtDRnNDUDs7QUV2Q0c7RUFDSTtDRjBDUDs7QUUzQ0c7RUFDSTtDRjhDUDs7QUUvQ0c7RUFDSTtDRmtEUDs7QUU3Q0Q7Z0ZGZ0RnRjs7QUU3Q2hGO0VBQ0k7Q0ZnREg7O0FFN0NEO0VBQ0k7Q0ZnREg7O0FFNUNEO2dGRitDZ0Y7O0FFM0M1RTtFQUNJO0NGOENQOztBRS9DRztFQUNJO0NGa0RQOztBRW5ERztFQUNJO0NGc0RQOztBRXZERztFQUNJO0NGMERQOztBRTNERztFQUNJO0NGOERQOztBRXpERztFQUNJO0NGNERQOztBRTdERztFQUNJO0NGZ0VQOztBRWpFRztFQUNJO0NGb0VQOztBRXJFRztFQUNJO0NGd0VQOztBRXpFRztFQUNJO0NGNEVQOztBRXZFRDtnRkYwRWdGOztBRXZFaEY7RUFDSTtDRjBFSDs7QUV2RUQ7RUFDSTtDRjBFSDs7QUV2RUQ7RUFDSTtDRjBFSDs7QUczUEQ7RUFDRTtFQUNBO0VBQ0E7RUFFQTtDSDZQRDs7QUdsUUQ7RUFRSTtDSDhQSDs7QUl0Q0c7RURoT0o7SUFVTTtHSGlRSDtDQUNGOztBRzlQRDtFQUNFO0VBQ0E7RUFDQTtFQUVBO0VBRUE7Q0grUEQ7O0FHdFFEO0VBVUk7Q0hnUUg7O0FHMVFEO0VBY0k7RUFDQTtFQUNBO0VBRUE7Q0grUEg7O0FHalJEO0VBcUJNO0VBQ0E7RUFDQTtDSGdRTDs7QUd2UkQ7RUEwQlE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q0hpUVA7O0FLL1NEO0VDNENFO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTjJSSTtDQUNKOztBSzNVRDtFQUdJO0VBQ0E7RUFDQTtFQUNBO0NMNFVIOztBS3hVRDtFQUNFO0VBQ0E7Q0wyVUQ7O0FJdkhHO0VDdE5KOztJQVNZO0dMMFVUO0NBQ0Y7O0FJOUhHO0VDdE5KOztJQW1CWTtHTHVVVDtDQUNGOztBSzNWRDtFQ2tDRTtFQUNBO0VBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S05pVkk7Q0FDSjs7QUt2WEQ7RUFrQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NMeVZIOztBS3JWRDtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q0x3VkQ7O0FLN1ZEO0VBUUk7RUFDQTtDTHlWSDs7QUtsV0Q7RUFZSTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7Q0x5Vkg7O0FLM1dEO0VBcUJNO0NMMFZMOztBSy9XRDtFQXdCTTtFQUNBO0VBQ0E7RUN0Q0o7RUFDQTtFQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOc1pJO0NBQ0o7O0FLOVlEO0VBK0JJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDTG1YSDs7QUsxWkQ7RUF5Q007RUNyREo7RUFDQTtFQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOK2JJO0NBQ0o7O0FJL1FHO0VDeEtKO0lBK0NJO0dMNllEOztFSzViSDtJQWlETTtHTCtZSDs7RUtoY0g7SUNaRTtJQUNBO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S05vZUk7R0FDRjs7RUs1ZEg7SUNaRTtJQUNBO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S05nZ0JJO0dBQ0Y7Q0FDRjs7QUlqVkc7RUN4S0o7SUFtRVE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0dMMmJMOztFS25nQkg7SUNaRTtJQUNBO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S051aUJJO0dBQ0Y7O0VLL2hCSDtJQWdGTTtHTG1kSDs7RUtuaUJIO0lDWkU7SUFDQTtJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOdWtCSTtHQUNGOztFSy9qQkg7SUFxRlE7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7R0w4ZUw7Q0FDRjs7QUlyYUc7RUN4S0o7SUFvR0k7R0w4ZUQ7O0VLbGxCSDtJQXVHUTtJQUNBO0dMK2VMOztFS3ZsQkg7SUNaRTtJQUNBO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S04ybkJJO0dBQ0Y7O0VLbm5CSDtJQ1pFO0lBQ0E7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTnVwQkk7R0FDRjs7RUsvb0JIO0lBb0hRO0lBQ0E7SUFDQTtHTCtoQkw7Q0FDRjs7QUsxaEJEO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q0w2aEJEOztBS3BpQkQ7RUFVSTtDTDhoQkg7O0FPNXRCRDtFQTh6QkE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tQdERLO0NBQ0o7O0FPendCRDs7O0VBSUk7RUFDQTtFQUNBO0VBQ0E7Q1Ayd0JIOztBT2x4QkQ7OztFQVNNO0VBQ0E7Q1Ard0JMOztBT3p4QkQ7OztFQWNNO0VBQ0E7RUFDQTtFRDRCSjtFQUNBO0VBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S04wd0JJO0NBQ0o7O0FPMXpCRDs7O0VBc0JNO0NQMHlCTDs7QU9oMEJEOzs7Ozs7RUEyQk07Q1A4eUJMOztBT3owQkQ7OztFQStCTTtFQUNBO0NQZ3pCTDs7QU9oMUJEOzs7RUFrQ1E7Q1BvekJQOztBT3QxQkQ7OztFQXVDTTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NQcXpCTDs7QU9oMkJEOzs7RUErQ007Q1B1ekJMOztBT3QyQkQ7OztFQWlEUTtDUDJ6QlA7O0FPNTJCRDs7O0VBb0RRO0VBQ0E7Q1A4ekJQOztBT24zQkQ7Ozs7OztFQXdEUTtDUG8wQlA7O0FPNTNCRDs7O0VBMkRRO0VEZk47RUFDQTtFQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOMjJCSTtDQUNKOztBTzM1QkQ7OztFRDRDRTtFQUNBO0VBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S055NEJJO0NBQ0o7O0FPejdCRDs7O0VENENFO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTnU2Qkk7RU9uNUJHO0NQcTVCUDs7QU94OUJEOzs7RUQ0Q0U7RUFDQTtFQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOczhCSTtDQUNKOztBT3QvQkQ7OztFRDRDRTtFQUNBO0VBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S05vK0JJO0VPejhCRztFQUNBO0NQMjhCUDs7QU90aENEOzs7RUFnRk07RURwQ0o7RUFDQTtFQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOcWdDSTtFT2wrQkM7Q1BvK0JMOztBT3RqQ0Q7OztFQW9GUTtDUHcrQlA7O0FPNWpDRDs7O0VBeUZNO0VBQ0E7RUFDQTtFRC9DSjtFQUNBO0VBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S042aUNJO0VPOS9CQztFQUVBO0NQKy9CTDs7QU8vbENEOzs7RUFtR1E7Q1BrZ0NQOztBT3JtQ0Q7OztFQXdHTTtDUG1nQ0w7O0FPM21DRDs7O0VENENFO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTnlsQ0k7Q0FDSjs7QU96b0NEOzs7RUE0R1U7RUFDQTtFQUNBO0VBQ0E7Q1BtaUNUOztBT2xwQ0Q7OztFQWtIWTtFQUNBO0NQc2lDWDs7QU96cENEOzs7RUFzSGM7RUFDQTtFQUNBO0VBQ0E7Q1B5aUNiOztBT2xxQ0Q7OztFQTZIZ0I7Q1AyaUNmOztBT3hxQ0Q7OztFQW9JVTtFQUNBO0VBQ0E7RUFDQTtDUDBpQ1Q7O0FPanJDRDs7O0VBeUlZO0NQOGlDWDs7QU92ckNEOzs7RUEySWM7RUFDQTtFQUVBO0NQaWpDYjs7QU8vckNEOzs7RUF3S2dCO0VBQ0E7Q1A2aENmOztBT3RzQ0Q7OztFQWdMVTtDUDRoQ1Q7O0FPNXNDRDs7O0VBa0xZO0VBQ0E7Q1BnaUNYOztBT250Q0Q7OztFQTBMTTtFQUNBO0VEL0lKO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTm1zQ0k7RU9yakNDO0NQdWpDTDs7QU9wdkNEOzs7RUErTFE7RUFDQTtDUDJqQ1A7O0FPM3ZDRDs7O0VBbU1RO0VBQ0E7RUFDQTtFQUNBO0NQOGpDUDs7QU9wd0NEOzs7RUF3TVU7RUFDQTtDUGtrQ1Q7O0FPM3dDRDs7O0VBNE1VO0VEaEtSO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTjB2Q0k7Q0FDSjs7QU8xeUNEOzs7Ozs7RUFnTlU7Q1BtbUNUOztBT256Q0Q7OztFQW1OVTtDUHNtQ1Q7O0FPenpDRDs7O0VBc05VO0NQeW1DVDs7QU8vekNEOzs7RUE0Tk07RUFDQTtFQUNBO0NQeW1DTDs7QU92MENEOzs7RUFrT007RUFDQTtFQUNBO0VBQ0E7RUFDQTtFRDFMSjtFQUNBO0VBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S04wekNJO0NBQ0o7O0FPMTJDRDs7O0VBeU9RO0VBQ0E7RUFDQTtFQUNBO0NQdW9DUDs7QU9uM0NEOzs7RUErT1E7RUFDQTtFQUNBO0NQMG9DUDs7QUkzcENHO0VHaE9KOzs7Ozs7SUF3UFE7R1A2b0NMOztFT3I0Q0g7OztJQTJQUTtHUGdwQ0w7O0VPMzRDSDs7O0lENENFO0lBQ0E7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTnkzQ0k7R0FDRjs7RU96NkNIOzs7SUQ0Q0U7SUFDQTtJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOdTVDSTtJT2pzQ0s7R1Btc0NQOztFT3g4Q0g7OztJRDRDRTtJQUNBO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S05zN0NJO0dBQ0Y7O0VPdCtDSDs7O0lENENFO0lBQ0E7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTm85Q0k7R0FDRjs7RU9wZ0RIOzs7SUE4UVU7SURsT1I7SUFDQTtJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tObS9DSTtHQUNGOztFT25pREg7OztJQW9SUTtJQUNBO0lBQ0E7SUFDQTtHUHF4Q0w7O0VPNWlESDs7O0lBMFJVO0lBQ0E7SUFFQTtHUHV4Q1A7O0VPcGpESDs7O0lBb1NZO0dQc3hDVDs7RU8xakRIOzs7SUF3U1k7R1B3eENUOztFT2hrREg7OztJQTRTa0I7R1AweENmOztFT3RrREg7OztJQXFUUTtJQUNBO0dQdXhDTDtDQUNGOztBSTkyQ0c7RUdoT0o7OztJQTRUUTtHUHl4Q0w7O0VPcmxESDs7O0lENENFO0lBQ0E7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTm1rREk7R0FDRjs7RU9ubkRIOzs7SUQ0Q0U7SUFDQTtJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOaW1ESTtHQUNGOztFT2pwREg7OztJRDRDRTtJQUNBO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S04rbkRJO0dBQ0Y7O0VPL3FESDs7O0lENENFO0lBQ0E7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTjZwREk7SU9qNENLO0dQbTRDUDs7RU85c0RIOzs7SUFnVlE7SUFDQTtJRHJTTjtJQUNBO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S044ckRJO0lPMTVDRztHUDQ1Q0w7O0VPL3VESDs7O0lBeVZZO0dQNDVDVDs7RU9ydkRIOzs7SUE2Vlk7R1A4NUNUOztFTzN2REg7OztJQWlXa0I7SUFDQTtHUGc2Q2Y7O0VPbHdESDs7O0lBMldRO0dQNjVDTDtDQUNGOztBT3p3REQ7OztFQWlYUTtDUDg1Q1A7O0FPL3dERDtFQXVYSTtFQUNBO0VBQ0E7Q1A0NUNIOztBSXJqREc7RUdoT0o7SUEyWE07R1ArNUNIOztFTzF4REg7SUE4WFU7R1BnNkNQOztFTzl4REg7SUFnWVk7R1BrNkNUO0NBQ0Y7O0FPbnlERDtFQXNZTTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7Q1ArNUNMOztBSS9rREc7RUdoT0o7SUFtWlE7R1BpNkNMO0NBQ0Y7O0FPcnpERDtFQXNaUTtFQUNBO0VBQ0E7Q1BtNkNQOztBTzN6REQ7RUEyWlU7RUFDQTtFQUNBO0NQbzZDVDs7QU9qMEREO0VBZ2FVO0VBQ0E7RUFDQTtDUHE2Q1Q7O0FPdjBERDtFRDRDRTtFQUNBO0VBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S05tekRJO0VPMzdDRztDUDY3Q1A7O0FPcDJERDtFQTJhTTtFQUNBO0VBQ0E7Q1A2N0NMOztBTzEyREQ7RUFnYk07Q1A4N0NMOztBTzkyREQ7RUFvYk07Q1A4N0NMOztBT2wzREQ7RUEwYlU7Q1A0N0NUOztBT3QzREQ7RUE0Ylk7Q1A4N0NYOztBTzEzREQ7RUFvY1E7Q1AwN0NQOztBTzkzREQ7RUF3Y1E7Q1AwN0NQOztBT2w0REQ7RUEwY1U7Q1A0N0NUOztBT3Q0REQ7RUFpZEk7RUFDQTtDUHk3Q0g7O0FPMzRERDtFQW9kTTtFQUNBO0NQMjdDTDs7QUlockRHO0VHaE9KO0lBd2RNO0dQNjdDSDs7RU9yNURIO0lBMGRRO0lBQ0E7R1ArN0NMO0NBQ0Y7O0FJM3JERztFR2hPSjtJQStkTTtHUGk4Q0g7O0VPaDZESDtJQWllUTtHUG04Q0w7Q0FDRjs7QU9yNkREO0VBcWVNO0NQbzhDTDs7QU96NkREO0VBeWVNO0VBQ0E7RUFDQTtFQUNBO0NQbzhDTDs7QU9oN0REO0VBK2VRO0NQcThDUDs7QU9wN0REO0VENENFO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTmc2REk7Q0FDSjs7QU9oOUREO0VENENFO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTjQ3REk7Q0FDSjs7QUk1d0RHO0VHaE9KO0lENENFO0lBQ0E7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTnk5REk7R0FDRjs7RU96Z0VIO0lENENFO0lBQ0E7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTnEvREk7R0FDRjtDQUNGOztBT3RpRUQ7RUFvZ0JNO0VEeGRKO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTm1oRUk7Q0FDSjs7QU9ua0VEO0VBd2dCUTtDUCtqRFA7O0FJdjJERztFR2hPSjtJQTZnQlU7R1ArakRQOztFTzVrRUg7SUFnaEJVO0dQZ2tEUDtDQUNGOztBT2psRUQ7RUFzaEJNO0VBQ0E7Q1ArakRMOztBT3RsRUQ7RUE0aEJJO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtDUDZqREg7O0FJLzNERztFR2hPSjtJQXNpQk07R1A4akRIO0NBQ0Y7O0FPcm1FRDtFQTBpQk07Q1ArakRMOztBSXo0REc7RUdoT0o7SUE2aUJRO0dQaWtETDtDQUNGOztBSS80REc7RUdoT0o7SUFnakJRO0dQb2tETDtDQUNGOztBT3JuRUQ7RUFxakJNO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtDUGtrREw7O0FJajZERztFR2hPSjtJQWtrQlE7R1Bva0RMO0NBQ0Y7O0FPdm9FRDtFQXFrQlE7RUFDQTtFQUNBO0NQc2tEUDs7QU83b0VEO0VBMGtCVTtFQUNBO0VBQ0E7Q1B1a0RUOztBT25wRUQ7RUEra0JVO0VBQ0E7RUFDQTtDUHdrRFQ7O0FPenBFRDtFRDRDRTtFQUNBO0VBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S05xb0VJO0VPOWxERztDUGdtRFA7O0FPdHJFRDtFQTJsQk07Q1ArbERMOztBTzFyRUQ7RUE2bEJRO0VBQ0E7Q1BpbURQOztBTy9yRUQ7O0VBaW1CUTtDUG1tRFA7O0FPcHNFRDtFQW9tQlE7RUR4akJOO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTmlyRUk7Q0FDSjs7QU9qdUVEO0VENENFO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTjZzRUk7Q0FDSjs7QU83dkVEO0VENENFO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTnl1RUk7Q0FDSjs7QU96eEVEO0VENENFO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTnF3RUk7RU9yc0RHO0VBQ0E7Q1B1c0RQOztBSXZsRUc7RUdoT0o7SUFvbkJRO0lBQ0E7SUFDQTtHUHdzREw7O0VPOXpFSDtJRDRDRTtJQUNBO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S04weUVJO0dBQ0Y7O0VPMTFFSDtJRDRDRTtJQUNBO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S05zMEVJO0dBQ0Y7O0VPdDNFSDtJRDRDRTtJQUNBO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S05rMkVJO0dBQ0Y7O0VPbDVFSDtJRDRDRTtJQUNBO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S044M0VJO0dBQ0Y7Q0FDRjs7QUkvc0VHO0VHaE9KO0lBcW9CUTtHUCt5REw7Q0FDRjs7QU9yN0VEO0VBMG9CTTtFRDlsQko7RUFDQTtFQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOazZFSTtDQUNKOztBT2w5RUQ7RUE2b0JRO0NQeTBEUDs7QUl0dkVHO0VHaE9KO0lBZ3BCUTtJQUNBO0dQMjBETDtDQUNGOztBSTd2RUc7RUdoT0o7SUFvcEJRO0dQODBETDtDQUNGOztBT24rRUQ7RUF5cEJNO0VBQ0E7RUFDQTtDUDgwREw7O0FPeitFRDtFRDRDRTtFQUNBO0VBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S05xOUVJO0NBQ0o7O0FJcnlFRztFR2hPSjtJQWdxQlE7R1AwMkRMO0NBQ0Y7O0FJM3lFRztFR2hPSjtJQW1xQlE7R1A2MkRMO0NBQ0Y7O0FPamhGRDtFQXdxQlU7Q1A2MkRUOztBT3JoRkQ7RUEwcUJZO0NQKzJEWDs7QU96aEZEO0VBaXJCTTtDUDQyREw7O0FJN3pFRztFR2hPSjtJQXVyQlU7R1AyMkRQO0NBQ0Y7O0FJbjBFRztFR2hPSjtJQTRyQlU7R1A0MkRQO0NBQ0Y7O0FPemlGRDtFQWdzQlE7Q1A2MkRQOztBTzdpRkQ7RUFtc0JRO0NQODJEUDs7QU9qakZEO0VBc3NCWTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7Q1A4MkRYOztBTzFqRkQ7RUE4c0JjO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7Q1A4MkRiOztBSXIyRUc7RUdoT0o7SUEwdEJnQjtHUGczRGI7Q0FDRjs7QU8za0ZEO0VBOHRCYztFRGxyQlo7RUFDQTtFQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOd2pGSTtFT3Y0RFM7Q1B5NERiOztBT3ptRkQ7RUFvdUJZO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q1B5NERYOztBSWo1RUc7RUdoT0o7SUE2dUJVO0dQeTREUDs7RU90bkZIO0lBZ3ZCYztHUDA0RFg7O0VPMW5GSDtJQW12QmM7R1AyNERYO0NBQ0Y7O0FJLzVFRztFR2hPSjtJQXl2QlU7R1AyNERQO0NBQ0Y7O0FPcm9GRDtFQWd3QlE7Q1B5NERQOztBSXo2RUc7RUdoT0o7SUFtd0JZO0lBQ0E7R1AyNERUO0NBQ0Y7O0FPaHBGRDtFQXV3Qlk7Q1A2NERYOztBT3BwRkQ7RUF5d0JjO0VBQ0E7RUQ5dEJaO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTmtvRkk7Q0FDSjs7QU9sckZEO0VBNndCZ0I7RUFDQTtDUHk2RGY7O0FPdnJGRDtFQWd4QmtCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUR4dUJoQjtFQUNBO0VBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S053cUZJO0NBQ0o7O0FJeC9FRztFR2hPSjtJRDRDRTtJQUNBO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S05xc0ZJO0dBQ0Y7O0VPcnZGSDtJRDRDRTtJQUNBO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S05pdUZJO0dBQ0Y7Q0FDRjs7QU9seEZEO0VBa3lCYztFQUNBO0VBQ0E7RUR4dkJaO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTml3Rkk7RU8xZ0VTO0NQNGdFYjs7QU9sekZEO0VBeXlCYztFRDd2Qlo7RUFDQTtFQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOK3hGSTtFT25pRVM7Q1BxaUViOztBSWhuRkc7RUdoT0o7OztJQWl6QmdCO0dQc2lFYjtDQUNGOztBT3gxRkQ7RUEwekJNO0NQa2lFTDs7QU9uL0REO0VBQ0U7RUFDQTtDUHMvREQ7O0FPbC9ERDtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtDUG8vREQ7O0FPOS9ERDtFQWFJO0NQcS9ESDs7QU9sL0REO0VBRUk7Q1BvL0RIOztBT3QvREQ7RUFNSTtDUG8vREg7O0FPMS9ERDtFQVNNO0VBQ0E7Q1BxL0RMOztBTy8vREQ7RUFZUTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NQdS9EUDs7QU92Z0VEO0VBbUJRO0VBQ0E7Q1B3L0RQOztBTzVnRUQ7RUFzQlU7RUFDQTtDUDAvRFQ7O0FPamhFRDtFQTBCVTtDUDIvRFQ7O0FPcmhFRDtFQTZCVTtFQUNBO0VBQ0E7Q1A0L0RUOztBTzNoRUQ7RUFvQ1E7RUFDQTtFQUNBO0VBQ0E7Q1AyL0RQOztBT2xpRUQ7RURuMUJFO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTjY0Rkk7RU9uaEVLO0NQcWhFVDs7QU8vakVEOztFQThDWTtDUHNoRVg7O0FPcGtFRDtFQWlEWTtFRHA0QlY7RUFDQTtFQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOZzdGSTtDQUNKOztBT2ptRUQ7RURuMUJFO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTjQ4Rkk7Q0FDSjs7QU83bkVEO0VEbjFCRTtFQUNBO0VBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S053K0ZJO0VPL2xFTztDUGltRVg7O0FPMXBFRDtFQStEUTtFQUNBO0VBQ0E7Q1ArbEVQOztBT2hxRUQ7RUFxRVE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VENzVCTjtFQUNBO0VBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S05paEdJO0NBQ0o7O0FPbHNFRDtFQTZFVTtDUHluRVQ7O0FPdHNFRDtFQW9GTTs7Ozs7O1dQMm5FSztDQUNWOztBT2h0RUQ7RUE2RlE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VEcjdCTjtFQUNBO0VBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S05pa0dJO0NBQ0o7O0FPbHZFRDtFQXFHVTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NQaXBFVDs7QU8xdkVEO0VBOEdRO0VBQ0E7RUFDQTtFQUNBO0VBa0NBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztXUHFvRUc7Q0FDVjs7QU96eEVEO0VBbUhVO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q1AwcUVUOztBT3B5RUQ7RUE0SFk7RUFDQTtFQUNBO0VEajlCVjtFQUNBO0VBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S05rcEdJO0NBQ0o7O0FPbjBFRDtFQWlJYztFQUNBO0VBQ0E7RUFDQTtDUHNzRWI7O0FPMTBFRDtFQXdJZ0I7Q1Bzc0VmOztBTzkwRUQ7RUE2SVk7Q1Bxc0VYOztBT2wxRUQ7RUErSWM7Q1B1c0ViOztBT3QxRUQ7RUFpTE07RUFDQTtFQUNBO0VBQ0E7Q1B5cUVMOztBTzcxRUQ7RUFzTFE7RUR6Z0NOO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTnlzR0k7Q0FDSjs7QU8xM0VEO0VBMkxNO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q1Btc0VMOztBT2w0RUQ7RUFpTVE7RUFDQTtDUHFzRVA7O0FPdjRFRDtFQXFNUTtFRHhoQ047RUFDQTtFQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tObXZHSTtDQUNKOztBT3A2RUQ7O0VBeU1RO0NQZ3VFUDs7QU96NkVEO0VBNE1RO0NQaXVFUDs7QU83NkVEO0VBK01RO0NQa3VFUDs7QU9qN0VEO0VBbU5NO0VBQ0E7RUR2aUNKO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTjh4R0k7RU94dkVDO0NQMHZFTDs7QU9wdkVEO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7Q1BzdkVEOztBT3B3RUQ7RUFnQkk7RUFDQTtDUHd2RUg7O0FPendFRDtFQXVCVTtDUHN2RVQ7O0FPN3dFRDtFQWdDTTtDUGl2RUw7O0FPanhFRDtFQW9DTTtDUGl2RUw7O0FPcnhFRDtFQXNDUTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0NQbXZFUDs7QU83eEVEO0VBNkNRO0VBQ0E7RUFDQTtDUG92RVA7O0FPbnlFRDtFQW1EWTtFQUNBO0VBQ0E7RUFDQTtDUG92RVg7O0FPMXlFRDtFQTJEVTtDUG12RVQ7O0FPOXlFRDtFQTZEWTtFRDVtQ1Y7RUFDQTtFQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOczNHSTtFTzN3RU87Q1A2d0VYOztBTzUwRUQ7RUFpRWM7Q1Ard0ViOztBT2gxRUQ7RUF5RU07RUFDQTtFQUNBO0VBQ0E7Q1Ayd0VMOztBT3YxRUQ7RUErRVE7RUFDQTtDUDR3RVA7O0FPNTFFRDtFQWtGVTtDUDh3RVQ7O0FPaDJFRDtFQW9GWTtDUGd4RVg7O0FPcDJFRDtFQXNGYztDUGt4RWI7O0FPeDJFRDtFQStGUTtFQUNBO0VBQ0E7Q1A2d0VQOztBTzkyRUQ7RUFtR1U7Q1Ard0VUOztBSTd1R0c7RUd1K0JGO0lEM3BDQTtJQUNBO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S04wN0dJO0dBQ0Y7O0VPbnlFRDtJRDNwQ0E7SUFDQTtJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOczlHSTtHQUNGOztFTy96RUQ7SUQzcENBO0lBQ0E7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTmsvR0k7R0FDRjs7RU8zMUVEO0lEM3BDQTtJQUNBO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S044Z0hJO0dBQ0Y7O0VPdjNFRDtJRDNwQ0E7SUFDQTtJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOMGlISTtHQUNGOztFT3AzRUQ7SUQxckNBO0lBQ0E7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTnNrSEk7R0FDRjtDQUNGOztBUXZuSEQ7O2dGUjJuSGdGOztBUXhuSGhGO0VBRUk7RUFDQTtFQUNBO0VGcUNGO0VBQ0E7RUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTjBtSEk7RVEvb0hEO0NSaXBISDs7QVF4cEhEO0VBVU07Q1JrcEhMOztBUTVwSEQ7RUFjTTtDUmtwSEw7O0FRaHFIRDtFRnlDRTtFQUNBO0VBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S04rb0hJO0VRdnFIRDtDUnlxSEg7O0FRN3JIRDtFQXdCSTtDUnlxSEg7O0FRanNIRDtFQTRCVTtFQUNBO0VBQ0E7RUFDRDtFQUNDO0NSeXFIVDs7QUk1K0dHO0VJN05KO0lBa0NZO0dSNHFIVDtDQUNGOztBSWwvR0c7RUk3Tko7SUFxQ1k7SUFDQTtHUitxSFQ7Q0FDRjs7QUl6L0dHO0VJN05KO0lBeUNZO0lBQ0E7R1JrckhUO0NBQ0Y7O0FRN3RIRDtFQTZDWTtDUm9ySFg7O0FRNXFIRDtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q1IrcUhEOztBSTVnSEc7RUl4S0o7SUFPSTtHUmtySEQ7Q0FDRjs7QVEvcUhEO0VBQ0U7RUFDQTtDUmtySEQ7O0FRcHJIRDtFQUlJO0NSb3JISDs7QVF4ckhEO0VBU1E7Q1JtckhQOztBUTVySEQ7RUFlSTtFQUNBO0VBQ0E7RUFDQTtDUmlySEg7O0FRbnNIRDtFQXFCSTtFQUNBO0VBQ0E7RUY5Q0Y7RUFDQTtFQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOcXZISTtDQUNKOztBSXJrSEc7RUk3Sko7SUE0Qkk7R1Iyc0hEO0NBQ0Y7O0FReHNIRDtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUY3REE7RUFDQTtFQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tONHhISTtDQUNKOztBUXp1SEQ7RUFVSTtDUm11SEg7O0FRN3VIRDtFQWFJO0VBQ0E7Q1JvdUhIOztBUWx2SEQ7RUFpQkk7RUFDQTtFQUNBO0NScXVISDs7QVF4dkhEO0VBcUJNO0VBQ0E7RUFDQTtFQUNBO0NSdXVITDs7QVNsMkhEO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUhnQ0E7RUFDQTtFQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOdzFISTtFU3ozSEg7RUFDQTtDVDIzSEQ7O0FTMTRIRDtFQWtCSztFQUNBO0VBQ0E7RUFDQTtFQUNBO0NUNDNISjs7QVNsNUhEOztFQXdCTztFQUNBO0VBQ0E7Q1QrM0hOOztBU3o1SEQ7RUE4Qkk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDVCszSEg7O0FTajZIRDs7RUFvQ007RUFDQTtDVGs0SEw7O0FTdjZIRDtFQXlDSztFQUNBO0VBRUE7RUFDQTtFQUNBO0NUaTRISjs7QVMvNkhEOztFQWdETztFQUNBO0VBQ0E7Q1RvNEhOOztBU3Q3SEQ7RUFzREk7RUFDQTtFQUVDO0VBQ0E7RUFDQTtDVG00SEo7O0FTOTdIRDs7RUE2RE07RUFDQTtFQUNBO0NUczRITDs7QVNyOEhEO0VBb0VJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q1RxNEhIOztBUzc4SEQ7O0VBMEVNO0VBQ0E7Q1R3NEhMOztBU245SEQ7RUErRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDVHc0SEg7O0FTMzlIRDs7RUFzRk07RUFDQTtDVDA0SEw7O0FTaitIRDtFQTJGSTtDVDA0SEg7O0FVcitIRDtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtDVncrSEQ7O0FVOStIRDtFQVFJO0VBQ0E7Q1YwK0hIOztBV3g5SEs7RUFDRTtFQUNBO0NYMjlIUDs7QVc3OUhLO0VBQ0U7RUFDQTtDWGcrSFA7O0FXbCtISztFQUNFO0VBQ0E7Q1hxK0hQOztBV3YrSEs7RUFDRTtFQUNBO0NYMCtIUDs7QVc1K0hLO0VBQ0U7RUFDQTtDWCsrSFA7O0FXai9ISztFQUNFO0VBQ0E7Q1hvL0hQOztBV3QvSEs7RUFDRTtFQUNBO0NYeS9IUDs7QVczL0hLO0VBQ0U7RUFDQTtDWDgvSFA7O0FXaGdJSztFQUNFO0VBQ0E7Q1htZ0lQOztBV3JnSUs7RUFDRTtFQUNBO0NYd2dJUDs7QVcxZ0lLO0VBQ0U7RUFDQTtDWDZnSVA7O0FXL2dJSztFQUNFO0VBQ0E7Q1hraElQOztBV3BoSUs7RUFDRTtFQUNBO0NYdWhJUDs7QVd6aElLO0VBQ0U7RUFDQTtDWDRoSVA7O0FXOWhJSztFQUNFO0VBQ0E7Q1hpaUlQOztBV25pSUs7RUFDRTtFQUNBO0NYc2lJUDs7QVd4aUlLO0VBQ0U7RUFDQTtDWDJpSVA7O0FXN2lJSztFQUNFO0VBQ0E7Q1hnaklQOztBV2xqSUs7RUFDRTtFQUNBO0NYcWpJUDs7QVd2aklLO0VBQ0U7RUFDQTtDWDBqSVA7O0FXNWpJSztFQUNFO0VBQ0E7Q1graklQOztBV2prSUs7RUFDRTtFQUNBO0NYb2tJUDs7QVd0a0lLO0VBQ0U7RUFDQTtDWHlrSVA7O0FXM2tJSztFQUNFO0VBQ0E7Q1g4a0lQOztBV2hsSUs7RUFDRTtFQUNBO0NYbWxJUDs7QVdybElLO0VBQ0U7RUFDQTtDWHdsSVA7O0FXMWxJSztFQUNFO0VBQ0E7Q1g2bElQOztBVy9sSUs7RUFDRTtFQUNBO0NYa21JUDs7QVdwbUlLO0VBQ0U7RUFDQTtDWHVtSVA7O0FXem1JSztFQUNFO0VBQ0E7Q1g0bUlQOztBVzltSUs7RUFDRTtFQUNBO0NYaW5JUDs7QVdubklLO0VBQ0U7RUFDQTtDWHNuSVA7O0FXeG5JSztFQUNFO0VBQ0E7Q1gybklQOztBVzduSUs7RUFDRTtFQUNBO0NYZ29JUDs7QVdsb0lLO0VBQ0U7RUFDQTtDWHFvSVA7O0FXdm9JSztFQUNFO0VBQ0E7Q1gwb0lQOztBVzVvSUs7RUFDRTtFQUNBO0NYK29JUDs7QVdqcElLO0VBQ0U7RUFDQTtDWG9wSVA7O0FXdHBJSztFQUNFO0VBQ0E7Q1h5cElQOztBVzNwSUs7RUFDRTtFQUNBO0NYOHBJUDs7QVdocUlLO0VBQ0U7RUFDQTtDWG1xSVA7O0FXcnFJSztFQUNFO0VBQ0E7Q1h3cUlQOztBVzFxSUs7RUFDRTtFQUNBO0NYNnFJUDs7QVcvcUlLO0VBQ0U7RUFDQTtDWGtySVA7O0FXcHJJSztFQUNFO0VBQ0E7Q1h1cklQOztBV3pySUs7RUFDRTtFQUNBO0NYNHJJUDs7QVc5cklLO0VBQ0U7RUFDQTtDWGlzSVA7O0FXbnNJSztFQUNFO0VBQ0E7Q1hzc0lQOztBV3hzSUs7RUFDRTtFQUNBO0NYMnNJUDs7QVc3c0lLO0VBQ0U7RUFDQTtDWGd0SVA7O0FXbHRJSztFQUNFO0VBQ0E7Q1hxdElQOztBV3Z0SUs7RUFDRTtFQUNBO0NYMHRJUDs7QVc1dElLO0VBQ0U7RUFDQTtDWCt0SVA7O0FXanVJSztFQUNFO0VBQ0E7Q1hvdUlQOztBV3R1SUs7RUFDRTtFQUNBO0NYeXVJUDs7QUl0aUlHO0VPck1FO0lBQ0U7SUFDQTtHWCt1SUw7O0VXanZJRztJQUNFO0lBQ0E7R1hvdklMOztFV3R2SUc7SUFDRTtJQUNBO0dYeXZJTDs7RVczdklHO0lBQ0U7SUFDQTtHWDh2SUw7O0VXaHdJRztJQUNFO0lBQ0E7R1htd0lMOztFV3J3SUc7SUFDRTtJQUNBO0dYd3dJTDs7RVcxd0lHO0lBQ0U7SUFDQTtHWDZ3SUw7O0VXL3dJRztJQUNFO0lBQ0E7R1hreElMOztFV3B4SUc7SUFDRTtJQUNBO0dYdXhJTDs7RVd6eElHO0lBQ0U7SUFDQTtHWDR4SUw7O0VXOXhJRztJQUNFO0lBQ0E7R1hpeUlMOztFV255SUc7SUFDRTtJQUNBO0dYc3lJTDs7RVd4eUlHO0lBQ0U7SUFDQTtHWDJ5SUw7O0VXN3lJRztJQUNFO0lBQ0E7R1hneklMOztFV2x6SUc7SUFDRTtJQUNBO0dYcXpJTDs7RVd2eklHO0lBQ0U7SUFDQTtHWDB6SUw7O0VXNXpJRztJQUNFO0lBQ0E7R1greklMOztFV2owSUc7SUFDRTtJQUNBO0dYbzBJTDs7RVd0MElHO0lBQ0U7SUFDQTtHWHkwSUw7O0VXMzBJRztJQUNFO0lBQ0E7R1g4MElMOztFV2gxSUc7SUFDRTtJQUNBO0dYbTFJTDs7RVdyMUlHO0lBQ0U7SUFDQTtHWHcxSUw7O0VXMTFJRztJQUNFO0lBQ0E7R1g2MUlMOztFVy8xSUc7SUFDRTtJQUNBO0dYazJJTDs7RVdwMklHO0lBQ0U7SUFDQTtHWHUySUw7O0VXejJJRztJQUNFO0lBQ0E7R1g0MklMOztFVzkySUc7SUFDRTtJQUNBO0dYaTNJTDs7RVduM0lHO0lBQ0U7SUFDQTtHWHMzSUw7O0VXeDNJRztJQUNFO0lBQ0E7R1gyM0lMOztFVzczSUc7SUFDRTtJQUNBO0dYZzRJTDs7RVdsNElHO0lBQ0U7SUFDQTtHWHE0SUw7O0VXdjRJRztJQUNFO0lBQ0E7R1gwNElMOztFVzU0SUc7SUFDRTtJQUNBO0dYKzRJTDs7RVdqNUlHO0lBQ0U7SUFDQTtHWG81SUw7O0VXdDVJRztJQUNFO0lBQ0E7R1h5NUlMOztFVzM1SUc7SUFDRTtJQUNBO0dYODVJTDs7RVdoNklHO0lBQ0U7SUFDQTtHWG02SUw7O0VXcjZJRztJQUNFO0lBQ0E7R1h3NklMOztFVzE2SUc7SUFDRTtJQUNBO0dYNjZJTDs7RVcvNklHO0lBQ0U7SUFDQTtHWGs3SUw7O0VXcDdJRztJQUNFO0lBQ0E7R1h1N0lMOztFV3o3SUc7SUFDRTtJQUNBO0dYNDdJTDs7RVc5N0lHO0lBQ0U7SUFDQTtHWGk4SUw7O0VXbjhJRztJQUNFO0lBQ0E7R1hzOElMOztFV3g4SUc7SUFDRTtJQUNBO0dYMjhJTDs7RVc3OElHO0lBQ0U7SUFDQTtHWGc5SUw7O0VXbDlJRztJQUNFO0lBQ0E7R1hxOUlMOztFV3Y5SUc7SUFDRTtJQUNBO0dYMDlJTDs7RVc1OUlHO0lBQ0U7SUFDQTtHWCs5SUw7O0VXaitJRztJQUNFO0lBQ0E7R1hvK0lMOztFV3QrSUc7SUFDRTtJQUNBO0dYeStJTDs7RVczK0lHO0lBQ0U7SUFDQTtHWDgrSUw7O0VXaC9JRztJQUNFO0lBQ0E7R1htL0lMOztFV3IvSUc7SUFDRTtJQUNBO0dYdy9JTDs7RVcxL0lHO0lBQ0U7SUFDQTtHWDYvSUw7Q0FDRjs7QUkzeklHO0VPck1FO0lBQ0U7SUFDQTtHWG9nSkw7O0VXdGdKRztJQUNFO0lBQ0E7R1h5Z0pMOztFVzNnSkc7SUFDRTtJQUNBO0dYOGdKTDs7RVdoaEpHO0lBQ0U7SUFDQTtHWG1oSkw7O0VXcmhKRztJQUNFO0lBQ0E7R1h3aEpMOztFVzFoSkc7SUFDRTtJQUNBO0dYNmhKTDs7RVcvaEpHO0lBQ0U7SUFDQTtHWGtpSkw7O0VXcGlKRztJQUNFO0lBQ0E7R1h1aUpMOztFV3ppSkc7SUFDRTtJQUNBO0dYNGlKTDs7RVc5aUpHO0lBQ0U7SUFDQTtHWGlqSkw7O0VXbmpKRztJQUNFO0lBQ0E7R1hzakpMOztFV3hqSkc7SUFDRTtJQUNBO0dYMmpKTDs7RVc3akpHO0lBQ0U7SUFDQTtHWGdrSkw7O0VXbGtKRztJQUNFO0lBQ0E7R1hxa0pMOztFV3ZrSkc7SUFDRTtJQUNBO0dYMGtKTDs7RVc1a0pHO0lBQ0U7SUFDQTtHWCtrSkw7O0VXamxKRztJQUNFO0lBQ0E7R1hvbEpMOztFV3RsSkc7SUFDRTtJQUNBO0dYeWxKTDs7RVczbEpHO0lBQ0U7SUFDQTtHWDhsSkw7O0VXaG1KRztJQUNFO0lBQ0E7R1htbUpMOztFV3JtSkc7SUFDRTtJQUNBO0dYd21KTDs7RVcxbUpHO0lBQ0U7SUFDQTtHWDZtSkw7O0VXL21KRztJQUNFO0lBQ0E7R1hrbkpMOztFV3BuSkc7SUFDRTtJQUNBO0dYdW5KTDs7RVd6bkpHO0lBQ0U7SUFDQTtHWDRuSkw7O0VXOW5KRztJQUNFO0lBQ0E7R1hpb0pMOztFV25vSkc7SUFDRTtJQUNBO0dYc29KTDs7RVd4b0pHO0lBQ0U7SUFDQTtHWDJvSkw7O0VXN29KRztJQUNFO0lBQ0E7R1hncEpMOztFV2xwSkc7SUFDRTtJQUNBO0dYcXBKTDs7RVd2cEpHO0lBQ0U7SUFDQTtHWDBwSkw7O0VXNXBKRztJQUNFO0lBQ0E7R1grcEpMOztFV2pxSkc7SUFDRTtJQUNBO0dYb3FKTDs7RVd0cUpHO0lBQ0U7SUFDQTtHWHlxSkw7O0VXM3FKRztJQUNFO0lBQ0E7R1g4cUpMOztFV2hySkc7SUFDRTtJQUNBO0dYbXJKTDs7RVdyckpHO0lBQ0U7SUFDQTtHWHdySkw7O0VXMXJKRztJQUNFO0lBQ0E7R1g2ckpMOztFVy9ySkc7SUFDRTtJQUNBO0dYa3NKTDs7RVdwc0pHO0lBQ0U7SUFDQTtHWHVzSkw7O0VXenNKRztJQUNFO0lBQ0E7R1g0c0pMOztFVzlzSkc7SUFDRTtJQUNBO0dYaXRKTDs7RVdudEpHO0lBQ0U7SUFDQTtHWHN0Skw7O0VXeHRKRztJQUNFO0lBQ0E7R1gydEpMOztFVzd0Skc7SUFDRTtJQUNBO0dYZ3VKTDs7RVdsdUpHO0lBQ0U7SUFDQTtHWHF1Skw7O0VXdnVKRztJQUNFO0lBQ0E7R1gwdUpMOztFVzV1Skc7SUFDRTtJQUNBO0dYK3VKTDs7RVdqdkpHO0lBQ0U7SUFDQTtHWG92Skw7O0VXdHZKRztJQUNFO0lBQ0E7R1h5dkpMOztFVzN2Skc7SUFDRTtJQUNBO0dYOHZKTDs7RVdod0pHO0lBQ0U7SUFDQTtHWG13Skw7O0VXcndKRztJQUNFO0lBQ0E7R1h3d0pMOztFVzF3Skc7SUFDRTtJQUNBO0dYNndKTDs7RVcvd0pHO0lBQ0U7SUFDQTtHWGt4Skw7Q0FDRjs7QUlobEpHO0VPck1FO0lBQ0U7SUFDQTtHWHl4Skw7O0VXM3hKRztJQUNFO0lBQ0E7R1g4eEpMOztFV2h5Skc7SUFDRTtJQUNBO0dYbXlKTDs7RVdyeUpHO0lBQ0U7SUFDQTtHWHd5Skw7O0VXMXlKRztJQUNFO0lBQ0E7R1g2eUpMOztFVy95Skc7SUFDRTtJQUNBO0dYa3pKTDs7RVdwekpHO0lBQ0U7SUFDQTtHWHV6Skw7O0VXenpKRztJQUNFO0lBQ0E7R1g0ekpMOztFVzl6Skc7SUFDRTtJQUNBO0dYaTBKTDs7RVduMEpHO0lBQ0U7SUFDQTtHWHMwSkw7O0VXeDBKRztJQUNFO0lBQ0E7R1gyMEpMOztFVzcwSkc7SUFDRTtJQUNBO0dYZzFKTDs7RVdsMUpHO0lBQ0U7SUFDQTtHWHExSkw7O0VXdjFKRztJQUNFO0lBQ0E7R1gwMUpMOztFVzUxSkc7SUFDRTtJQUNBO0dYKzFKTDs7RVdqMkpHO0lBQ0U7SUFDQTtHWG8ySkw7O0VXdDJKRztJQUNFO0lBQ0E7R1h5MkpMOztFVzMySkc7SUFDRTtJQUNBO0dYODJKTDs7RVdoM0pHO0lBQ0U7SUFDQTtHWG0zSkw7O0VXcjNKRztJQUNFO0lBQ0E7R1h3M0pMOztFVzEzSkc7SUFDRTtJQUNBO0dYNjNKTDs7RVcvM0pHO0lBQ0U7SUFDQTtHWGs0Skw7O0VXcDRKRztJQUNFO0lBQ0E7R1h1NEpMOztFV3o0Skc7SUFDRTtJQUNBO0dYNDRKTDs7RVc5NEpHO0lBQ0U7SUFDQTtHWGk1Skw7O0VXbjVKRztJQUNFO0lBQ0E7R1hzNUpMOztFV3g1Skc7SUFDRTtJQUNBO0dYMjVKTDs7RVc3NUpHO0lBQ0U7SUFDQTtHWGc2Skw7O0VXbDZKRztJQUNFO0lBQ0E7R1hxNkpMOztFV3Y2Skc7SUFDRTtJQUNBO0dYMDZKTDs7RVc1NkpHO0lBQ0U7SUFDQTtHWCs2Skw7O0VXajdKRztJQUNFO0lBQ0E7R1hvN0pMOztFV3Q3Skc7SUFDRTtJQUNBO0dYeTdKTDs7RVczN0pHO0lBQ0U7SUFDQTtHWDg3Skw7O0VXaDhKRztJQUNFO0lBQ0E7R1htOEpMOztFV3I4Skc7SUFDRTtJQUNBO0dYdzhKTDs7RVcxOEpHO0lBQ0U7SUFDQTtHWDY4Skw7O0VXLzhKRztJQUNFO0lBQ0E7R1hrOUpMOztFV3A5Skc7SUFDRTtJQUNBO0dYdTlKTDs7RVd6OUpHO0lBQ0U7SUFDQTtHWDQ5Skw7O0VXOTlKRztJQUNFO0lBQ0E7R1hpK0pMOztFV24rSkc7SUFDRTtJQUNBO0dYcytKTDs7RVd4K0pHO0lBQ0U7SUFDQTtHWDIrSkw7O0VXNytKRztJQUNFO0lBQ0E7R1hnL0pMOztFV2wvSkc7SUFDRTtJQUNBO0dYcS9KTDs7RVd2L0pHO0lBQ0U7SUFDQTtHWDAvSkw7O0VXNS9KRztJQUNFO0lBQ0E7R1grL0pMOztFV2pnS0c7SUFDRTtJQUNBO0dYb2dLTDs7RVd0Z0tHO0lBQ0U7SUFDQTtHWHlnS0w7O0VXM2dLRztJQUNFO0lBQ0E7R1g4Z0tMOztFV2hoS0c7SUFDRTtJQUNBO0dYbWhLTDs7RVdyaEtHO0lBQ0U7SUFDQTtHWHdoS0w7O0VXMWhLRztJQUNFO0lBQ0E7R1g2aEtMOztFVy9oS0c7SUFDRTtJQUNBO0dYa2lLTDs7RVdwaUtHO0lBQ0U7SUFDQTtHWHVpS0w7Q0FDRjs7QUlyMkpHO0VPck1FO0lBQ0U7SUFDQTtHWDhpS0w7O0VXaGpLRztJQUNFO0lBQ0E7R1htaktMOztFV3JqS0c7SUFDRTtJQUNBO0dYd2pLTDs7RVcxaktHO0lBQ0U7SUFDQTtHWDZqS0w7O0VXL2pLRztJQUNFO0lBQ0E7R1hra0tMOztFV3BrS0c7SUFDRTtJQUNBO0dYdWtLTDs7RVd6a0tHO0lBQ0U7SUFDQTtHWDRrS0w7O0VXOWtLRztJQUNFO0lBQ0E7R1hpbEtMOztFV25sS0c7SUFDRTtJQUNBO0dYc2xLTDs7RVd4bEtHO0lBQ0U7SUFDQTtHWDJsS0w7O0VXN2xLRztJQUNFO0lBQ0E7R1hnbUtMOztFV2xtS0c7SUFDRTtJQUNBO0dYcW1LTDs7RVd2bUtHO0lBQ0U7SUFDQTtHWDBtS0w7O0VXNW1LRztJQUNFO0lBQ0E7R1grbUtMOztFV2puS0c7SUFDRTtJQUNBO0dYb25LTDs7RVd0bktHO0lBQ0U7SUFDQTtHWHluS0w7O0VXM25LRztJQUNFO0lBQ0E7R1g4bktMOztFV2hvS0c7SUFDRTtJQUNBO0dYbW9LTDs7RVdyb0tHO0lBQ0U7SUFDQTtHWHdvS0w7O0VXMW9LRztJQUNFO0lBQ0E7R1g2b0tMOztFVy9vS0c7SUFDRTtJQUNBO0dYa3BLTDs7RVdwcEtHO0lBQ0U7SUFDQTtHWHVwS0w7O0VXenBLRztJQUNFO0lBQ0E7R1g0cEtMOztFVzlwS0c7SUFDRTtJQUNBO0dYaXFLTDs7RVducUtHO0lBQ0U7SUFDQTtHWHNxS0w7O0VXeHFLRztJQUNFO0lBQ0E7R1gycUtMOztFVzdxS0c7SUFDRTtJQUNBO0dYZ3JLTDs7RVdscktHO0lBQ0U7SUFDQTtHWHFyS0w7O0VXdnJLRztJQUNFO0lBQ0E7R1gwcktMOztFVzVyS0c7SUFDRTtJQUNBO0dYK3JLTDs7RVdqc0tHO0lBQ0U7SUFDQTtHWG9zS0w7O0VXdHNLRztJQUNFO0lBQ0E7R1h5c0tMOztFVzNzS0c7SUFDRTtJQUNBO0dYOHNLTDs7RVdodEtHO0lBQ0U7SUFDQTtHWG10S0w7O0VXcnRLRztJQUNFO0lBQ0E7R1h3dEtMOztFVzF0S0c7SUFDRTtJQUNBO0dYNnRLTDs7RVcvdEtHO0lBQ0U7SUFDQTtHWGt1S0w7O0VXcHVLRztJQUNFO0lBQ0E7R1h1dUtMOztFV3p1S0c7SUFDRTtJQUNBO0dYNHVLTDs7RVc5dUtHO0lBQ0U7SUFDQTtHWGl2S0w7O0VXbnZLRztJQUNFO0lBQ0E7R1hzdktMOztFV3h2S0c7SUFDRTtJQUNBO0dYMnZLTDs7RVc3dktHO0lBQ0U7SUFDQTtHWGd3S0w7O0VXbHdLRztJQUNFO0lBQ0E7R1hxd0tMOztFV3Z3S0c7SUFDRTtJQUNBO0dYMHdLTDs7RVc1d0tHO0lBQ0U7SUFDQTtHWCt3S0w7O0VXanhLRztJQUNFO0lBQ0E7R1hveEtMOztFV3R4S0c7SUFDRTtJQUNBO0dYeXhLTDs7RVczeEtHO0lBQ0U7SUFDQTtHWDh4S0w7O0VXaHlLRztJQUNFO0lBQ0E7R1hteUtMOztFV3J5S0c7SUFDRTtJQUNBO0dYd3lLTDs7RVcxeUtHO0lBQ0U7SUFDQTtHWDZ5S0w7O0VXL3lLRztJQUNFO0lBQ0E7R1hrektMOztFV3B6S0c7SUFDRTtJQUNBO0dYdXpLTDs7RVd6ektHO0lBQ0U7SUFDQTtHWDR6S0w7Q0FDRjs7QVd4eEtEO0VBQ0U7Q1gyeEtEOztBV3h4S0Q7RUFDRTtFQUNBO0NYMnhLRDs7QVd4eEtEO0VBQ0U7RUFDQTtDWDJ4S0Q7O0FXeHhLRDtFQUNFO0VBQ0E7Q1gyeEtEOztBV3Z4S0Q7RUFDRTtFQUNBO0NYMHhLRDs7QVd2eEtEO0VBQ0U7RUFDQTtDWDB4S0Q7O0FXdnhLRDtFQUNFO0VBQ0E7Q1gweEtEOztBV3Z4S0Q7RUFDRTtDWDB4S0Q7O0FXdnhLRDtFQUNFO0NYMHhLRDs7QVlwNEtEO0VBQ0U7Q1p1NEtEOztBWXA0S0Q7RUFDRTtDWnU0S0Q7O0FZcjRLRDtFQUNFO0NadzRLRDs7QVl0NEtEO0VBQ0U7Q1p5NEtEOztBWXQ0S0Q7RUFDRTtDWnk0S0Q7O0FZdDRLRDtFQUNFO0NaeTRLRDs7QVlyNEtEOztBQUNBO0VBQ0U7Q1p5NEtEOztBWXQ0S0Q7RUFDRTtDWnk0S0Q7O0FZdDRLRDtFQUNFO0NaeTRLRDs7QWExNktEOzs7Ozs7Ozs7OztFYnU3S0U7O0FhcjZLRTtFQUNFO0NidzZLTDs7QWFyNktHO0VBQ0U7Q2J3NktMOztBYTc2S0c7RUFDRTtDYmc3S0w7O0FhNzZLRztFQUNFO0NiZzdLTDs7QWFyN0tHO0VBQ0U7Q2J3N0tMOztBYXI3S0c7RUFDRTtDYnc3S0w7O0FhNzdLRztFQUNFO0NiZzhLTDs7QWE3N0tHO0VBQ0U7Q2JnOEtMOztBYXI4S0c7RUFDRTtDYnc4S0w7O0FhcjhLRztFQUNFO0NidzhLTDs7QWE3OEtHO0VBQ0U7Q2JnOUtMOztBYTc4S0c7RUFDRTtDYmc5S0w7O0FhcjlLRztFQUNFO0NidzlLTDs7QWFyOUtHO0VBQ0U7Q2J3OUtMOztBYTc5S0c7RUFDRTtDYmcrS0w7O0FhNzlLRztFQUNFO0NiZytLTDs7QWFyK0tHO0VBQ0U7Q2J3K0tMOztBYXIrS0c7RUFDRTtDYncrS0w7O0FhNytLRztFQUNFO0NiZy9LTDs7QWE3K0tHO0VBQ0U7Q2JnL0tMOztBYXIvS0c7RUFDRTtDYncvS0w7O0Fhci9LRztFQUNFO0Nidy9LTDs7QWE3L0tHO0VBQ0U7Q2JnZ0xMOztBYTcvS0c7RUFDRTtDYmdnTEw7O0FhcmdMRztFQUNFO0Nid2dMTDs7QWFyZ0xHO0VBQ0U7Q2J3Z0xMOztBYTdnTEc7RUFDRTtDYmdoTEw7O0FhN2dMRztFQUNFO0NiZ2hMTDs7QWFyaExHO0VBQ0U7Q2J3aExMOztBYXJoTEc7RUFDRTtDYndoTEw7O0FhN2hMRztFQUNFO0NiZ2lMTDs7QWE3aExHO0VBQ0U7Q2JnaUxMOztBYXJpTEc7RUFDRTtDYndpTEw7O0FhcmlMRztFQUNFO0Nid2lMTDs7QWE3aUxHO0VBQ0U7Q2JnakxMOztBYTdpTEc7RUFDRTtDYmdqTEw7O0FhcmpMRztFQUNFO0Nid2pMTDs7QWFyakxHO0VBQ0U7Q2J3akxMOztBYTdqTEc7RUFDRTtDYmdrTEw7O0FhN2pMRztFQUNFO0NiZ2tMTDs7QWFya0xHO0VBQ0U7Q2J3a0xMOztBYXJrTEc7RUFDRTtDYndrTEw7O0FhN2tMRztFQUNFO0NiZ2xMTDs7QWE3a0xHO0VBQ0U7Q2JnbExMOztBYXJsTEc7RUFDRTtDYndsTEw7O0FhcmxMRztFQUNFO0Nid2xMTDs7QWE3bExHO0VBQ0U7Q2JnbUxMOztBYTdsTEc7RUFDRTtDYmdtTEw7O0Fhcm1MRztFQUNFO0Nid21MTDs7QWFybUxHO0VBQ0U7Q2J3bUxMOztBYTdtTEc7RUFDRTtDYmduTEw7O0FhN21MRztFQUNFO0NiZ25MTDs7QWFybkxHO0VBQ0U7Q2J3bkxMOztBYXJuTEc7RUFDRTtDYnduTEw7O0FhN25MRztFQUNFO0NiZ29MTDs7QWE3bkxHO0VBQ0U7Q2Jnb0xMOztBYXJvTEc7RUFDRTtDYndvTEw7O0Fhcm9MRztFQUNFO0Nid29MTDs7QWE3b0xHO0VBQ0U7Q2JncExMOztBYTdvTEc7RUFDRTtDYmdwTEw7O0FhcnBMRztFQUNFO0Nid3BMTDs7QWFycExHO0VBQ0U7Q2J3cExMOztBYTdwTEc7RUFDRTtDYmdxTEw7O0FhN3BMRztFQUNFO0NiZ3FMTDs7QWFycUxHO0VBQ0U7Q2J3cUxMOztBYXJxTEc7RUFDRTtDYndxTEw7O0FhN3FMRztFQUNFO0NiZ3JMTDs7QWE3cUxHO0VBQ0U7Q2JnckxMOztBYXJyTEc7RUFDRTtDYndyTEw7O0FhcnJMRztFQUNFO0Nid3JMTDs7QWE3ckxHO0VBQ0U7Q2Jnc0xMOztBYTdyTEc7RUFDRTtDYmdzTEw7O0FhcnNMRztFQUNFO0Nid3NMTDs7QWFyc0xHO0VBQ0U7Q2J3c0xMOztBYTdzTEc7RUFDRTtDYmd0TEw7O0FhN3NMRztFQUNFO0NiZ3RMTDs7QWFydExHO0VBQ0U7Q2J3dExMOztBYXJ0TEc7RUFDRTtDYnd0TEw7O0FhN3RMRztFQUNFO0NiZ3VMTDs7QWE3dExHO0VBQ0U7Q2JndUxMOztBYXJ1TEc7RUFDRTtDYnd1TEw7O0FhcnVMRztFQUNFO0Nid3VMTDs7QWE3dUxHO0VBQ0U7Q2JndkxMOztBYTd1TEc7RUFDRTtDYmd2TEw7O0FhcnZMRztFQUNFO0Nid3ZMTDs7QWFydkxHO0VBQ0U7Q2J3dkxMOztBYTd2TEc7RUFDRTtDYmd3TEw7O0FhN3ZMRztFQUNFO0NiZ3dMTDs7QWFyd0xHO0VBQ0U7Q2J3d0xMOztBYXJ3TEc7RUFDRTtDYnd3TEw7O0FhN3dMRztFQUNFO0NiZ3hMTDs7QWE3d0xHO0VBQ0U7Q2JneExMOztBYXJ4TEc7RUFDRTtDYnd4TEw7O0FhcnhMRztFQUNFO0Nid3hMTDs7QWE3eExHO0VBQ0U7Q2JneUxMOztBYTd4TEc7RUFDRTtDYmd5TEw7O0FhcnlMRztFQUNFO0Nid3lMTDs7QWFyeUxHO0VBQ0U7Q2J3eUxMOztBYTd5TEc7RUFDRTtDYmd6TEw7O0FhN3lMRztFQUNFO0NiZ3pMTDs7QWFyekxHO0VBQ0U7Q2J3ekxMOztBYXJ6TEc7RUFDRTtDYnd6TEw7O0FhN3pMRztFQUNFO0NiZzBMTDs7QWE3ekxHO0VBQ0U7Q2JnMExMOztBYTF6TEQ7O0ViOHpMRTs7QWExekxGO0VBQ0U7Q2I2ekxEOztBYTF6TEQ7RUFDRTtDYjZ6TEQ7O0FhM3pMRDtFQUNFO0NiOHpMRDs7QWEzekxEO0VBQ0U7Q2I4ekxEOztBYTN6TEQ7RUFDRTtDYjh6TEQ7O0FhM3pMRDtFQUNFO0NiOHpMRDs7QWEzekxEO0VBQ0U7Q2I4ekxEOztBYTN6TEQ7RUFDRTtDYjh6TEQ7O0FhM3pMRDtFQUNFO0NiOHpMRDs7QWEzekxEO0VBQ0U7Q2I4ekxEOztBYTN6TEQ7RUFDRTtDYjh6TEQ7O0FhMXpMRDtFQUNFO0NiNnpMRDs7QWExekxEO0VBQ0U7Q2I2ekxEOztBYTF6TEQ7RUFDRTtDYjZ6TEQ7O0FhMXpMRDtFQUNFO0NiNnpMRDs7QWExekxEO0VBQ0U7Q2I2ekxEOztBYTF6TEQ7RUFDRTtDYjZ6TEQ7O0FhMXpMRDtFQUNFO0NiNnpMRDs7QWNuNkxEOztnRmR1NkxnRjs7QWNsNkxoRjs7R2RzNkxHOztBY2w2TEg7RUFDRTtDZHE2TEQ7O0FjbDZMRDtFQUNFO0NkcTZMRDs7QUludExHO0VVbk5KO0lBSU07R2R1NkxIO0NBQ0Y7O0FJenRMRztFVW5OSjtJQVNNO0dkdzZMSDtDQUNGOztBSS90TEc7RVVuTko7SUFjTTtHZHk2TEg7Q0FDRjs7QWNyNkxEO0VBQ0U7Q2R3NkxEOztBSXp1TEc7RVVoTUo7SUFJTTtHZDA2TEg7Q0FDRjs7QUkvdUxHO0VVaE1KO0lBU007R2QyNkxIO0NBQ0Y7O0FlcjlMRDtFQUNFO0NmdzlMRDs7QWVyOUxEO0VBQ0U7Q2Z3OUxEOztBZXI5TEQ7RUFDRTtDZnc5TEQ7O0FlcjlMRDtFQUNFO0NmdzlMRDs7QWVyOUxEO0VBQ0U7Q2Z3OUxEOztBZXI5TEQ7RUFDRTtDZnc5TEQ7O0FJN3dMRztFVzVNSjtJQUdJO0dmMjlMRDtDQUNGOztBZXg5TEQ7RUFDRTtDZjI5TEQ7O0FleDlMRDtFQUNFO0NmMjlMRDs7QWV4OUxEO0VBQ0U7Q2YyOUxEOztBZXg5TEQ7RUFDRTtDZjI5TEQ7O0FleDlMRDtFQUNFO0NmMjlMRDs7QWV4OUxEO0VBQ0U7Q2YyOUxEOztBZXg5TEQ7RUFDRTtDZjI5TEQ7O0FleDlMRDtFQUNFO0NmMjlMRDs7QWV6OUxEO0VBQ0U7Q2Y0OUxEOztBZTE5TEQ7RUFDRTtDZjY5TEQ7O0FlMzlMRDtFQUNFO0NmODlMRDs7QWUxOUxEO0VBQ0U7Q2Y2OUxEOztBQW5nTUQ7RU1ZRTtFQUNBO0VBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S04rZ01JO0VBM2hNRDtDQTZoTUg7O0FBaGlNRDtFQUtNO0NBK2hNTDs7QUFwaU1EO0VNWUU7RUFDQTtFQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOZ2pNSTtFQXBqTUE7Q0Fzak1KOztBQWprTUQ7RUFnQk07Q0Fxak1MOztBQXJrTUQ7RUFtQk07Q0Fzak1MOztBQXprTUQ7RUFzQk07RUFDQTtFQUNBO0VNWko7RUFDQTtFQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOd2xNSTtFQTVrTUM7Q0E4a01MOztBQXptTUQ7RUE4QlE7Q0Era01QOztBQTdtTUQ7RUFrQ1E7Q0Era01QOztBQWpuTUQ7RUF3Q0k7RUFDQTtDQTZrTUg7O0FBdG5NRDtFQTJDTTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7Q0Era01MOztBQWxvTUQ7RUF5RE07Q0E2a01MOztBQXRvTUQ7RUEyRFE7Q0Era01QOztBQTFvTUQ7RUFrRU07Q0E0a01MOztBQTlvTUQ7O0VNWUU7RUFDQTtFQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOMnBNSTtFQXJtTUc7Q0F1bU1QOztBQTVxTUQ7RUF5RU07Q0F1bU1MOztBQWhyTUQ7O0VNWUU7RUFDQTtFQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tONnJNSTtFQWhvTUc7Q0Frb01QOztBQTlzTUQ7RUFpRkk7RUFDQTtDQWlvTUg7O0FBbnRNRDtFQXNGSTtDQWlvTUg7O0FJdmhNRztFSmxHRjtJTWxGQTtJQUNBO0lBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S05vdU1JO0dBQ0Y7O0VBdHBNRDtJQUtJO0lBQ0E7SUFDQTtJQUNBO0dBcXBNSDs7RUE3cE1EO0lBVU07SUFDQTtJQUNBO0lNOUZOO0lBQ0E7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTjB3TUk7SUE1cU1HO0dBOHFNTDs7RUE3ck1EO0lBa0JRO0dBK3FNUDs7RUFqc01EO0lBc0JRO0dBK3FNUDs7RUFyc01EO0lBMkJJO0dBOHFNSDs7RUF6c01EO0lBNkJNO0dBZ3JNTDs7RUE3c01EO0lBZ0NNO0lBQ0E7SUFDQTtHQWlyTUw7O0VBbnRNRDs7SU1sRkE7SUFDQTtJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOOHpNSTtHQUNGOztFQWh2TUQ7O0lNbEZBO0lBQ0E7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLTjIxTUk7R0FDRjs7RUE3d01EO0lBbURJO0lBQ0E7SUFDQTtHQTh0TUg7O0VBbnhNRDtJQXVETTtJQUNBO0dBZ3VNTDs7RUF4eE1EO0lBMkRRO0dBaXVNUDtDQUNGOztBSTNyTUc7RUovQkY7SU1ySkE7SUFDQTtJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tOdzRNSTtHQUNGO0NBQ0YiLCJmaWxlIjoiY3NzL2NvZGVQcm9tby5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTRVRUSU5HU1xuQGltcG9ydCBcIi4uL3NldHRpbmdzL3NldHRpbmdzLmNvcmVcIjtcbkBpbXBvcnQgXCIuLi9zZXR0aW5ncy92YXJpYWJsZXNcIjtcbi8vIFRPT0xTXG5AaW1wb3J0IFwiLi4vdG9vbHMvbXFcIjtcbkBpbXBvcnQgXCIuLi90b29scy90b29sLmZvbnQtc2l6ZVwiO1xuLy9PQkpFQ1RTXG5AaW1wb3J0IFwiLi4vb2JqZWN0cy9vYmplY3RzLmdyaWRcIjtcbi8vQ09NUE9ORU5UU1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvY29tcG9uZW50cy5saXN0UlNcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL2NvbXBvbmVudHMuY2F0YWxvZ1wiO1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvY29tcG9uZW50cy5jYXJkXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9jb21wb25lbnRzLmNvZGVQcm9tb1wiO1xuLy9FbXBoYXNlc1xuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvZW1waGFzZXMvZW1waGFzZXMuYnRuXCI7XG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9lbXBoYXNlcy9lbXBoYXNlcy5yZWJvbmRcIjtcbi8vVVRJTElUSUVTXG5AaW1wb3J0IFwiLi4vdXRpbGl0aWVzL3V0aWxpdGllcy53aWR0aHNcIjtcbkBpbXBvcnQgXCIuLi91dGlsaXRpZXMvdXRpbGl0aWVzLmJhY2tncm91bmRcIjtcbkBpbXBvcnQgXCIuLi91dGlsaXRpZXMvdXRpbGl0aWVzLm1hcmdlc1wiO1xuQGltcG9ydCBcIi4uL3V0aWxpdGllcy91dGlsaXRpZXMuaGlkZVwiO1xuQGltcG9ydCBcIi4uL3V0aWxpdGllcy91dGlsaXRpZXMuaGVscGVyXCI7XG5cblxuLy9WQVJJQUJMRVNcbiRoMS1tb2I6IDMwcHggIWRlZmF1bHQ7XG4kaDEtcGM6IDQwcHggIWRlZmF1bHQ7XG4kaDItbW9iOiAxOHB4ICFkZWZhdWx0O1xuJGgyLXBjOiAyMHB4ICFkZWZhdWx0O1xuXG4kaDMtYXJ0LXBjOiAxOHB4ICFkZWZhdWx0O1xuXG4udi1jb2RlLXByb21vIHtcbiAgaDEge1xuICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgkaDEtbW9iKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHNwYW4ge1xuICAgICAgY29sb3I6ICRjb2xvci1jb3JhaWw7XG4gICAgfVxuICB9XG4gIGgyIHtcbiAgICYuZGVzY3JpcHRpZiB7XG4gICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxNnB4KTtcbiAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgIH1cbiAgfVxuICAuby1oZWFkZXJfX2l0ZW0ge1xuICAgICYudGV4dCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICB9XG4gICAgJi5waWN0dXJlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5jLWRhdGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxMXB4KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgIC5jLWRhdGVfX2l0ZW0ge1xuICAgICAgICBtYXJnaW46IGF1dG8gMDtcbiAgICAgIH1cblxuICAgICAgLmRhdGUge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm8tcHJvbW8tY2F0YWxvZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6MzBweCAwO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBiYWNrZ3JvdW5kOiAjZDhkOGQ4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgei1pbmRleDogLTEwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gICAgfVxuICB9XG5cbiAgLmMtY2FyZC1jdGEge1xuICAgIGEge1xuICAgICAgY29sb3I6ICRjb2xvci1jb3JhaWw7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm8tYm94LWFydCB7XG4gICAgYXJ0aWNsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgaDMsIGgyIHtcbiAgICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDE2cHgpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgfVxuICAgIH1cbiAgICAmLmMtbGFuZGluZy1hcnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgIGgzLCBoMiB7XG4gICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxNnB4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm8tYm94LXJlYm9uZCB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgLmMtY2FyZC5jLWNvZGUtcHJvbW8gLmMtY2FyZF9fcHJpY2Uge1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxufVxuXG4vL01FRElBUyBRVUVSSUVTXG5cbkBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcbiAgLnYtY29kZS1wcm9tbyB7XG4gICAgaDEge1xuICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKCRoMS1wYyk7XG4gICAgfVxuICAgIC5vLWhlYWRlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xuICAgICAgLmMtZGF0ZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMTFweCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgLmMtZGF0ZV9faXRlbSB7XG4gICAgICAgICAgbWFyZ2luOiBhdXRvIDA7XG4gICAgICAgIH1cblxuICAgICAgICAuZGF0ZSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5vLWhlYWRlcl9faXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAmLnRleHQge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgfVxuICAgICAgJi5waWN0dXJlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5vLWJveC1hcnQge1xuICAgICAgYXJ0aWNsZSB7XG4gICAgICAgIGgzLCBoMiB7XG4gICAgICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKCRoMy1hcnQtcGMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmMtbGFuZGluZy1hcnQge1xuICAgICAgICBoMywgaDIge1xuICAgICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgkaDMtYXJ0LXBjKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuby1ib3gtcmVib25kIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBtYXJnaW4tbGVmdDogLTMwcHg7XG4gICAgICAuby1ib3gtcmVib25kX19pdGVtIHtcbiAgICAgICAgd2lkdGg6IDMzLjMzJTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuXG4gICAgICAgIC5lbS1yZWJvbmQge1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBtcSgkZnJvbTogOTYwcHgpIHtcbiAgLnYtY29kZS1wcm9tbyB7XG4gICAgLy9zdXJjaGFyZ2VzIGVsZW1lbnRzXG4gICAgLm8tY2F0YWxvZy1iZXN0IHtcbiAgICAgIC5jLWNhcmQtLWJvcmRlciB7XG4gICAgICAgIC5lbS1idG4ge1xuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDE4cHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9hc3NldHMvc2Fzcy9wYWdlcy9fcGFnZS5jb2Rlcy1wcm9tb3Muc2NzcyIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAjQ29sb3JzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuJGNvbG9yLWJsdWU6ICMxOTJDNEU7XG4kY29sb3ItYmx1ZS0xOiAjMUVBOEJBO1xuJGNvbG9yLWJsdWUtMjogIzZDREZERjtcbiRjb2xvci1waW5rOiAjRkRBNEExO1xuJGNvbG9yLXBpbmstMjogI0Y2QjhCMjtcbiRjb2xvci1zYW5kOiAjRkRDQkExO1xuJGNvbG9yLXNhbmQtMjogI0ZERThBMTtcbiRjb2xvci1jb3JhaWw6ICNGQjY2NjA7XG4kY29sb3ItY29yYWlsLTI6ICNGQjczNkU7XG4kY29sb3ItZ3JleTogI0Q4RDhEODtcbiRjb2xvci1ncmV5LTE6ICNmNGY2Zjg7XG4kY29sb3ItZ3JleS0yOiAjRUFFQkVFO1xuXG4kY29sb3ItZm9vdGVyOiAjRjRGNEY0O1xuXG4kY29sb3ItdGFibGU6ICNlZWYyZmM7XG5cbiRjb2xvci10ZWNobm8tMSA6ICRjb2xvci1jb3JhaWw7XG4kY29sb3ItdGVjaG5vLTIgOiAkY29sb3ItcGluaztcbiRjb2xvci10ZWNobm8tMyA6ICRjb2xvci1waW5rLTI7XG4kY29sb3ItdGVjaG5vLTQgOiAkY29sb3Itc2FuZDtcbiRjb2xvci10ZWNobm8tNSA6ICRjb2xvci1zYW5kLTI7XG5cblxuJGNvbG9yLWRlYml0MiA6ICNmNGU2YmMgIWRlZmF1bHQ7XG4kY29sb3ItZGViaXQzIDogI2Y5ZDRiMyAhZGVmYXVsdDtcbiRjb2xvci1kZWJpdDQgOiAjZjRiNTlmICFkZWZhdWx0O1xuJGNvbG9yLWRlYml0NSA6ICNmZjg2ODYgIWRlZmF1bHQ7XG4kY29sb3ItZGViaXQ2IDogI2ZiNjY2MCAhZGVmYXVsdDtcbiRjb2xvci1kZWJpdDcgOiAjZGI0MjNjICFkZWZhdWx0O1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgI3BhZ2VzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogTGFyZ2V1ciBtZW51IG5hdmlnYXRpb24gbW9iaWxlICovXG4kYy1tYWluLW5hdl9faXRlbXMtd2lkdGg6IDQxMHB4O1xuXG4kaGVpZ2h0LWhlYWRlci0tbW9iOiA2NHB4ICFkZWZhdWx0O1xuJGhlaWdodC1oZWFkZXItLWRlc2s6IDc1cHggIWRlZmF1bHQ7XG4kbXEtaGVhZGVyLWRlc2s6IDEwMjRweCAhZGVmYXVsdDtcblxuLyogTGFyZ2V1ciBtZW51IGZpbHRlciAqL1xuJGMtZmlsdGVyLXdpZHRoOiAyODBweDtcblxuLyogSGF1dGV1ciBjcHMgaW5wdXQgLSBzZWxlY3QgKi9cbiRoZWlnaHQtaW5wdXQ6IDUwcHghZGVmYXVsdDtcblxuLyogSGF1dGV1ciBjdGEgKi9cbiRoZWlnaHQtY3RhIDogMzhweCFkZWZhdWx0O1xuXG4vLyBTdGFuZGFyZGlzZSBzb21lIFVJIHRyZWF0bWVudHMuXG4kZ2xvYmFsLXJhZGl1czogNXB4ICFkZWZhdWx0O1xuJGdsb2JhbC10cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL2Fzc2V0cy9zYXNzL3NldHRpbmdzL192YXJpYWJsZXMuc2NzcyIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAjR1JJRFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBUaGlzIHBsdWdpbiBwcm92aWRlcyBhIGZsZXhib3ggZ3JpZCBmb3IgaW51aXRjc3MuIFN1cHBvcnQgZm9yIElFOSBjdXJyZW50bHlcbiAqIHByZXZlbnRzIGludWl0Y3NzIGZyb20gdXNpbmcgdGhlIGZsZXhib3ggbGF5b3V0IG1vZGUuXG4gKlxuICogQ2VsbHMgYXJlIGZ1bGwtd2lkdGggYW5kIHdpbGwgc3RhY2sgb24gdG9wIG9mIGVhY2ggb3RoZXIgYnkgZGVmYXVsdDpcbiAqXG4gKiA8ZGl2IGNsYXNzPVwiby1ncmlkXCI+XG4gKiAgIDxkaXYgY2xhc3M9XCJvLWdyaWRfX2NlbGxcIj5cbiAqICAgPC9kaXY+XG4gKiAgIDxkaXYgY2xhc3M9XCJvLWdyaWRfX2NlbGxcIj5cbiAqICAgPC9kaXY+XG4gKiA8L2Rpdj5cbiAqXG4gKiBDZWxscyB3aWxsIGluIG1vc3QgY2FzZXMgYmUgYWNjb21wYW5pZWQgYnkgdXRpbGl0eSBjbGFzc2VzIHRoYXQgZGl2aWRlXG4gKiB0aGUgZ3JpZCBpbnRvIGZyYWN0aW9ucy4gVGhlc2UgYXJlIHByb3ZpZGVkIGJ5IGludWl0Y3NzOlxuICpcbiAqIDxkaXYgY2xhc3M9XCJvLWdyaWRcIj5cbiAqICAgPGRpdiBjbGFzcz1cIm8tZ3JpZF9fY2VsbCB1LTEvMlwiPlxuICogICA8L2Rpdj5cbiAqICAgPGRpdiBjbGFzcz1cIm8tZ3JpZF9fY2VsbCB1LTEvMlwiPlxuICogICA8L2Rpdj5cbiAqIDwvZGl2PlxuICpcbiAqIFNldmVyYWwgbW9kaWZpZXIgY2xhc3NlcyBhcmUgcHJvdmlkZWQuIEZvciBleGFtcGxlLCBgby1ncmlkLS1hdXRvYCB3aWxsXG4gKiBkaXZpZGUgdGhlIHNwYWNlIGVxdWFsbHkgYmV0d2VlbiBhbGwgY29udGFpbmluZyBjZWxscyB3aXRob3V0IHRoZSBuZWVkXG4gKiBmb3Igd2lkdGggdXRpbGl0eSBjbGFzc2VzLlxuICpcbiAqIDxkaXYgY2xhc3M9XCJvLWdyaWQtLWF1dG9cIj5cbiAqICAgPGRpdiBjbGFzcz1cIm8tZ3JpZF9fY2VsbFwiPlxuICogICA8L2Rpdj5cbiAqICAgPGRpdiBjbGFzcz1cIm8tZ3JpZF9fY2VsbFwiPlxuICogICA8L2Rpdj5cbiAqIDwvZGl2PlxuICovXG5cbi8vIFRoaXMgdmFyaWFibGUgaXMgZGVwcmVjYXRlZC4gVXNlICRpbnVpdC1mbGV4Z3JpZC1zcGFjaW5nLXNpemVzIGluc3RlYWQuXG5cbiRpbnVpdC1mbGV4Z3JpZC1ndXR0ZXItd2lkdGg6ICRpbnVpdC1nbG9iYWwtc3BhY2luZy11bml0ICFkZWZhdWx0O1xuXG4vLyBTcGVjaWZ5IGEgbWFwIG9mIHBvc3NpYmxlIGd1dHRlciB3aWR0aHMuIEJ5IGRlZmF1bHQgd2UgdXNlIHRoZSBnbG9iYWxcbi8vIHNwYWNpbmcgdW5pdHMgcHJvdmlkZWQgYnkgaW51aXRjc3MgYW5kIHRoZWlyIGNvbnZlbnRpb25hbCBjbGFzc1xuLy8gbmFtZSBzdWZmaXhlcyAoLS10aW55LCAtLXNtYWxsLCAtLWxhcmdlIGV0YykuXG5cbiRpbnVpdC1mbGV4Z3JpZC1zcGFjaW5nLXNpemVzOiAoXG4gICAgbnVsbDogJGludWl0LWZsZXhncmlkLWd1dHRlci13aWR0aCxcbiAgICAnLS10aW55JzogJGludWl0LWdsb2JhbC1zcGFjaW5nLXVuaXQtdGlueSxcbiAgICAnLS1zbWFsbCc6ICRpbnVpdC1nbG9iYWwtc3BhY2luZy11bml0LXNtYWxsLFxuICAgICctLWxhcmdlJzogJGludWl0LWdsb2JhbC1zcGFjaW5nLXVuaXQtbGFyZ2UsXG4gICAgJy0taHVnZSc6ICRpbnVpdC1nbG9iYWwtc3BhY2luZy11bml0LWh1Z2UsXG4gICAgJy0tZmx1c2gnOiAwLFxuKSAhZGVmYXVsdDtcblxuLy8gU3BlY2lmeSBwb3NzaWJsZSBhbGlnbm1lbnQgdmFsdWVzXG5cbiRpbnVpdC1mbGV4Z3JpZC1hbGlnbm1lbnQtdmFsdWVzOiAoXG4gICAgJy0tdG9wJzogJ2ZsZXgtc3RhcnQnLFxuICAgICctLW1pZGRsZSc6ICdjZW50ZXInLFxuICAgICctLWJvdHRvbSc6ICdmbGV4LWVuZCcsXG4gICAgJy0tYmFzZWxpbmUnOiAnYmFzZWxpbmUnLFxuICAgICctLXN0cmV0Y2gnOiAnc3RyZXRjaCcsXG4pICFkZWZhdWx0O1xuXG4vLyBTcGVjaWZ5IHBvc3NpYmxlIGp1c3RpZnkgdmFsdWVzXG5cbiRpbnVpdC1mbGV4Z3JpZC1qdXN0aWZ5LXZhbHVlczogKFxuICAgICctLWxlZnQnOiAnZmxleC1zdGFydCcsXG4gICAgJy0tY2VudGVyJzogJ2NlbnRlcicsXG4gICAgJy0tcmlnaHQnOiAnZmxleC1lbmQnLFxuICAgICctLWJldHdlZW4nOiAnc3BhY2UtYmV0d2VlbicsXG4gICAgJy0tYXJvdW5kJzogJ3NwYWNlLWFyb3VuZCcsXG4pICFkZWZhdWx0O1xuXG4vKiBUaGUgZ3JpZFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLm8tZ3JpZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiAxLiBDZWxscyBhcmUgZnVsbC13aWR0aCBhbmQgc3RhY2sgb24gdG9wIG9mIGVhY2ggb3RoZXIgYnkgZGVmYXVsdC5cbiAqL1xuXG4uby1ncmlkX19jZWxsIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogMTAwJTsgLyogWzFdICovXG59XG5cblxuLyogR3V0dGVyc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBUaGUgbWFwICRpbnVpdC1mbGV4Z3JpZC1zcGFjaW5nLXNpemVzIGNvbnRhaW5zIGEgYG51bGxgIGtleSB3aGljaFxuICogICAgd2lsbCBiZSBvdXIgZGVmYXVsdCBndXR0ZXIgc2l6ZS5cbiAqIDIuIEFkZCBhIG5lZ2F0aXZlIG1hcmdpbiBvbiBvbmUgc2lkZSBvbmx5LiBUaGF0IHdheSB3ZSBhcmVuJ3QgcmVxdWlyZWQgdG8gdXNlXG4gKiAgICBhIHdyYXBwZXIgd2l0aCB0aGUgc2FtZSBhbW91bnQgb2Ygc3BhY2luZywgdGhvdWdoIGl0J3MgY29tbW9uIHRvIGRvIHNvLlxuICogMy4gTmV1dHJhbGl6ZSB0aGUgbGVmdCBtYXJnaW4gb24gYG8tZ3JpZGAuXG4gKi9cblxuQGVhY2ggJHNpemUtbmFtZXNwYWNlLCAkc2l6ZSBpbiAkaW51aXQtZmxleGdyaWQtc3BhY2luZy1zaXplcyB7XG4gICAgLm8tZ3JpZCN7JHNpemUtbmFtZXNwYWNlfSB7IC8qIFsxXSAqL1xuICAgICAgICBtYXJnaW4tbGVmdDogLSRzaXplOyAvKiBbMl0gKi9cbiAgICAgICAgJiA+IC5vLWdyaWRfX2NlbGwge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkc2l6ZTsgLyogWzNdICovXG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLyogQXV0b21hdGljYWxseSBzaXplIGNlbGxzIGJ5IGRpc3RyaWJ1dGluZyB0aGVtIGVxdWFsbHlcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5vLWdyaWQtLWF1dG8ge1xuICAgICYgPiAuby1ncmlkX19jZWxsIHtcbiAgICAgICAgZmxleDogMSAwIDA7XG4gICAgfVxufVxuXG5cbi8qIEhvcml6b250YWwgYWxpZ25tZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AZWFjaCAkbmFtZXNwYWNlLCAkdmFsdWUgaW4gJGludWl0LWZsZXhncmlkLWp1c3RpZnktdmFsdWVzIHtcbiAgICAuby1ncmlkI3skbmFtZXNwYWNlfSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogI3skdmFsdWV9O1xuICAgIH1cbn1cblxuXG4vKiBQdWxsIGJlaGF2aW9yXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uby1ncmlkX19jZWxsLS1wdWxsLWxlZnQge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLm8tZ3JpZF9fY2VsbC0tcHVsbC1yaWdodCB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cblxuLyogVmVydGljYWwgYWxpZ25tZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AZWFjaCAkbmFtZXNwYWNlLCAkdmFsdWUgaW4gJGludWl0LWZsZXhncmlkLWFsaWdubWVudC12YWx1ZXMge1xuICAgIC5vLWdyaWQjeyRuYW1lc3BhY2V9IHtcbiAgICAgICAgYWxpZ24taXRlbXM6ICN7JHZhbHVlfTtcbiAgICB9XG59XG5cbkBlYWNoICRuYW1lc3BhY2UsICR2YWx1ZSBpbiAkaW51aXQtZmxleGdyaWQtYWxpZ25tZW50LXZhbHVlcyB7XG4gICAgLm8tZ3JpZF9fY2VsbCN7JG5hbWVzcGFjZX0ge1xuICAgICAgICBhbGlnbi1zZWxmOiAjeyR2YWx1ZX07XG4gICAgfVxufVxuXG5cbi8qIENvbnRlbnQgZGlzdHJpYnV0aW9uXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uby1ncmlkLS1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG59XG5cbi5vLWdyaWQtLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLm8tZ3JpZC0tY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbn1cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL2Fzc2V0cy9zYXNzL29iamVjdHMvX29iamVjdHMuZ3JpZC5zY3NzIiwiLmMtbGlzdC1ycyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIG1hcmdpbjogMDtcblxuICAmLnJzLW1vYmlsZSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgfVxufVxuLmMtbGlzdC1yc19faXRlbSB7XG4gIHdpZHRoOiAyNnB4O1xuICBoZWlnaHQ6IDI2cHg7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcblxuICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgYmFja2dyb3VuZDogJGNvbG9yLWJsdWU7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cblxuICBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgY29sb3I6ICNmZmZmZmY7XG5cbiAgICAuaWNvbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogYXV0bztcblxuICAgICAgc3ZnIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9hc3NldHMvc2Fzcy9jb21wb25lbnRzL19jb21wb25lbnRzLmxpc3RSUy5zY3NzIiwiQGNoYXJzZXQgXCJVVEYtOFwiOyAvLyBGaXhlcyBhbiBpc3N1ZSB3aGVyZSBSdWJ5IGxvY2FsZSBpcyBub3Qgc2V0IHByb3Blcmx5XG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcS9wdWxsLzEwXG5cbi8vLyBCYXNlIGZvbnQgc2l6ZSBvbiB0aGUgYDxib2R5PmAgZWxlbWVudFxuLy8vIEB0eXBlIE51bWJlciAodW5pdClcbiRtcS1iYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuLy8vIFJlc3BvbnNpdmUgbW9kZVxuLy8vXG4vLy8gU2V0IHRvIGBmYWxzZWAgdG8gZW5hYmxlIHN1cHBvcnQgZm9yIGJyb3dzZXJzIHRoYXQgZG8gbm90IHN1cHBvcnQgQG1lZGlhIHF1ZXJpZXMsXG4vLy8gKElFIDw9IDgsIEZpcmVmb3ggPD0gMywgT3BlcmEgPD0gOSlcbi8vL1xuLy8vIFlvdSBjb3VsZCBjcmVhdGUgYSBzdHlsZXNoZWV0IHNlcnZlZCBleGNsdXNpdmVseSB0byBvbGRlciBicm93c2Vycyxcbi8vLyB3aGVyZSBAbWVkaWEgcXVlcmllcyBhcmUgcmFzdGVyaXplZFxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAvLyBvbGQtaWUuc2Nzc1xuLy8vICAkbXEtcmVzcG9uc2l2ZTogZmFsc2U7XG4vLy8gIEBpbXBvcnQgJ21haW4nOyAvLyBAbWVkaWEgcXVlcmllcyBpbiB0aGlzIGZpbGUgd2lsbCBiZSByYXN0ZXJpemVkIHVwIHRvICRtcS1zdGF0aWMtYnJlYWtwb2ludFxuLy8vICAgICAgICAgICAgICAgICAgIC8vIGxhcmdlciBicmVha3BvaW50cyB3aWxsIGJlIGlnbm9yZWRcbi8vL1xuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3Jlc3BvbnNpdmUtbW9kZS1vZmYgRGlzYWJsZWQgcmVzcG9uc2l2ZSBtb2RlIGRvY3VtZW50YXRpb25cbiRtcS1yZXNwb25zaXZlOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBsaXN0XG4vLy9cbi8vLyBOYW1lIHlvdXIgYnJlYWtwb2ludHMgaW4gYSB3YXkgdGhhdCBjcmVhdGVzIGEgdWJpcXVpdG91cyBsYW5ndWFnZVxuLy8vIGFjcm9zcyB0ZWFtIG1lbWJlcnMuIEl0IHdpbGwgaW1wcm92ZSBjb21tdW5pY2F0aW9uIGJldHdlZW5cbi8vLyBzdGFrZWhvbGRlcnMsIGRlc2lnbmVycywgZGV2ZWxvcGVycywgYW5kIHRlc3RlcnMuXG4vLy9cbi8vLyBAdHlwZSBNYXBcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3NlZWluZy10aGUtY3VycmVudGx5LWFjdGl2ZS1icmVha3BvaW50IEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1icmVha3BvaW50czogKFxuICAgICAgICBtb2JpbGU6ICAzMjBweCxcbiAgICAgICAgdGFibGV0OiAgNzQwcHgsXG4gICAgICAgIGRlc2t0b3A6IDk4MHB4LFxuICAgICAgICB3aWRlOiAgICAxMzAwcHhcbikgIWRlZmF1bHQ7XG5cbi8vLyBTdGF0aWMgYnJlYWtwb2ludCAoZm9yIGZpeGVkLXdpZHRoIGxheW91dHMpXG4vLy9cbi8vLyBEZWZpbmUgdGhlIGJyZWFrcG9pbnQgZnJvbSAkbXEtYnJlYWtwb2ludHMgdGhhdCBzaG91bGRcbi8vLyBiZSB1c2VkIGFzIHRoZSB0YXJnZXQgd2lkdGggZm9yIHRoZSBmaXhlZC13aWR0aCBsYXlvdXRcbi8vLyAoaS5lLiB3aGVuICRtcS1yZXNwb25zaXZlIGlzIHNldCB0byAnZmFsc2UnKSBpbiBhIG9sZC1pZS5zY3NzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC8vIHRhYmxldC1vbmx5LnNjc3Ncbi8vLyAgLy9cbi8vLyAgLy8gSWdub3JlIGFsbCBzdHlsZXMgYWJvdmUgdGFibGV0IGJyZWFrcG9pbnQsXG4vLy8gIC8vIGFuZCBmaXggdGhlIHN0eWxlcyAoZS5nLiBsYXlvdXQpIGF0IHRhYmxldCB3aWR0aFxuLy8vICAkbXEtcmVzcG9uc2l2ZTogZmFsc2U7XG4vLy8gICRtcS1zdGF0aWMtYnJlYWtwb2ludDogdGFibGV0O1xuLy8vICBAaW1wb3J0ICdtYWluJzsgLy8gQG1lZGlhIHF1ZXJpZXMgaW4gdGhpcyBmaWxlIHdpbGwgYmUgcmFzdGVyaXplZCB1cCB0byB0YWJsZXRcbi8vLyAgICAgICAgICAgICAgICAgICAvLyBsYXJnZXIgYnJlYWtwb2ludHMgd2lsbCBiZSBpZ25vcmVkXG4vLy9cbi8vLyBAdHlwZSBTdHJpbmdcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI2FkZGluZy1jdXN0b20tYnJlYWtwb2ludHMgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xuJG1xLXN0YXRpYy1icmVha3BvaW50OiBkZXNrdG9wICFkZWZhdWx0O1xuXG4vLy8gU2hvdyBicmVha3BvaW50cyBpbiB0aGUgdG9wIHJpZ2h0IGNvcm5lclxuLy8vXG4vLy8gSWYgeW91IHdhbnQgdG8gZGlzcGxheSB0aGUgY3VycmVudGx5IGFjdGl2ZSBicmVha3BvaW50IGluIHRoZSB0b3Bcbi8vLyByaWdodCBjb3JuZXIgb2YgeW91ciBzaXRlIGR1cmluZyBkZXZlbG9wbWVudCwgYWRkIHRoZSBicmVha3BvaW50c1xuLy8vIHRvIHRoaXMgbGlzdCwgb3JkZXJlZCBieSB3aWR0aCwgZS5nLiAobW9iaWxlLCB0YWJsZXQsIGRlc2t0b3ApLlxuLy8vXG4vLy8gQHR5cGUgbWFwXG4kbXEtc2hvdy1icmVha3BvaW50czogKCkgIWRlZmF1bHQ7XG5cbi8vLyBDdXN0b21pemUgdGhlIG1lZGlhIHR5cGUgKGUuZy4gYEBtZWRpYSBzY3JlZW5gIG9yIGBAbWVkaWEgcHJpbnRgKVxuLy8vIEJ5IGRlZmF1bHQgc2Fzcy1tcSB1c2VzIGFuIFwiYWxsXCIgbWVkaWEgdHlwZSAoYEBtZWRpYSBhbGwgYW5kIMOiwoDCpmApXG4vLy9cbi8vLyBAdHlwZSBTdHJpbmdcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI2NoYW5naW5nLW1lZGlhLXR5cGUgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xuJG1xLW1lZGlhLXR5cGU6IGFsbCAhZGVmYXVsdDtcblxuLy8vIENvbnZlcnQgcGl4ZWxzIHRvIGVtc1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRweCAtIHZhbHVlIHRvIGNvbnZlcnRcbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UtZm9udC1zaXplICgkbXEtYmFzZS1mb250LXNpemUpIC0gYDxib2R5PmAgZm9udCBzaXplXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICRmb250LXNpemUtaW4tZW1zOiBtcS1weDJlbSgxNnB4KTtcbi8vLyAgcCB7IGZvbnQtc2l6ZTogbXEtcHgyZW0oMTZweCk7IH1cbi8vL1xuLy8vIEByZXF1aXJlcyAkbXEtYmFzZS1mb250LXNpemVcbi8vLyBAcmV0dXJucyB7TnVtYmVyfVxuQGZ1bmN0aW9uIG1xLXB4MmVtKCRweCwgJGJhc2UtZm9udC1zaXplOiAkbXEtYmFzZS1mb250LXNpemUpIHtcbiAgQGlmIHVuaXRsZXNzKCRweCkge1xuICAgIEB3YXJuIFwiQXNzdW1pbmcgI3skcHh9IHRvIGJlIGluIHBpeGVscywgYXR0ZW1wdGluZyB0byBjb252ZXJ0IGl0IGludG8gcGl4ZWxzLlwiO1xuICAgIEByZXR1cm4gbXEtcHgyZW0oJHB4ICogMXB4LCAkYmFzZS1mb250LXNpemUpO1xuICB9IEBlbHNlIGlmIHVuaXQoJHB4KSA9PSBlbSB7XG4gICAgQHJldHVybiAkcHg7XG4gIH1cbiAgQHJldHVybiAoJHB4IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTtcbn1cblxuLy8vIEdldCBhIGJyZWFrcG9pbnQncyB3aWR0aFxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUgYnJlYWtwb2ludC4gT25lIG9mICRtcS1icmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAkdGFibGV0LXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCh0YWJsZXQpO1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoZGVza3RvcCkpIHt9XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFZhbHVlIGluIHBpeGVsc1xuQGZ1bmN0aW9uIG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cykge1xuICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkbmFtZSkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJCcmVha3BvaW50ICN7JG5hbWV9IHdhc24ndCBmb3VuZCBpbiAkYnJlYWtwb2ludHMuXCI7XG4gIH1cbn1cblxuLy8vIE1lZGlhIFF1ZXJ5IG1peGluXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICRmcm9tIChmYWxzZSkgLSBPbmUgb2YgJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBCb29sZWFufSAkdW50aWwgKGZhbHNlKSAtIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICRhbmQgKGZhbHNlKSAtIEFkZGl0aW9uYWwgbWVkaWEgcXVlcnkgcGFyYW1ldGVyc1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVkaWEtdHlwZSAoJG1xLW1lZGlhLXR5cGUpIC0gTWVkaWEgdHlwZTogc2NyZWVuLCBwcmludMOiwoDCplxuLy8vXG4vLy8gQGlnbm9yZSBVbmRvY3VtZW50ZWQgQVBJLCBmb3IgYWR2YW5jZWQgdXNlIG9ubHk6XG4vLy8gQGlnbm9yZSBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzICgkbXEtYnJlYWtwb2ludHMpXG4vLy8gQGlnbm9yZSBAcGFyYW0ge1N0cmluZ30gJHN0YXRpYy1icmVha3BvaW50ICgkbXEtc3RhdGljLWJyZWFrcG9pbnQpXG4vLy9cbi8vLyBAY29udGVudCBzdHlsaW5nIHJ1bGVzLCB3cmFwcGVkIGludG8gYSBAbWVkaWEgcXVlcnkgd2hlbiAkcmVzcG9uc2l2ZSBpcyB0cnVlXG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtbWVkaWEtdHlwZVxuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1zdGF0aWMtYnJlYWtwb2ludFxuLy8vIEByZXF1aXJlcyB7ZnVuY3Rpb259IG1xLXB4MmVtXG4vLy8gQHJlcXVpcmVzIHtmdW5jdGlvbn0gbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGhcbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjcmVzcG9uc2l2ZS1tb2RlLW9uLWRlZmF1bHQgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAuZWxlbWVudCB7XG4vLy8gICAgQGluY2x1ZGUgbXEoJGZyb206IG1vYmlsZSkge1xuLy8vICAgICAgY29sb3I6IHJlZDtcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEoJHVudGlsOiB0YWJsZXQpIHtcbi8vLyAgICAgIGNvbG9yOiBibHVlO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcShtb2JpbGUsIHRhYmxldCkge1xuLy8vICAgICAgY29sb3I6IGdyZWVuO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0LCAkYW5kOiAnKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpJykge1xuLy8vICAgICAgY29sb3I6IHRlYWw7XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKDk1MHB4KSB7XG4vLy8gICAgICBjb2xvcjogaG90cGluaztcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEodGFibGV0LCAkbWVkaWEtdHlwZTogc2NyZWVuKSB7XG4vLy8gICAgICBjb2xvcjogaG90cGluaztcbi8vLyAgICB9XG4vLy8gICAgLy8gQWR2YW5jZWQgdXNlOlxuLy8vICAgICRteS1icmVha3BvaW50czogKEw6IDkwMHB4LCBYTDogMTIwMHB4KTtcbi8vLyAgICBAaW5jbHVkZSBtcShMLCAkYnJlYWtwb2ludHM6ICRteS1icmVha3BvaW50cywgJHN0YXRpYy1icmVha3BvaW50OiBMKSB7XG4vLy8gICAgICBjb2xvcjogaG90cGluaztcbi8vLyAgICB9XG4vLy8gIH1cbkBtaXhpbiBtcShcbiAgJGZyb206IGZhbHNlLFxuICAkdW50aWw6IGZhbHNlLFxuICAkYW5kOiBmYWxzZSxcbiAgJG1lZGlhLXR5cGU6ICRtcS1tZWRpYS10eXBlLFxuICAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cyxcbiAgJHJlc3BvbnNpdmU6ICRtcS1yZXNwb25zaXZlLFxuICAkc3RhdGljLWJyZWFrcG9pbnQ6ICRtcS1zdGF0aWMtYnJlYWtwb2ludFxuKSB7XG4gICRtaW4td2lkdGg6IDA7XG4gICRtYXgtd2lkdGg6IDA7XG4gICRtZWRpYS1xdWVyeTogJyc7XG5cbiAgLy8gRnJvbTogdGhpcyBicmVha3BvaW50IChpbmNsdXNpdmUpXG4gIEBpZiAkZnJvbSB7XG4gICAgQGlmIHR5cGUtb2YoJGZyb20pID09IG51bWJlciB7XG4gICAgICAkbWluLXdpZHRoOiBtcS1weDJlbSgkZnJvbSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkbWluLXdpZHRoOiBtcS1weDJlbShtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkZnJvbSwgJGJyZWFrcG9pbnRzKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gVW50aWw6IHRoYXQgYnJlYWtwb2ludCAoZXhjbHVzaXZlKVxuICBAaWYgJHVudGlsIHtcbiAgICBAaWYgdHlwZS1vZigkdW50aWwpID09IG51bWJlciB7XG4gICAgICAkbWF4LXdpZHRoOiBtcS1weDJlbSgkdW50aWwpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJG1heC13aWR0aDogbXEtcHgyZW0obXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJHVudGlsLCAkYnJlYWtwb2ludHMpKSAtIC4wMWVtO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgc3VwcG9ydCBpcyBkaXNhYmxlZCwgcmFzdGVyaXplIHRoZSBvdXRwdXQgb3V0c2lkZSBAbWVkaWEgYmxvY2tzXG4gIC8vIFRoZSBicm93c2VyIHdpbGwgcmVseSBvbiB0aGUgY2FzY2FkZSBpdHNlbGYuXG4gIEBpZiAkcmVzcG9uc2l2ZSA9PSBmYWxzZSB7XG4gICAgJHN0YXRpYy1icmVha3BvaW50LXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkc3RhdGljLWJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG4gICAgJHRhcmdldC13aWR0aDogbXEtcHgyZW0oJHN0YXRpYy1icmVha3BvaW50LXdpZHRoKTtcblxuICAgIC8vIE91dHB1dCBvbmx5IHJ1bGVzIHRoYXQgc3RhcnQgYXQgb3Igc3BhbiBvdXIgdGFyZ2V0IHdpZHRoXG4gICAgQGlmIChcbiAgICAgICAgICAgICRhbmQgPT0gZmFsc2VcbiAgICAgICAgICAgIGFuZCAkbWluLXdpZHRoIDw9ICR0YXJnZXQtd2lkdGhcbiAgICAgICAgICAgIGFuZCAoXG4gICAgICAgICAgICAgICAgJHVudGlsID09IGZhbHNlIG9yICRtYXgtd2lkdGggPj0gJHRhcmdldC13aWR0aFxuICAgICAgICAgICAgKVxuICAgICkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIHN1cHBvcnQgaXMgZW5hYmxlZCwgb3V0cHV0IHJ1bGVzIGluc2lkZSBAbWVkaWEgcXVlcmllc1xuICBAZWxzZSB7XG4gICAgQGlmICRtaW4td2lkdGggIT0gMCB7ICRtZWRpYS1xdWVyeTogJyN7JG1lZGlhLXF1ZXJ5fSBhbmQgKG1pbi13aWR0aDogI3skbWluLXdpZHRofSknOyB9XG4gICAgQGlmICRtYXgtd2lkdGggIT0gMCB7ICRtZWRpYS1xdWVyeTogJyN7JG1lZGlhLXF1ZXJ5fSBhbmQgKG1heC13aWR0aDogI3skbWF4LXdpZHRofSknOyB9XG4gICAgQGlmICRhbmQgICAgICAgICAgICB7ICRtZWRpYS1xdWVyeTogJyN7JG1lZGlhLXF1ZXJ5fSBhbmQgI3skYW5kfSc7IH1cblxuICAgIC8vIFJlbW92ZSB1bm5lY2Vzc2FyeSBtZWRpYSBxdWVyeSBwcmVmaXggJ2FsbCBhbmQgJ1xuICAgIEBpZiAoJG1lZGlhLXR5cGUgPT0gJ2FsbCcgYW5kICRtZWRpYS1xdWVyeSAhPSAnJykge1xuICAgICAgJG1lZGlhLXR5cGU6ICcnO1xuICAgICAgJG1lZGlhLXF1ZXJ5OiBzdHItc2xpY2UodW5xdW90ZSgkbWVkaWEtcXVlcnkpLCA2KTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skbWVkaWEtdHlwZSArICRtZWRpYS1xdWVyeX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGQgYSBicmVha3BvaW50XG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBicmVha3BvaW50XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBicmVha3BvaW50XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgQGluY2x1ZGUgbXEtYWRkLWJyZWFrcG9pbnQodHZzY3JlZW4sIDE5MjBweCk7XG4vLy8gIEBpbmNsdWRlIG1xKHR2c2NyZWVuKSB7fVxuQG1peGluIG1xLWFkZC1icmVha3BvaW50KCRuYW1lLCAkd2lkdGgpIHtcbiAgJG5ldy1icmVha3BvaW50OiAoJG5hbWU6ICR3aWR0aCk7XG4gICRtcS1icmVha3BvaW50czogbWFwLW1lcmdlKCRtcS1icmVha3BvaW50cywgJG5ldy1icmVha3BvaW50KSAhZ2xvYmFsO1xufVxuXG4vLy8gU2hvdyB0aGUgYWN0aXZlIGJyZWFrcG9pbnQgaW4gdGhlIHRvcCByaWdodCBjb3JuZXIgb2YgdGhlIHZpZXdwb3J0XG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNzZWVpbmctdGhlLWN1cnJlbnRseS1hY3RpdmUtYnJlYWtwb2ludFxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkc2hvdy1icmVha3BvaW50cyAoJG1xLXNob3ctYnJlYWtwb2ludHMpIC0gTGlzdCBvZiBicmVha3BvaW50cyB0byBzaG93IGluIHRoZSB0b3AgcmlnaHQgY29ybmVyXG4vLy8gQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyAoJG1xLWJyZWFrcG9pbnRzKSAtIEJyZWFrcG9pbnQgbmFtZXMgYW5kIHNpemVzXG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtc2hvdy1icmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAvLyBTaG93IGJyZWFrcG9pbnRzIHVzaW5nIGdsb2JhbCBzZXR0aW5nc1xuLy8vICBAaW5jbHVkZSBtcS1zaG93LWJyZWFrcG9pbnRzO1xuLy8vXG4vLy8gIC8vIFNob3cgYnJlYWtwb2ludHMgdXNpbmcgY3VzdG9tIHNldHRpbmdzXG4vLy8gIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHMoKEwsIFhMKSwgKFM6IDMwMHB4LCBMOiA4MDBweCwgWEw6IDEyMDBweCkpO1xuQG1peGluIG1xLXNob3ctYnJlYWtwb2ludHMoJHNob3ctYnJlYWtwb2ludHM6ICRtcS1zaG93LWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cykge1xuICBib2R5OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZDRjhFMztcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0ZCRUVENTtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNGQkVFRDU7XG4gICAgY29sb3I6ICNDMDk4NTM7XG4gICAgZm9udDogc21hbGwtY2FwdGlvbjtcbiAgICBwYWRkaW5nOiAzcHggNnB4O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMTAwO1xuXG4gICAgLy8gTG9vcCB0aHJvdWdoIHRoZSBicmVha3BvaW50cyB0aGF0IHNob3VsZCBiZSBzaG93blxuICAgIEBlYWNoICRzaG93LWJyZWFrcG9pbnQgaW4gJHNob3ctYnJlYWtwb2ludHMge1xuICAgICAgJHdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkc2hvdy1icmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuICAgICAgQGluY2x1ZGUgbXEoJHNob3ctYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHMpIHtcbiAgICAgICAgY29udGVudDogXCIjeyRzaG93LWJyZWFrcG9pbnR9IMOiwonCpSAjeyR3aWR0aH0gKCN7bXEtcHgyZW0oJHdpZHRoKX0pXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpZiBsZW5ndGgoJG1xLXNob3ctYnJlYWtwb2ludHMpID4gMCB7XG4gIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHM7XG59XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9hc3NldHMvc2Fzcy90b29scy9fbXEuc2NzcyIsIi5jLWNhdGFsb2dfX3RpdGxlIHtcbiAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDIwcHgpO1xuICAuYm9yZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItY29yYWlsLTI7XG4gIH1cbn1cblxuLm8tY2F0YWxvZy1iZXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAzNXB4IDAgMDtcbiAgJi5vcGVyYXRldXIge1xuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgIC51LTFcXC8yXFxAdGFibGV0IHtcbiAgICAgICAgLmMtY2FyZC5zaW1wbGUsXG4gICAgICAgIC5jLWNhcmQuY29kZS1wcm9tbyB7XG4gICAgICAgICAgLmMtY2FyZC0tYm9yZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggNTBweCAxNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuICAgICAgLnUtMVxcLzJcXEB0YWJsZXQge1xuICAgICAgICAuYy1jYXJkLnNpbXBsZSxcbiAgICAgICAgLmMtY2FyZC5jb2RlLXByb21vIHtcbiAgICAgICAgICAuYy1jYXJkLS1ib3JkZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAxMDBweCAxNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jLWNhcmQge1xuICAgICAgLmMtY2FyZC1jdGEge1xuICAgICAgICAuYy1jdGEge1xuICAgICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxNHB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kOiAjZDhkOGQ4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogLTEwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICB9XG59XG5cbi5jLWNhdGFsb2ctZmlsdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiA0MDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xuXG4gIC5jLWNhdGFsb2ctZmlsdGVyX19pdGVtIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIH1cbiAgLmMtY2F0YWxvZy1maWx0ZXJfX2J0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWJsdWU7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbiAgICAuYy1pY28ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMTJweCk7XG4gICAgfVxuICB9XG4gIC5jLWNhdGFsb2ctZmlsdGVyX19saW5rIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMzVweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItYmx1ZTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcbiAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxMnB4KTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtcSgkZnJvbTogMzYwcHgpIHtcbiAgICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gICAgLmMtY2F0YWxvZy1maWx0ZXJfX2l0ZW0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgfVxuICAgIC5jLWNhdGFsb2ctZmlsdGVyX19idG4ge1xuICAgICAgc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxM3B4KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1jYXRhbG9nLWZpbHRlcl9fbGluayB7XG4gICAgICBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDEzcHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1xKCRmcm9tOiAzNzVweCkge1xuICAgIC5jLWNhdGFsb2ctZmlsdGVyX19idG4ge1xuICAgICAgLmMtaWNvIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIH1cbiAgICAgIHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMTJweCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmMtY2F0YWxvZy1maWx0ZXJfX2xpbmsge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxMnB4KTtcbiAgICAgIH1cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEycHg7XG4gICAgICAgIGxlZnQ6IDhweDtcbiAgICAgICAgd2lkdGg6IDlweDtcbiAgICAgICAgaGVpZ2h0OiA5cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ibHVlO1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbXEoJGZyb206IDc0MHB4KSB7XG4gICAgbWF4LXdpZHRoOiA0NjBweDtcbiAgICAuYy1jYXRhbG9nLWZpbHRlcl9fYnRuIHtcbiAgICAgIC5jLWljbyB7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICB9XG4gICAgICBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDE0cHgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jLWNhdGFsb2ctZmlsdGVyX19saW5rIHtcbiAgICAgIHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMTRweCk7XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICB3aWR0aDogMTNweDtcbiAgICAgICAgaGVpZ2h0OiAxM3B4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG4uYy1maWx0ZXItc3RpY2t5IHtcbiAgcG9zaXRpb246IC13ZWJraXQtc3RpY2t5O1xuICBwb3NpdGlvbjogLW1vei1zdGlja3k7XG4gIHBvc2l0aW9uOiAtbXMtc3RpY2t5O1xuICBwb3NpdGlvbjogLW8tc3RpY2t5O1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDg1cHg7XG4gIHotaW5kZXg6IDI7XG5cbiAgJi51LWhlaWdodC0xIHtcbiAgICBoZWlnaHQ6IDFweDtcbiAgfVxufVxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL2Fzc2V0cy9zYXNzL2NvbXBvbmVudHMvX2NvbXBvbmVudHMuY2F0YWxvZy5zY3NzIiwiLy8vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vICAgI0ZPTlQtU0laRVxuLy8gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLy8gR2VuZXJhdGVzIGEgcmVtIGZvbnQtc2l6ZSAod2l0aCBwaXhlbCBmYWxsYmFjaykgYW5kIGEgYmFzZWxpbmUtY29tcGF0aWJsZVxuLy8gdW5pdGxlc3MgbGluZS1oZWlnaHQgZnJvbSBhIHBpeGVsIGZvbnQtc2l6ZSB2YWx1ZS4gQmFzaWMgdXNhZ2UgaXMgc2ltcGx5OlxuLy9cbi8vICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDE4cHgpO1xuLy9cbi8vIFlvdSBjYW4gZm9yY2UgYSBzcGVjaWZpYyBsaW5lLWhlaWdodCBieSBwYXNzaW5nIGl0IGFzIHRoZSBzZWNvbmQgYXJndW1lbnQ6XG4vL1xuLy8gICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMTZweCwgMSk7XG4vL1xuLy8gWW91IGNhbiBhbHNvIG1vZGlmeSB0aGUgbGluZS1oZWlnaHQgYnkgaW5jcmVtZW50cywgd2hpbGUgc3RheWluZyBpbiB0aGVcbi8vIGJhc2VsaW5lIGdyaWQsIGJ5IHNldHRpbmcgdGhlIGAkbW9kaWZpZXJgIHBhcmFtZXRlci4gSXQgdGFrZXMgYSBwb3NpdGl2ZVxuLy8gb3IgbmVnYXRpdmUgaW50ZWdlciwgYW5kIGl0IHdpbGwgYWRkIG9yIHJlbW92ZSBcImxpbmVzXCIgdG8gdGhlICBnZW5lcmF0ZWRcbi8vIGxpbmUtaGVpZ2h0LiBUaGlzIGlzIHRoZSByZWNvbWVuZGVkIHdheSB0byBkbyBpdCwgdW5sZXNzIHlvdSByZWFsbHkgbmVlZFxuLy8gYW4gYWJzb2x1dGUgdmFsdWUuIGkuZS46XG4vL1xuLy8gICAvLyBhZGQgMiBsaW5lczpcbi8vICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDI0cHgsICRtb2RpZmllcjogKzIpO1xuLy9cbi8vICAgLy8gc3VidHJhY3QgMSBsaW5lOlxuLy8gICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMjRweCwgJG1vZGlmaWVyOiAtMSk7XG5cbkBtaXhpbiBpbnVpdC1mb250LXNpemUoJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0OiBhdXRvLCAkbW9kaWZpZXI6IDAsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG5cbiAgQGlmICh0eXBlLW9mKCRmb250LXNpemUpID09IG51bWJlcikge1xuICAgIEBpZiAodW5pdCgkZm9udC1zaXplKSAhPSBcInB4XCIpIHtcbiAgICAgIEBlcnJvciBcImAjeyRmb250LXNpemV9YCBuZWVkcyB0byBiZSBhIHBpeGVsIHZhbHVlLlwiO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGVycm9yIFwiYCN7JGZvbnQtc2l6ZX1gIG5lZWRzIHRvIGJlIGEgbnVtYmVyLlwiO1xuICB9XG5cbiAgQGlmICgkaW1wb3J0YW50ID09IHRydWUpIHtcbiAgICAkaW1wb3J0YW50OiAhaW1wb3J0YW50O1xuICB9IEBlbHNlIGlmICgkaW1wb3J0YW50ID09IGZhbHNlKSB7XG4gICAgJGltcG9ydGFudDogbnVsbDtcbiAgfSBAZWxzZSB7XG4gICAgQGVycm9yIFwiYCN7JGltcG9ydGFudH1gIG5lZWRzIHRvIGJlIGB0cnVlYCBvciBgZmFsc2VgLlwiO1xuICB9XG5cbiAgLy8gV2UgcHJvdmlkZSBhIGBweGAgZmFsbGJhY2sgZm9yIG9sZCBJRXMgbm90IHN1cHBvcnRpbmcgYHJlbWAgdmFsdWVzLlxuICBmb250LXNpemU6ICRmb250LXNpemUgJGltcG9ydGFudDtcbiAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZSAvICRpbnVpdC1nbG9iYWwtZm9udC1zaXplKSAqIDFyZW0gJGltcG9ydGFudDtcblxuIC8qIEBpZiAoJGxpbmUtaGVpZ2h0ID09IFwiYXV0b1wiKSB7XG5cbiAgICAvLyBEZWZpbmUgaG93IG1hbnkgZ3JpZCBsaW5lcyBlYWNoIHRleHQgbGluZSBzaG91bGQgc3Bhbi5cbiAgICAvLyBCeSBkZWZhdWx0LCB3ZSBzZXQgaXQgdG8gdGhlIG1pbmltdW0gbnVtYmVyIG9mIGxpbmVzIG5lY2Vzc2FyeVxuICAgIC8vIGluIG9yZGVyIHRvIGNvbnRhaW4gdGhlIGRlZmluZWQgZm9udC1zaXplLCArMSBmb3Igc29tZSBicmVhdGhpbmcgcm9vbS5cbiAgICAvLyBUaGlzIGNhbiBiZSBtb2RpZmllZCB3aXRoIHRoZSBgJG1vZGlmaWVyYCBwYXJhbWV0ZXIuXG4gICAgJGxpbmVzOiBjZWlsKCRmb250LXNpemUgLyAkaW51aXQtZ2xvYmFsLWJhc2VsaW5lKSArICRtb2RpZmllciArIDE7XG4gICAgJGxpbmUtaGVpZ2h0OiAkbGluZXMgKiAkaW51aXQtZ2xvYmFsLWJhc2VsaW5lO1xuXG4gICAgbGluZS1oZWlnaHQ6ICgkbGluZS1oZWlnaHQgLyAkZm9udC1zaXplKSAkaW1wb3J0YW50O1xuICB9XG5cbiAgQGVsc2Uge1xuXG4gICAgQGlmICh0eXBlLW9mKCRsaW5lLWhlaWdodCkgPT0gbnVtYmVyIG9yICRsaW5lLWhlaWdodCA9PSBcImluaGVyaXRcIiBvciAkbGluZS1oZWlnaHQgPT0gXCJub3JtYWxcIikge1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodCAkaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBlbHNlIGlmICgkbGluZS1oZWlnaHQgIT0gJ25vbmUnIGFuZCAkbGluZS1oZWlnaHQgIT0gZmFsc2UpIHtcbiAgICAgIEBlcnJvciBcIkTDosKAwplvaCEgYCN7JGxpbmUtaGVpZ2h0fWAgaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGAkbGluZS1oZWlnaHRgLlwiXG4gICAgfVxuXG4gIH0qL1xuXG59XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9hc3NldHMvc2Fzcy90b29scy9fdG9vbC5mb250LXNpemUuc2NzcyIsIi5jLWNhcmQge1xyXG4gICYucHJvbW8sXHJcbiAgJi5zaW1wbGUsXHJcbiAgJi5jb2RlLWxpbmstcHJvbW9zIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1heC13aWR0aDogMzUwcHg7XHJcbiAgICBtYXJnaW46IGF1dG8gYXV0byAzMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgIHAge1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgfVxyXG5cclxuICAgIC5jLWNhcmQtZmF2b3JpcyB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAtMTdweDtcclxuICAgICAgcmlnaHQ6IDA7XHJcblxyXG4gICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMTNweCk7XHJcbiAgICB9XHJcblxyXG4gICAgLmMtY2FyZC1oZWFkIHtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1ncmV5O1xyXG4gICAgfVxyXG5cclxuICAgIC5jLWNhcmQtaGVhZCxcclxuICAgIC5jLWNhcmQtY29udGVudCB7XHJcbiAgICAgIHBhZGRpbmc6IDAgMTVweDtcclxuICAgIH1cclxuXHJcbiAgICAuYy1jYXJkLWNvbnRlbnQge1xyXG4gICAgICBwYWRkaW5nLXRvcDogNnB4O1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgICAgcCB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jLWNhcmRfX2xvZ28ge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHJpZ2h0OiA5cHg7XHJcbiAgICAgIHRvcDogMzBweDtcclxuICAgICAgd2lkdGg6IDYwcHg7XHJcbiAgICAgIGhlaWdodDogNjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuYy1jYXJkX19wcmljZSB7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItY29yYWlsO1xyXG4gICAgICAmLnUtdGV4dC0tYmx1ZSB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibHVlO1xyXG4gICAgICB9XHJcbiAgICAgIHNwYW4ge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICB9XHJcbiAgICAgIHN1cCwgc3ViIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgICAuc3ltYm9sLWUge1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMzZweCk7XHJcbiAgICAgIH1cclxuICAgICAgLnRhbGwge1xyXG4gICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSg5NHB4KTtcclxuICAgICAgfVxyXG4gICAgICAubWlkLW1lZGl1bSB7XHJcbiAgICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDI4cHgpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyO1xyXG4gICAgICB9XHJcbiAgICAgIC5tZWRpdW0ge1xyXG4gICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgzMHB4KTtcclxuICAgICAgfVxyXG4gICAgICAuc21hbGwge1xyXG4gICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgyN3B4KTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdG9wOiAzcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYy1jYXJkX19tZW50aW9ucyB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxMnB4KTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgIHNwYW4ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmMtY2FyZF9fdGl0bGUge1xyXG4gICAgICBoZWlnaHQ6IDQ1cHg7XHJcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMjFweCk7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcblxyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICAgJi5oLWF1dG8ge1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jLWNhcmRfX2xpc3Qge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgICAuYy1saXN0IHtcclxuICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMTVweCk7XHJcbiAgICAgICAgJi5lcXVpcG1lbnQge1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgIGhlaWdodDogYXV0bztcclxuXHJcbiAgICAgICAgICAuYy1saXN0X19pdGVtIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgY29udGVudDogJy0nO1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICByaWdodDogNXB4O1xyXG4gICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnRlY2huaWNhbCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XHJcbiAgICAgICAgICAudGVjaG5vIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICYuZGViaXQxIHtcclxuICAgICAgICAgICAgICAgIC8vYmFja2dyb3VuZDogbGlnaHRlbigkY29sb3ItZGViaXQyLCA2JSk7XHJcbiAgICAgICAgICAgICAgICAvL2NvbG9yOiAkY29sb3I7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICYuZGViaXQyIHtcclxuICAgICAgICAgICAgICAgIC8vYmFja2dyb3VuZDogbGlnaHRlbigkY29sb3ItZGViaXQzLCA2JSk7XHJcbiAgICAgICAgICAgICAgICAvL2NvbG9yOiAkY29sb3ItYmx1ZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgJi5kZWJpdDMge1xyXG4gICAgICAgICAgICAgICAgLy9iYWNrZ3JvdW5kOiBsaWdodGVuKCRjb2xvci1kZWJpdDQsIDYlKTtcclxuICAgICAgICAgICAgICAgIC8vY29sb3I6ICRjb2xvci1ibHVlO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAmLmRlYml0NCB7XHJcbiAgICAgICAgICAgICAgICAvL2JhY2tncm91bmQ6IGxpZ2h0ZW4oJGNvbG9yLWRlYml0NSwgNiUpO1xyXG4gICAgICAgICAgICAgICAgLy9jb2xvcjogI2ZmZmZmZjtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgJi5kZWJpdDUge1xyXG4gICAgICAgICAgICAgICAgLy9iYWNrZ3JvdW5kOiBsaWdodGVuKCRjb2xvci1kZWJpdDYsIDYlKTtcclxuICAgICAgICAgICAgICAgIC8vY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICYuZGViaXQ2IHtcclxuICAgICAgICAgICAgICAgIC8vYmFja2dyb3VuZDogbGlnaHRlbigkY29sb3ItZGViaXQ3LCA2JSk7XHJcbiAgICAgICAgICAgICAgICAvL2NvbG9yOiAjZmZmZmZmO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAmLnR5cGUtdGVjaG5vIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLm9wdGlvbnMge1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDI0cHg7XHJcbiAgICAgICAgICAuYy1saXN0X19pdGVtIHtcclxuICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jLWNhcmRfX2luZm9zIHtcclxuICAgICAgZGlzcGxheTogdGFibGU7XHJcbiAgICAgIGhlaWdodDogNDVweDtcclxuICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDEzcHgpO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBwIHtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgIH1cclxuICAgICAgLnR5cGUtcHJvbW8ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgc3ZnIHtcclxuICAgICAgICAgIHdpZHRoOiAyNXB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiAyNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxuICAgICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxMnB4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5wcm9tby10aW1lLCAmLnByb21vLWluZm8ge1xyXG4gICAgICAgICAgY29sb3I6ICM1Mjk0MDc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYucHJvbW8tYm9uUGxhbiB7XHJcbiAgICAgICAgICBjb2xvcjogI2Y1YTYyMztcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5wcm9tby1wcmljZSB7XHJcbiAgICAgICAgICBjb2xvcjogI0ZCNjY2MDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYy1jYXJkLWN0YSB7XHJcbiAgICAgIG1heC13aWR0aDogMjUwcHg7XHJcbiAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgcGFkZGluZzogMCA1cHggMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuYy1jYXJkLXRpbWVyIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgaGVpZ2h0OiA0NXB4O1xyXG4gICAgICBtYXJnaW46IDE1cHggMDtcclxuICAgICAgY29sb3I6ICM1Mjk0MDc7XHJcbiAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxM3B4KTtcclxuICAgICAgc3ZnIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICB3aWR0aDogMjdweDtcclxuICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgIH1cclxuICAgICAgLnRleHQge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcclxuICAgICAgLmMtY2FyZC1oZWFkLFxyXG4gICAgICAuYy1jYXJkLWNvbnRlbnQge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcclxuICAgICAgfVxyXG4gICAgICAuYy1jYXJkX19sb2dvIHtcclxuICAgICAgICB0b3A6IDIzcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5jLWNhcmRfX3RpdGxlIHtcclxuICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMjBweCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5jLWNhcmRfX3ByaWNlIHtcclxuICAgICAgICAuc3ltYm9sLWUge1xyXG4gICAgICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDI2cHgpO1xyXG4gICAgICAgICAgdG9wOiAtNHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAudGFsbCB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoNjBweCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5tZWRpdW0ge1xyXG4gICAgICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDIwcHgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuc21hbGwge1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDE3cHgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmMtY2FyZF9fbWVudGlvbnMge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogMzVweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG5cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuXHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5jLWNhcmRfX2xpc3Qge1xyXG4gICAgICAgIC5jLWxpc3Qge1xyXG4gICAgICAgICAgJi5lcXVpcG1lbnQge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDQ4cHg7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJi50ZWNobmljYWwge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIC50ZWNobm8ge1xyXG4gICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgJi50eXBlLXRlY2hubyB7XHJcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmMtY2FyZF9faW5mb3Mge1xyXG4gICAgICAgIGhlaWdodDogODVweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IDk2MHB4KSB7XHJcbiAgICAgIC5jLWNhcmRfX2xvZ28ge1xyXG4gICAgICAgIHRvcDogMzBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmMtY2FyZF9fcHJpY2Uge1xyXG4gICAgICAgIC5zeW1ib2wtZSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMzZweCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50YWxsIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSg5NHB4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLm1lZGl1bSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMzBweCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zbWFsbCB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMjdweCk7XHJcbiAgICAgICAgICB0b3A6IDNweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5jLWNhcmRfX21lbnRpb25zIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIGhlaWdodDogMzVweDtcclxuICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMTNweCk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmMtY2FyZF9fbGlzdCB7XHJcbiAgICAgICAgLmMtbGlzdCB7XHJcbiAgICAgICAgICAmLmVxdWlwbWVudCB7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmLnRlY2huaWNhbCB7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgLnRlY2hubyB7XHJcbiAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAmLnR5cGUtdGVjaG5vIHtcclxuICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmMtY2FyZF9faW5mb3Mge1xyXG4gICAgICAgIGhlaWdodDogNDVweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAuYy1jYXJkX19tZW50aW9ucyB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibHVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLnNpbXBsZSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XHJcbiAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgLmMtY2FyZC1jb250ZW50IHtcclxuICAgICAgICAuYy1jYXJkX190aXRsZSB7XHJcbiAgICAgICAgICBoZWlnaHQ6IDc4cHg7XHJcbiAgICAgICAgICAmLmgtYXV0byB7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5jLWNhcmQtbGFiZWwge1xyXG4gICAgICB6LWluZGV4OiAwO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6IDI0cHg7XHJcbiAgICAgIHRvcDogLTE2cHg7XHJcbiAgICAgIHBhZGRpbmctdG9wOiA1cHg7XHJcblxyXG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgIGhlaWdodDogNDhweDtcclxuICAgICAgd2lkdGg6IDQ4cHg7XHJcblxyXG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG5cclxuICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xyXG4gICAgICAgIGxlZnQ6IDExcHg7XHJcbiAgICAgIH1cclxuICAgICAgc3ZnIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAmLm1vYmlsZSB7XHJcbiAgICAgICAgICBsZWZ0OiAzcHg7XHJcbiAgICAgICAgICB3aWR0aDogMTZweDtcclxuICAgICAgICAgIGhlaWdodDogMTZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5ib3gge1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBwIHtcclxuICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMTBweCk7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuYy1jYXJkLWhlYWQge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgIG1hcmdpbi10b3A6IDlweDtcclxuICAgIH1cclxuICAgIC5jLWNhcmRfX2xvZ28ge1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmMtY2FyZC0tYm9yZGVyIHtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5jLWNhcmQtY3RhIHtcclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgLmMtY3RhIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1jb3JhaWw7XHJcbiAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIC5jLWNhcmQtbGFiZWwge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmMtY3RhIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgY29sb3I6ICRjb2xvci1jb3JhaWw7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmNvZGUtbGluay1wcm9tb3Mge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgLmMtY2FyZC1oZWFkIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAuYy1jYXJkLWhlYWQge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcclxuICAgICAgICBoZWlnaHQ6IDIzOHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogOTYwcHgpIHtcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAuYy1jYXJkLWhlYWQge1xyXG4gICAgICAgIGhlaWdodDogMjQ0cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHAge1xyXG4gICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG4gICAgfVxyXG5cclxuICAgIC5jLWNhcmRfX3ByaWNlIHtcclxuICAgICAgY29sb3I6ICRjb2xvci1ibHVlO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICBmb250LXdlaWdodDogNzAwO1xyXG5cclxuICAgICAgcCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmMtdGV4dC10YWxsIHtcclxuICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoNDBweCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5jLXRleHQtc21hbGwge1xyXG4gICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxNnB4KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcclxuICAgICAgICAuYy10ZXh0LXRhbGwge1xyXG4gICAgICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDY5cHgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYy10ZXh0LXNtYWxsIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgyMHB4KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5jLWNhcmRfX21lbnRpb25zIHtcclxuICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDE2cHgpO1xyXG5cclxuICAgICAgJi5kZXNrIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xyXG4gICAgICAgICYuZGVzayB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5tb2Ige1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICAuYy1jYXJkLS1ib3JkZXIge1xyXG4gICAgICBwYWRkaW5nOiAxMHB4IDIycHggMTVweDtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5jLWNvZGUtcHJvbW8ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWF4LXdpZHRoOiAxMDI0cHg7XHJcbiAgICBtYXJnaW46IGF1dG8gYXV0byA0MHB4O1xyXG4gICAgcGFkZGluZzogMTBweCAzMHB4IDIwcHg7XHJcblxyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxuXHJcblxyXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLm8tZ3JpZCB7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jLWNhcmQtbGFiZWwge1xyXG4gICAgICB6LWluZGV4OiAwO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6IDI0cHg7XHJcbiAgICAgIHRvcDogLTE2cHg7XHJcbiAgICAgIHBhZGRpbmctdG9wOiA1cHg7XHJcblxyXG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgIGhlaWdodDogNDhweDtcclxuICAgICAgd2lkdGg6IDQ4cHg7XHJcblxyXG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG5cclxuICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xyXG4gICAgICAgIGxlZnQ6IDExcHg7XHJcbiAgICAgIH1cclxuICAgICAgc3ZnIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAmLm1vYmlsZSB7XHJcbiAgICAgICAgICBsZWZ0OiAzcHg7XHJcbiAgICAgICAgICB3aWR0aDogMTZweDtcclxuICAgICAgICAgIGhlaWdodDogMTZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5ib3gge1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBwIHtcclxuICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMTBweCk7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmMtY2FyZF9fcHJpY2Uge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLWNvcmFpbDtcclxuICAgICAgc3BhbiB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgIH1cclxuICAgICAgc3VwLCBzdWIge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcbiAgICAgIC5zeW1ib2wtZSB7XHJcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgzNnB4KTtcclxuICAgICAgfVxyXG4gICAgICAudGFsbCB7XHJcbiAgICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDk0cHgpO1xyXG4gICAgICB9XHJcbiAgICAgIC5tZWRpdW0ge1xyXG4gICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgzMHB4KTtcclxuICAgICAgfVxyXG4gICAgICAuc21hbGwge1xyXG4gICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgyN3B4KTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdG9wOiAzcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcclxuICAgICAgICB3aWR0aDogMzElO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgLnN5bWJvbC1lIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgyNnB4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnRhbGwge1xyXG4gICAgICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDc0cHgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubWVkaXVtIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgyMHB4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnNtYWxsIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxN3B4KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcclxuICAgICAgICB3aWR0aDogMjUlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmMtY2FyZF9fbWVudGlvbnMge1xyXG4gICAgICBtYXJnaW46IDIwcHggMDtcclxuICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDE0cHgpO1xyXG4gICAgICBzcGFuIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XHJcbiAgICAgICAgd2lkdGg6IDY5JTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jLWNhcmQtY3RhIHtcclxuICAgICAgbWF4LXdpZHRoOiAyMDBweDtcclxuICAgICAgbWFyZ2luOiBhdXRvIGF1dG87XHJcbiAgICAgIHBhZGRpbmc6IDAgNXB4IDEwcHg7XHJcbiAgICAgIGEge1xyXG4gICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxNnB4KTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XHJcbiAgICAgICAgd2lkdGg6IDI1JTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgLmMtY3RhIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1jb3JhaWw7XHJcbiAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmMtY29kZSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJi5zaG93Q29kZSB7XHJcbiAgICAgIC5vLWdyaWQge1xyXG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5jLWNhcmRfX21lbnRpb25zIHtcclxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xyXG4gICAgICAgICAgd2lkdGg6IDc1JTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmMtY2FyZC1jdGEge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgICAgLmMtY29kZSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgLmMtY29kZV9fY2VsbCB7XHJcbiAgICAgICAgICAmLmNvZGUge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMTVweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWJsdWUtMjtcclxuXHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDcwJTtcclxuICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xyXG5cclxuICAgICAgICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcbiAgICAgICAgICAgICAgLXdlYmtpdC13b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcbiAgICAgICAgICAgICAgLW1vei13b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcbiAgICAgICAgICAgICAgLW1zLXdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuXHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxuXHJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IDQ4MHB4KSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogODAlO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxNHB4KTtcclxuICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgICYuYy1jYXJkLWN0YSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDI1MHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDVweCAxMHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xyXG4gICAgICAgICAgd2lkdGg6IDY5JTtcclxuICAgICAgICAgIC5jLWNvZGVfX2NlbGwge1xyXG4gICAgICAgICAgICAmLmNvZGUge1xyXG4gICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmMtY2FyZC1jdGEge1xyXG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcclxuICAgICAgICAgIHdpZHRoOiA3NSU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5ib25QbGFuIHtcclxuICAgICAgLmMtY2FyZF9fcHJpY2Uge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICAgICAgICAuYy1jYXJkX19wcmljZV9fY2VsbCB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICYudGV4dC1udW1iZXIge1xyXG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuOTtcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoOTRweCk7XHJcbiAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgY29udGVudDogJ8OiwoLCrCc7XHJcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgdG9wOiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTBweDtcclxuICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDM2cHgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoNzRweCk7XHJcbiAgICAgICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDI2cHgpO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYudGV4dC1wcmltYXJ5IHtcclxuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDMycHgpO1xyXG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi50ZXh0LXNlY29uZCB7XHJcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgyMnB4KTtcclxuICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcclxuICAgICAgICAgICAgICAmLnRleHQtcHJpbWFyeSxcclxuICAgICAgICAgICAgICAmLnRleHQtc2Vjb25kLFxyXG4gICAgICAgICAgICAgICYudGV4dC1udW1iZXIge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4vKiAgYSB7XHJcbiAgICAmLmMtY2Fyay1saW5rIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgLmMtY3RhIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1jb3JhaWw7XHJcbiAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYy1jYXJkLWN0YSB7XHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6ICRjb2xvci1jb3JhaWw7O1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgICAmLmMtY3RhIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWNvcmFpbDtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmMtbGluay1kZXNjcmlwdGlmIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgcGFkZGluZzogMTBweCAxMHB4IDE1cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xyXG5cclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ncmV5O1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiAgfSovXHJcbn1cclxuLmMtY2FyZC0tYm9yZGVyIHtcclxuICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZ3JleTtcclxuICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxufVxyXG5cclxuLy9DQVJEIE9GRlJFU1xyXG4uYy1jYXJkLW9mZnJlIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWF4LXdpZHRoOiAyNzVweDtcclxuICBtYXJnaW46IGF1dG87XHJcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcclxuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkYmRkO1xyXG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG5cclxuICBib3gtc2hhZG93OiAwIDNweCAycHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjNzLCBib3gtc2hhZG93IC4zcywgLXdlYmtpdC1ib3gtc2hhZG93IC4zcztcclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICBib3gtc2hhZG93OiAwIDNweCAycHggcmdiYSgwLCAwLCAwLCAwLjQpO1xyXG4gIH1cclxufVxyXG4uYy1jYXJkLW9mZnJlX19pdGVtIHtcclxuICAmLml0ZW0tZm9vdGVyIHtcclxuICAgIHBhZGRpbmc6IDAgMTJweCAxMnB4O1xyXG4gIH1cclxuICAvL2NvbnRlbnQgb2ZmcmVcclxuICAuY29udGVudC1vZmZyZSB7XHJcbiAgICBwYWRkaW5nOiAxMnB4IDEycHggMDtcclxuICAgIC8vaGVhZGVyXHJcbiAgICAuaGVhZGVyIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGRiZGQ7XHJcbiAgICAgIC5oLWdyaWQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICB9XHJcbiAgICAgIC5oLWdyaWRfX2l0ZW0ge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICYuaXRlbS1wcmljZSB7XHJcbiAgICAgICAgICB3aWR0aDogNzAlO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5pdGVtLWxvZ28ge1xyXG4gICAgICAgICAgd2lkdGg6IDMwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5pdGVtLW1lbnRpb24ge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAvL1ByaWNlXHJcbiAgICAgIC5wcmljZSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcclxuICAgICAgICAudGV4dC10YWxsIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSg0MHB4KTtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50ZXh0LXNtYWxsIHtcclxuICAgICAgICAgIHN1cCwgc3ViIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMTZweCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBzdXAge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMTNweCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBzdWIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMTJweCk7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC8vTG9nb1xyXG4gICAgICAubG9nbyB7XHJcbiAgICAgICAgd2lkdGg6IDUycHg7XHJcbiAgICAgICAgaGVpZ2h0OiA1MnB4O1xyXG4gICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgfVxyXG4gICAgICAvL21lbnRpb25cclxuICAgICAgLm1lbnRpb24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDEwcHgpO1xyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAvL2NvbnRlbnRcclxuICAgIC5jb250ZW50IHtcclxuICAgICAgLy9UeXBlIHBpY3R1cmVcclxuICAgICAgLyogIC50eXBlLXBpY3R1cmUge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDU2cHg7XHJcbiAgICAgICAgICBtYXJnaW46IDVweCAwO1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcclxuICAgICAgICB9Ki9cclxuICAgICAgLy9UeXBlIHRpdGxlXHJcbiAgICAgIC50eXBlLXRpdGxlIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgaGVpZ2h0OiA0NXB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxOHB4KTtcclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAvL1R5cGUgc2VydmljZVxyXG4gICAgICAudHlwZS1zZXJ2aWNlcyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDc1cHg7XHJcbiAgICAgICAgLmxpc3Qtc2VydmljZSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xyXG4gICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxNXB4KTtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgY29udGVudDogJy0nO1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJi50ZWNobmljYWwge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qLnRvZ2dsZXItaW5kaWNhdG9ycyB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgd2lkdGg6IDI3cHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDI3cHg7XHJcbiAgICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgICAuaG9yaXpvbnRhbCB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgd2lkdGg6IDEycHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAudmVydGljYWwge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAycHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTJweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0qL1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vY29udGVudCBmb290ZXJcclxuICAuY29udGVudC1mb290ZXIge1xyXG4gICAgLmVtLWJ0biB7XHJcbiAgICAgIG1heC13aWR0aDogMjAwcHg7XHJcbiAgICAgIGhlaWdodDogMzRweDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcclxuICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgc3BhbiB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMTRweCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC50eXBlLXByb21vIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBzdmcge1xyXG4gICAgICAgIHdpZHRoOiAyNXB4O1xyXG4gICAgICAgIGhlaWdodDogMjVweDtcclxuICAgICAgfVxyXG4gICAgICBzcGFuIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMTJweCk7XHJcbiAgICAgIH1cclxuICAgICAgJi5wcm9tby10aW1lLCAmLnByb21vLWluZm8ge1xyXG4gICAgICAgIGNvbG9yOiAjNTI5NDA3O1xyXG4gICAgICB9XHJcbiAgICAgICYucHJvbW8tYm9uUGxhbiB7XHJcbiAgICAgICAgY29sb3I6ICNmNWE2MjM7XHJcbiAgICAgIH1cclxuICAgICAgJi5wcm9tby1wcmljZSB7XHJcbiAgICAgICAgY29sb3I6ICNGQjY2NjA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5saW5rLWRldGFpbCB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxNHB4KTtcclxuICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vQ0FSRCBBdXRvUHJvbW9cclxuLmMtY2FyZC1hdXRvUHJvbW8ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtYXgtd2lkdGg6IDI3NXB4O1xyXG4gIG1hcmdpbjogYXV0bztcclxuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGRiZGQ7XHJcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICBjb2xvcjogIzE5MkM0RTtcclxuICBvdmVyZmxvdy14OiBoaWRkZW47XHJcblxyXG4gIGJveC1zaGFkb3c6IDAgM3B4IDJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MsIGJveC1zaGFkb3cgLjNzLCAtd2Via2l0LWJveC1zaGFkb3cgLjNzO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBjb2xvcjogJGNvbG9yLWJsdWU7XHJcbiAgICBib3gtc2hhZG93OiAwIDNweCAycHggcmdiYSgwLCAwLCAwLCAwLjQpO1xyXG4gICAgLy9oZWFkZXJcclxuICAgIC5oZWFkZXIge1xyXG4gICAgICAuaC1ncmlkX19pdGVtIHtcclxuICAgICAgICAvL1RpdGxlXHJcbiAgICAgICAgJi5pdGVtLXRpdGxlIHtcclxuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmMtY2FyZC1vZmZyZV9faXRlbSB7XHJcbiAgICAvL2NvbnRlbnQgYXV0b1Byb21vXHJcbiAgICAuY29udGVudC1hdXRvUHJvbW8ge1xyXG4gICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgfVxyXG4gICAgLy9oZWFkZXJcclxuICAgIC5oZWFkZXIge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAuaC1ncmlkIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgfVxyXG4gICAgICAuaC1ncmlkX19pdGVtIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAvL1BpY3RvXHJcbiAgICAgICAgJi5pdGVtLXBpY3RvIHtcclxuICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgICAgIHdpZHRoOiA0NXB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vVGl0bGVcclxuICAgICAgICAmLml0ZW0tdGl0bGUge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxN3B4KTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vY29udGVudFxyXG4gICAgLmNvbnRlbnQge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgbWFyZ2luLXRvcDogMzVweDtcclxuXHJcbiAgICAgIC50eXBlLWluZm8ge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAvL2NvbnRlbnQgZm9vdGVyXHJcbiAgICAuY29udGVudC1mb290ZXIge1xyXG4gICAgICAuZW0tYnRuIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdG9wOiAtNHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDI1cHg7XHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vTUVESUEgUVVFUklFU1xyXG5AaW5jbHVkZSBtcSgkZnJvbTogMTAyNHB4KSB7XHJcbiAgLmMtY2FyZC1vZmZyZV9faXRlbSB7XHJcbiAgICAvL2NvbnRlbnQgb2ZmcmVcclxuICAgIC5jb250ZW50LW9mZnJlIHtcclxuICAgICAgLy9oZWFkZXJcclxuICAgICAgLmhlYWRlciB7XHJcbiAgICAgICAgLy9QcmljZVxyXG4gICAgICAgIC5wcmljZSB7XHJcbiAgICAgICAgICAudGV4dC10YWxsIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDU1cHgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLnRleHQtc21hbGwge1xyXG4gICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMjNweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc3VwIHtcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMjNweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc3ViIHtcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoMTdweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLy9tZW50aW9uXHJcbiAgICAgICAgLm1lbnRpb24ge1xyXG4gICAgICAgICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDEycHgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy9DQVJEIEF1dG9Qcm9tb1xyXG4gIC5jLWNhcmQtYXV0b1Byb21vIHtcclxuICAgIC5jLWNhcmQtb2ZmcmVfX2l0ZW0ge1xyXG4gICAgICAvL2hlYWRlclxyXG4gICAgICAuaGVhZGVyIHtcclxuICAgICAgICAuaC1ncmlkX19pdGVtIHtcclxuICAgICAgICAgIC8vVGl0bGVcclxuICAgICAgICAgICYuaXRlbS10aXRsZSB7XHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgyMnB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9fY29tcG9uZW50cy5jYXJkLnNjc3MiLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgI0NvZGUgUHJvbW9cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uYy1jb2RlUHJvbW8taGVhZGVyIHtcbiAgLmMtZGF0ZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxMXB4KTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgLmMtZGF0ZV9faXRlbSB7XG4gICAgICBtYXJnaW46IGF1dG8gMDtcbiAgICB9XG5cbiAgICAuZGF0ZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgfVxuICB9XG5cbiAgLmMtZGVzY3JpcHRpZiB7XG4gICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDE2cHgpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIH1cblxuICAmLmxvZ28ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAuby1mbGV4IHtcbiAgICAgIC5vLWZsZXhfX2l0ZW0ge1xuICAgICAgICAmLmxvZ28ge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDRweDtcbiAgICAgICAgICByaWdodDogMTFweDtcbiAgICAgICAgIC8qIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ncmV5LTE7Ki9cbiAgICAgICAgICB3aWR0aDogNjVweDtcbiAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogNDAwcHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE0NXB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE3NHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jLWZpbHRlci1saXN0UHJvbW8ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMCAwIDE1cHg7XG4gIEBpbmNsdWRlIG1xKCRmcm9tOiA0ODBweCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cblxuLmMtZmlsdGVyLWxpc3RQcm9tb19faXRlbSB7XG4gIHdpZHRoOiAxNTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDkwcHg7XG4gIH1cbiAgJi5zZWxlY3RlZCB7XG4gICAgLmMtZmlsdGVyLW9wdGlvblByb21vIHtcbiAgICAgIC5zb3J0LWNoZWNrIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jLWljby1maWx0ZXIge1xuICAgIHdpZHRoOiAyMnB4O1xuICAgIGhlaWdodDogMjJweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuICAudGV4dC1maWx0ZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuXG4gICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDE0cHgpO1xuICB9XG4gIEBpbmNsdWRlIG1xKCRmcm9tOiA0ODBweCkge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLmMtZmlsdGVyLW9wdGlvblByb21vIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTA1cHg7XG4gIGhlaWdodDogMjRweDtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG5cbiAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbiAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDE0cHgpO1xuICBpbnB1dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYy1maWx0ZXItbGFiZWwge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbiAgLnNvcnQtY2hlY2sge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogLTE4cHg7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBzdmcge1xuICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgY29sb3I6ICRjb2xvci1ibHVlO1xuICAgIH1cbiAgfVxuXG59XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9fY29tcG9uZW50cy5jb2RlUHJvbW8uc2NzcyIsIi5lbS1idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDM4cHg7XG4gIG1hcmdpbjogYXV0bztcblxuICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICBib3JkZXI6IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDE4cHgpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICYuY29sb3ItMDEge1xuICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItY29yYWlsO1xuICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgICY6aG92ZXIsICY6YWN0aXZlIHtcbiAgICAgICBjb2xvcjokY29sb3ItY29yYWlsO1xuICAgICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWNvcmFpbDtcbiAgICAgfVxuICAgfVxuICAmLmNvbG9yLTAxLS11bmkge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1jb3JhaWw7XG4gICAgY29sb3I6ICNGRkZGRkY7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAgICY6aG92ZXIsICY6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiNGRkZGRkY7XG4gICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJGNvbG9yLWNvcmFpbCwgMzAlKTtcbiAgICB9XG4gIH1cbiAgICYuY29sb3ItMDIge1xuICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZTtcbiAgICAgY29sb3I6ICNGRkZGRkY7XG5cbiAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgICY6aG92ZXIsICY6YWN0aXZlIHtcbiAgICAgICBjb2xvcjogJGNvbG9yLWJsdWU7XG4gICAgICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItYmx1ZTtcbiAgICAgfVxuICAgfVxuICAgJi5jb2xvci0wMyB7XG4gICAgYmFja2dyb3VuZDogIzQ5YTI2MjtcbiAgICBjb2xvcjogI0ZGRkZGRjtcblxuICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICAmOmhvdmVyLCAmOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogIzQ5YTI2MjtcbiAgICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjNDlhMjYyO1xuICAgIH1cbiAgfVxuXG4gICYuYm9yZGVyLTAxIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItY29yYWlsO1xuICAgIGNvbG9yOiAkY29sb3ItY29yYWlsO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICAmOmhvdmVyLCAmOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgIGJhY2tncm91bmQ6JGNvbG9yLWNvcmFpbDtcbiAgICB9XG4gIH1cbiAgJi5ib3JkZXItMDIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ibHVlO1xuICAgIGNvbG9yOiAkY29sb3ItYmx1ZTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG5cbiAgICAmOmhvdmVyLCAmOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlO1xuICAgIH1cbiAgfVxuICAmLmV4dCB7XG4gICAgcGFkZGluZzogMTVweDtcbiAgfVxufVxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL2Fzc2V0cy9zYXNzL2NvbXBvbmVudHMvZW1waGFzZXMvX2VtcGhhc2VzLmJ0bi5zY3NzIiwiLmVtLXJlYm9uZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkOGQ4ZDg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgLnRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItY29yYWlsO1xuICB9XG59XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9lbXBoYXNlcy9fZW1waGFzZXMucmVib25kLnNjc3MiLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PXx8XG4vLyAgT3ZlcndyaXRlcyBpbnVpdGNzcy91dGlsaXRpZXMvd2lkdGhzIGFzIGl0IHdpbGwgYmUgdXNlZCBhbG9uZ3NpZGUgby1mbGV4XG4vLyAgaW5zdGVhZCBvZiBvLWxheW91dFxuLy9cbi8vICBOb3RlOiBTaG91bGQgbm90IGJlIHVzZWQgYWxvbmdzaWRlIGludWl0Y3NzJ3MgdXRpbGl0aWVzLndpZHRoXG4vLyAgUmVmZXJlbmNlOiBodHRwczovL2dpdGh1Yi5jb20vaW51aXRjc3MvaW51aXRjc3MvYmxvYi9kZXZlbG9wL3V0aWxpdGllcy9fdXRpbGl0aWVzLndpZHRocy5zY3NzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PXx8XG5cbi8vIEluaGVyaXRlZCBmcm9tIGludWl0Y3NzXG4kaW51aXQtZnJhY3Rpb25zOiAxIDIgMyA0IDUgNiA3IDggOSAxMCAhZGVmYXVsdDtcbiRpbnVpdC1vZmZzZXRzOiBmYWxzZSAhZGVmYXVsdDtcbiRpbnVpdC13aWR0aHMtZGVsaW1pdGVyOiBcXC8gIWRlZmF1bHQ7XG4kaW51aXQtd2lkdGhzLWJyZWFrcG9pbnQtc2VwYXJhdG9yOiBcXEAgIWRlZmF1bHQ7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09fHxcbi8vICBNaXhpbiB0byBzcGl0IG91dCB3aWR0aCBjbGFzc2VzIHNpbWlsYXIgdG8gaW51aXRjc3MgZXhjZXB0IHRoYXRcbi8vICB1LXB1c2gvdS1wdWxsIGlzIHJlcGxhY2VkIHdpdGggdS1vZmZzZXQgd2hpY2ggaXRzIGRpcmVjdGlvbiBpcyBpbmZsdWVuY2VkXG4vLyAgYnkgby1mbGV4J3MgZGlyZWN0aW9uIGFuZCBpZiAkaW51aXQtb2Zmc2V0cyBpcyBzZXQgdG8gdHJ1ZVxuLy9cbi8vICBlLmcuXG4vLyAgPGRpdiBjbGFzcz1cInUtMS8yXCI+PC9kaXY+XG4vLyAgPGRpdiBjbGFzcz1cInUtMS8yIHUtb2Zmc2V0LTEvMlwiPjwvZGl2PlxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT18fFxuXG5AbWl4aW4gaW51aXQtZmxleHdpZHRocygkZnJhY3Rpb25zLCAkYnJlYWtwb2ludDpudWxsKSB7XG4gIEBlYWNoICRkZW5vbWluYXRvciBpbiAkZnJhY3Rpb25zIHtcbiAgICBAZm9yICRudW1lcmF0b3IgZnJvbSAxIHRocm91Z2ggJGRlbm9taW5hdG9yIHtcbiAgICAgIC51LSN7JG51bWVyYXRvcn0jeyRpbnVpdC13aWR0aHMtZGVsaW1pdGVyfSN7JGRlbm9taW5hdG9yfSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgZmxleDogMCAwICgkbnVtZXJhdG9yIC8gJGRlbm9taW5hdG9yKSAqIDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiAoJG51bWVyYXRvciAvICRkZW5vbWluYXRvcikgKiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIEBpZiAoJGludWl0LW9mZnNldHMgPT0gdHJ1ZSkge1xuICAgICAgICAuby1mbGV4Om5vdCguby1mbGV4LS1yZXZlcnNlZCkgLm8tZmxleF9faXRlbS51LW9mZnNldC0jeyRudW1lcmF0b3J9I3skaW51aXQtd2lkdGhzLWRlbGltaXRlcn0jeyRkZW5vbWluYXRvcn0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6ICgkbnVtZXJhdG9yIC8gJGRlbm9taW5hdG9yKSAqIDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5vLWZsZXguby1mbGV4LS1yZXZlcnNlZCAuby1mbGV4X19pdGVtLnUtb2Zmc2V0LSN7JG51bWVyYXRvcn0jeyRpbnVpdC13aWR0aHMtZGVsaW1pdGVyfSN7JGRlbm9taW5hdG9yfSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICgkbnVtZXJhdG9yIC8gJGRlbm9taW5hdG9yKSAqIDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBpbnVpdC1mbGV4d2lkdGhzKCRpbnVpdC1mcmFjdGlvbnMpO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PXx8XG4vLyAgU2ltaWxhciB0byBpbnVpdGNzcyB1dGlsaXRpZXMud2lkdGhzLCAkbXEtYnJlYWtwb2ludHMgZGVmaW5lZCBhbGxvd3Ncbi8vICB5b3UgdG8gZG8gc29tZXRoaW5nIGxpa2UgdGhpcyBmb3IgYWRkaXRpb25hbCBjb250cm9sIHZpYSBtYXJrdXAgb25seVxuLy9cbi8vICBlLmcuXG4vLyAgPGRpdiBjbGFzcz1cIm8tZmxleF9faXRlbSB1LTEvMkBtb2JpbGVcIj48L2Rpdj5cbi8vICA8ZGl2IGNsYXNzPVwiby1mbGV4X19pdGVtIHUtMS8zQHRhYmxldCB1LW9mZnNldC0xLzNAdGFibGV0XCI+PC9kaXY+XG4vLyAgPGRpdiBjbGFzcz1cIm8tZmxleF9faXRlbSB1LTEvNEBkZXNrdG9wXCI+PC9kaXY+XG4vLyAgPGRpdiBjbGFzcz1cIm8tZmxleF9faXRlbSB1LTEvNUB3aWRlIHUtb2Zmc2V0LTIvNUB3aWRlXCI+PC9kaXY+XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PXx8XG5cbkBpZiAodmFyaWFibGUtZXhpc3RzKG1xLWJyZWFrcG9pbnRzKSkge1xuICBAZWFjaCAkYnAtbmFtZSwgJGJwLXZhbHVlIGluICRtcS1icmVha3BvaW50cyB7XG4gICAgQGluY2x1ZGUgbXEoJGZyb206ICRicC1uYW1lKSB7XG4gICAgICBAaW5jbHVkZSBpbnVpdC1mbGV4d2lkdGhzKCRpbnVpdC1mcmFjdGlvbnMsICN7JGludWl0LXdpZHRocy1icmVha3BvaW50LXNlcGFyYXRvcn0jeyRicC1uYW1lfSk7XG4gICAgfVxuICB9XG59XG5cbi51LXdpZHRoLWZ1bGwge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnUtbXdpZHRoLTE1MCB7XG4gIG1heC13aWR0aDogMTUwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udS1td2lkdGgtMjAwIHtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi51LW13aWR0aC0yNTAge1xuICBtYXgtd2lkdGg6IDI1MHB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4udS1td2lkdGgtMzMwIHtcbiAgbWF4LXdpZHRoOiAzMzBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi51LW13aWR0aC0zMDAge1xuICBtYXgtd2lkdGg6IDMwMHB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnUtbXdpZHRoLTUwMCB7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udS1oZWlnaHQzOCB7XG4gIGhlaWdodDogMzhweDtcbn1cblxuLnUtaGVpZ2h0NTAge1xuICBoZWlnaHQ6IDUwcHg7XG59XG5cblxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vYXNzZXRzL3Nhc3MvdXRpbGl0aWVzL191dGlsaXRpZXMud2lkdGhzLnNjc3MiLCIudS1iZy13aGl0ZSB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG59XG5cbi51LWJnLWJsdWUge1xuICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZTtcbn1cbi51LWJnLWJsdWUtLTEge1xuICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZS0xO1xufVxuLnUtYmctYmx1ZS0tMiB7XG4gIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlLTI7XG59XG5cbi51LWJnLWdyZXkge1xuICBiYWNrZ3JvdW5kOiAkY29sb3ItZ3JleTtcbn1cblxuLnUtYmctZ3JleS0tMSB7XG4gIGJhY2tncm91bmQ6ICRjb2xvci1ncmV5O1xufVxuXG5cbi8qVGV4dGVzIENvbG9yKi9cbi51LXRleHQtLXdoaXRlIHtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi51LXRleHQtLWNvcmFpbCB7XG4gIGNvbG9yOiAkY29sb3ItY29yYWlsO1xufVxuXG4udS10ZXh0LS1ibHVlIHtcbiAgY29sb3I6ICRjb2xvci1ibHVlIWltcG9ydGFudDtcbn1cblxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vYXNzZXRzL3Nhc3MvdXRpbGl0aWVzL191dGlsaXRpZXMuYmFja2dyb3VuZC5zY3NzIiwiLypcblRoaXMgLnNjc3MgbG9vcCB3aWxsIGNyZWF0ZSBcIm1hcmdpbiBoZWxwZXJzXCIgYW5kIFwicGFkZGluZyBoZWxwZXJzXCIgZm9yIHVzZSBpbiB5b3VyIHdlYiBwcm9qZWN0cy5cbkl0IHdpbGwgZ2VuZXJhdGUgc2V2ZXJhbCBjbGFzc2VzIHN1Y2ggYXM6XG4udS1tLXItMTAgd2hpY2ggZ2l2ZXMgbWFyZ2luLXJpZ2h0IDEwIHBpeGVscy5cbi51LW0tci0xNSBnaXZlcyBNQVJHSU4gdG8gdGhlIFJJR0hUIDE1IHBpeGVscy5cbi51LW0tdC0xNSBnaXZlcyBNQVJHSU4gdG8gdGhlIFRPUCAxNSBwaXhlbHMgYW5kIHNvIG9uLlxuLnUtcC1iLTUgZ2l2ZXMgUEFERElORyB0byB0aGUgQk9UVE9NIG9mIDUgcGl4ZWxzXG4udS1wLWwtNDAgZ2l2ZXMgUEFERElORyB0byB0aGUgTEVGVCBvZiA0MCBwaXhlbHNcblRoZSBmaXJzdCBsZXR0ZXIgaXMgXCJtXCIgb3IgXCJwXCIgZm9yIE1BUkdJTiBvciBQQURESU5HXG5TZWNvbmQgbGV0dGVyIGlzIFwidFwiLCBcImJcIiwgXCJsXCIsIG9yIFwiclwiIGZvciBUT1AsIEJPVFRPTSwgTEVGVCwgb3IgUklHSFRcblRoaXJkIGxldHRlciBpcyB0aGUgbnVtYmVyIG9mIHNwYWNpbmcgaW4gcGl4ZWxzLiBBZGp1c3QgdGhlIGFtb3VudHMgZ2VuZXJhdGVkIGJ5IGVkaXRpbmcgdGhlICRzcGFjZWFtb3VudHMgdmFyaWFibGUgYmVsb3cuXG4qL1xuXG4kc3BhY2VhbW91bnRzOiAoMCwgNSwgMTAsIDE1LCAyMCwgMjUsIDMwLCAzNSwgNDAsIDQ1LCA1MCwgNzUsIDEwMCk7IC8vIEFkanVzdCB0aGlzIHRvIGluY2x1ZGUgdGhlIHBpeGVsIGFtb3VudHMgeW91IG5lZWQuXG4kc2lkZXM6ICh0b3AsIGJvdHRvbSwgbGVmdCwgcmlnaHQpOyAvLyBMZWF2ZSB0aGlzIHZhcmlhYmxlIGFsb25lXG5cbkBlYWNoICRzcGFjZSBpbiAkc3BhY2VhbW91bnRzIHtcbiAgQGVhY2ggJHNpZGUgaW4gJHNpZGVzIHtcbiAgICAudS1tLSN7c3RyLXNsaWNlKCRzaWRlLCAwLCAxKX0tI3skc3BhY2V9IHtcbiAgICAgIG1hcmdpbi0jeyRzaWRlfTogI3skc3BhY2V9cHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAudS1wLSN7c3RyLXNsaWNlKCRzaWRlLCAwLCAxKX0tI3skc3BhY2V9IHtcbiAgICAgIHBhZGRpbmctI3skc2lkZX06ICN7JHNwYWNlfXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cblxuLypcbiAgUlVOIEdVTFAgdG8gZ2VuZXJhdGUgdGhlIGNsYXNzZXMuIE5vdyB5b3UgY2FuIHVzZSB0aGVzZSBoZWxwZXJzIHRvIGN1c3RvbWl6ZSBzcGFjaW5nIG9uIEhUTUwgZWxlbWVudHMuXG4qL1xuXG4udS1wbHItMTUge1xuICBwYWRkaW5nOiAwIDE1cHg7XG59XG5cbi51LXAtMTUge1xuICBwYWRkaW5nOiAxNXB4O1xufVxuLnUtcC0yNCB7XG4gIHBhZGRpbmc6IDI0cHg7XG59XG5cbi51LXB0bHItMTUge1xuICBwYWRkaW5nOiAxNXB4IDE1cHggMDtcbn1cblxuLnUtcHRiLTE1IHtcbiAgcGFkZGluZzogMTVweCAwO1xufVxuXG4udS1wdGItMzAge1xuICBwYWRkaW5nOiAzMHB4IDA7XG59XG5cbi51LXB0Yi00MCB7XG4gIHBhZGRpbmc6IDQwcHggMDtcbn1cblxuLnUtcC0zMC0xNSB7XG4gIHBhZGRpbmc6IDMwcHggMTVweDtcbn1cblxuLnUtcC0zNS0xNSB7XG4gIHBhZGRpbmc6IDM1cHggMTVweDtcbn1cblxuLnUtcC00MC0xNSB7XG4gIHBhZGRpbmc6IDQwcHggMTVweDtcbn1cblxuLnUtcC00NS0xNSB7XG4gIHBhZGRpbmc6IDQ1cHggMTVweDtcbn1cblxuXG4udS1tLWF1dG8ge1xuICBtYXJnaW46IGF1dG87XG59XG5cbi51LW1iLTAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4udS1tLTAge1xuICBtYXJnaW46IDA7XG59XG5cbi51LW10Yi0xNSB7XG4gIG1hcmdpbjogMTVweCAwO1xufVxuXG4udS1tdGItMzAge1xuICBtYXJnaW46IDMwcHggMDtcbn1cblxuLnUtbXQtMzAge1xuICBtYXJnaW46IDMwcHggMCAwO1xufVxuXG4udS1tci0wIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL2Fzc2V0cy9zYXNzL3V0aWxpdGllcy9fdXRpbGl0aWVzLm1hcmdlcy5zY3NzIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICNISURFXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qKlxuICogSGlkZSB2aXN1YWxseSBhbmQgZnJvbSBzY3JlZW4gcmVhZGVycy5cbiAqL1xuXG4udS1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udS1oaWRlLW1vYiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgJi51LXNob3ctZGVzayB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgbXEoJGZyb206ICRtcS1oZWFkZXItZGVzaykge1xuICAgICYudS1zaG93LWRlc2stbmF2IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XG4gICAgJi51LXNob3ctdGFibGV0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG4udS1zaG93LW1vYiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xuICAgICYudS1oaWRlLWRlc2sge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgbXEoJGZyb206ICRtcS1oZWFkZXItZGVzaykge1xuICAgICYudS1oaWRlLWRlc2stbmF2IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL2Fzc2V0cy9zYXNzL3V0aWxpdGllcy9fdXRpbGl0aWVzLmhpZGUuc2NzcyIsIi51LWJvbGQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4udS10ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnUtdGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udS10ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udS10ZXh0LW1haiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi51LWhlaWdodC0tZnVsbCB7XG4gIGhlaWdodDogYXV0byFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgaGVpZ2h0OiAxMDAlIWltcG9ydGFudDtcbiAgfVxufVxuXG4udS1oZWlnaHQtLWF1dG8ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi51LWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi51LXRleHREZWNvIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi51LXRleHREZWNvLS1ub25lIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4udS1mbG9hdC0tbm9uZSB7XG4gIGZsb2F0OiBub25lO1xufVxuXG4udS1mbG9hdC0tcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi51LWZsb2F0LS1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi51LWZ6LS0xNCB7XG4gIGZvbnQtc2l6ZTogMTRweCFpbXBvcnRhbnQ7XG59XG4udS1mei0tMjAge1xuICBmb250LXNpemU6IDIwcHghaW1wb3J0YW50O1xufVxuLnUtZnotLTI1IHtcbiAgZm9udC1zaXplOiAyNXB4IWltcG9ydGFudDtcbn1cbi51LWZ6LS0zMCB7XG4gIGZvbnQtc2l6ZTogMzBweCFpbXBvcnRhbnQ7XG59XG5cblxuLnUtYm9yZGVyLWdyZXkge1xuICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZ3JleSFpbXBvcnRhbnQ7XG59XG5cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL2Fzc2V0cy9zYXNzL3V0aWxpdGllcy9fdXRpbGl0aWVzLmhlbHBlci5zY3NzIl0sInNvdXJjZVJvb3QiOiIifQ==*/