.row {
  box-sizing: border-box;
  margin: 0 auto;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex: 0 1 auto;
      flex: 0 1 auto;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.row.reverse {
  -ms-flex-direction: row-reverse;
      flex-direction: row-reverse;
}

.row.natural-height {
  -ms-flex-align: start;
      align-items: flex-start;
}

.row.flex-column {
  -ms-flex-direction: column;
      flex-direction: column;
}

.col {
  box-sizing: border-box;
  -ms-flex-positive: 1;
      flex-grow: 1;
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  max-width: 100%;
  padding: 1rem;
}

.col.reverse {
  -ms-flex-direction: column-reverse;
      flex-direction: column-reverse;
}

.first {
  -ms-flex-order: -1;
      order: -1;
}

.last {
  -ms-flex-order: 1;
      order: 1;
}

.align-start {
  -ms-flex-item-align: start;
      align-self: flex-start;
}

.align-end {
  -ms-flex-item-align: end;
      align-self: flex-end;
}

.align-center {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}

.align-baseline {
  -ms-flex-item-align: baseline;
      align-self: baseline;
}

.align-stretch {
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
}

.col-xs {
  box-sizing: border-box;
  -ms-flex-positive: 1;
      flex-grow: 1;
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  max-width: 100%;
  padding: 1rem;
}

.col-xs-1 {
  box-sizing: border-box;
  -ms-flex-preferred-size: 8.3333333333%;
      flex-basis: 8.3333333333%;
  max-width: 8.3333333333%;
  padding: 1rem;
}

.col-xs-offset-1 {
  margin-left: 8.3333333333%;
}

.col-xs-2 {
  box-sizing: border-box;
  -ms-flex-preferred-size: 16.6666666667%;
      flex-basis: 16.6666666667%;
  max-width: 16.6666666667%;
  padding: 1rem;
}

.col-xs-offset-2 {
  margin-left: 16.6666666667%;
}

.col-xs-3 {
  box-sizing: border-box;
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
  max-width: 25%;
  padding: 1rem;
}

.col-xs-offset-3 {
  margin-left: 25%;
}

.col-xs-4 {
  box-sizing: border-box;
  -ms-flex-preferred-size: 33.3333333333%;
      flex-basis: 33.3333333333%;
  max-width: 33.3333333333%;
  padding: 1rem;
}

.col-xs-offset-4 {
  margin-left: 33.3333333333%;
}

.col-xs-5 {
  box-sizing: border-box;
  -ms-flex-preferred-size: 41.6666666667%;
      flex-basis: 41.6666666667%;
  max-width: 41.6666666667%;
  padding: 1rem;
}

.col-xs-offset-5 {
  margin-left: 41.6666666667%;
}

.col-xs-6 {
  box-sizing: border-box;
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  max-width: 50%;
  padding: 1rem;
}

.col-xs-offset-6 {
  margin-left: 50%;
}

.col-xs-7 {
  box-sizing: border-box;
  -ms-flex-preferred-size: 58.3333333333%;
      flex-basis: 58.3333333333%;
  max-width: 58.3333333333%;
  padding: 1rem;
}

.col-xs-offset-7 {
  margin-left: 58.3333333333%;
}

.col-xs-8 {
  box-sizing: border-box;
  -ms-flex-preferred-size: 66.6666666667%;
      flex-basis: 66.6666666667%;
  max-width: 66.6666666667%;
  padding: 1rem;
}

.col-xs-offset-8 {
  margin-left: 66.6666666667%;
}

.col-xs-9 {
  box-sizing: border-box;
  -ms-flex-preferred-size: 75%;
      flex-basis: 75%;
  max-width: 75%;
  padding: 1rem;
}

.col-xs-offset-9 {
  margin-left: 75%;
}

.col-xs-10 {
  box-sizing: border-box;
  -ms-flex-preferred-size: 83.3333333333%;
      flex-basis: 83.3333333333%;
  max-width: 83.3333333333%;
  padding: 1rem;
}

.col-xs-offset-10 {
  margin-left: 83.3333333333%;
}

.col-xs-11 {
  box-sizing: border-box;
  -ms-flex-preferred-size: 91.6666666667%;
      flex-basis: 91.6666666667%;
  max-width: 91.6666666667%;
  padding: 1rem;
}

.col-xs-offset-11 {
  margin-left: 91.6666666667%;
}

.col-xs-12 {
  box-sizing: border-box;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  max-width: 100%;
  padding: 1rem;
}

.col-xs-offset-12 {
  margin-left: 100%;
}

.row.start-xs {
  -ms-flex-pack: start;
      justify-content: flex-start;
}

.row.center-xs {
  -ms-flex-pack: center;
      justify-content: center;
}

.row.end-xs {
  -ms-flex-pack: end;
      justify-content: flex-end;
}

.row.top-xs {
  -ms-flex-align: start;
      align-items: flex-start;
}

.row.middle-xs {
  -ms-flex-align: center;
      align-items: center;
}

.row.bottom-xs {
  -ms-flex-align: end;
      align-items: flex-end;
}

.row.around-xs {
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

.row.between-xs {
  -ms-flex-pack: justify;
      justify-content: space-between;
}

.first-xs {
  -ms-flex-order: -1;
      order: -1;
}

.last-xs {
  -ms-flex-order: 1;
      order: 1;
}

@media only screen and (min-width: 41rem) {
  .col-sm {
    box-sizing: border-box;
    -ms-flex-positive: 1;
        flex-grow: 1;
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    max-width: 100%;
    padding: 1rem;
  }
  .col-sm-1 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 8.3333333333%;
        flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    padding: 1rem;
  }
  .col-sm-offset-1 {
    margin-left: 8.3333333333%;
  }
  .col-sm-2 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 16.6666666667%;
        flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    padding: 1rem;
  }
  .col-sm-offset-2 {
    margin-left: 16.6666666667%;
  }
  .col-sm-3 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
    padding: 1rem;
  }
  .col-sm-offset-3 {
    margin-left: 25%;
  }
  .col-sm-4 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 33.3333333333%;
        flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    padding: 1rem;
  }
  .col-sm-offset-4 {
    margin-left: 33.3333333333%;
  }
  .col-sm-5 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 41.6666666667%;
        flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    padding: 1rem;
  }
  .col-sm-offset-5 {
    margin-left: 41.6666666667%;
  }
  .col-sm-6 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
    padding: 1rem;
  }
  .col-sm-offset-6 {
    margin-left: 50%;
  }
  .col-sm-7 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 58.3333333333%;
        flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    padding: 1rem;
  }
  .col-sm-offset-7 {
    margin-left: 58.3333333333%;
  }
  .col-sm-8 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 66.6666666667%;
        flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    padding: 1rem;
  }
  .col-sm-offset-8 {
    margin-left: 66.6666666667%;
  }
  .col-sm-9 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
    padding: 1rem;
  }
  .col-sm-offset-9 {
    margin-left: 75%;
  }
  .col-sm-10 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 83.3333333333%;
        flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    padding: 1rem;
  }
  .col-sm-offset-10 {
    margin-left: 83.3333333333%;
  }
  .col-sm-11 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 91.6666666667%;
        flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    padding: 1rem;
  }
  .col-sm-offset-11 {
    margin-left: 91.6666666667%;
  }
  .col-sm-12 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
    padding: 1rem;
  }
  .col-sm-offset-12 {
    margin-left: 100%;
  }
  .row.start-sm {
    -ms-flex-pack: start;
        justify-content: flex-start;
  }
  .row.center-sm {
    -ms-flex-pack: center;
        justify-content: center;
  }
  .row.end-sm {
    -ms-flex-pack: end;
        justify-content: flex-end;
  }
  .row.top-sm {
    -ms-flex-align: start;
        align-items: flex-start;
  }
  .row.middle-sm {
    -ms-flex-align: center;
        align-items: center;
  }
  .row.bottom-sm {
    -ms-flex-align: end;
        align-items: flex-end;
  }
  .row.around-sm {
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
  .row.between-sm {
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
  .first-sm {
    -ms-flex-order: -1;
        order: -1;
  }
  .last-sm {
    -ms-flex-order: 1;
        order: 1;
  }
}

@media only screen and (min-width: 65rem) {
  .col-md {
    box-sizing: border-box;
    -ms-flex-positive: 1;
        flex-grow: 1;
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    max-width: 100%;
    padding: 1rem;
  }
  .col-md-1 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 8.3333333333%;
        flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    padding: 1rem;
  }
  .col-md-offset-1 {
    margin-left: 8.3333333333%;
  }
  .col-md-2 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 16.6666666667%;
        flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    padding: 1rem;
  }
  .col-md-offset-2 {
    margin-left: 16.6666666667%;
  }
  .col-md-3 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
    padding: 1rem;
  }
  .col-md-offset-3 {
    margin-left: 25%;
  }
  .col-md-4 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 33.3333333333%;
        flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    padding: 1rem;
  }
  .col-md-offset-4 {
    margin-left: 33.3333333333%;
  }
  .col-md-5 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 41.6666666667%;
        flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    padding: 1rem;
  }
  .col-md-offset-5 {
    margin-left: 41.6666666667%;
  }
  .col-md-6 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
    padding: 1rem;
  }
  .col-md-offset-6 {
    margin-left: 50%;
  }
  .col-md-7 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 58.3333333333%;
        flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    padding: 1rem;
  }
  .col-md-offset-7 {
    margin-left: 58.3333333333%;
  }
  .col-md-8 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 66.6666666667%;
        flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    padding: 1rem;
  }
  .col-md-offset-8 {
    margin-left: 66.6666666667%;
  }
  .col-md-9 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
    padding: 1rem;
  }
  .col-md-offset-9 {
    margin-left: 75%;
  }
  .col-md-10 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 83.3333333333%;
        flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    padding: 1rem;
  }
  .col-md-offset-10 {
    margin-left: 83.3333333333%;
  }
  .col-md-11 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 91.6666666667%;
        flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    padding: 1rem;
  }
  .col-md-offset-11 {
    margin-left: 91.6666666667%;
  }
  .col-md-12 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
    padding: 1rem;
  }
  .col-md-offset-12 {
    margin-left: 100%;
  }
  .row.start-md {
    -ms-flex-pack: start;
        justify-content: flex-start;
  }
  .row.center-md {
    -ms-flex-pack: center;
        justify-content: center;
  }
  .row.end-md {
    -ms-flex-pack: end;
        justify-content: flex-end;
  }
  .row.top-md {
    -ms-flex-align: start;
        align-items: flex-start;
  }
  .row.middle-md {
    -ms-flex-align: center;
        align-items: center;
  }
  .row.bottom-md {
    -ms-flex-align: end;
        align-items: flex-end;
  }
  .row.around-md {
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
  .row.between-md {
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
  .first-md {
    -ms-flex-order: -1;
        order: -1;
  }
  .last-md {
    -ms-flex-order: 1;
        order: 1;
  }
}

@media only screen and (min-width: 91rem) {
  .col-lg {
    box-sizing: border-box;
    -ms-flex-positive: 1;
        flex-grow: 1;
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    max-width: 100%;
    padding: 1rem;
  }
  .col-lg-1 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 8.3333333333%;
        flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    padding: 1rem;
  }
  .col-lg-offset-1 {
    margin-left: 8.3333333333%;
  }
  .col-lg-2 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 16.6666666667%;
        flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    padding: 1rem;
  }
  .col-lg-offset-2 {
    margin-left: 16.6666666667%;
  }
  .col-lg-3 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
    padding: 1rem;
  }
  .col-lg-offset-3 {
    margin-left: 25%;
  }
  .col-lg-4 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 33.3333333333%;
        flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    padding: 1rem;
  }
  .col-lg-offset-4 {
    margin-left: 33.3333333333%;
  }
  .col-lg-5 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 41.6666666667%;
        flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    padding: 1rem;
  }
  .col-lg-offset-5 {
    margin-left: 41.6666666667%;
  }
  .col-lg-6 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
    padding: 1rem;
  }
  .col-lg-offset-6 {
    margin-left: 50%;
  }
  .col-lg-7 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 58.3333333333%;
        flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    padding: 1rem;
  }
  .col-lg-offset-7 {
    margin-left: 58.3333333333%;
  }
  .col-lg-8 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 66.6666666667%;
        flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    padding: 1rem;
  }
  .col-lg-offset-8 {
    margin-left: 66.6666666667%;
  }
  .col-lg-9 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
    padding: 1rem;
  }
  .col-lg-offset-9 {
    margin-left: 75%;
  }
  .col-lg-10 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 83.3333333333%;
        flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    padding: 1rem;
  }
  .col-lg-offset-10 {
    margin-left: 83.3333333333%;
  }
  .col-lg-11 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 91.6666666667%;
        flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    padding: 1rem;
  }
  .col-lg-offset-11 {
    margin-left: 91.6666666667%;
  }
  .col-lg-12 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
    padding: 1rem;
  }
  .col-lg-offset-12 {
    margin-left: 100%;
  }
  .row.start-lg {
    -ms-flex-pack: start;
        justify-content: flex-start;
  }
  .row.center-lg {
    -ms-flex-pack: center;
        justify-content: center;
  }
  .row.end-lg {
    -ms-flex-pack: end;
        justify-content: flex-end;
  }
  .row.top-lg {
    -ms-flex-align: start;
        align-items: flex-start;
  }
  .row.middle-lg {
    -ms-flex-align: center;
        align-items: center;
  }
  .row.bottom-lg {
    -ms-flex-align: end;
        align-items: flex-end;
  }
  .row.around-lg {
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
  .row.between-lg {
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
  .first-lg {
    -ms-flex-order: -1;
        order: -1;
  }
  .last-lg {
    -ms-flex-order: 1;
        order: 1;
  }
}

@media only screen and (min-width: 121rem) {
  .col-xl {
    box-sizing: border-box;
    -ms-flex-positive: 1;
        flex-grow: 1;
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    max-width: 100%;
    padding: 1rem;
  }
  .col-xl-1 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 8.3333333333%;
        flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
    padding: 1rem;
  }
  .col-xl-offset-1 {
    margin-left: 8.3333333333%;
  }
  .col-xl-2 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 16.6666666667%;
        flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
    padding: 1rem;
  }
  .col-xl-offset-2 {
    margin-left: 16.6666666667%;
  }
  .col-xl-3 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
    padding: 1rem;
  }
  .col-xl-offset-3 {
    margin-left: 25%;
  }
  .col-xl-4 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 33.3333333333%;
        flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
    padding: 1rem;
  }
  .col-xl-offset-4 {
    margin-left: 33.3333333333%;
  }
  .col-xl-5 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 41.6666666667%;
        flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
    padding: 1rem;
  }
  .col-xl-offset-5 {
    margin-left: 41.6666666667%;
  }
  .col-xl-6 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
    padding: 1rem;
  }
  .col-xl-offset-6 {
    margin-left: 50%;
  }
  .col-xl-7 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 58.3333333333%;
        flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
    padding: 1rem;
  }
  .col-xl-offset-7 {
    margin-left: 58.3333333333%;
  }
  .col-xl-8 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 66.6666666667%;
        flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
    padding: 1rem;
  }
  .col-xl-offset-8 {
    margin-left: 66.6666666667%;
  }
  .col-xl-9 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
    padding: 1rem;
  }
  .col-xl-offset-9 {
    margin-left: 75%;
  }
  .col-xl-10 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 83.3333333333%;
        flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
    padding: 1rem;
  }
  .col-xl-offset-10 {
    margin-left: 83.3333333333%;
  }
  .col-xl-11 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 91.6666666667%;
        flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
    padding: 1rem;
  }
  .col-xl-offset-11 {
    margin-left: 91.6666666667%;
  }
  .col-xl-12 {
    box-sizing: border-box;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
    padding: 1rem;
  }
  .col-xl-offset-12 {
    margin-left: 100%;
  }
  .row.start-xl {
    -ms-flex-pack: start;
        justify-content: flex-start;
  }
  .row.center-xl {
    -ms-flex-pack: center;
        justify-content: center;
  }
  .row.end-xl {
    -ms-flex-pack: end;
        justify-content: flex-end;
  }
  .row.top-xl {
    -ms-flex-align: start;
        align-items: flex-start;
  }
  .row.middle-xl {
    -ms-flex-align: center;
        align-items: center;
  }
  .row.bottom-xl {
    -ms-flex-align: end;
        align-items: flex-end;
  }
  .row.around-xl {
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
  .row.between-xl {
    -ms-flex-pack: justify;
        justify-content: space-between;
  }
  .first-xl {
    -ms-flex-order: -1;
        order: -1;
  }
  .last-xl {
    -ms-flex-order: 1;
        order: 1;
  }
}

.col-gutter-lr {
  padding: 0 1rem;
}

.col-no-gutter {
  padding: 0;
}

.show {
  display: block !important;
}

.row.show {
  display: -ms-flexbox !important;
  display: flex !important;
}

.hide {
  display: none !important;
}

.show-xs {
  display: block !important;
}

.row.show-xs {
  display: -ms-flexbox !important;
  display: flex !important;
}

.hide-xs {
  display: none !important;
}

@media only screen and (max-width: 40rem) {
  .show-xs-only {
    display: block !important;
  }
  .row.show-xs-only {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .hide-xs-only {
    display: none !important;
  }
}

@media only screen and (min-width: 41rem) {
  .show-sm {
    display: block !important;
  }
  .row.show-sm {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .hide-sm {
    display: none !important;
  }
}

@media only screen and (min-width: 41rem) and (max-width: 64rem) {
  .show-sm-only {
    display: block !important;
  }
  .row.show-sm-only {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .hide-sm-only {
    display: none !important;
  }
}

@media only screen and (min-width: 65rem) {
  .show-md {
    display: block !important;
  }
  .row.show-md {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .hide-md {
    display: none !important;
  }
}

@media only screen and (min-width: 65rem) and (max-width: 90rem) {
  .show-md-only {
    display: block !important;
  }
  .row.show-md-only {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .hide-md-only {
    display: none !important;
  }
}

@media only screen and (min-width: 91rem) {
  .show-lg {
    display: block !important;
  }
  .row.show-lg {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .hide-lg {
    display: none !important;
  }
}

@media only screen and (min-width: 91rem) and (max-width: 120rem) {
  .show-lg-only {
    display: block !important;
  }
  .row.show-lg-only {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .hide-lg-only {
    display: none !important;
  }
}

@media only screen and (min-width: 121rem) {
  .show-xl {
    display: block !important;
  }
  .row.show-xl {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .hide-xl {
    display: none !important;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9ncmlkLnNjc3MiLCJtaXhpbnMvX2dyaWQtbWl4aW5zLnNjc3MiLCJ2YXJpYWJsZXMvX2dyaWQtdmFyaWFibGVzLnNjc3MiLCJtYWluLmNzcyIsIl92aXNpYmlsaXR5LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUE7RUNIRSx1QkFBdUI7RUFDdkIsZUFBZTtFQUNmLFlBQVk7RUFFWixxQkFBcUI7RUFDckIsY0FBYztFQUNkLG1CQUFlO01BQWYsZUFBZTtFQUNmLHdCQUFvQjtNQUFwQixvQkFBb0I7RUFDcEIsb0JBQWdCO01BQWhCLGdCQUFnQjtDREhqQjs7QUFFRDtFQ1VFLGdDQUE0QjtNQUE1Qiw0QkFBNEI7Q0RSN0I7O0FBRUQ7RUNVRSxzQkFBd0I7TUFBeEIsd0JBQXdCO0NEUnpCOztBQUVEO0VDVUUsMkJBQXVCO01BQXZCLHVCQUF1QjtDRFJ4Qjs7QUFFRDtFQzJCSSx1QkFBdUI7RUFDdkIscUJBQWE7TUFBYixhQUFhO0VBQ2IsMkJBQWM7TUFBZCxjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLGNDM0NTO0NGY1o7O0FBRUQ7RUNNRSxtQ0FBK0I7TUFBL0IsK0JBQStCO0NESmhDOztBQUVEO0VBQ0UsbUJBQVU7TUFBVixVQUFVO0NBQ1g7O0FBRUQ7RUFDRSxrQkFBUztNQUFULFNBQVM7Q0FDVjs7QUFFRDtFQUNFLDJCQUF1QjtNQUF2Qix1QkFBdUI7Q0FDeEI7O0FBRUQ7RUFDRSx5QkFBcUI7TUFBckIscUJBQXFCO0NBQ3RCOztBQUVEO0VBQ0UsNEJBQW1CO01BQW5CLDJCQUFtQjtNQUFuQixtQkFBbUI7Q0FDcEI7O0FBRUQ7RUFDRSw4QkFBcUI7TUFBckIscUJBQXFCO0NBQ3RCOztBQUVEO0VBQ0ksNkJBQW9CO01BQXBCLDRCQUFvQjtNQUFwQixvQkFBb0I7Q0FDdkI7O0FBSUM7RUFDRSx1QkFBdUI7RUFDdkIscUJBQWE7TUFBYixhQUFhO0VBQ2IsMkJBQWM7TUFBZCxjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLGNFdkRTO0NGd0RWOztBQUVD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O0FBUUM7RUFsQkY7SUFDRSwwQkFBMEI7R0FDM0I7RUFDRDtJQUVFLGdDQUFnQztJQUNoQyx5QkFBeUI7R0FDMUI7RUFDRDtJQUNFLHlCQUF5QjtHQUMxQjtDRHkxQkY7O0FDNzBCRztFQXRCRjtJQUNFLDBCQUEwQjtHQUMzQjtFQUNEO0lBRUUsZ0NBQWdDO0lBQ2hDLHlCQUF5QjtHQUMxQjtFQUNEO0lBQ0UseUJBQXlCO0dBQzFCO0NEdTJCRjs7QUN2MUJHO0VBMUJGO0lBQ0UsMEJBQTBCO0dBQzNCO0VBQ0Q7SUFFRSxnQ0FBZ0M7SUFDaEMseUJBQXlCO0dBQzFCO0VBQ0Q7SUFDRSx5QkFBeUI7R0FDMUI7Q0RxM0JGOztBQ2oyQkc7RUE5QkY7SUFDRSwwQkFBMEI7R0FDM0I7RUFDRDtJQUVFLGdDQUFnQztJQUNoQyx5QkFBeUI7R0FDMUI7RUFDRDtJQUNFLHlCQUF5QjtHQUMxQjtDRG00QkY7O0FDMzJCRztFQWxDRjtJQUNFLDBCQUEwQjtHQUMzQjtFQUNEO0lBRUUsZ0NBQWdDO0lBQ2hDLHlCQUF5QjtHQUMxQjtFQUNEO0lBQ0UseUJBQXlCO0dBQzFCO0NEaTVCRjs7QUNyM0JHO0VBdENGO0lBQ0UsMEJBQTBCO0dBQzNCO0VBQ0Q7SUFFRSxnQ0FBZ0M7SUFDaEMseUJBQXlCO0dBQzFCO0VBQ0Q7SUFDRSx5QkFBeUI7R0FDMUI7Q0QrNUJGOztBQy8zQkc7RUExQ0Y7SUFDRSwwQkFBMEI7R0FDM0I7RUFDRDtJQUVFLGdDQUFnQztJQUNoQyx5QkFBeUI7R0FDMUI7RUFDRDtJQUNFLHlCQUF5QjtHQUMxQjtDRDY2QkY7O0FDejRCRztFQTlDRjtJQUNFLDBCQUEwQjtHQUMzQjtFQUNEO0lBRUUsZ0NBQWdDO0lBQ2hDLHlCQUF5QjtHQUMxQjtFQUNEO0lBQ0UseUJBQXlCO0dBQzFCO0NEMjdCRiIsImZpbGUiOiJtYWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENyZWRzIHRvIGh0dHBzOi8vZ2l0aHViLmNvbS9rcmlzdG9mZXJqb3NlcGgvZmxleGJveGdyaWRcbi8vIE5vIGd1dHRlcnNcbi8vIE5vIHRleHQgYWxpZ25tZW50IHdpdGgganVzdGlmaWVkIGNvbnRhaW5lciBjbGFzc2VzIChjZW50ZXIteHMsIGZvciBleGFtcGxlKVxuXG4ucm93IHtcbiAgQGluY2x1ZGUgcm93KCk7XG59XG5cbi5yb3cucmV2ZXJzZSB7XG4gIEBpbmNsdWRlIHJvdy1yZXZlcnNlKCk7XG59XG5cbi5yb3cubmF0dXJhbC1oZWlnaHQge1xuICBAaW5jbHVkZSByb3ctbmF0dXJhbC1oZWlnaHQoKTtcbn1cblxuLnJvdy5mbGV4LWNvbHVtbiB7XG4gIEBpbmNsdWRlIHJvdy1mbGV4LWNvbHVtbigpO1xufVxuXG4uY29sIHtcbiAgQGluY2x1ZGUgY29sKCk7XG59XG5cbi5jb2wucmV2ZXJzZSB7XG4gIEBpbmNsdWRlIGNvbC1yZXZlcnNlKCk7XG59XG5cbi5maXJzdCB7XG4gIG9yZGVyOiAtMTtcbn1cblxuLmxhc3Qge1xuICBvcmRlcjogMTtcbn1cblxuLmFsaWduLXN0YXJ0IHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbn1cblxuLmFsaWduLWVuZCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xufVxuXG4uYWxpZ24tY2VudGVyIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuXG4uYWxpZ24tYmFzZWxpbmUge1xuICBhbGlnbi1zZWxmOiBiYXNlbGluZTtcbn1cblxuLmFsaWduLXN0cmV0Y2gge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG5cbi8vIE1peGluIHRvIHJ1biBpbnNpZGUgb2YgZm9yIGxvb3AgLSBjcmVhdGVzIGNvbC9icmVha3BvaW50IGNsYXNzZXMgKiBOb3QgZm9yIGRldmVsb3BlciB1c2UgKlxuQG1peGluIGNvbC1mYWN0b3J5KCR0aGlzUHJlZml4KSB7XG4gIC5jb2wtI3skdGhpc1ByZWZpeH0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6ICRndXR0ZXI7XG4gIH1cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAuY29sLSN7JHRoaXNQcmVmaXh9LSN7JGl9IHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBmbGV4LWJhc2lzOiAxMDAlIC8gJGdyaWQtY29sdW1ucyAqICRpO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlIC8gJGdyaWQtY29sdW1ucyAqICRpO1xuICAgICAgcGFkZGluZzogJGd1dHRlcjtcbiAgICB9XG4gICAgLmNvbC0jeyR0aGlzUHJlZml4fS1vZmZzZXQtI3skaX0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwMCUgLyAkZ3JpZC1jb2x1bW5zICogJGk7XG4gICAgfVxuICB9XG4gIC5yb3cuc3RhcnQtI3skdGhpc1ByZWZpeH0ge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuICAucm93LmNlbnRlci0jeyR0aGlzUHJlZml4fSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgLnJvdy5lbmQtI3skdGhpc1ByZWZpeH0ge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbiAgLnJvdy50b3AtI3skdGhpc1ByZWZpeH0ge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5yb3cubWlkZGxlLSN7JHRoaXNQcmVmaXh9IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIC5yb3cuYm90dG9tLSN7JHRoaXNQcmVmaXh9IHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIH1cbiAgLnJvdy5hcm91bmQtI3skdGhpc1ByZWZpeH0ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICB9XG4gIC5yb3cuYmV0d2Vlbi0jeyR0aGlzUHJlZml4fSB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG4gIC5maXJzdC0jeyR0aGlzUHJlZml4fSB7XG4gICAgb3JkZXI6IC0xO1xuICB9XG4gIC5sYXN0LSN7JHRoaXNQcmVmaXh9IHtcbiAgICBvcmRlcjogMTtcbiAgfVxufSAvLyBNaXhpbiB0byBydW4gaW5zaWRlIG9mIGZvciBsb29wIC0gY3JlYXRlcyBjb2wvYnJlYWtwb2ludCBjbGFzc2VzXG5cbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCRicmVha3BvaW50LXVwLXByZWZpeGVzKSB7XG4gICR0aGlzUHJlZml4OiBudGgoJGJyZWFrcG9pbnQtdXAtcHJlZml4ZXMsICRpKTtcbiAgQGlmICR0aGlzUHJlZml4ID09IFwieHNcIiB7XG4gICAgQGluY2x1ZGUgY29sLWZhY3RvcnkoJHRoaXNQcmVmaXgpO1xuICB9IEBlbHNlIGlmICR0aGlzUHJlZml4ID09IFwic21cIiB7XG4gICAgQG1lZGlhICN7JGJyZWFrcG9pbnQtc20tdXB9IHtcbiAgICAgIEBpbmNsdWRlIGNvbC1mYWN0b3J5KCR0aGlzUHJlZml4KTtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJHRoaXNQcmVmaXggPT0gXCJtZFwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC1tZC11cH0ge1xuICAgICAgQGluY2x1ZGUgY29sLWZhY3RvcnkoJHRoaXNQcmVmaXgpO1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkdGhpc1ByZWZpeCA9PSBcImxnXCIge1xuICAgIEBtZWRpYSAjeyRicmVha3BvaW50LWxnLXVwfSB7XG4gICAgICBAaW5jbHVkZSBjb2wtZmFjdG9yeSgkdGhpc1ByZWZpeCk7XG4gICAgfVxuICB9IEBlbHNlIGlmICR0aGlzUHJlZml4ID09IFwieGxcIiB7XG4gICAgQG1lZGlhICN7JGJyZWFrcG9pbnQteGwtdXB9IHtcbiAgICAgIEBpbmNsdWRlIGNvbC1mYWN0b3J5KCR0aGlzUHJlZml4KTtcbiAgICB9XG4gIH1cbn1cblxuLmNvbC1ndXR0ZXItbHIge1xuICAgIHBhZGRpbmc6IDAgJGd1dHRlcjtcbn1cblxuLmNvbC1uby1ndXR0ZXIge1xuICAgIHBhZGRpbmc6IDA7XG59XG4iLCJAbWl4aW4gcm93KCRmdWxsLXdpZHRoOiBcImZhbHNlXCIpIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDEgYXV0bztcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICAvLyAvLyBPdmVycmlkZXMgZmxleGJveCdzIGRlZmF1bHQgYmVoYXZpb3Igb2YgbWFraW5nIGFsbCBjaGlsZHJlbiBlcXVhbCBoZWlnaHRcbiAgLy8gYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IC8vIElmIHRoaXMgd2FzIG5vdCBpbiBwbGFjZSBpdCB3b3VsZCByZXF1aXJlIHR3byBjbGFzc2VzIHRvIG1ha2UgYSByb3cgZnVsbCBvZiB1bmVxdWFsIGhlaWdodCBjb2x1bW5zIGFsaWduZWQgdG9wLCBtaWRkbGUsIGJvdHRvbVxuICBAaWYgdHlwZS1vZigkY29udGVudC13ZWxsLW1heC13aWR0aCkgPT0gbnVtYmVyIGFuZCAkY29udGVudC13ZWxsLW1heC13aWR0aCAhPSAwIGFuZCAkZnVsbC13aWR0aCA9PSBcImZhbHNlXCJ7XG4gICAgbWF4LXdpZHRoOiAkY29udGVudC13ZWxsLW1heC13aWR0aDtcbiAgfVxufVxuXG5AbWl4aW4gcm93LXJldmVyc2UoKSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbn1cblxuQG1peGluIHJvdy1uYXR1cmFsLWhlaWdodCgpIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbkBtaXhpbiByb3ctZmxleC1jb2x1bW4oKSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbkBtaXhpbiBjb2wtcmV2ZXJzZSgpIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xufVxuXG4vLyBDb25kaXRpb24gdG8gcnVuIGluc2lkZSBvZiB0aGUgY29sIG1peGluICogbm90IGZvciBkZXZlbG9wZXIgdXNlICpcbkBtaXhpbiBjb2wtY29uZGl0aW9uKCRjb2wtbnVtYmVyKSB7XG4gIEBpZiB0eXBlLW9mKCRjb2wtbnVtYmVyKSA9PSBudW1iZXIge1xuICAgIEBpZiAkY29sLW51bWJlciA+ICRncmlkLWNvbHVtbnMgb3IgJGNvbC1udW1iZXIgPT0gMCB7XG4gICAgICBAd2FybiBcIkNvbHVtbiBudW1iZXIgbXVzdCBiZSBncmVhdGVyIHRoYW4gMCBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIHRvdGFsIG51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBncmlkICgjeyRncmlkLWNvbHVtbnN9KVwiO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIGZsZXgtYmFzaXM6IDEwMCUgLyAkZ3JpZC1jb2x1bW5zICogJGNvbC1udW1iZXI7XG4gICAgICBtYXgtd2lkdGg6IDEwMCUgLyAkZ3JpZC1jb2x1bW5zICogJGNvbC1udW1iZXI7XG4gICAgICBwYWRkaW5nOiAkZ3V0dGVyO1xuICAgIH1cbiAgLy8gSWYgbm8gY29sIG51bWJlciBpcyBwYXNzZWQgdGhlbiBhcmcgaXMgc2V0IHRvIFwiYXV0b1wiIGJ5IGRlZmF1bHRcbiAgLy8gXCJhdXRvXCIgbW9kZSBmaWxscyB0aGUgaG9yaXpvbnRhbCBzcGFjZSB3aXRoIGV2ZW5seSBzaXplZCBjb250YWluZXJzXG4gIH0gQGVsc2UgaWYgJGNvbC1udW1iZXIgPT0gXCJhdXRvXCIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6ICRndXR0ZXI7XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuIFwiQ29sdW1uIG51bWJlciBhcmd1bWVudCBtdXN0IGVpdGhlciBiZSB0aGUgc3RyaW5nICdhdXRvJyBvciBhIG51bWJlciBncmVhdGVyIHRoYW4gMCBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIHRvdGFsIG51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBncmlkICgjeyRncmlkLWNvbHVtbnN9KVwiO1xuICB9XG59IC8vIENvbmRpdGlvbiB0byBydW4gaW5zaWRlIG9mIHRoZSBjb2wgbWl4aW4gKiBub3QgZm9yIGRldmVsb3BlciB1c2UgKlxuXG5AbWl4aW4gY29sKCRicmVha3BvaW50OiBcInhzXCIsICRjb2wtbnVtYmVyOiBcImF1dG9cIikge1xuICAvLyBJZiBubyBicmVha3BvaW50IGlzIHBhc3NlZCBhbmQgYSBjb2wgbnVtYmVyIGlzIGp1c3QgdXNlIHRoZSBmaXJzdCBhcmcgYXMgdGhlIGNvbCBudW1iZXIgYW5kIGFjdCBsaWtlIHhzXG4gIEBpZiB0eXBlLW9mKCRicmVha3BvaW50KSA9PSBudW1iZXIge1xuICAgICRjb2wtbnVtYmVyOiAkYnJlYWtwb2ludDtcbiAgICBAaW5jbHVkZSBjb2wtY29uZGl0aW9uKCRjb2wtbnVtYmVyKTtcbiAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcInhzXCIge1xuICAgIEBpbmNsdWRlIGNvbC1jb25kaXRpb24oJGNvbC1udW1iZXIpO1xuICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09IFwic21cIiB7XG4gICAgQG1lZGlhICN7JGJyZWFrcG9pbnQtc20tdXB9IHtcbiAgICAgIEBpbmNsdWRlIGNvbC1jb25kaXRpb24oJGNvbC1udW1iZXIpO1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcIm1kXCIge1xuICAgIEBtZWRpYSAjeyRicmVha3BvaW50LW1kLXVwfSB7XG4gICAgICBAaW5jbHVkZSBjb2wtY29uZGl0aW9uKCRjb2wtbnVtYmVyKTtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJsZ1wiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC1sZy11cH0ge1xuICAgICAgQGluY2x1ZGUgY29sLWNvbmRpdGlvbigkY29sLW51bWJlcik7XG4gICAgfVxuICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09IFwieGxcIiB7XG4gICAgQG1lZGlhICN7JGJyZWFrcG9pbnQteGwtdXB9IHtcbiAgICAgIEBpbmNsdWRlIGNvbC1jb25kaXRpb24oJGNvbC1udW1iZXIpO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJjb2wgbWl4aW4gcmVxdWlyZXMgb25lIG9mIHRoZSBleGlzdGluZyBicmVha3BvaW50IHByZWZpeGVzICgjeyRicmVha3BvaW50LXVwLXByZWZpeGVzfSlcIjtcbiAgfVxufVxuXG4vLyBDb25kaXRpb24gdG8gcnVuIGluc2lkZSBvZiB0aGUgY29sLW9mZnNldCBtaXhpbiAqIG5vdCBmb3IgZGV2ZWxvcGVyIHVzZSAqXG5AbWl4aW4gY29sLW9mZnNldC1jb25kaXRpb24oJG9mZnNldC1udW1iZXIpIHtcbiAgQGlmIHR5cGUtb2YoJG9mZnNldC1udW1iZXIpICE9IG51bWJlciB7XG4gICAgQHdhcm4gXCJDb2x1bW4gb2Zmc2V0IG51bWJlciBtdXN0IGJlIGEgbnVtYmVyIChvbmx5IGFyZyBvciBzZWNvbmQgYXJnIGluIHRoZSBjb2wgbWl4aW4pXCI7XG4gIH0gQGVsc2UgaWYgJG9mZnNldC1udW1iZXIgPT0gMCB7XG4gICAgQHdhcm4gXCJDb2x1bW4gb2Zmc2V0IG51bWJlciBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAwIGFuZCBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gdG90YWwgbnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQgKCN7JGdyaWQtY29sdW1uc30pXCI7XG4gIH0gQGVsc2UgaWYgJG9mZnNldC1udW1iZXIgPiAkZ3JpZC1jb2x1bW5zIHtcbiAgICBAd2FybiBcIkNvbHVtbiBvZmZzZXQgbnVtYmVyIG11c3QgYmUgZ3JlYXRlciB0aGFuIDAgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byB0b3RhbCBudW1iZXIgb2YgY29sdW1ucyBpbiB0aGUgZ3JpZCAoI3skZ3JpZC1jb2x1bW5zfSlcIjtcbiAgfSBAZWxzZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwMCUgLyAkZ3JpZC1jb2x1bW5zICogJG9mZnNldC1udW1iZXI7XG4gIH1cbn0gLy8gQ29uZGl0aW9uIHRvIHJ1biBpbnNpZGUgb2YgdGhlIGNvbC1vZmZzZXQgbWl4aW4gKiBub3QgZm9yIGRldmVsb3BlciB1c2UgKlxuXG5AbWl4aW4gY29sLW9mZnNldCgkYnJlYWtwb2ludDogXCJ4c1wiLCAkb2Zmc2V0LW51bWJlcjogMCkge1xuICAvLyBJZiBubyBicmVha3BvaW50IGlzIHBhc3NlZCBhbmQgYSBjb2wgbnVtYmVyIGlzIGp1c3QgdXNlIHRoZSBmaXJzdCBhcmcgYXMgdGhlIGNvbCBudW1iZXIgYW5kIGFjdCBsaWtlIHhzXG4gIEBpZiB0eXBlLW9mKCRicmVha3BvaW50KSA9PSBudW1iZXIge1xuICAgICRvZmZzZXQtbnVtYmVyOiAkYnJlYWtwb2ludDtcbiAgICBAaW5jbHVkZSBjb2wtb2Zmc2V0LWNvbmRpdGlvbigkb2Zmc2V0LW51bWJlcik7XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJ4c1wiIHtcbiAgICBAaW5jbHVkZSBjb2wtb2Zmc2V0LWNvbmRpdGlvbigkb2Zmc2V0LW51bWJlcik7XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJzbVwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC1zbS11cH0ge1xuICAgICAgQGluY2x1ZGUgY29sLW9mZnNldC1jb25kaXRpb24oJG9mZnNldC1udW1iZXIpO1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcIm1kXCIge1xuICAgIEBtZWRpYSAjeyRicmVha3BvaW50LW1kLXVwfSB7XG4gICAgICBAaW5jbHVkZSBjb2wtb2Zmc2V0LWNvbmRpdGlvbigkb2Zmc2V0LW51bWJlcik7XG4gICAgfVxuICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09IFwibGdcIiB7XG4gICAgQG1lZGlhICN7JGJyZWFrcG9pbnQtbGctdXB9IHtcbiAgICAgIEBpbmNsdWRlIGNvbC1vZmZzZXQtY29uZGl0aW9uKCRvZmZzZXQtbnVtYmVyKTtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJ4bFwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC14bC11cH0ge1xuICAgICAgQGluY2x1ZGUgY29sLW9mZnNldC1jb25kaXRpb24oJG9mZnNldC1udW1iZXIpO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJjb2wgbWl4aW4gcmVxdWlyZXMgb25lIG9mIHRoZSBleGlzdGluZyBicmVha3BvaW50IHByZWZpeGVzICgjeyRicmVha3BvaW50LXVwLXByZWZpeGVzfSlcIjtcbiAgfVxufVxuXG5AbWl4aW4gc3RhcnQoJGJyZWFrcG9pbnQ6IFwieHNcIikge1xuICBAaWYgJGJyZWFrcG9pbnQgPT0gXCJ4c1wiIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJzbVwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC1zbS11cH0ge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcIm1kXCIge1xuICAgIEBtZWRpYSAjeyRicmVha3BvaW50LW1kLXVwfSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09IFwibGdcIiB7XG4gICAgQG1lZGlhICN7JGJyZWFrcG9pbnQtbGctdXB9IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJ4bFwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC14bC11cH0ge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJzdGFydCBtaXhpbiBhcmcgbXVzdCBiZSBvbmUgb2YgdGhlIGV4aXN0aW5nIGJyZWFrcG9pbnRzICgjeyRicmVha3BvaW50LXVwLXByZWZpeGVzfSlcIjtcbiAgfVxufVxuXG5AbWl4aW4gY2VudGVyKCRicmVha3BvaW50OiBcInhzXCIpIHtcbiAgQGlmICRicmVha3BvaW50ID09IFwieHNcIiB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJzbVwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC1zbS11cH0ge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09IFwibWRcIiB7XG4gICAgQG1lZGlhICN7JGJyZWFrcG9pbnQtbWQtdXB9IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcImxnXCIge1xuICAgIEBtZWRpYSAjeyRicmVha3BvaW50LWxnLXVwfSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJ4bFwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC14bC11cH0ge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAd2FybiBcImNlbnRlciBtaXhpbiBhcmcgbXVzdCBiZSBvbmUgb2YgdGhlIGV4aXN0aW5nIGJyZWFrcG9pbnRzICgjeyRicmVha3BvaW50LXVwLXByZWZpeGVzfSlcIjtcbiAgfVxufVxuXG5AbWl4aW4gZW5kKCRicmVha3BvaW50OiBcInhzXCIpIHtcbiAgQGlmICRicmVha3BvaW50ID09IFwieHNcIiB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcInNtXCIge1xuICAgIEBtZWRpYSAjeyRicmVha3BvaW50LXNtLXVwfSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcIm1kXCIge1xuICAgIEBtZWRpYSAjeyRicmVha3BvaW50LW1kLXVwfSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcImxnXCIge1xuICAgIEBtZWRpYSAjeyRicmVha3BvaW50LWxnLXVwfSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcInhsXCIge1xuICAgIEBtZWRpYSAjeyRicmVha3BvaW50LXhsLXVwfSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJlbmQgbWl4aW4gYXJnIG11c3QgYmUgb25lIG9mIHRoZSBleGlzdGluZyBicmVha3BvaW50cyAoI3skYnJlYWtwb2ludC11cC1wcmVmaXhlc30pXCI7XG4gIH1cbn1cblxuQG1peGluIHRvcCgkYnJlYWtwb2ludDogXCJ4c1wiKSB7XG4gIEBpZiAkYnJlYWtwb2ludCA9PSBcInhzXCIge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09IFwic21cIiB7XG4gICAgQG1lZGlhICN7JGJyZWFrcG9pbnQtc20tdXB9IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcIm1kXCIge1xuICAgIEBtZWRpYSAjeyRicmVha3BvaW50LW1kLXVwfSB7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJsZ1wiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC1sZy11cH0ge1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09IFwieGxcIiB7XG4gICAgQG1lZGlhICN7JGJyZWFrcG9pbnQteGwtdXB9IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJ0b3AgbWl4aW4gYXJnIG11c3QgYmUgb25lIG9mIHRoZSBleGlzdGluZyBicmVha3BvaW50cyAoI3skYnJlYWtwb2ludC11cC1wcmVmaXhlc30pXCI7XG4gIH1cbn1cblxuQG1peGluIG1pZGRsZSgkYnJlYWtwb2ludDogXCJ4c1wiKSB7XG4gIEBpZiAkYnJlYWtwb2ludCA9PSBcInhzXCIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJzbVwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC1zbS11cH0ge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJtZFwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC1tZC11cH0ge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJsZ1wiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC1sZy11cH0ge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJ4bFwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC14bC11cH0ge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuIFwibWlkZGxlIG1peGluIGFyZyBtdXN0IGJlIG9uZSBvZiB0aGUgZXhpc3RpbmcgYnJlYWtwb2ludHMgKCN7JGJyZWFrcG9pbnQtdXAtcHJlZml4ZXN9KVwiO1xuICB9XG59XG5cbkBtaXhpbiBib3R0b20oJGJyZWFrcG9pbnQ6IFwieHNcIikge1xuICBAaWYgJGJyZWFrcG9pbnQgPT0gXCJ4c1wiIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJzbVwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC1zbS11cH0ge1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcIm1kXCIge1xuICAgIEBtZWRpYSAjeyRicmVha3BvaW50LW1kLXVwfSB7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09IFwibGdcIiB7XG4gICAgQG1lZGlhICN7JGJyZWFrcG9pbnQtbGctdXB9IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJ4bFwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC14bC11cH0ge1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJib3R0b20gbWl4aW4gYXJnIG11c3QgYmUgb25lIG9mIHRoZSBleGlzdGluZyBicmVha3BvaW50cyAoI3skYnJlYWtwb2ludC11cC1wcmVmaXhlc30pXCI7XG4gIH1cbn1cblxuQG1peGluIGFyb3VuZCgkYnJlYWtwb2ludDogXCJ4c1wiKSB7XG4gIEBpZiAkYnJlYWtwb2ludCA9PSBcInhzXCIge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09IFwic21cIiB7XG4gICAgQG1lZGlhICN7JGJyZWFrcG9pbnQtc20tdXB9IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcIm1kXCIge1xuICAgIEBtZWRpYSAjeyRicmVha3BvaW50LW1kLXVwfSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJsZ1wiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC1sZy11cH0ge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09IFwieGxcIiB7XG4gICAgQG1lZGlhICN7JGJyZWFrcG9pbnQteGwtdXB9IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJhcm91bmQgbWl4aW4gYXJnIG11c3QgYmUgb25lIG9mIHRoZSBleGlzdGluZyBicmVha3BvaW50cyAoI3skYnJlYWtwb2ludC11cC1wcmVmaXhlc30pXCI7XG4gIH1cbn1cblxuQG1peGluIGJldHdlZW4oJGJyZWFrcG9pbnQ6IFwieHNcIikge1xuICBAaWYgJGJyZWFrcG9pbnQgPT0gXCJ4c1wiIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJzbVwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC1zbS11cH0ge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcIm1kXCIge1xuICAgIEBtZWRpYSAjeyRicmVha3BvaW50LW1kLXVwfSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgfVxuICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09IFwibGdcIiB7XG4gICAgQG1lZGlhICN7JGJyZWFrcG9pbnQtbGctdXB9IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJ4bFwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC14bC11cH0ge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJiZXR3ZWVuIG1peGluIGFyZyBtdXN0IGJlIG9uZSBvZiB0aGUgZXhpc3RpbmcgYnJlYWtwb2ludHMgKCN7JGJyZWFrcG9pbnQtdXAtcHJlZml4ZXN9KVwiO1xuICB9XG59XG5cbkBtaXhpbiBmaXJzdCgkYnJlYWtwb2ludDogXCJ4c1wiKSB7XG4gIEBpZiAkYnJlYWtwb2ludCA9PSBcInhzXCIge1xuICAgIG9yZGVyOiAtMTtcbiAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcInNtXCIge1xuICAgIEBtZWRpYSAjeyRicmVha3BvaW50LXNtLXVwfSB7XG4gICAgICBvcmRlcjogLTE7XG4gICAgfVxuICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09IFwibWRcIiB7XG4gICAgQG1lZGlhICN7JGJyZWFrcG9pbnQtbWQtdXB9IHtcbiAgICAgIG9yZGVyOiAtMTtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJsZ1wiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC1sZy11cH0ge1xuICAgICAgb3JkZXI6IC0xO1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcInhsXCIge1xuICAgIEBtZWRpYSAjeyRicmVha3BvaW50LXhsLXVwfSB7XG4gICAgICBvcmRlcjogLTE7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAd2FybiBcImZpcnN0IG1peGluIGFyZyBtdXN0IGJlIG9uZSBvZiB0aGUgZXhpc3RpbmcgYnJlYWtwb2ludHMgKCN7JGJyZWFrcG9pbnQtdXAtcHJlZml4ZXN9KVwiO1xuICB9XG59XG5cbkBtaXhpbiBsYXN0KCRicmVha3BvaW50OiBcInhzXCIpIHtcbiAgQGlmICRicmVha3BvaW50ID09IFwieHNcIiB7XG4gICAgb3JkZXI6IDE7XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJzbVwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC1zbS11cH0ge1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9IEBlbHNlIGlmICRicmVha3BvaW50ID09IFwibWRcIiB7XG4gICAgQG1lZGlhICN7JGJyZWFrcG9pbnQtbWQtdXB9IHtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcImxnXCIge1xuICAgIEBtZWRpYSAjeyRicmVha3BvaW50LWxnLXVwfSB7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gXCJ4bFwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC14bC11cH0ge1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAd2FybiBcImxhc3QgbWl4aW4gYXJnIG11c3QgYmUgb25lIG9mIHRoZSBleGlzdGluZyBicmVha3BvaW50cyAoI3skYnJlYWtwb2ludC11cC1wcmVmaXhlc30pXCI7XG4gIH1cbn1cbiIsIi8vIEdyaWRcbiRncmlkLWNvbHVtbnM6IDEyICFkZWZhdWx0OyAvLyBTZXQgbnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWRcblxuJHhzLW1heDogNDByZW0gIWRlZmF1bHQ7IC8vIFNldCB4cyBicmVha3BvaW50J3MgbWF4IHdpZHRoXG4kc20tbWF4OiA2NHJlbSAhZGVmYXVsdDsgLy8gU2V0IHNtIGJyZWFrcG9pbnQncyBtYXggd2lkdGhcbiRtZC1tYXg6IDkwcmVtICFkZWZhdWx0OyAvLyBTZXQgbWQgYnJlYWtwb2ludCdzIG1heCB3aWR0aFxuJGxnLW1heDogMTIwcmVtICFkZWZhdWx0OyAvLyBTZXQgbGcgYnJlYWtwb2ludCdzIG1heCB3aWR0aFxuXG4kZ3V0dGVyOiAxcmVtICFkZWZhdWx0OyAvLyBTZXQgZ3V0dGVyIHNpemVcblxuJGNvbnRlbnQtd2VsbC1tYXgtd2lkdGg6IFwibm9uZVwiICFkZWZhdWx0OyAvLyBTZXQgdGhlIG1heC13aWR0aCBvZiB0aGUgY29udGVudCB3ZWxsXG5cbiRzbS1zdGFydDogKCR4cy1tYXggKyAxKTsgLy8gR2VuZXJhdGUgc20gYnJlYWtwb2ludCdzIG1pbiB3aWR0aFxuJG1kLXN0YXJ0OiAoJHNtLW1heCArIDEpOyAvLyBHZW5lcmF0ZSBtZCBicmVha3BvaW50J3MgbWluIHdpZHRoXG4kbGctc3RhcnQ6ICgkbWQtbWF4ICsgMSk7IC8vIEdlbmVyYXRlIGxnIGJyZWFrcG9pbnQncyBtaW4gd2lkdGhcbiR4bC1zdGFydDogKCRsZy1tYXggKyAxKTsgLy8gR2VuZXJhdGUgeGwgYnJlYWtwb2ludCdzIG1pbiB3aWR0aFxuXG4vLyBCcmVha3BvaW50c1xuLy8gQ3JlYXRlIGJyZWFrcG9pbnQgcmFuZ2Ugc3RhdGVtZW50cyB0byBiZSB1c2VkIGluIG1lZGlhIHF1ZXJpZXNcbiRicmVha3BvaW50LXhzLW9ubHk6IFwib25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICN7JHhzLW1heH0pXCI7IC8vIDAgLT4geHMtbWF4IHJhbmdlXG4kYnJlYWtwb2ludC1zbS11cDogXCJvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3skc20tc3RhcnR9KVwiOyAvLyBzbS1zdGFydCAtPiB1cCByYW5nZVxuJGJyZWFrcG9pbnQtc20tb25seTogXCJvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3skc20tc3RhcnR9KSBhbmQgKG1heC13aWR0aDogI3skc20tbWF4fSlcIjsgLy8gc20tc3RhcnQgLT4gc20tbWF4IHJhbmdlXG4kYnJlYWtwb2ludC1tZC11cDogXCJvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3skbWQtc3RhcnR9KVwiOyAvLyBtZC1zdGFydCAtPiB1cCByYW5nZVxuJGJyZWFrcG9pbnQtbWQtb25seTogXCJvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3skbWQtc3RhcnR9KSBhbmQgKG1heC13aWR0aDogI3skbWQtbWF4fSlcIjsgLy8gbWQtc3RhcnQgLT4gbWQtbWF4IHJhbmdlXG4kYnJlYWtwb2ludC1sZy11cDogXCJvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3skbGctc3RhcnR9KVwiOyAvLyBsZy1zdGFydCAtPiB1cCByYW5nZVxuJGJyZWFrcG9pbnQtbGctb25seTogXCJvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3skbGctc3RhcnR9KSBhbmQgKG1heC13aWR0aDogI3skbGctbWF4fSlcIjsgLy8gbGctc3RhcnQgLT4gbGctbWF4IHJhbmdlXG4kYnJlYWtwb2ludC14bC11cDogXCJvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3skeGwtc3RhcnR9KVwiOyAvLyB4bC1zdGFydCAtPiB1cCByYW5nZVxuXG4kYnJlYWtwb2ludHMtYWxsOiAoJGJyZWFrcG9pbnQteHMtb25seSwgJGJyZWFrcG9pbnQtc20tdXAsICRicmVha3BvaW50LXNtLW9ubHksICRicmVha3BvaW50LW1kLXVwLCAkYnJlYWtwb2ludC1tZC1vbmx5LCAkYnJlYWtwb2ludC1sZy11cCwgJGJyZWFrcG9pbnQtbGctb25seSwgJGJyZWFrcG9pbnQteGwtdXApO1xuJGJyZWFrcG9pbnQtdXBzOiAoJGJyZWFrcG9pbnQtc20tdXAsICRicmVha3BvaW50LW1kLXVwLCAkYnJlYWtwb2ludC1sZy11cCwgJGJyZWFrcG9pbnQteGwtdXApO1xuJGJyZWFrcG9pbnQtYWxsLXByZWZpeGVzOiAoXCJ4c1wiLCBcInhzLW9ubHlcIiwgXCJzbVwiLCBcInNtLW9ubHlcIiwgXCJtZFwiLCBcIm1kLW9ubHlcIiwgXCJsZ1wiLCBcImxnLW9ubHlcIiwgXCJ4bFwiKTtcbiRicmVha3BvaW50LXVwLXByZWZpeGVzOiAoXCJ4c1wiLCBcInNtXCIsIFwibWRcIiwgXCJsZ1wiLCBcInhsXCIpO1xuIiwiLnJvdyB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAxIGF1dG87XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLnJvdy5yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xufVxuXG4ucm93Lm5hdHVyYWwtaGVpZ2h0IHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5yb3cuZmxleC1jb2x1bW4ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uY29sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZmxleC1ncm93OiAxO1xuICBmbGV4LWJhc2lzOiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDFyZW07XG59XG5cbi5jb2wucmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbn1cblxuLmZpcnN0IHtcbiAgb3JkZXI6IC0xO1xufVxuXG4ubGFzdCB7XG4gIG9yZGVyOiAxO1xufVxuXG4uYWxpZ24tc3RhcnQge1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuXG4uYWxpZ24tZW5kIHtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG59XG5cbi5hbGlnbi1jZW50ZXIge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG59XG5cbi5hbGlnbi1iYXNlbGluZSB7XG4gIGFsaWduLXNlbGY6IGJhc2VsaW5lO1xufVxuXG4uYWxpZ24tc3RyZXRjaCB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG5cbi5jb2wteHMge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmbGV4LWdyb3c6IDE7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMXJlbTtcbn1cblxuLmNvbC14cy0xIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZmxleC1iYXNpczogOC4zMzMzMzMzMzMzJTtcbiAgbWF4LXdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4uY29sLXhzLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG59XG5cbi5jb2wteHMtMiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZsZXgtYmFzaXM6IDE2LjY2NjY2NjY2NjclO1xuICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4uY29sLXhzLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xufVxuXG4uY29sLXhzLTMge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmbGV4LWJhc2lzOiAyNSU7XG4gIG1heC13aWR0aDogMjUlO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4uY29sLXhzLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTtcbn1cblxuLmNvbC14cy00IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZmxleC1iYXNpczogMzMuMzMzMzMzMzMzMyU7XG4gIG1heC13aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIHBhZGRpbmc6IDFyZW07XG59XG5cbi5jb2wteHMtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XG59XG5cbi5jb2wteHMtNSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZsZXgtYmFzaXM6IDQxLjY2NjY2NjY2NjclO1xuICBtYXgtd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4uY29sLXhzLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xufVxuXG4uY29sLXhzLTYge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmbGV4LWJhc2lzOiA1MCU7XG4gIG1heC13aWR0aDogNTAlO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4uY29sLXhzLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTtcbn1cblxuLmNvbC14cy03IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZmxleC1iYXNpczogNTguMzMzMzMzMzMzMyU7XG4gIG1heC13aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIHBhZGRpbmc6IDFyZW07XG59XG5cbi5jb2wteHMtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XG59XG5cbi5jb2wteHMtOCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZsZXgtYmFzaXM6IDY2LjY2NjY2NjY2NjclO1xuICBtYXgtd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4uY29sLXhzLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xufVxuXG4uY29sLXhzLTkge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmbGV4LWJhc2lzOiA3NSU7XG4gIG1heC13aWR0aDogNzUlO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4uY29sLXhzLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTtcbn1cblxuLmNvbC14cy0xMCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZsZXgtYmFzaXM6IDgzLjMzMzMzMzMzMzMlO1xuICBtYXgtd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4uY29sLXhzLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcbn1cblxuLmNvbC14cy0xMSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZsZXgtYmFzaXM6IDkxLjY2NjY2NjY2NjclO1xuICBtYXgtd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4uY29sLXhzLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbn1cblxuLmNvbC14cy0xMiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMXJlbTtcbn1cblxuLmNvbC14cy1vZmZzZXQtMTIge1xuICBtYXJnaW4tbGVmdDogMTAwJTtcbn1cblxuLnJvdy5zdGFydC14cyB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLnJvdy5jZW50ZXIteHMge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnJvdy5lbmQteHMge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4ucm93LnRvcC14cyB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4ucm93Lm1pZGRsZS14cyB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5yb3cuYm90dG9tLXhzIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG4ucm93LmFyb3VuZC14cyB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xufVxuXG4ucm93LmJldHdlZW4teHMge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5maXJzdC14cyB7XG4gIG9yZGVyOiAtMTtcbn1cblxuLmxhc3QteHMge1xuICBvcmRlcjogMTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MXJlbSkge1xuICAuY29sLXNtIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wtc20tMSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4LWJhc2lzOiA4LjMzMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wtc20tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tMiB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4LWJhc2lzOiAxNi42NjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLmNvbC1zbS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5jb2wtc20tMyB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuICAuY29sLXNtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC5jb2wtc20tNCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4LWJhc2lzOiAzMy4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLmNvbC1zbS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tNSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4LWJhc2lzOiA0MS42NjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLmNvbC1zbS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5jb2wtc20tNiB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuICAuY29sLXNtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC5jb2wtc20tNyB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4LWJhc2lzOiA1OC4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLmNvbC1zbS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tOCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4LWJhc2lzOiA2Ni42NjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLmNvbC1zbS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5jb2wtc20tOSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4LWJhc2lzOiA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuICAuY29sLXNtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5jb2wtc20tMTAge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogODMuMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wtc20tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS0xMSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4LWJhc2lzOiA5MS42NjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLmNvbC1zbS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTEyIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLmNvbC1zbS1vZmZzZXQtMTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxMDAlO1xuICB9XG4gIC5yb3cuc3RhcnQtc20ge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuICAucm93LmNlbnRlci1zbSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgLnJvdy5lbmQtc20ge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbiAgLnJvdy50b3Atc20ge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5yb3cubWlkZGxlLXNtIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIC5yb3cuYm90dG9tLXNtIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIH1cbiAgLnJvdy5hcm91bmQtc20ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICB9XG4gIC5yb3cuYmV0d2Vlbi1zbSB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG4gIC5maXJzdC1zbSB7XG4gICAgb3JkZXI6IC0xO1xuICB9XG4gIC5sYXN0LXNtIHtcbiAgICBvcmRlcjogMTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY1cmVtKSB7XG4gIC5jb2wtbWQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLmNvbC1tZC0xIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsZXgtYmFzaXM6IDguMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLmNvbC1tZC1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC0yIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsZXgtYmFzaXM6IDE2LjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuICAuY29sLW1kLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1tZC0zIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsZXgtYmFzaXM6IDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wtbWQtb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLmNvbC1tZC00IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsZXgtYmFzaXM6IDMzLjMzMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuICAuY29sLW1kLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC01IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsZXgtYmFzaXM6IDQxLjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuICAuY29sLW1kLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1tZC02IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wtbWQtb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLmNvbC1tZC03IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsZXgtYmFzaXM6IDU4LjMzMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuICAuY29sLW1kLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1tZC04IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsZXgtYmFzaXM6IDY2LjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuICAuY29sLW1kLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1tZC05IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsZXgtYmFzaXM6IDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wtbWQtb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLmNvbC1tZC0xMCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4LWJhc2lzOiA4My4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLmNvbC1tZC1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLTExIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsZXgtYmFzaXM6IDkxLjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuICAuY29sLW1kLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtMTIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuICAuY29sLW1kLW9mZnNldC0xMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwMCU7XG4gIH1cbiAgLnJvdy5zdGFydC1tZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5yb3cuY2VudGVyLW1kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICAucm93LmVuZC1tZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxuICAucm93LnRvcC1tZCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLnJvdy5taWRkbGUtbWQge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgLnJvdy5ib3R0b20tbWQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgfVxuICAucm93LmFyb3VuZC1tZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIH1cbiAgLnJvdy5iZXR3ZWVuLW1kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbiAgLmZpcnN0LW1kIHtcbiAgICBvcmRlcjogLTE7XG4gIH1cbiAgLmxhc3QtbWQge1xuICAgIG9yZGVyOiAxO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTFyZW0pIHtcbiAgLmNvbC1sZyB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuICAuY29sLWxnLTEge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogOC4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuICAuY29sLWxnLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLTIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogMTYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wtbGctb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLTMge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLmNvbC1sZy1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAuY29sLWxnLTQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogMzMuMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wtbGctb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLTUge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogNDEuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wtbGctb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLTYge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLmNvbC1sZy1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAuY29sLWxnLTcge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogNTguMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wtbGctb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLTgge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogNjYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wtbGctb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLTkge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLmNvbC1sZy1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAuY29sLWxnLTEwIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsZXgtYmFzaXM6IDgzLjMzMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuICAuY29sLWxnLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctMTEge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogOTEuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wtbGctb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy0xMiB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wtbGctb2Zmc2V0LTEyIHtcbiAgICBtYXJnaW4tbGVmdDogMTAwJTtcbiAgfVxuICAucm93LnN0YXJ0LWxnIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLnJvdy5jZW50ZXItbGcge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIC5yb3cuZW5kLWxnIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB9XG4gIC5yb3cudG9wLWxnIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuICAucm93Lm1pZGRsZS1sZyB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICAucm93LmJvdHRvbS1sZyB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICB9XG4gIC5yb3cuYXJvdW5kLWxnIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgfVxuICAucm93LmJldHdlZW4tbGcge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuICAuZmlyc3QtbGcge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuICAubGFzdC1sZyB7XG4gICAgb3JkZXI6IDE7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjFyZW0pIHtcbiAgLmNvbC14bCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuICAuY29sLXhsLTEge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogOC4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuICAuY29sLXhsLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuY29sLXhsLTIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogMTYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wteGwtb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXhsLTMge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLmNvbC14bC1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAuY29sLXhsLTQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogMzMuMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wteGwtb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAuY29sLXhsLTUge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogNDEuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wteGwtb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXhsLTYge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLmNvbC14bC1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAuY29sLXhsLTcge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogNTguMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wteGwtb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuY29sLXhsLTgge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogNjYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wteGwtb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXhsLTkge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLmNvbC14bC1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAuY29sLXhsLTEwIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsZXgtYmFzaXM6IDgzLjMzMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuICAuY29sLXhsLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wteGwtMTEge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1iYXNpczogOTEuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wteGwtb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC14bC0xMiB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb2wteGwtb2Zmc2V0LTEyIHtcbiAgICBtYXJnaW4tbGVmdDogMTAwJTtcbiAgfVxuICAucm93LnN0YXJ0LXhsIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLnJvdy5jZW50ZXIteGwge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIC5yb3cuZW5kLXhsIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB9XG4gIC5yb3cudG9wLXhsIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuICAucm93Lm1pZGRsZS14bCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICAucm93LmJvdHRvbS14bCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICB9XG4gIC5yb3cuYXJvdW5kLXhsIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgfVxuICAucm93LmJldHdlZW4teGwge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuICAuZmlyc3QteGwge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuICAubGFzdC14bCB7XG4gICAgb3JkZXI6IDE7XG4gIH1cbn1cblxuLmNvbC1ndXR0ZXItbHIge1xuICBwYWRkaW5nOiAwIDFyZW07XG59XG5cbi5jb2wtbm8tZ3V0dGVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLnNob3cge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4ucm93LnNob3cge1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXggIWltcG9ydGFudDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3ggIWltcG9ydGFudDtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xufVxuXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnNob3cteHMge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4ucm93LnNob3cteHMge1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXggIWltcG9ydGFudDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3ggIWltcG9ydGFudDtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xufVxuXG4uaGlkZS14cyB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MHJlbSkge1xuICAuc2hvdy14cy1vbmx5IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC5yb3cuc2hvdy14cy1vbmx5IHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXggIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgfVxuICAuaGlkZS14cy1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MXJlbSkge1xuICAuc2hvdy1zbSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAucm93LnNob3ctc20ge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94ICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG4gIC5oaWRlLXNtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MXJlbSkgYW5kIChtYXgtd2lkdGg6IDY0cmVtKSB7XG4gIC5zaG93LXNtLW9ubHkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnJvdy5zaG93LXNtLW9ubHkge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94ICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICB9XG4gIC5oaWRlLXNtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY1cmVtKSB7XG4gIC5zaG93LW1kIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC5yb3cuc2hvdy1tZCB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4ICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3ggIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmhpZGUtbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY1cmVtKSBhbmQgKG1heC13aWR0aDogOTByZW0pIHtcbiAgLnNob3ctbWQtb25seSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAucm93LnNob3ctbWQtb25seSB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4ICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3ggIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmhpZGUtbWQtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTFyZW0pIHtcbiAgLnNob3ctbGcge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnJvdy5zaG93LWxnIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXggIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgfVxuICAuaGlkZS1sZyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTFyZW0pIGFuZCAobWF4LXdpZHRoOiAxMjByZW0pIHtcbiAgLnNob3ctbGctb25seSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAucm93LnNob3ctbGctb25seSB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4ICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3ggIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmhpZGUtbGctb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIxcmVtKSB7XG4gIC5zaG93LXhsIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC5yb3cuc2hvdy14bCB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4ICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3ggIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmhpZGUteGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiXG4uc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5yb3cuc2hvdyB7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleCAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveCAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG59XG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vLyBNaXhpbiB0byBydW4gaW5zaWRlIG9mIGZvciBsb29wIC0gY3JlYXRlcyB2aXNpYmlsaXR5IGNsYXNzZXMgKiBOb3QgZm9yIGRldmVsb3BlciB1c2UgKlxuQG1peGluIHZpcy1mYWN0b3J5KCR0aGlzUHJlZml4KSB7XG4gIC5zaG93LSN7JHRoaXNQcmVmaXh9IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC5yb3cuc2hvdy0jeyR0aGlzUHJlZml4fSB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4ICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3ggIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmhpZGUtI3skdGhpc1ByZWZpeH0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufSAvLyBNaXhpbiB0byBydW4gaW5zaWRlIG9mIGZvciBsb29wIC0gY3JlYXRlcyB2aXNpYmlsaXR5IGNsYXNzZXMgKiBOb3QgZm9yIGRldmVsb3BlciB1c2UgKlxuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkYnJlYWtwb2ludC1hbGwtcHJlZml4ZXMpIHtcbiAgJHRoaXNQcmVmaXg6IG50aCgkYnJlYWtwb2ludC1hbGwtcHJlZml4ZXMsICRpKTtcbiAgQGlmICR0aGlzUHJlZml4ID09IFwieHNcIiB7XG4gICAgQGluY2x1ZGUgdmlzLWZhY3RvcnkoJHRoaXNQcmVmaXgpO1xuICB9IEBlbHNlIGlmICR0aGlzUHJlZml4ID09IFwieHMtb25seVwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC14cy1vbmx5fSB7XG4gICAgICBAaW5jbHVkZSB2aXMtZmFjdG9yeSgkdGhpc1ByZWZpeCk7XG4gICAgfVxuICB9IEBlbHNlIGlmICR0aGlzUHJlZml4ID09IFwic21cIiB7XG4gICAgQG1lZGlhICN7JGJyZWFrcG9pbnQtc20tdXB9IHtcbiAgICAgIEBpbmNsdWRlIHZpcy1mYWN0b3J5KCR0aGlzUHJlZml4KTtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJHRoaXNQcmVmaXggPT0gXCJzbS1vbmx5XCIge1xuICAgIEBtZWRpYSAjeyRicmVha3BvaW50LXNtLW9ubHl9IHtcbiAgICAgIEBpbmNsdWRlIHZpcy1mYWN0b3J5KCR0aGlzUHJlZml4KTtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJHRoaXNQcmVmaXggPT0gXCJtZFwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC1tZC11cH0ge1xuICAgICAgQGluY2x1ZGUgdmlzLWZhY3RvcnkoJHRoaXNQcmVmaXgpO1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkdGhpc1ByZWZpeCA9PSBcIm1kLW9ubHlcIiB7XG4gICAgQG1lZGlhICN7JGJyZWFrcG9pbnQtbWQtb25seX0ge1xuICAgICAgQGluY2x1ZGUgdmlzLWZhY3RvcnkoJHRoaXNQcmVmaXgpO1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkdGhpc1ByZWZpeCA9PSBcImxnXCIge1xuICAgIEBtZWRpYSAjeyRicmVha3BvaW50LWxnLXVwfSB7XG4gICAgICBAaW5jbHVkZSB2aXMtZmFjdG9yeSgkdGhpc1ByZWZpeCk7XG4gICAgfVxuICB9IEBlbHNlIGlmICR0aGlzUHJlZml4ID09IFwibGctb25seVwiIHtcbiAgICBAbWVkaWEgI3skYnJlYWtwb2ludC1sZy1vbmx5fSB7XG4gICAgICBAaW5jbHVkZSB2aXMtZmFjdG9yeSgkdGhpc1ByZWZpeCk7XG4gICAgfVxuICB9IEBlbHNlIGlmICR0aGlzUHJlZml4ID09IFwieGxcIiB7XG4gICAgQG1lZGlhICN7JGJyZWFrcG9pbnQteGwtdXB9IHtcbiAgICAgIEBpbmNsdWRlIHZpcy1mYWN0b3J5KCR0aGlzUHJlZml4KTtcbiAgICB9XG4gIH1cbn1cbiJdfQ== */
