html {
  box-sizing: border-box;
  -ms-overflow-style: scrollbar; }

*,
*::before,
*::after {
  box-sizing: inherit; }

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

.row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px; }

.no-gutters {
  margin-right: 0;
  margin-left: 0; }

.no-gutters > .col,
.no-gutters > [class*="col-"] {
  padding-right: 0;
  padding-left: 0; }

.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,
.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,
.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,
.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
.col-xl-auto {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px; }

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

.col-auto {
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: auto;
  max-width: 100%; }

.col-1 {
  -ms-flex: 0 0 8.333333%;
  flex: 0 0 8.333333%;
  max-width: 8.333333%; }

.col-2 {
  -ms-flex: 0 0 16.666667%;
  flex: 0 0 16.666667%;
  max-width: 16.666667%; }

.col-3 {
  -ms-flex: 0 0 25%;
  flex: 0 0 25%;
  max-width: 25%; }

.col-4 {
  -ms-flex: 0 0 33.333333%;
  flex: 0 0 33.333333%;
  max-width: 33.333333%; }

.col-5 {
  -ms-flex: 0 0 41.666667%;
  flex: 0 0 41.666667%;
  max-width: 41.666667%; }

.col-6 {
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  max-width: 50%; }

.col-7 {
  -ms-flex: 0 0 58.333333%;
  flex: 0 0 58.333333%;
  max-width: 58.333333%; }

.col-8 {
  -ms-flex: 0 0 66.666667%;
  flex: 0 0 66.666667%;
  max-width: 66.666667%; }

.col-9 {
  -ms-flex: 0 0 75%;
  flex: 0 0 75%;
  max-width: 75%; }

.col-10 {
  -ms-flex: 0 0 83.333333%;
  flex: 0 0 83.333333%;
  max-width: 83.333333%; }

.col-11 {
  -ms-flex: 0 0 91.666667%;
  flex: 0 0 91.666667%;
  max-width: 91.666667%; }

.col-12 {
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  max-width: 100%; }

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

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

.order-0 {
  -ms-flex-order: 0;
  order: 0; }

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

.order-2 {
  -ms-flex-order: 2;
  order: 2; }

.order-3 {
  -ms-flex-order: 3;
  order: 3; }

.order-4 {
  -ms-flex-order: 4;
  order: 4; }

.order-5 {
  -ms-flex-order: 5;
  order: 5; }

.order-6 {
  -ms-flex-order: 6;
  order: 6; }

.order-7 {
  -ms-flex-order: 7;
  order: 7; }

.order-8 {
  -ms-flex-order: 8;
  order: 8; }

.order-9 {
  -ms-flex-order: 9;
  order: 9; }

.order-10 {
  -ms-flex-order: 10;
  order: 10; }

.order-11 {
  -ms-flex-order: 11;
  order: 11; }

.order-12 {
  -ms-flex-order: 12;
  order: 12; }

.offset-1 {
  margin-left: 8.333333%; }

.offset-2 {
  margin-left: 16.666667%; }

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

.offset-4 {
  margin-left: 33.333333%; }

.offset-5 {
  margin-left: 41.666667%; }

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

.offset-7 {
  margin-left: 58.333333%; }

.offset-8 {
  margin-left: 66.666667%; }

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

.offset-10 {
  margin-left: 83.333333%; }

.offset-11 {
  margin-left: 91.666667%; }

@media (min-width: 576px) {
  .col-sm {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%; }
  .col-sm-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .col-sm-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%; }
  .col-sm-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%; }
  .col-sm-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%; }
  .col-sm-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%; }
  .col-sm-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%; }
  .col-sm-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%; }
  .col-sm-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%; }
  .col-sm-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%; }
  .col-sm-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%; }
  .col-sm-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%; }
  .col-sm-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%; }
  .col-sm-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%; }
  .order-sm-first {
    -ms-flex-order: -1;
    order: -1; }
  .order-sm-last {
    -ms-flex-order: 13;
    order: 13; }
  .order-sm-0 {
    -ms-flex-order: 0;
    order: 0; }
  .order-sm-1 {
    -ms-flex-order: 1;
    order: 1; }
  .order-sm-2 {
    -ms-flex-order: 2;
    order: 2; }
  .order-sm-3 {
    -ms-flex-order: 3;
    order: 3; }
  .order-sm-4 {
    -ms-flex-order: 4;
    order: 4; }
  .order-sm-5 {
    -ms-flex-order: 5;
    order: 5; }
  .order-sm-6 {
    -ms-flex-order: 6;
    order: 6; }
  .order-sm-7 {
    -ms-flex-order: 7;
    order: 7; }
  .order-sm-8 {
    -ms-flex-order: 8;
    order: 8; }
  .order-sm-9 {
    -ms-flex-order: 9;
    order: 9; }
  .order-sm-10 {
    -ms-flex-order: 10;
    order: 10; }
  .order-sm-11 {
    -ms-flex-order: 11;
    order: 11; }
  .order-sm-12 {
    -ms-flex-order: 12;
    order: 12; }
  .offset-sm-0 {
    margin-left: 0; }
  .offset-sm-1 {
    margin-left: 8.333333%; }
  .offset-sm-2 {
    margin-left: 16.666667%; }
  .offset-sm-3 {
    margin-left: 25%; }
  .offset-sm-4 {
    margin-left: 33.333333%; }
  .offset-sm-5 {
    margin-left: 41.666667%; }
  .offset-sm-6 {
    margin-left: 50%; }
  .offset-sm-7 {
    margin-left: 58.333333%; }
  .offset-sm-8 {
    margin-left: 66.666667%; }
  .offset-sm-9 {
    margin-left: 75%; }
  .offset-sm-10 {
    margin-left: 83.333333%; }
  .offset-sm-11 {
    margin-left: 91.666667%; } }

@media (min-width: 768px) {
  .col-md {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%; }
  .col-md-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .col-md-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%; }
  .col-md-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%; }
  .col-md-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%; }
  .col-md-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%; }
  .col-md-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%; }
  .col-md-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%; }
  .col-md-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%; }
  .col-md-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%; }
  .col-md-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%; }
  .col-md-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%; }
  .col-md-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%; }
  .col-md-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%; }
  .order-md-first {
    -ms-flex-order: -1;
    order: -1; }
  .order-md-last {
    -ms-flex-order: 13;
    order: 13; }
  .order-md-0 {
    -ms-flex-order: 0;
    order: 0; }
  .order-md-1 {
    -ms-flex-order: 1;
    order: 1; }
  .order-md-2 {
    -ms-flex-order: 2;
    order: 2; }
  .order-md-3 {
    -ms-flex-order: 3;
    order: 3; }
  .order-md-4 {
    -ms-flex-order: 4;
    order: 4; }
  .order-md-5 {
    -ms-flex-order: 5;
    order: 5; }
  .order-md-6 {
    -ms-flex-order: 6;
    order: 6; }
  .order-md-7 {
    -ms-flex-order: 7;
    order: 7; }
  .order-md-8 {
    -ms-flex-order: 8;
    order: 8; }
  .order-md-9 {
    -ms-flex-order: 9;
    order: 9; }
  .order-md-10 {
    -ms-flex-order: 10;
    order: 10; }
  .order-md-11 {
    -ms-flex-order: 11;
    order: 11; }
  .order-md-12 {
    -ms-flex-order: 12;
    order: 12; }
  .offset-md-0 {
    margin-left: 0; }
  .offset-md-1 {
    margin-left: 8.333333%; }
  .offset-md-2 {
    margin-left: 16.666667%; }
  .offset-md-3 {
    margin-left: 25%; }
  .offset-md-4 {
    margin-left: 33.333333%; }
  .offset-md-5 {
    margin-left: 41.666667%; }
  .offset-md-6 {
    margin-left: 50%; }
  .offset-md-7 {
    margin-left: 58.333333%; }
  .offset-md-8 {
    margin-left: 66.666667%; }
  .offset-md-9 {
    margin-left: 75%; }
  .offset-md-10 {
    margin-left: 83.333333%; }
  .offset-md-11 {
    margin-left: 91.666667%; } }

@media (min-width: 992px) {
  .col-lg {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%; }
  .col-lg-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .col-lg-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%; }
  .col-lg-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%; }
  .col-lg-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%; }
  .col-lg-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%; }
  .col-lg-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%; }
  .col-lg-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%; }
  .col-lg-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%; }
  .col-lg-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%; }
  .col-lg-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%; }
  .col-lg-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%; }
  .col-lg-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%; }
  .col-lg-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%; }
  .order-lg-first {
    -ms-flex-order: -1;
    order: -1; }
  .order-lg-last {
    -ms-flex-order: 13;
    order: 13; }
  .order-lg-0 {
    -ms-flex-order: 0;
    order: 0; }
  .order-lg-1 {
    -ms-flex-order: 1;
    order: 1; }
  .order-lg-2 {
    -ms-flex-order: 2;
    order: 2; }
  .order-lg-3 {
    -ms-flex-order: 3;
    order: 3; }
  .order-lg-4 {
    -ms-flex-order: 4;
    order: 4; }
  .order-lg-5 {
    -ms-flex-order: 5;
    order: 5; }
  .order-lg-6 {
    -ms-flex-order: 6;
    order: 6; }
  .order-lg-7 {
    -ms-flex-order: 7;
    order: 7; }
  .order-lg-8 {
    -ms-flex-order: 8;
    order: 8; }
  .order-lg-9 {
    -ms-flex-order: 9;
    order: 9; }
  .order-lg-10 {
    -ms-flex-order: 10;
    order: 10; }
  .order-lg-11 {
    -ms-flex-order: 11;
    order: 11; }
  .order-lg-12 {
    -ms-flex-order: 12;
    order: 12; }
  .offset-lg-0 {
    margin-left: 0; }
  .offset-lg-1 {
    margin-left: 8.333333%; }
  .offset-lg-2 {
    margin-left: 16.666667%; }
  .offset-lg-3 {
    margin-left: 25%; }
  .offset-lg-4 {
    margin-left: 33.333333%; }
  .offset-lg-5 {
    margin-left: 41.666667%; }
  .offset-lg-6 {
    margin-left: 50%; }
  .offset-lg-7 {
    margin-left: 58.333333%; }
  .offset-lg-8 {
    margin-left: 66.666667%; }
  .offset-lg-9 {
    margin-left: 75%; }
  .offset-lg-10 {
    margin-left: 83.333333%; }
  .offset-lg-11 {
    margin-left: 91.666667%; } }

@media (min-width: 1200px) {
  .col-xl {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%; }
  .col-xl-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .col-xl-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%; }
  .col-xl-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%; }
  .col-xl-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%; }
  .col-xl-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%; }
  .col-xl-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%; }
  .col-xl-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%; }
  .col-xl-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%; }
  .col-xl-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%; }
  .col-xl-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%; }
  .col-xl-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%; }
  .col-xl-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%; }
  .col-xl-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%; }
  .order-xl-first {
    -ms-flex-order: -1;
    order: -1; }
  .order-xl-last {
    -ms-flex-order: 13;
    order: 13; }
  .order-xl-0 {
    -ms-flex-order: 0;
    order: 0; }
  .order-xl-1 {
    -ms-flex-order: 1;
    order: 1; }
  .order-xl-2 {
    -ms-flex-order: 2;
    order: 2; }
  .order-xl-3 {
    -ms-flex-order: 3;
    order: 3; }
  .order-xl-4 {
    -ms-flex-order: 4;
    order: 4; }
  .order-xl-5 {
    -ms-flex-order: 5;
    order: 5; }
  .order-xl-6 {
    -ms-flex-order: 6;
    order: 6; }
  .order-xl-7 {
    -ms-flex-order: 7;
    order: 7; }
  .order-xl-8 {
    -ms-flex-order: 8;
    order: 8; }
  .order-xl-9 {
    -ms-flex-order: 9;
    order: 9; }
  .order-xl-10 {
    -ms-flex-order: 10;
    order: 10; }
  .order-xl-11 {
    -ms-flex-order: 11;
    order: 11; }
  .order-xl-12 {
    -ms-flex-order: 12;
    order: 12; }
  .offset-xl-0 {
    margin-left: 0; }
  .offset-xl-1 {
    margin-left: 8.333333%; }
  .offset-xl-2 {
    margin-left: 16.666667%; }
  .offset-xl-3 {
    margin-left: 25%; }
  .offset-xl-4 {
    margin-left: 33.333333%; }
  .offset-xl-5 {
    margin-left: 41.666667%; }
  .offset-xl-6 {
    margin-left: 50%; }
  .offset-xl-7 {
    margin-left: 58.333333%; }
  .offset-xl-8 {
    margin-left: 66.666667%; }
  .offset-xl-9 {
    margin-left: 75%; }
  .offset-xl-10 {
    margin-left: 83.333333%; }
  .offset-xl-11 {
    margin-left: 91.666667%; } }

@media (min-width: 1400px) {
  .col-xxl {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%; }
  .col-xxl-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .col-xxl-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%; }
  .col-xxl-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%; }
  .col-xxl-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%; }
  .col-xxl-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%; }
  .col-xxl-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%; }
  .col-xxl-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%; }
  .col-xxl-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%; }
  .col-xxl-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%; }
  .col-xxl-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%; }
  .col-xxl-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%; }
  .col-xxl-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%; }
  .col-xxl-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%; }
  .order-xxl-first {
    -ms-flex-order: -1;
    order: -1; }
  .order-xxl-last {
    -ms-flex-order: 13;
    order: 13; }
  .order-xxl-0 {
    -ms-flex-order: 0;
    order: 0; }
  .order-xxl-1 {
    -ms-flex-order: 1;
    order: 1; }
  .order-xxl-2 {
    -ms-flex-order: 2;
    order: 2; }
  .order-xxl-3 {
    -ms-flex-order: 3;
    order: 3; }
  .order-xxl-4 {
    -ms-flex-order: 4;
    order: 4; }
  .order-xxl-5 {
    -ms-flex-order: 5;
    order: 5; }
  .order-xxl-6 {
    -ms-flex-order: 6;
    order: 6; }
  .order-xxl-7 {
    -ms-flex-order: 7;
    order: 7; }
  .order-xxl-8 {
    -ms-flex-order: 8;
    order: 8; }
  .order-xxl-9 {
    -ms-flex-order: 9;
    order: 9; }
  .order-xxl-10 {
    -ms-flex-order: 10;
    order: 10; }
  .order-xxl-11 {
    -ms-flex-order: 11;
    order: 11; }
  .order-xxl-12 {
    -ms-flex-order: 12;
    order: 12; }
  .offset-xxl-0 {
    margin-left: 0; }
  .offset-xxl-1 {
    margin-left: 8.333333%; }
  .offset-xxl-2 {
    margin-left: 16.666667%; }
  .offset-xxl-3 {
    margin-left: 25%; }
  .offset-xxl-4 {
    margin-left: 33.333333%; }
  .offset-xxl-5 {
    margin-left: 41.666667%; }
  .offset-xxl-6 {
    margin-left: 50%; }
  .offset-xxl-7 {
    margin-left: 58.333333%; }
  .offset-xxl-8 {
    margin-left: 66.666667%; }
  .offset-xxl-9 {
    margin-left: 75%; }
  .offset-xxl-10 {
    margin-left: 83.333333%; }
  .offset-xxl-11 {
    margin-left: 91.666667%; } }

.flex-row {
  -ms-flex-direction: row !important;
  flex-direction: row !important; }

.flex-column {
  -ms-flex-direction: column !important;
  flex-direction: column !important; }

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

.flex-column-reverse {
  -ms-flex-direction: column-reverse !important;
  flex-direction: column-reverse !important; }

.flex-wrap {
  -ms-flex-wrap: wrap !important;
  flex-wrap: wrap !important; }

.flex-nowrap {
  -ms-flex-wrap: nowrap !important;
  flex-wrap: nowrap !important; }

.flex-wrap-reverse {
  -ms-flex-wrap: wrap-reverse !important;
  flex-wrap: wrap-reverse !important; }

.flex-fill {
  -ms-flex: 1 1 auto !important;
  flex: 1 1 auto !important; }

.flex-grow-0 {
  -ms-flex-positive: 0 !important;
  flex-grow: 0 !important; }

.flex-grow-1 {
  -ms-flex-positive: 1 !important;
  flex-grow: 1 !important; }

.flex-shrink-0 {
  -ms-flex-negative: 0 !important;
  flex-shrink: 0 !important; }

.flex-shrink-1 {
  -ms-flex-negative: 1 !important;
  flex-shrink: 1 !important; }

.justify-content-start {
  -ms-flex-pack: start !important;
  justify-content: flex-start !important; }

.justify-content-end {
  -ms-flex-pack: end !important;
  justify-content: flex-end !important; }

.justify-content-center {
  -ms-flex-pack: center !important;
  justify-content: center !important; }

.justify-content-between {
  -ms-flex-pack: justify !important;
  justify-content: space-between !important; }

.justify-content-around {
  -ms-flex-pack: distribute !important;
  justify-content: space-around !important; }

.align-items-start {
  -ms-flex-align: start !important;
  align-items: flex-start !important; }

.align-items-end {
  -ms-flex-align: end !important;
  align-items: flex-end !important; }

.align-items-center {
  -ms-flex-align: center !important;
  align-items: center !important; }

.align-items-baseline {
  -ms-flex-align: baseline !important;
  align-items: baseline !important; }

.align-items-stretch {
  -ms-flex-align: stretch !important;
  align-items: stretch !important; }

.align-content-start {
  -ms-flex-line-pack: start !important;
  align-content: flex-start !important; }

.align-content-end {
  -ms-flex-line-pack: end !important;
  align-content: flex-end !important; }

.align-content-center {
  -ms-flex-line-pack: center !important;
  align-content: center !important; }

.align-content-between {
  -ms-flex-line-pack: justify !important;
  align-content: space-between !important; }

.align-content-around {
  -ms-flex-line-pack: distribute !important;
  align-content: space-around !important; }

.align-content-stretch {
  -ms-flex-line-pack: stretch !important;
  align-content: stretch !important; }

.align-self-auto {
  -ms-flex-item-align: auto !important;
  align-self: auto !important; }

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

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

.align-self-center {
  -ms-flex-item-align: center !important;
  align-self: center !important; }

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

.align-self-stretch {
  -ms-flex-item-align: stretch !important;
  align-self: stretch !important; }

@media (min-width: 576px) {
  .flex-sm-row {
    -ms-flex-direction: row !important;
    flex-direction: row !important; }
  .flex-sm-column {
    -ms-flex-direction: column !important;
    flex-direction: column !important; }
  .flex-sm-row-reverse {
    -ms-flex-direction: row-reverse !important;
    flex-direction: row-reverse !important; }
  .flex-sm-column-reverse {
    -ms-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important; }
  .flex-sm-wrap {
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important; }
  .flex-sm-nowrap {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important; }
  .flex-sm-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
    flex-wrap: wrap-reverse !important; }
  .flex-sm-fill {
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important; }
  .flex-sm-grow-0 {
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important; }
  .flex-sm-grow-1 {
    -ms-flex-positive: 1 !important;
    flex-grow: 1 !important; }
  .flex-sm-shrink-0 {
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important; }
  .flex-sm-shrink-1 {
    -ms-flex-negative: 1 !important;
    flex-shrink: 1 !important; }
  .justify-content-sm-start {
    -ms-flex-pack: start !important;
    justify-content: flex-start !important; }
  .justify-content-sm-end {
    -ms-flex-pack: end !important;
    justify-content: flex-end !important; }
  .justify-content-sm-center {
    -ms-flex-pack: center !important;
    justify-content: center !important; }
  .justify-content-sm-between {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important; }
  .justify-content-sm-around {
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important; }
  .align-items-sm-start {
    -ms-flex-align: start !important;
    align-items: flex-start !important; }
  .align-items-sm-end {
    -ms-flex-align: end !important;
    align-items: flex-end !important; }
  .align-items-sm-center {
    -ms-flex-align: center !important;
    align-items: center !important; }
  .align-items-sm-baseline {
    -ms-flex-align: baseline !important;
    align-items: baseline !important; }
  .align-items-sm-stretch {
    -ms-flex-align: stretch !important;
    align-items: stretch !important; }
  .align-content-sm-start {
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important; }
  .align-content-sm-end {
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important; }
  .align-content-sm-center {
    -ms-flex-line-pack: center !important;
    align-content: center !important; }
  .align-content-sm-between {
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important; }
  .align-content-sm-around {
    -ms-flex-line-pack: distribute !important;
    align-content: space-around !important; }
  .align-content-sm-stretch {
    -ms-flex-line-pack: stretch !important;
    align-content: stretch !important; }
  .align-self-sm-auto {
    -ms-flex-item-align: auto !important;
    align-self: auto !important; }
  .align-self-sm-start {
    -ms-flex-item-align: start !important;
    align-self: flex-start !important; }
  .align-self-sm-end {
    -ms-flex-item-align: end !important;
    align-self: flex-end !important; }
  .align-self-sm-center {
    -ms-flex-item-align: center !important;
    align-self: center !important; }
  .align-self-sm-baseline {
    -ms-flex-item-align: baseline !important;
    align-self: baseline !important; }
  .align-self-sm-stretch {
    -ms-flex-item-align: stretch !important;
    align-self: stretch !important; } }

@media (min-width: 768px) {
  .flex-md-row {
    -ms-flex-direction: row !important;
    flex-direction: row !important; }
  .flex-md-column {
    -ms-flex-direction: column !important;
    flex-direction: column !important; }
  .flex-md-row-reverse {
    -ms-flex-direction: row-reverse !important;
    flex-direction: row-reverse !important; }
  .flex-md-column-reverse {
    -ms-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important; }
  .flex-md-wrap {
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important; }
  .flex-md-nowrap {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important; }
  .flex-md-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
    flex-wrap: wrap-reverse !important; }
  .flex-md-fill {
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important; }
  .flex-md-grow-0 {
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important; }
  .flex-md-grow-1 {
    -ms-flex-positive: 1 !important;
    flex-grow: 1 !important; }
  .flex-md-shrink-0 {
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important; }
  .flex-md-shrink-1 {
    -ms-flex-negative: 1 !important;
    flex-shrink: 1 !important; }
  .justify-content-md-start {
    -ms-flex-pack: start !important;
    justify-content: flex-start !important; }
  .justify-content-md-end {
    -ms-flex-pack: end !important;
    justify-content: flex-end !important; }
  .justify-content-md-center {
    -ms-flex-pack: center !important;
    justify-content: center !important; }
  .justify-content-md-between {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important; }
  .justify-content-md-around {
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important; }
  .align-items-md-start {
    -ms-flex-align: start !important;
    align-items: flex-start !important; }
  .align-items-md-end {
    -ms-flex-align: end !important;
    align-items: flex-end !important; }
  .align-items-md-center {
    -ms-flex-align: center !important;
    align-items: center !important; }
  .align-items-md-baseline {
    -ms-flex-align: baseline !important;
    align-items: baseline !important; }
  .align-items-md-stretch {
    -ms-flex-align: stretch !important;
    align-items: stretch !important; }
  .align-content-md-start {
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important; }
  .align-content-md-end {
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important; }
  .align-content-md-center {
    -ms-flex-line-pack: center !important;
    align-content: center !important; }
  .align-content-md-between {
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important; }
  .align-content-md-around {
    -ms-flex-line-pack: distribute !important;
    align-content: space-around !important; }
  .align-content-md-stretch {
    -ms-flex-line-pack: stretch !important;
    align-content: stretch !important; }
  .align-self-md-auto {
    -ms-flex-item-align: auto !important;
    align-self: auto !important; }
  .align-self-md-start {
    -ms-flex-item-align: start !important;
    align-self: flex-start !important; }
  .align-self-md-end {
    -ms-flex-item-align: end !important;
    align-self: flex-end !important; }
  .align-self-md-center {
    -ms-flex-item-align: center !important;
    align-self: center !important; }
  .align-self-md-baseline {
    -ms-flex-item-align: baseline !important;
    align-self: baseline !important; }
  .align-self-md-stretch {
    -ms-flex-item-align: stretch !important;
    align-self: stretch !important; } }

@media (min-width: 992px) {
  .flex-lg-row {
    -ms-flex-direction: row !important;
    flex-direction: row !important; }
  .flex-lg-column {
    -ms-flex-direction: column !important;
    flex-direction: column !important; }
  .flex-lg-row-reverse {
    -ms-flex-direction: row-reverse !important;
    flex-direction: row-reverse !important; }
  .flex-lg-column-reverse {
    -ms-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important; }
  .flex-lg-wrap {
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important; }
  .flex-lg-nowrap {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important; }
  .flex-lg-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
    flex-wrap: wrap-reverse !important; }
  .flex-lg-fill {
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important; }
  .flex-lg-grow-0 {
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important; }
  .flex-lg-grow-1 {
    -ms-flex-positive: 1 !important;
    flex-grow: 1 !important; }
  .flex-lg-shrink-0 {
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important; }
  .flex-lg-shrink-1 {
    -ms-flex-negative: 1 !important;
    flex-shrink: 1 !important; }
  .justify-content-lg-start {
    -ms-flex-pack: start !important;
    justify-content: flex-start !important; }
  .justify-content-lg-end {
    -ms-flex-pack: end !important;
    justify-content: flex-end !important; }
  .justify-content-lg-center {
    -ms-flex-pack: center !important;
    justify-content: center !important; }
  .justify-content-lg-between {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important; }
  .justify-content-lg-around {
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important; }
  .align-items-lg-start {
    -ms-flex-align: start !important;
    align-items: flex-start !important; }
  .align-items-lg-end {
    -ms-flex-align: end !important;
    align-items: flex-end !important; }
  .align-items-lg-center {
    -ms-flex-align: center !important;
    align-items: center !important; }
  .align-items-lg-baseline {
    -ms-flex-align: baseline !important;
    align-items: baseline !important; }
  .align-items-lg-stretch {
    -ms-flex-align: stretch !important;
    align-items: stretch !important; }
  .align-content-lg-start {
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important; }
  .align-content-lg-end {
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important; }
  .align-content-lg-center {
    -ms-flex-line-pack: center !important;
    align-content: center !important; }
  .align-content-lg-between {
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important; }
  .align-content-lg-around {
    -ms-flex-line-pack: distribute !important;
    align-content: space-around !important; }
  .align-content-lg-stretch {
    -ms-flex-line-pack: stretch !important;
    align-content: stretch !important; }
  .align-self-lg-auto {
    -ms-flex-item-align: auto !important;
    align-self: auto !important; }
  .align-self-lg-start {
    -ms-flex-item-align: start !important;
    align-self: flex-start !important; }
  .align-self-lg-end {
    -ms-flex-item-align: end !important;
    align-self: flex-end !important; }
  .align-self-lg-center {
    -ms-flex-item-align: center !important;
    align-self: center !important; }
  .align-self-lg-baseline {
    -ms-flex-item-align: baseline !important;
    align-self: baseline !important; }
  .align-self-lg-stretch {
    -ms-flex-item-align: stretch !important;
    align-self: stretch !important; } }

@media (min-width: 1200px) {
  .flex-xl-row {
    -ms-flex-direction: row !important;
    flex-direction: row !important; }
  .flex-xl-column {
    -ms-flex-direction: column !important;
    flex-direction: column !important; }
  .flex-xl-row-reverse {
    -ms-flex-direction: row-reverse !important;
    flex-direction: row-reverse !important; }
  .flex-xl-column-reverse {
    -ms-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important; }
  .flex-xl-wrap {
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important; }
  .flex-xl-nowrap {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important; }
  .flex-xl-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
    flex-wrap: wrap-reverse !important; }
  .flex-xl-fill {
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important; }
  .flex-xl-grow-0 {
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important; }
  .flex-xl-grow-1 {
    -ms-flex-positive: 1 !important;
    flex-grow: 1 !important; }
  .flex-xl-shrink-0 {
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important; }
  .flex-xl-shrink-1 {
    -ms-flex-negative: 1 !important;
    flex-shrink: 1 !important; }
  .justify-content-xl-start {
    -ms-flex-pack: start !important;
    justify-content: flex-start !important; }
  .justify-content-xl-end {
    -ms-flex-pack: end !important;
    justify-content: flex-end !important; }
  .justify-content-xl-center {
    -ms-flex-pack: center !important;
    justify-content: center !important; }
  .justify-content-xl-between {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important; }
  .justify-content-xl-around {
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important; }
  .align-items-xl-start {
    -ms-flex-align: start !important;
    align-items: flex-start !important; }
  .align-items-xl-end {
    -ms-flex-align: end !important;
    align-items: flex-end !important; }
  .align-items-xl-center {
    -ms-flex-align: center !important;
    align-items: center !important; }
  .align-items-xl-baseline {
    -ms-flex-align: baseline !important;
    align-items: baseline !important; }
  .align-items-xl-stretch {
    -ms-flex-align: stretch !important;
    align-items: stretch !important; }
  .align-content-xl-start {
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important; }
  .align-content-xl-end {
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important; }
  .align-content-xl-center {
    -ms-flex-line-pack: center !important;
    align-content: center !important; }
  .align-content-xl-between {
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important; }
  .align-content-xl-around {
    -ms-flex-line-pack: distribute !important;
    align-content: space-around !important; }
  .align-content-xl-stretch {
    -ms-flex-line-pack: stretch !important;
    align-content: stretch !important; }
  .align-self-xl-auto {
    -ms-flex-item-align: auto !important;
    align-self: auto !important; }
  .align-self-xl-start {
    -ms-flex-item-align: start !important;
    align-self: flex-start !important; }
  .align-self-xl-end {
    -ms-flex-item-align: end !important;
    align-self: flex-end !important; }
  .align-self-xl-center {
    -ms-flex-item-align: center !important;
    align-self: center !important; }
  .align-self-xl-baseline {
    -ms-flex-item-align: baseline !important;
    align-self: baseline !important; }
  .align-self-xl-stretch {
    -ms-flex-item-align: stretch !important;
    align-self: stretch !important; } }

.m-0 {
  margin: 0 !important; }

.mt-0,
.my-0 {
  margin-top: 0 !important; }

.mr-0,
.mx-0 {
  margin-right: 0 !important; }

.mb-0,
.my-0 {
  margin-bottom: 0 !important; }

.ml-0,
.mx-0 {
  margin-left: 0 !important; }

.p-0 {
  padding: 0 !important; }

.pt-0,
.py-0 {
  padding-top: 0 !important; }

.pr-0,
.px-0 {
  padding-right: 0 !important; }

.pb-0,
.py-0 {
  padding-bottom: 0 !important; }

.pl-0,
.px-0 {
  padding-left: 0 !important; }

.m-auto {
  margin: auto !important; }

.mt-auto,
.my-auto {
  margin-top: auto !important; }

.mr-auto,
.mx-auto {
  margin-right: auto !important; }

.mb-auto,
.my-auto {
  margin-bottom: auto !important; }

.ml-auto,
.mx-auto {
  margin-left: auto !important; }

@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important; }
  .mt-sm-0,
  .my-sm-0 {
    margin-top: 0 !important; }
  .mr-sm-0,
  .mx-sm-0 {
    margin-right: 0 !important; }
  .mb-sm-0,
  .my-sm-0 {
    margin-bottom: 0 !important; }
  .ml-sm-0,
  .mx-sm-0 {
    margin-left: 0 !important; }
  .p-sm-0 {
    padding: 0 !important; }
  .pt-sm-0,
  .py-sm-0 {
    padding-top: 0 !important; }
  .pr-sm-0,
  .px-sm-0 {
    padding-right: 0 !important; }
  .pb-sm-0,
  .py-sm-0 {
    padding-bottom: 0 !important; }
  .pl-sm-0,
  .px-sm-0 {
    padding-left: 0 !important; }
  .m-sm-auto {
    margin: auto !important; }
  .mt-sm-auto,
  .my-sm-auto {
    margin-top: auto !important; }
  .mr-sm-auto,
  .mx-sm-auto {
    margin-right: auto !important; }
  .mb-sm-auto,
  .my-sm-auto {
    margin-bottom: auto !important; }
  .ml-sm-auto,
  .mx-sm-auto {
    margin-left: auto !important; } }

@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important; }
  .mt-md-0,
  .my-md-0 {
    margin-top: 0 !important; }
  .mr-md-0,
  .mx-md-0 {
    margin-right: 0 !important; }
  .mb-md-0,
  .my-md-0 {
    margin-bottom: 0 !important; }
  .ml-md-0,
  .mx-md-0 {
    margin-left: 0 !important; }
  .p-md-0 {
    padding: 0 !important; }
  .pt-md-0,
  .py-md-0 {
    padding-top: 0 !important; }
  .pr-md-0,
  .px-md-0 {
    padding-right: 0 !important; }
  .pb-md-0,
  .py-md-0 {
    padding-bottom: 0 !important; }
  .pl-md-0,
  .px-md-0 {
    padding-left: 0 !important; }
  .m-md-auto {
    margin: auto !important; }
  .mt-md-auto,
  .my-md-auto {
    margin-top: auto !important; }
  .mr-md-auto,
  .mx-md-auto {
    margin-right: auto !important; }
  .mb-md-auto,
  .my-md-auto {
    margin-bottom: auto !important; }
  .ml-md-auto,
  .mx-md-auto {
    margin-left: auto !important; } }

@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 !important; }
  .mt-lg-0,
  .my-lg-0 {
    margin-top: 0 !important; }
  .mr-lg-0,
  .mx-lg-0 {
    margin-right: 0 !important; }
  .mb-lg-0,
  .my-lg-0 {
    margin-bottom: 0 !important; }
  .ml-lg-0,
  .mx-lg-0 {
    margin-left: 0 !important; }
  .p-lg-0 {
    padding: 0 !important; }
  .pt-lg-0,
  .py-lg-0 {
    padding-top: 0 !important; }
  .pr-lg-0,
  .px-lg-0 {
    padding-right: 0 !important; }
  .pb-lg-0,
  .py-lg-0 {
    padding-bottom: 0 !important; }
  .pl-lg-0,
  .px-lg-0 {
    padding-left: 0 !important; }
  .m-lg-auto {
    margin: auto !important; }
  .mt-lg-auto,
  .my-lg-auto {
    margin-top: auto !important; }
  .mr-lg-auto,
  .mx-lg-auto {
    margin-right: auto !important; }
  .mb-lg-auto,
  .my-lg-auto {
    margin-bottom: auto !important; }
  .ml-lg-auto,
  .mx-lg-auto {
    margin-left: auto !important; } }

@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 !important; }
  .mt-xl-0,
  .my-xl-0 {
    margin-top: 0 !important; }
  .mr-xl-0,
  .mx-xl-0 {
    margin-right: 0 !important; }
  .mb-xl-0,
  .my-xl-0 {
    margin-bottom: 0 !important; }
  .ml-xl-0,
  .mx-xl-0 {
    margin-left: 0 !important; }
  .p-xl-0 {
    padding: 0 !important; }
  .pt-xl-0,
  .py-xl-0 {
    padding-top: 0 !important; }
  .pr-xl-0,
  .px-xl-0 {
    padding-right: 0 !important; }
  .pb-xl-0,
  .py-xl-0 {
    padding-bottom: 0 !important; }
  .pl-xl-0,
  .px-xl-0 {
    padding-left: 0 !important; }
  .m-xl-auto {
    margin: auto !important; }
  .mt-xl-auto,
  .my-xl-auto {
    margin-top: auto !important; }
  .mr-xl-auto,
  .mx-xl-auto {
    margin-right: auto !important; }
  .mb-xl-auto,
  .my-xl-auto {
    margin-bottom: auto !important; }
  .ml-xl-auto,
  .mx-xl-auto {
    margin-left: auto !important; } }

@font-face {
  font-family: "Apax Regular";
  src: url("../fonts/Optimo-Apax/Apax-Regular/Apax-Regular.eot") format("embedded-opentype"), url("../fonts/Optimo-Apax/Apax-Regular/Apax-Regular.woff2") format("woff2"), url("../fonts/Optimo-Apax/Apax-Regular/Apax-Regular.woff") format("woff"), url("../fonts/Optimo-Apax/Apax-Regular/Apax-Regular.otf") format("opentype");
  font-weight: 400;
  font-style: normal; }

@font-face {
  font-family: "Apax Bold";
  src: url("../fonts/Optimo-Apax/Apax-Bold/Apax-Bold.eot") format("embedded-opentype"), url("../fonts/Optimo-Apax/Apax-Bold/Apax-Bold.woff2") format("woff2"), url("../fonts/Optimo-Apax/Apax-Bold/Apax-Bold.woff") format("woff"), url("../fonts/Optimo-Apax/Apax-Bold/Apax-Bold.otf") format("opentype");
  font-weight: 700;
  font-style: bold; }

/*--------------------------------------------------------- GENERAL ---------------------------------------------------------*/
* {
  outline: none !important;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0) !important;
  -ms-overflow-style: none; }

*::-webkit-scrollbar {
  display: none; }

/* NO FIREFOX COMPATIBILITIES */
html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  cursor: default; }

img {
  border: none;
  max-width: 100%; }

a[href^="mailto:"] {
  white-space: nowrap !important; }

.padding-xs, .padding-s, .padding-m, .padding-l, .padding-xl {
  width: 100%; }

.padding-xs {
  height: 15px; }

.padding-s {
  height: 30px; }

.padding-m {
  height: 50px; }

.padding-l {
  height: 100px; }

.padding-xl {
  height: 150px; }

.h-auto {
  height: auto !important; }

hr {
  border: none !important;
  display: block;
  position: relative;
  width: 100%;
  max-width: 100% !important;
  height: 1px;
  margin: 75px auto !important; }

ul, ul li {
  margin: 0;
  padding: 0;
  list-style: none; }

ul.ul-disc {
  padding-left: 18px; }
  ul.ul-disc li {
    list-style: disc; }

ul.ul-table {
  border-top: 1px solid; }
  ul.ul-table li {
    position: relative;
    padding: 16px 0 12px;
    border-bottom: 1px solid; }

ol {
  counter-reset: li;
  list-style: none;
  *list-style: decimal;
  margin: 0;
  padding: 0; }
  ol li {
    padding: 12px 0 12px 60px; }
    ol li span {
      display: block;
      position: relative; }
      ol li span:before {
        content: counter(li);
        counter-increment: li;
        position: absolute;
        top: 50%;
        left: -60px !important;
        height: 40px;
        width: 40px;
        line-height: 38px;
        text-align: center;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -o-transform: translateX(0) translateY(-50%); }

video, header, aside, nav, main, section, footer {
  display: block; }

.content-wrapper,
section,
.z-index-up {
  position: relative;
  z-index: 1; }

.z-index-up {
  z-index: 100; }

section:not(.formation) {
  width: 100%;
  overflow: hidden; }

figure, figcaption {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0; }

figcaption {
  margin-top: 8px; }

blockquote {
  margin: 0;
  padding: 0; }

blockquote p:before,
blockquote p:after {
  display: inline-block; }

blockquote p:before {
  content: "\00ab"; }

blockquote p:after {
  display: none;
  content: "\00bb";
  margin-left: 0.1em; }

html[lang="de-DE"] blockquote p:before {
  content: "\201E"; }

html[lang="de-DE"] blockquote p:after {
  content: "\201D"; }

.anchor-parent {
  position: relative;
  display: block; }

.anchor {
  position: absolute;
  left: 0;
  top: -50px;
  height: 0;
  width: 100%; }

.oembed {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  /* FORMAT 16:9 */ }

.bg-section,
.bg-link,
.bg-overlay:after,
.bg-overlay-light:after {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 0; }

.bg-overlay:after {
  content: "";
  display: block;
  z-index: 1; }

.bg-section {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover; }

.bg-link {
  border: none;
  display: block;
  cursor: pointer;
  z-index: 100; }

.bg-section-video video,
.bg-section .ytplayer-container,
.bg-section iframe,
.oembed iframe {
  position: absolute;
  left: 50% !important;
  top: 50% !important;
  -webkit-transform: translate(-50%, -50%) !important;
  transform: translate(-50%, -50%) !important;
  width: 100%;
  height: 100%; }

.bg-section-video video {
  width: auto;
  min-width: 100%;
  height: 100%;
  object-fit: cover; }

html.user-ie .bg-section-video video,
html.user-edge .bg-section-video video {
  min-width: 0; }

html.user-ie .bg-section-video.width video,
html.user-edge .bg-section-video.width video {
  width: 100%;
  height: auto; }

html.user-ie .bg-section-video.height video,
html.user-edge .bg-section-video.height video {
  min-width: 0;
  height: 100%; }

.btn-corpo,
.btn-rounded {
  border: none;
  display: inline-block;
  position: relative;
  padding: 20px 35px;
  line-height: normal;
  text-align: center !important;
  white-space: nowrap;
  cursor: pointer;
  overflow: hidden; }

.btn-block {
  display: block;
  width: 100% !important; }

.btn-rounded {
  padding: 8px 12px 6px; }

.btn-arrow {
  background: url(../images/icon-arrow-link-black.svg) no-repeat top 8% right 1px;
  background-size: auto 92%;
  display: inline-block;
  padding-right: 40px;
  cursor: pointer; }
  .btn-arrow.bottom {
    background-image: url(../images/icon-arrow-link-bottom-black.svg); }

.list-icons {
  margin: -8px; }

.list-icons > [class*="col"] {
  padding: 8px; }

.border-radius,
.btn-rounded,
.mobile-menu .sub-menu a,
div.wpcf7 .link-item .ajax-loader {
  border-radius: 2000px !important;
  -webkit-border-radius: 2000px !important;
  -moz-border-radius: 2000px !important; }

.no-border-radius,
input, textarea, select, button {
  border-radius: 0 !important;
  -webkit-border-radius: 0 !important;
  -moz-border-radius: 0 !important; }

/*--------------------------------------------------------- COLORS & BACKGROUNDS ---------------------------------------------------------*/
.bg-white,
hr,
#main-menu > ul > li .sub-menu,
.mobile-menu .sub-menu a,
.swiper-pagination-bullet,
.project-card-container,
.dropdown-menu,
.btn-corpo,
.btn-rounded,
.row-form.row-form-textarea > label,
div.wpcf7 .link-item .ajax-loader {
  background-color: #FFF !important; }

.bg-light,
html,
body,
.line-light,
.fancybox-bg,
.category-faq.active,
div.wpcf7 div.wpcf7-response-output {
  background-color: #F3F4F3 !important; }

.bg-corporate,
.menu-item a::before,
.download-item-container:hover,
.swiper-pagination-bullet.green {
  background-color: #124734 !important; }

.bg-black {
  background-color: #000 !important; }

.services-card-img .bg-overlay,
.team-card-image.bg-section:not(.no-image) {
  background-color: rgba(0, 0, 0, 0.1) !important; }

.bg-overlay {
  background-color: rgba(0, 0, 0, 0.4) !important; }

.bg-overlay.bg-overlay-light {
  background-color: rgba(255, 255, 255, 0.4) !important; }

.bg-overlay:after {
  background: -moz-linear-gradient(left, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 100%);
  background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 100%);
  background: linear-gradient(to right, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#59000000', endColorstr='#00000000', GradientType=1); }

.slider-quotes .bg-overlay:after {
  background: -moz-linear-gradient(left, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.35) 100%);
  background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.35) 100%);
  background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.35) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#59000000', GradientType=1); }

.bg-overlay.bg-overlay-light:after {
  background: -moz-linear-gradient(left, white 30%, rgba(255, 255, 255, 0) 100%);
  background: -webkit-linear-gradient(left, white 30%, rgba(255, 255, 255, 0) 100%);
  background: linear-gradient(to right, white 30%, rgba(255, 255, 255, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#00ffffff', GradientType=1); }

.project-card-img:after {
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.1) 100%);
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.1) 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#1a000000', GradientType=0); }

.row-form input, .row-form select, .row-form textarea, .row-search input,
section.introduction + section.content-block.block-img,
section.introduction + section.project {
  background-color: transparent !important; }

input:-webkit-autofill,
input:-internal-autofill-selected,
textarea:-webkit-autofill,
textarea:-internal-autofill-selected,
select:-webkit-autofill,
select:-internal-autofill-selected {
  -webkit-text-fill-color: #124734 !important;
  -webkit-box-shadow: 0 0 0px 1000px rgba(0, 0, 0, 0) inset !important;
  transition: background-color 5000s ease-in-out 0s !important; }

.border-white,
.swiper-pagination-bullet span,
.mobile-menu + .mobile-menu {
  border-color: #FFF !important; }

.services-container,
.border-light {
  border-color: #F3F4F3 !important; }

.border-black,
.dropdown-label,
.row-form.row-search input {
  border-color: #000 !important; }

.border-corporate,
.row-form input,
.row-form textarea,
.row-form select {
  border-color: #DBE5DB !important; }

.swiper-pagination-bullet.green span,
.row-form-select label:before {
  border-color: #124734 !important; }

.btn-corpo.white,
.color-white,
.download-item-container:hover {
  color: #FFF !important; }

.color-corporate,
html.no-touchevents .menu-item a:hover,
a,
html.no-touchevents #main a.color-black:hover,
.menu-item.hover-step1 a,
.btn-corpo,
form,
input, textarea, select,
.fancybox-button svg,
.fancybox-close-small,
html.no-touchevents .resume-short:hover,
html.no-touchevents .resume-long-wrapper:hover,
#footer,
#footer a,
.fc-toolbar-title {
  color: #124734 !important; }

.color-corporate-opacity {
  color: rgba(18, 71, 52, 0.5) !important; }

.color-black,
.menu-item a,
.mobile-menu .menu-item a {
  color: #000 !important; }

.color-red {
  color: #e82017 !important; }

.color-light,
.current .filter-item,
html.no-touchevents .sub-menu:hover a:not(:hover),
body.single-service.safety .sub-menu li:not(.menu-item-object-safety) a:not(:hover),
body.single-service.solutions .sub-menu li:not(.menu-item-object-solutions) a:not(:hover),
body.single-service.equipment .sub-menu li:not(.menu-item-object-equipment) a:not(:hover),
body.single-service.architecture .sub-menu li:not(.menu-item-object-architecture) a:not(:hover),
.row-form.focus-label label:not(.no-effect) {
  color: rgba(34, 40, 34, 0.4) !important; }

.accordion-item.active header * {
  color: #222822 !important; }

.row-search input::placeholder {
  color: #000;
  opacity: 1; }

.row-search input:-ms-input-placeholder {
  color: #000; }

.row-search input::-ms-input-placeholder {
  color: #000; }

.row-search.focus-label input::placeholder {
  color: rgba(0, 0, 0, 0);
  opacity: 0; }

.row-search.focus-label input:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0); }

.row-search.focus-label input::-ms-input-placeholder {
  color: rgba(0, 0, 0, 0); }

body.scrolling-to-bottom:not(.page-scrolled):not(.menu-opened-step2) #header,
body.page-scrolled.scrolling-to-top:not(.menu-opened-step2) #header,
body.page-scrolled.scrolling-to-top:not(.menu-opened-step2):not(.end-page) .contact-mobile {
  -webkit-box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.1); }

html.no-touchevents .project-card:hover,
html.no-touchevents .resume-long-wrapper:hover {
  -webkit-box-shadow: 0 4px 25px 0 rgba(0, 0, 0, 0.06);
  -moz-box-shadow: 0 4px 25px 0 rgba(0, 0, 0, 0.06);
  box-shadow: 0 4px 25px 0 rgba(0, 0, 0, 0.06); }

#main-menu > ul > li .sub-menu,
.dropdown-menu {
  -webkit-box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.07);
  -moz-box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.07);
  box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.07); }

html.no-touchevents .download-item-container.bg-corporate:hover {
  -webkit-box-shadow: 0 10px 35px 0 rgba(34, 40, 34, 0.2);
  -moz-box-shadow: 0 10px 35px 0 rgba(34, 40, 34, 0.2);
  box-shadow: 0 10px 35px 0 rgba(34, 40, 34, 0.2); }

/*--------------------------------------------------------- FONTS ---------------------------------------------------------*/
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

body,
input, textarea, select, button,
.regular {
  font-family: "Apax Regular", Arial, sans-serif !important;
  font-style: normal !important;
  font-weight: 400 !important;
  text-align: left; }

.text-quote blockquote,
.link-item a,
.link-item-nolist a,
.link-item > span input,
.mobile-menu .menu-item a,
b, strong, .bold,
h1, .style-h1,
h2, .style-h2,
h3, .style-h3,
h4, .style-h4,
h5, .style-h5,
h6, .style-h6,
.fc.size-h5 .fc-button.fc-customTitle-button {
  font-family: "Apax Bold", Arial, sans-serif !important;
  font-style: normal !important;
  font-weight: 700 !important; }

h1, .style-h1 {
  font-size: 65px;
  letter-spacing: .01em;
  line-height: 1.2em; }

h2, .style-h2,
.link-item-nolist a:not(.style-h4),
.link-item a:not(.style-h4) {
  font-size: 44px;
  letter-spacing: .01em;
  line-height: 1.2em; }

h3, .style-h3,
.fc.size-h5 .fc-button.fc-customTitle-button {
  font-size: 35px;
  letter-spacing: .01em;
  line-height: 1.2em; }

h4, .style-h4,
body,
.link-item > span input,
section.content-column .link-item a,
section.project .link-item a,
section.formation .link-item a,
#main-menu ul li,
.project-card-container span {
  font-size: 25px;
  letter-spacing: .01em;
  line-height: 1.3em; }

.header-project .style-h4 {
  line-height: 1.1em; }

h5, .style-h5,
.size-h5,
.pre-footer,
.adress-footer,
.resume-long-container p,
.dropdown-label,
.question-container,
.row-form label,
.row-form.row-search input,
div.wpcf7 div.wpcf7-response-output {
  font-size: 18px;
  letter-spacing: .01em;
  line-height: 1.3em; }

h6, .style-h6,
.formation-price small,
.btn-corpo,
.dropdown-menu,
.row-form input, .row-form select, .row-form textarea {
  font-size: 14px;
  letter-spacing: .01em;
  line-height: 1.5em; }

small, .small,
.row-form span.wpcf7-not-valid-tip {
  font-size: 11px;
  letter-spacing: .01em;
  line-height: 1.5em; }

sup {
  font-size: 65%;
  line-height: 0; }

i, em,
.italic {
  font-style: italic !important; }

.text-center {
  text-align: center !important; }

.text-left {
  text-align: left !important; }

.text-right {
  text-align: right !important; }

a {
  text-decoration: none !important; }

.uppercase {
  text-transform: uppercase !important; }

p,
h1, .style-h1,
h2, .style-h2,
h3, .style-h3,
h4, .style-h4,
h5, .style-h5,
h6, .style-h6 {
  margin-top: 0;
  margin-bottom: 0; }

.margin-top {
  margin-top: 2em; }

p:not(:first-child) {
  margin-top: 1em; }

.team-card-item p:not(:first-child) {
  margin-top: 0.5em; }

h1:not(:last-child), .style-h1:not(:last-child),
h2:not(:last-child), .style-h2:not(:last-child),
h3:not(:last-child), .style-h3:not(:last-child),
h4:not(:last-child), .style-h4:not(:last-child),
h5:not(:last-child), .style-h5:not(:last-child),
h6:not(:last-child), .style-h6:not(:last-child),
.team-card-item p:not(:last-child) {
  margin-bottom: 0.5em; }

.title-section, .title-section:not(:last-child),
.formation-page h2,
p:not(:last-child) {
  margin-bottom: 1em; }

/*--------------------------------------------------------- HEADER ---------------------------------------------------------*/
body {
  padding-top: 195px; }

#header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 80px 0;
  z-index: 99966; }

body.page-scrolled #header {
  padding-top: 40px;
  padding-bottom: 40px; }

body.page-scrolled.scrolling-to-bottom:not(.menu-opened-step2) #header {
  -webkit-transform: translate(0, -100%);
  -moz-transform: translate(0, -100%);
  -ms-transform: translate(0, -100%);
  -o-transform: translate(0, -100%);
  transform: translate(0, -100%); }

#header-logo {
  width: 100%;
  height: 35px; }

#logo,
#logo img {
  display: block;
  width: 100%;
  height: 100%; }

#logo img {
  margin-top: -0.34em; }

#footer-menu > ul > li,
#main-menu > ul > li,
#contact-header > ul > li {
  display: inline-block;
  position: relative; }

#footer-menu > ul > li:not(:last-child),
#main-menu > ul > li:not(:last-child) {
  margin-right: 75px; }

#contact-header > ul > li:not(:last-child) {
  margin-right: 30px; }

#main-menu > ul > li .sub-menu {
  display: none;
  position: absolute;
  left: -25px;
  top: 100%;
  -webkit-transform: translate(0, 10px);
  -moz-transform: translate(0, 10px);
  -ms-transform: translate(0, 10px);
  -o-transform: translate(0, 10px);
  transform: translate(0, 10px); }

#main-menu > ul > li .sub-menu,
#main-menu > ul > li .sub-menu a {
  padding-top: 8px;
  padding-bottom: 6px; }

#main-menu > ul > li .sub-menu a {
  display: block;
  padding-left: 25px;
  padding-right: 25px; }

.menu-item.hover-step1 .sub-menu {
  display: block !important; }

.menu-item.hover-step2 .sub-menu {
  -webkit-transform: translate(0, 0) !important;
  -moz-transform: translate(0, 0) !important;
  -ms-transform: translate(0, 0) !important;
  -o-transform: translate(0, 0) !important;
  transform: translate(0, 0) !important; }

#contact-header a,
#contact-header img {
  width: 26px;
  height: 26px; }

#main-menu,
#contact-header {
  height: 35px;
  width: 100%;
  position: relative; }

#contact-header a {
  display: block; }

.menu-item a {
  position: relative;
  overflow: hidden; }

#main-menu .current_page_item a::before,
.menu-item a::before {
  content: '';
  position: absolute;
  bottom: 40px;
  left: 50%;
  margin-left: -1px;
  width: 2px;
  height: 0; }

#mobile-menu .menu-item a::before,
.sub-menu .menu-item a::before,
#footer .menu-item a::before {
  display: none; }

#main-menu .current_page_item a::before,
.menu-item a:hover::before,
.menu-item.hover-step2 a::before {
  height: 200px; }

.contact-mobile {
  width: 100%;
  position: fixed;
  bottom: 0;
  left: 0;
  padding: 15px 0;
  -webkit-transform: translate(0, 100%);
  -moz-transform: translate(0, 100%);
  -ms-transform: translate(0, 100%);
  -o-transform: translate(0, 100%);
  transform: translate(0, 100%);
  z-index: 99966; }

body.menu-opened-step2 .contact-mobile {
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  transform: translate(0, 0); }

#menu-burger-wrapper,
#menu-burger {
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
  transform: translate(0, -50%); }

#menu-burger-wrapper {
  width: 70px;
  height: 100%;
  display: inline-block;
  right: 0;
  top: 50%;
  cursor: pointer;
  z-index: 8888; }

#menu-burger {
  right: 15px;
  width: 40px;
  height: 18px; }

.menu-line {
  position: relative;
  width: 100%;
  height: 2px; }

.menu-line:not(:first-child) {
  margin-top: 6px; }

.menu-line:last-child {
  width: 80%; }

#mobile-menu {
  display: none;
  position: fixed;
  left: 0;
  top: 85px;
  bottom: 0;
  width: 100%;
  height: auto;
  padding: 15px 0 110px;
  overflow: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  -webkit-transform: translate(0, 30px) translate3d(0, 0, 0);
  -moz-transform: translate(0, 30px) translate3d(0, 0, 0);
  -ms-transform: translate(0, 30px) translate3d(0, 0, 0);
  -o-transform: translate(0, 30px) translate3d(0, 0, 0);
  transform: translate(0, 30px) translate3d(0, 0, 0);
  z-index: 99933; }

.mobile-menu {
  margin: 0 -15px; }

.mobile-menu + .mobile-menu {
  border-top: 1px solid;
  margin-top: 30px;
  padding-top: 30px; }

.mobile-menu li a,
.mobile-menu .sub-menu {
  display: block;
  padding: 15px; }

.mobile-menu .sub-menu {
  margin: -15px -5px -5px;
  line-height: 1em; }

.mobile-menu .sub-menu li {
  display: block;
  margin: 5px; }

.mobile-menu .sub-menu a {
  display: inline-block;
  padding: 12px 20px 8px; }

#menu-background-burger {
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100%;
  -webkit-transform: scale(1, 0);
  -moz-transform: scale(1, 0);
  -ms-transform: scale(1, 0);
  -o-transform: scale(1, 0);
  transform: scale(1, 0);
  -webkit-transform-origin: top center;
  -moz-transform-origin: top center;
  -ms-transform-origin: top center;
  -o-transform-origin: top center;
  transform-origin: top center;
  z-index: 99900; }

body.menu-opened-step1 #mobile-menu {
  display: block; }

body.menu-opened-step2 #mobile-menu {
  -webkit-transform: translate(0, 0) translate3d(0, 0, 0);
  -moz-transform: translate(0, 0) translate3d(0, 0, 0);
  -ms-transform: translate(0, 0) translate3d(0, 0, 0);
  -o-transform: translate(0, 0) translate3d(0, 0, 0);
  transform: translate(0, 0) translate3d(0, 0, 0); }

body.menu-opened-step2 #menu-background-burger {
  -webkit-transform: scale(1, 1);
  -moz-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
  -o-transform: scale(1, 1);
  transform: scale(1, 1); }

body.menu-opened-step2 .menu-line-1 {
  -webkit-transform: translate(0, 9px) rotate(45deg);
  -moz-transform: translate(0, 9px) rotate(45deg);
  -ms-transform: translate(0, 9px) rotate(45deg);
  -o-transform: translate(0, 9px) rotate(45deg);
  transform: translate(0, 9px) rotate(45deg); }

body.menu-opened-step2 .menu-line-2 {
  -webkit-transform: translate(0, 1px) rotate(-45deg);
  -moz-transform: translate(0, 1px) rotate(-45deg);
  -ms-transform: translate(0, 1px) rotate(-45deg);
  -o-transform: translate(0, 1px) rotate(-45deg);
  transform: translate(0, 1px) rotate(-45deg); }

/*--------------------------------------------------------- SERVICES FOOTER ---------------------------------------------------------*/
.services-container {
  padding: 60px 70px;
  border: solid 1px;
  min-height: 100%; }

.footer-services figure * {
  height: 100%; }

.footer-services figure .bg-section {
  width: calc(100% + ((100vw - 1600px) / 2));
  left: auto;
  right: 0; }

.footer-services-wrapper {
  margin-top: -7.5px;
  margin-bottom: -7.5px; }

.footer-services-item {
  padding-top: 7.5px;
  padding-bottom: 7.5px; }

/*--------------------------------------------------------- COMMON ---------------------------------------------------------*/
input, textarea, select {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

section.text-bg-fullwidth {
  padding-top: 200px; }

section,
#footer .content-wrapper {
  padding-top: 150px; }

section.title {
  padding-top: 100px; }

section.gallery,
section.project + section.content-block,
section.content-block-fw + section.content-block,
section.content-block + section.content-block,
section.slider-quotes,
section.bg-light + section.bg-light,
section:not(.bg-light):not(.text-bg-fullwidth):not(.introduction) + section:not(.bg-light):not(.text-bg-fullwidth):not(.introduction):not(.footer-services),
section.introduction + section.content-block.block-img,
section.introduction + section.resume-long,
section.introduction + section.project,
section.resume-long + section.bg-light {
  padding-top: 0 !important; }

section.text-bg-fullwidth {
  padding-bottom: 200px; }

section,
.text-footer-services {
  padding-bottom: 150px; }

#project-intro,
.project-highlights > .content-wrapper > .row:first-child,
.team-filter-wrapper {
  padding-bottom: 100px; }

section.introduction + section.team-list .team-filter-wrapper,
#footer .content-wrapper {
  padding-bottom: 50px; }

section.gallery:last-child,
section.slider-quotes {
  padding-bottom: 0px !important; }

section.introduction + section.content-block.block-img,
section.introduction + section.resume-long,
section.introduction + section.project {
  margin-top: -150px; }

.content-column + .resume-long.bg-light {
  margin-top: -100px;
  padding-top: 0; }

.map + .bg-light {
  z-index: 0; }

.my-0,
.mt-0 {
  margin-top: 0 !important; }

.my-0,
.mb-0 {
  margin-bottom: 0 !important; }

.mx-0,
.ml-0 {
  margin-left: 0 !important; }

.mx-0,
.mr-0 {
  margin-right: 0 !important; }

.line-light {
  height: 1px;
  width: 100%;
  position: relative;
  margin: 90px 0; }

/*--------------------------------------------------------- TEXTE & ARRIERE-PLAN ---------------------------------------------------------*/
.list-link-box {
  position: relative;
  margin-top: 350px;
  height: auto; }

.link-button {
  margin-top: 25px;
  position: relative; }

/*--------------------------------------------------------- LINK BUTTON ---------------------------------------------------------*/
.link-item-nolist {
  position: relative;
  margin-top: 50px; }

.link-item,
.link-item a {
  display: inline-block;
  position: relative; }

.link-item {
  padding-right: 50px; }

form .text-right .link-item {
  padding-right: 0; }

span.arrow-mobile,
.link-item::after,
.link-item-nolist a.green::after,
.link-item > span.green::after,
.link-item a.green::after,
.link-item-nolist a.white::after,
.link-item a.white::after,
.link-item-nolist a.black::after,
.link-item a.black::after {
  content: '';
  background-position: right center;
  background-repeat: no-repeat;
  background-size: auto 100%;
  display: block;
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -1px;
  margin-left: -20px;
  width: 90px;
  height: 40px;
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  transform: translate(0, -50%);
  -webkit-transform-origin: right center;
  -moz-transform-origin: right center;
  transform-origin: right center;
  z-index: 0; }

.link-item.bottom a::after {
  -webkit-transform: rotate(90deg) translate(0, 50%) !important;
  -moz-transform: rotate(90deg) translate(0, 50%) !important;
  transform: rotate(90deg) translate(0, 50%) !important; }

.link-item::after {
  position: absolute;
  top: 100%; }

span.arrow-mobile {
  display: inline-block;
  top: auto;
  left: auto;
  width: 60px;
  margin-top: 0px;
  margin-left: 0px;
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0); }

html.no-touchevents .link-item-nolist:hover a::after,
html.no-touchevents .link-item:hover a::after,
html.no-touchevents .bg-link:hover + * .link-item a::after {
  -webkit-transform: translate(10px, -50%);
  -moz-transform: translate(10px, -50%);
  -ms-transform: translate(10px, -50%);
  -o-transform: translate(10px, -50%);
  transform: translate(10px, -50%); }

.link-item.green::after,
.link-item-nolist a.green::after,
.link-item > span.green::after,
.link-item a.green::after {
  background-image: url(../images/icon-arrow-link-green.svg); }

.link-item-nolist a.white::after,
.link-item a.white::after {
  background-image: url(../images/icon-arrow-link-white.svg); }

span.arrow-mobile,
.link-item-nolist a.black::after,
.link-item a.black::after {
  background-image: url(../images/icon-arrow-link-black.svg); }

.link-item.green::after {
  left: 0;
  width: 0px;
  margin-left: 0;
  position: relative;
  cursor: pointer;
  margin-top: 35px;
  display: block; }

html.no-touchevents .resume-short:hover .link-item.green::after {
  width: 40px !important; }

.link-item > span {
  display: inline-block;
  position: relative;
  cursor: pointer;
  margin-top: 35px; }

.link-item > span input {
  display: block;
  position: relative;
  background: none;
  padding: 9px 65px 10px 0;
  cursor: pointer;
  z-index: 100; }

.wpcf7 .link-item > span::after {
  top: 0;
  left: auto;
  right: 0;
  margin-left: 0;
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0); }

html.no-touchevents .wpcf7 .link-item > span:hover::after,
html.no-touchevents .wpcf7 .link-item > span:hover .ajax-loader {
  -webkit-transform: translate(10px, 0);
  -moz-transform: translate(10px, 0);
  -ms-transform: translate(10px, 0);
  -o-transform: translate(10px, 0);
  transform: translate(10px, 0); }

/*--------------------------------------------------------- CONTENU INTRODUCTION ---------------------------------------------------------*/
section.introduction.padding-blocks {
  padding-bottom: 250px; }

section.introduction.padding-resume {
  padding-bottom: 300px; }

section.introduction + section.content-block.block-img .bg-section {
  height: auto;
  top: 180px;
  bottom: 0; }

.bg-resume-long {
  margin-top: 200px; }

/*--------------------------------------------------------- LISTE LOGOS ---------------------------------------------------------*/
.logo-wrapper.format_l {
  margin-left: 85px;
  margin-right: 85px; }
  .logo-wrapper.format_l > .row {
    margin-top: -60px;
    margin-bottom: -60px; }
    .logo-wrapper.format_l > .row .logo-item {
      width: 180px;
      min-height: 80px;
      margin: 60px 3.333%;
      position: relative; }

.logo-wrapper.format_l .logo-item img {
  max-width: 150px;
  max-height: 80px; }

.logo-wrapper.format_l .logo-item img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

.logo-wrapper,
.logo-slider-wrapper {
  position: relative;
  height: 100%; }

.logo-slider {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%; }

.logo-item {
  width: 26.666%;
  margin: 20px 3.333%; }
  .logo-item img {
    display: block;
    max-height: 100px; }

.logo-nb-1 .logo-item,
.logo-nb-2 .logo-item {
  max-width: 40%; }
  .logo-nb-1 .logo-item img,
  .logo-nb-2 .logo-item img {
    max-height: 200px; }

/*--------------------------------------------------------- IMAGE ---------------------------------------------------------*/
.img-item img {
  width: 100%; }

@media only screen and (max-width: 576px) {
  .flex-column-reverse-mobile {
    flex-direction: column-reverse; } }

/*--------------------------------------------------------- CONTENU EN COLONNES ---------------------------------------------------------*/
section.content-column > .content-wrapper > .row {
  margin-top: -25px;
  margin-bottom: -25px; }

.paragraph-box {
  margin-top: 25px;
  margin-bottom: 25px; }

/*--------------------------------------------------------- CONTENU EN BLOCK + DOWNLOAD ---------------------------------------------------------*/
.content-block-fw.full-width-item {
  padding: 200px 0; }

.dl-wrapper {
  margin-top: -15px;
  margin-bottom: -15px; }

.dl-items {
  padding-top: 15px;
  padding-bottom: 15px; }

.download-item-container {
  min-height: 100%;
  padding: 50px 70px;
  position: relative; }

.download-item-container .link-item-box {
  position: relative;
  width: 100%;
  height: 35px; }

.download-item-container .link-item {
  position: absolute; }

.download-item-container.one-item,
.block-item {
  padding: 50px 135px; }

.block-item {
  margin: 15px; }

.block-item ul li {
  list-style-type: disc;
  /* line-height: 35px; */ }

.grid-block {
  width: auto;
  margin: -15px; }

.grid-item-block,
.grid-sizer-block {
  width: 50%; }

.block-img-item-wrapper {
  position: relative;
  overflow: visible;
  margin-bottom: 30px; }

.block-img-item,
.block-img-item figure {
  position: relative;
  height: 100%; }

.block-img-content-wrapper {
  padding-top: 100px;
  padding-bottom: 100px; }

/*--------------------------------------------------------- SWIPER ---------------------------------------------------------*/
.swiper-quotes {
  width: 100%;
  height: 100%; }

.swiper-slide {
  padding: 150px 0;
  height: auto !important; }

.swiper-pagination {
  top: 50% !important;
  left: 20% !important;
  -webkit-transform: translate(0, -50%) !important;
  -moz-transform: translate(0, -50%) !important;
  -ms-transform: translate(0, -50%) !important;
  -o-transform: translate(0, -50%) !important;
  transform: translate(0, -50%) !important;
  bottom: auto !important; }

.swiper-pagination > .swiper-pagination-bullet {
  display: block !important;
  width: 10px;
  height: 10px; }

.swiper-pagination > .swiper-pagination-bullet:not(:last-child) {
  margin-bottom: 25px !important; }

.swiper-pagination-bullet span {
  display: none;
  width: 20px;
  height: 20px;
  border: 1px solid;
  border-radius: 50%;
  position: relative;
  top: -5px;
  left: -5px; }

.swiper-pagination-bullet.active span {
  display: block !important; }

.text-quote + .link-item {
  margin-top: 120px; }

.blockquote-empty {
  width: 100%;
  height: 0px;
  padding-bottom: 40%; }

/*--------------------------------------------------------- MOSAIC ---------------------------------------------------------*/
.mosaic a[style] {
  height: auto !important; }

.mosaic a[style] img[style] {
  width: 100% !important;
  height: auto !important;
  margin: 0 !important; }

/*--------------------------------------------------------- PROJECT ---------------------------------------------------------*/
#project-nav {
  border-bottom: 1px solid; }

.project-container {
  display: none;
  margin-bottom: 15px; }

#project-nav .accordion-item:not(:last-child) .project-container {
  margin-bottom: 50px; }

.project-highlights > .content-wrapper > .row {
  margin-top: -15px;
  margin-bottom: -15px; }

.project-highlights > .content-wrapper > .row > [class*="col-"] {
  padding-top: 15px;
  padding-bottom: 15px; }

.project-highlights .project-card {
  min-height: 100%; }

.project-card-img,
.project-container figure {
  padding-top: 70%;
  height: 0;
  width: 100%;
  overflow: hidden;
  position: relative; }

.project-card-img:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%; }

.project-card-container {
  padding: 50px 70px; }

.header-project,
.accordion-menu > .accordion-item > header {
  padding: 15px 40px 15px 0;
  border-top: 1px solid;
  position: relative; }

.header-project .arrow {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translate(-10px, -50%);
  -moz-transform: translate(-10px, -50%);
  -ms-transform: translate(-10px, -50%);
  -o-transform: translate(-10px, -50%);
  transform: translate(-10px, -50%); }

html.no-touchevents .header-project:hover .arrow {
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
  transform: translate(0, -50%); }

.project-box {
  cursor: pointer; }
  .project-box.active {
    cursor: default; }
  .project-box img {
    width: 100%; }
    .project-box img:not(:first-child) {
      margin-top: 1em; }

.project-container figure {
  margin-top: 20px; }

#content-project table {
  width: 100%;
  border: none;
  border-collapse: collapse;
  margin: -5px 0; }

#content-project tr,
#content-project td {
  margin: 0; }

#content-project tr {
  padding: 0; }

#content-project td {
  padding: 5px 0; }

#content-project td:first-child {
  vertical-align: top;
  white-space: nowrap; }

#content-project td:last-child {
  vertical-align: bottom; }

.content-project.active {
  display: block !important; }

.project-programme {
  margin-top: 15px; }

#contains-project {
  min-height: 400px; }

body.loading #contains-project {
  background: url("../images/loading-grey.gif") no-repeat center 80%;
  background-size: 50px auto; }

.project-description,
.project-gallery > *:not(:last-child) {
  margin-bottom: 50px; }

.project-gallery > img {
  display: block;
  width: 100%; }

/*--------------------------------------------------------- FORMATION & FANCYBOX ---------------------------------------------------------*/
.introduction + .formation #formation-search {
  transform: translate(0, -100%); }

.fancybox-container .fancybox-content {
  padding: 0 !important;
  width: 100%;
  max-width: 1600px;
  margin: 0 auto; }

.fancybox-button svg {
  width: 40px !important;
  height: 40px !important; }

.fancybox-close-small {
  width: 40px !important;
  height: 40px !important;
  padding: 0 !important;
  opacity: 1 !important; }

.fancybox-slide--html .fancybox-close-small {
  right: 55px !important;
  top: 55px !important; }

.fancybox-slide.fancybox-slide--iframe {
  padding: 100px 0 0; }

.fancybox-slide--iframe .fancybox-close-small {
  right: 30px !important;
  top: -70px !important; }

.error-message {
  border-top: 1px solid;
  border-bottom: 1px solid;
  padding: 50px 15px; }

/*--------------------------------------------------------- SERVICES RESUME ---------------------------------------------------------*/
.resume > .content-wrapper > .row,
.resume-long > .content-wrapper > .row {
  margin-top: -15px;
  margin-bottom: -15px; }

.resume .services-box,
.resume-long .services-box {
  padding-top: 15px;
  padding-bottom: 15px; }

.resume-long-wrapper {
  min-height: 100%; }

.services-card-img {
  padding-top: 50%;
  height: 0;
  width: 100%;
  overflow: hidden;
  position: relative; }

.resume-long-container {
  padding: 100px 135px; }

.project-card:hover .project-img,
.services-box:hover .service-img {
  -webkit-transform: scale(1.03) translate3d(0, 0, 0);
  -moz-transform: scale(1.03) translate3d(0, 0, 0);
  -ms-transform: scale(1.03) translate3d(0, 0, 0);
  -o-transform: scale(1.03) translate3d(0, 0, 0);
  transform: scale(1.03) translate3d(0, 0, 0); }

/*--------------------------------------------------------- GOOGLE MAPS ---------------------------------------------------------*/
.acf-map-wrapper {
  position: relative;
  height: 100%; }

.acf-map {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 50vh;
  z-index: 0; }

.acf-map img {
  max-width: inherit !important; }

.acf-map .gmnoprint:not(.gm-bundled-control),
.acf-map .gm-style-cc {
  display: none; }

.acf-map .gmnoprint.gm-bundled-control .gmnoprint {
  display: block; }

.acf-map .gm-style .gm-style-iw-c {
  padding: 20px !important; }

.acf-map .gm-style .gm-style-iw-d {
  overflow: visible !important;
  max-height: none !important; }

.map a {
  display: block; }

.btn-maps-mobile {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 100;
  padding: 15px 70px 15px 25px; }

.btn-maps-mobile::after {
  content: "";
  display: block;
  background-position: center center;
  background-repeat: no-repeat;
  position: absolute;
  right: 25px;
  top: 50%;
  background-image: url("../images/icon-map-white.svg");
  background-size: 26px 26px;
  margin-top: -13.5px;
  width: 26px;
  height: 26px; }

.address-wrapper {
  margin-top: -15px;
  margin-bottom: -15px; }
  .address-wrapper.grid-block {
    height: auto !important; }
  .address-wrapper .block-item p span {
    display: block; }
  .address-wrapper:not(.grid-block) > [class*="col"] {
    padding-top: 15px;
    padding-bottom: 15px; }

.logo-wrapper.format_l.logo-nb-1 .logo-item, .logo-wrapper.format_l.logo-nb-2 .logo-item {
  min-height: 150px; }
  .logo-wrapper.format_l.logo-nb-1 .logo-item img, .logo-wrapper.format_l.logo-nb-2 .logo-item img {
    max-width: 250px;
    max-height: 150px; }

/*--------------------------------------------------------- TABLE ---------------------------------------------------------*/
.formation-cat:nth-last-child(n+2) {
  padding-bottom: 75px; }

.formation-cat > .row {
  margin-top: -15px;
  margin-bottom: -15px; }
  .formation-cat > .row > .formation-items {
    padding-top: 15px;
    padding-bottom: 15px; }

.formation-items {
  position: relative; }
  .formation-items.old {
    width: 100%;
    border-top: 1px solid #000;
    position: relative;
    padding: 25px 15px; }
  .formation-items-cell {
    width: 100%;
    border-top: 1px solid;
    padding: 25px 15px; }
    .formation-items-cell:hover .arrow {
      -webkit-transform: translate(0, 0);
      -moz-transform: translate(0, 0);
      transform: translate(0, 0); }
  .formation-items-card {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    display: -ms-flexbox;
    display: flex; }
    .formation-items-card .formation-card-image {
      position: relative;
      width: 100%;
      height: 0;
      padding-bottom: 50%;
      overflow: hidden; }
      .formation-items-card .formation-card-image .bg-section.placeholder {
        transform: scale(1.2);
        filter: blur(20px); }
    .formation-items-card .formation-card-details {
      padding: 20px; }

#faq-search,
#formation-search {
  position: relative;
  width: 100%;
  height: 60px; }

.arrow,
.category-header .arrow-accordion,
.question-header .open-question,
.dropdown-label::after {
  content: '';
  background: url(../images/arrow-table.svg) no-repeat;
  width: 18px;
  height: 18px; }

.search-icon {
  content: '';
  background: url(../images/search-table.svg) no-repeat;
  width: 21px;
  height: 20px;
  z-index: 10; }

.arrow {
  display: block;
  -webkit-transform: translate(-10px, 0);
  -moz-transform: translate(-10px, 0);
  transform: translate(-10px, 0); }

.search-icon {
  right: 16px;
  top: 50%;
  position: absolute;
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  transform: translate(0, -50%); }

#formation-filter {
  z-index: 8888; }

.row-search input,
.dropdown-wrapper,
.dropdown-label {
  position: relative;
  width: 100%;
  height: 60px; }

.row-search input,
.dropdown-label {
  border: 1px solid;
  padding: 19px 45px 15px 20px; }

.row-search input {
  z-index: 100; }

.dropdown-label {
  min-width: 250px;
  cursor: pointer; }

.question-header .open-question,
.category-header .arrow-accordion,
.dropdown-label::after {
  display: inline-block;
  right: 15px;
  top: 50%;
  margin-top: -2px;
  position: absolute;
  -webkit-transform: rotateZ(90deg) translate(-50%, 0);
  -moz-transform: rotateZ(90deg) translate(-50%, 0);
  -ms-transform: rotateZ(90deg);
  -o-transform: rotateZ(90deg) translate(-50%, 0);
  transform: rotateZ(90deg) translate(-50%, 0); }

.category-faq.active .category-header .arrow-accordion,
.question-item.active .question-header .open-question,
.dropdown-wrapper.active .dropdown-label::after,
.class-test {
  -webkit-transform: rotate(-90deg) translate(50%, 0) !important;
  -moz-transform: rotate(-90deg) translate(50%, 0) !important;
  -ms-transform: rotate(-90deg) !important;
  -o-transform: rotate(-90deg) translate(50%, 0) !important;
  transform: rotate(-90deg) translate(50%, 0) !important; }

.dropdown-menu {
  position: relative;
  padding: 10px 0;
  z-index: 99999; }

.dropdown-menu a {
  display: block;
  padding: 10px 15px;
  cursor: pointer; }

/*--------------------------------------------------------- FAQ ---------------------------------------------------------*/
.accordion-menu > .accordion-item > header,
.accordion-item.question-item,
.accordion-item.category-faq {
  border-top: 1px solid; }

.accordion-menu > .accordion-item > header,
#faq-wrapper:not(.empty) {
  border-bottom: 1px solid; }

.question-header,
.question-container,
.category-container,
.category-header {
  position: relative;
  padding: 23px 10px 20px; }

.question-header,
.category-header {
  cursor: pointer;
  padding-right: 65px; }

.category-container {
  padding-bottom: 0; }

#faq-wrapper {
  height: auto !important; }

#faq-wrapper li {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  transform: none !important; }

/*--------------------------------------------------------- TEAM ---------------------------------------------------------*/
section.introduction + section.team-list {
  overflow: visible;
  z-index: 100; }

#team-grid {
  width: 100%;
  z-index: 10;
  margin-top: -15px;
  margin-bottom: -15px; }

.team-card-item {
  padding-top: 15px;
  padding-bottom: 15px; }

.team-card-item img {
  display: block; }

.team-filter-wrapper {
  position: relative;
  z-index: 100; }

.team-card-image {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 130%;
  overflow: hidden; }

.team-card-image.no-image {
  background: url("../images/vertical-access-icon-white.svg") no-repeat center center;
  background-size: 20% auto; }

.team-card-image img {
  display: block;
  position: absolute;
  left: 50%;
  top: 0;
  -webkit-transform: translate(-44%, -3%);
  -moz-transform: translate(-44%, -3%);
  -ms-transform: translate(-44%, -3%);
  -o-transform: translate(-44%, -3%);
  transform: translate(-44%, -3%);
  width: auto;
  max-width: none;
  height: 180%; }

.team-card-item .list-icons {
  margin-top: 5px; }

.team-card-item .btn-rounded {
  font-size: 80%;
  line-height: 1em; }

/*--------------------------------------------------------- TEAM MASONRY ---------------------------------------------------------*/
#team-grid-masonry {
  margin: -7.5px; }

.grid-sizer-team {
  width: 8.333%; }

#team-grid-masonry .team-card-wrapper {
  width: 25%;
  height: 0;
  padding-bottom: 20%; }

#team-grid-masonry .team-card-wrapper.size-big {
  width: 50%;
  padding-bottom: 40%; }

#team-grid-masonry.filter .team-card-wrapper {
  width: 33.333%;
  padding-bottom: 30%; }

#team-grid-masonry .team-card-item,
#team-grid-masonry .team-card-info-wrapper {
  position: absolute; }

#team-grid-masonry .team-card-item {
  left: 7.5px;
  right: 7.5px;
  top: 7.5px;
  bottom: 7.5px;
  padding: 0; }

#team-grid-masonry .team-card-image {
  background-position: left center;
  background-image: none;
  height: 100%;
  padding-bottom: 0; }

#team-grid-masonry .team-card-info-wrapper {
  left: 0;
  bottom: 0;
  padding: 15px;
  width: 100%;
  height: 100%; }

/*--------------------------------------------------------- GALLERY ---------------------------------------------------------*/
.grid-sizer-gallery {
  width: 8.333%; }

.grid-item-gallery {
  width: 33.333%;
  padding-bottom: 20%;
  position: relative; }

.grid-item-gallery.big {
  width: 50%;
  padding-bottom: 40%; }

.grid-item-gallery.medium {
  width: 50%;
  padding-bottom: 20%; }

/*--------------------------------------------------------- PRESS MOSAIC ---------------------------------------------------------*/
.mosaic img {
  display: block;
  position: relative;
  width: 50%;
  height: auto !important;
  z-index: 0; }

/*--------------------------------------------------------- FORMS ---------------------------------------------------------*/
form, fieldset {
  border: none;
  margin: 0;
  padding: 0; }

input, textarea, select, button {
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  border: 1px solid;
  padding: 10px 20px;
  width: 100%; }

input[type="search"]::-webkit-search-cancel-button {
  -webkit-appearance: none !important; }

textarea {
  resize: none;
  height: 180px;
  max-width: 100% !important;
  min-width: 100% !important;
  overflow: auto;
  -webkit-overflow-scrolling: touch; }

input[type="submit"] {
  border: none;
  display: block;
  width: auto; }

select::-ms-expand {
  display: none; }

.row-form {
  position: relative;
  width: 100%;
  margin: 10px 0; }

.row-form + .row-form {
  margin-top: 20px; }

form .row {
  margin-left: -10px;
  margin-right: -10px; }

form [class*="col"] {
  padding-left: 10px;
  padding-right: 10px; }

.row-search {
  margin: 0; }

.row-form > label {
  margin: 0;
  padding: 20px 0 0 20px;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0; }

.row-form.row-form-textarea > label {
  left: 1px;
  right: 1px;
  top: 1px;
  padding-bottom: 7px; }

.row-form.focus-label label:not(.no-effect) {
  font-size: 11px;
  padding-top: 15px !important; }

.row-form.row-form-textarea.focus-label > label:not(.no-effect) {
  z-index: 100; }

.row-form:not(.row-form-submit):not(.row-search) input, .row-form select, .row-form textarea {
  display: block;
  position: relative;
  margin: 0;
  padding: 30px 20px 10px;
  z-index: 1; }

.row-form textarea {
  padding-top: 40px;
  padding-bottom: 20px; }

.row-form-submit {
  display: block;
  position: relative; }

.row-form-submit input {
  position: relative;
  margin: 0;
  z-index: 10; }

div.wpcf7 .link-item .ajax-loader {
  background-image: url("../images/loading.gif");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 26px auto;
  position: absolute;
  top: 3px;
  right: 4px;
  margin: 0;
  width: 32px;
  height: 32px;
  opacity: 1;
  z-index: 0; }
  div.wpcf7 .link-item .ajax-loader:before {
    display: none; }

div.wpcf7 form.submitting .link-item .ajax-loader {
  z-index: 100; }

.row-form-select label {
  width: 100%;
  padding-right: 55px; }

.row-form-select select {
  cursor: pointer;
  position: relative;
  z-index: 99; }

.row-form-select label:before {
  display: block;
  border-left: 3px solid;
  border-bottom: 3px solid;
  position: absolute;
  right: 15px;
  top: 50%;
  height: 50%;
  padding: 0;
  line-height: 15px;
  z-index: 0; }

.row-form-checkbox .wpcf7-list-item,
.row-form-checkbox input {
  margin: 0;
  padding: 0; }

.row-form-checkbox label,
.row-form-radio label {
  border: 1px solid;
  display: block;
  position: relative;
  margin: 0 0 5px;
  padding: 24px 20px;
  cursor: pointer; }

.row-form-checkbox label:before,
.row-form-checkbox label:after,
.row-form-radio label:before {
  display: block;
  position: absolute;
  left: 20px;
  top: 50%;
  width: 20px;
  height: 20px;
  margin: -10px 0 0; }

.row-form-checkbox label:before,
.row-form-radio label:before {
  content: "";
  border: 1px solid; }

.row-form-checkbox.checked label:after {
  content: "\00d7";
  margin-left: .5px;
  line-height: 1em;
  text-align: center; }

.row-form-checkbox .wpcf7-checkbox,
.row-form-checkbox #noanswer,
.row-form-radio input,
.row-form-icon input, .row-form-icon .wpcf7-list-item-label {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 0;
  height: 0;
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
  z-index: -1; }

.row-form-checkbox .label-text,
.row-form-radio .wpcf7-list-item-label {
  display: block;
  padding-left: 37px; }

.row-form-checkbox .if-checked,
.row-form-checkbox.checked .if-unchecked,
.row-form-checkbox .wpcf7-list-item-label {
  display: none; }

.row-form-checkbox.checked .if-checked {
  display: inline-block; }

.row-form-radio .wpcf7-form-control-wrap,
.row-form-radio .wpcf7-form-control,
.row-form-radio .wpcf7-list-item,
.row-form-radio label,
.row-form-icon .wpcf7-form-control-wrap,
.row-form-icon .wpcf7-form-control,
.row-form-icon .wpcf7-list-item,
.row-form-icon label {
  display: block;
  position: relative; }

.row-form-radio .wpcf7-list-item {
  margin: 0 0 10px; }

.row-form-radio .wpcf7-list-item.last {
  margin-bottom: 0; }

div#mfcf7_zl_multifilecontainer {
  margin: 0 !important; }

div#mfcf7_zl_multifilecontainer p {
  margin: 0 0 30px !important; }

.row-form .wpcf7-form-control-wrap {
  display: block; }

.row-form span.wpcf7-not-valid-tip {
  position: relative;
  padding: 5px 0 0 0; }

div.wpcf7 div.wpcf7-response-output {
  position: relative;
  border: none;
  margin: 30px 0 0;
  padding: 15px; }

.grecaptcha-badge, .grecaptcha-badge * {
  width: 0 !important;
  height: 0 !important;
  left: 0 !important;
  right: auto !important;
  top: 0 !important;
  bottom: auto !important;
  box-shadow: none !important;
  visibility: hidden;
  opacity: 0 !important;
  overflow: hidden;
  z-index: -9999 !important; }

/*--------------------------------------------------------- FOOTER ---------------------------------------------------------*/
#footer {
  overflow: hidden; }

#footer,
#footer .logo-footer,
#footer .credits {
  position: relative;
  z-index: 100; }

#footer .logo-footer a,
#footer .logo-footer img {
  display: block;
  width: 100%; }

#footer .content-wrapper .bg-section {
  left: auto;
  right: 0;
  top: -1000%;
  width: 1000000%;
  height: 1000000%; }

.logo-footer img {
  width: 100%;
  height: auto; }

.logo-cartouche {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto; }

.pre-footer {
  padding-top: 130px; }

#footer a {
  display: block; }

/*--------------------------------------------------------- OPACITY ---------------------------------------------------------*/
.opacity-0,
.mobile-menu,
#main-menu .menu-item:not(.hover-step2) .sub-menu,
body.menu-opened-step2 .menu-line-3 {
  opacity: 0.0;
  filter: alpha(opacity=0);
  -ms-filter: "prodig:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -moz-opacity: 0.0;
  -khtml-opacity: 0.0; }

.opacity-40,
.category-faq.active .category-header,
.project-box:not(.active) .header-project {
  opacity: 0.4 !important;
  filter: alpha(opacity=40) !important;
  -ms-filter: "prodig:DXImageTransform.Microsoft.Alpha(Opacity=40)" !important;
  -moz-opacity: 0.4 !important;
  -khtml-opacity: 0.4 !important; }

.opacity-6 {
  opacity: 0.6 !important;
  filter: alpha(opacity=60) !important;
  -ms-filter: "prodig:DXImageTransform.Microsoft.Alpha(Opacity=60)" !important;
  -moz-opacity: 0.6 !important;
  -khtml-opacity: 0.6 !important; }

.fancybox-is-open .fancybox-bg {
  opacity: .95 !important;
  filter: alpha(opacity=95) !important;
  -ms-filter: "prodig:DXImageTransform.Microsoft.Alpha(Opacity=95)" !important;
  -moz-opacity: .95 !important;
  -khtml-opacity: .95 !important; }

.opacity-100,
.focus-label span,
body.menu-opened-step2 .mobile-menu,
body.page-scrolled.scrolling-to-top:not(.end-page) .contact-mobile.opacity-0,
body.menu-opened-step2 .contact-mobile.opacity-0,
.swiper-pagination-bullet,
html.no-touchevents .project-box:not(.active) .header-project:hover,
html.no-touchevents .project-box:not(.active) .header-project:hover .arrow.opacity-0,
html.no-touchevents .team-card-wrapper:hover .team-card-info-wrapper.opacity-0,
html.touchevents .team-card-wrapper.hover .team-card-info-wrapper.opacity-0 {
  opacity: 1.0 !important;
  filter: alpha(opacity=100) !important;
  -ms-filter: "prodig:DXImageTransform.Microsoft.Alpha(Opacity=100)" !important;
  -moz-opacity: 1.0 !important;
  -khtml-opacity: 1.0 !important; }

.fc,
.fc.size-h5 .fc-button,
.fc.size-h5 table,
.fc.size-h5 .fc-toolbar-title {
  font-size: initial; }

.fc .fc-event,
.fc .fc-h-event,
.fc .fc-button-primary {
  background-color: #124734 !important;
  border: 1px solid #124734 !important; }
  .fc .fc-event,
  .fc .fc-event .fc-event-main,
  .fc .fc-h-event,
  .fc .fc-h-event .fc-event-main,
  .fc .fc-button-primary,
  .fc .fc-button-primary .fc-event-main {
    color: #FFF !important; }
  .fc .fc-event:not(:disabled):not(.unavailable):hover,
  .fc .fc-h-event:not(:disabled):not(.unavailable):hover,
  .fc .fc-button-primary:not(:disabled):not(.unavailable):hover {
    background-color: #000 !important;
    border-color: #000 !important; }

.fc .fc-list-event:hover td {
  background-color: #000 !important;
  border-color: #000 !important; }

.fc .fc-event.unavailable,
.fc .fc-h-event.unavailable,
.fc .fc-day-past .fc-event,
.fc .fc-day-past .fc-h-event {
  background-color: #F3F4F3 !important;
  border-color: #F3F4F3 !important; }
  .fc .fc-event.unavailable,
  .fc .fc-event.unavailable .fc-event-main,
  .fc .fc-h-event.unavailable,
  .fc .fc-h-event.unavailable .fc-event-main,
  .fc .fc-day-past .fc-event,
  .fc .fc-day-past .fc-event .fc-event-main,
  .fc .fc-day-past .fc-h-event,
  .fc .fc-day-past .fc-h-event .fc-event-main {
    color: rgba(18, 71, 52, 0.5) !important; }

.fc .fc-toolbar.fc-header-toolbar .fc-toolbar-chunk {
  display: -ms-flexbox !important;
  display: flex !important;
  -ms-flex-wrap: wrap !important;
  flex-wrap: wrap !important;
  -ms-flex-align: end !important;
  align-items: flex-end !important; }

.fc .fc-toolbar.fc-header-toolbar .fc-customTitle-button {
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  max-width: 100%; }

.fc .fc-toolbar.fc-header-toolbar .fc-toolbar-title {
  font-size: 1.1em !important;
  line-height: 1em;
  margin-left: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  max-width: 100%;
  text-transform: capitalize; }

.fc .fc-toolbar.fc-header-toolbar .fc-button-group {
  margin-left: 0 !important;
  margin-top: 15px; }

.fc .fc-toolbar.fc-header-toolbar .fc-today-button, .fc .fc-toolbar.fc-header-toolbar .fc-customDateSelect-button {
  margin-top: 15px; }

.fc .fc-daygrid-day.fc-day-today {
  background-color: #F3F4F3 !important; }

.fc .fc-button:disabled {
  opacity: 0.2 !important; }

.fc .fc-button-primary.fc-customTitle-button {
  display: block;
  padding: 0;
  margin: 0 0 15px;
  width: auto;
  text-align: left;
  cursor: default !important;
  pointer-events: none !important; }
  .fc .fc-button-primary.fc-customTitle-button, .fc .fc-button-primary.fc-customTitle-button:hover {
    background: none !important;
    border: none !important;
    color: #000 !important; }

.fc .fc-day-past .fc-daygrid-day-top, .fc .fc-day-other .fc-daygrid-day-top {
  opacity: .3; }

.fc .fc-day-past .fc-h-event, .fc .fc-day-other .fc-h-event {
  opacity: .5; }

.fc .fc-day-past,
.fc .fc-day-past * {
  pointer-events: none !important; }

.fc .fc-event {
  font-size: 14px;
  line-height: 19px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .fc .fc-event.fc-daygrid-event {
    white-space: normal; }

.fc .fc-daygrid-event-dot {
  display: none; }

.fc .fc-h-event .fc-event-time,
.fc .fc-h-event .fc-event-title,
.fc .fc-daygrid-dot-event .fc-event-time,
.fc .fc-daygrid-dot-event .fc-event-title {
  padding: 1px; }

.fc .fc-h-event .fc-event-title,
.fc .fc-daygrid-dot-event .fc-event-title {
  font-weight: 700; }
  .fc .fc-h-event .fc-event-title span,
  .fc .fc-daygrid-dot-event .fc-event-title span {
    font-weight: initial; }

.fc .fc-button.fc-customDateSelect-button {
  transition: none !important;
  -webkit-transition: none !important;
  -moz-transition: none !important;
  -ms-transition: none !important;
  -o-transition: none !important;
  display: none; }

@media (min-width: 1200px) {
  .formation + .formation-calendar {
    margin-top: -50px; }
  .fc {
    flex-direction: row !important;
    margin-left: -15px;
    margin-right: -15px; }
    .fc > * {
      padding-left: 15px;
      padding-right: 15px; }
    .fc .fc-toolbar.fc-header-toolbar {
      margin-bottom: 0 !important;
      -ms-flex-align: start !important;
      align-items: flex-start !important;
      flex-direction: column;
      justify-content: start;
      -ms-flex: 0 0 25%;
      flex: 0 0 25%;
      max-width: 25%; }
      .fc .fc-toolbar.fc-header-toolbar .fc-today-button, .fc .fc-toolbar.fc-header-toolbar .fc-customDateSelect-button {
        margin-left: 0; }
    .fc .fc-view-harness {
      -ms-flex-preferred-size: 0;
      flex-basis: 0;
      -ms-flex-positive: 1;
      flex-grow: 1;
      max-width: 100%; } }

@media (max-width: 1199px) {
  .fc .fc-toolbar.fc-header-toolbar {
    display: block;
    margin-bottom: 15px !important;
    -ms-flex-align: end !important;
    align-items: flex-end !important; }
    .fc .fc-toolbar.fc-header-toolbar .fc-toolbar-title {
      min-width: 140px; }
    .fc .fc-toolbar.fc-header-toolbar .fc-button {
      width: auto; }
      .fc .fc-toolbar.fc-header-toolbar .fc-button.fc-today-button {
        margin-left: auto; }
    .fc .fc-toolbar.fc-header-toolbar .fc-today-button, .fc .fc-toolbar.fc-header-toolbar .fc-customDateSelect-button {
      margin-left: auto; } }

@media (max-width: 500px) {
  .fc .fc-toolbar.fc-header-toolbar .fc-today-button, .fc .fc-toolbar.fc-header-toolbar .fc-customDateSelect-button {
    margin-left: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%; } }

@media (min-width: 1801px) {
  /*--------------------------------------------------------- COMMON ---------------------------------------------------------*/
  .content-wrapper {
    width: 100%;
    max-width: 1600px;
    margin: 0 auto; }
  /*--------------------------------------------------------- FORMATION & FANCYBOX ---------------------------------------------------------*/
  .fancybox-content > section {
    padding-left: 100px;
    padding-right: 100px; } }

@media (max-width: 1800px) {
  /*--------------------------------------------------------- FONTS ---------------------------------------------------------*/
  .footer-services-item h2, .footer-services-item .style-h2,
  .map h2, .map .style-h2 {
    font-size: 35px; }
  /*--------------------------------------------------------- COMMON ---------------------------------------------------------*/
  .content-wrapper {
    width: auto; }
  .content-wrapper {
    margin-left: 100px; }
  .content-wrapper {
    margin-right: 100px; }
  .download-item-container,
  .download-item-container.one-item,
  .block-item,
  .resume-long-container,
  .project-card-container,
  .services-container {
    padding: 50px 70px; }
  section.text-bg-fullwidth {
    padding-top: 150px; }
  .pre-footer {
    padding-top: 75px; }
  section.title:first-child {
    padding-top: 50px; }
  section.text-bg-fullwidth {
    padding-bottom: 150px; }
  /*--------------------------------------------------------- HEADER ---------------------------------------------------------*/
  #main-menu > ul > li:not(:last-child) {
    margin-right: 50px; }
  /*--------------------------------------------------------- LISTE LOGOS ---------------------------------------------------------*/
  .logo-wrapper.format_l {
    margin-left: 70px;
    margin-right: 70px; }
  /*--------------------------------------------------------- FORMATION & FANCYBOX ---------------------------------------------------------*/
  .fancybox-content > section {
    padding: 100px 0; }
  /*--------------------------------------------------------- SERVICES FOOTER ---------------------------------------------------------*/
  .footer-services figure .bg-section {
    width: calc(((100vw - 200px) / 3) + 100px);
    left: auto;
    right: 0; } }

@media (min-width: 1401px) {
  /*--------------------------------------------------------- TEAM MASONRY ---------------------------------------------------------*/
  #team-grid-masonry .team-card-wrapper.size-big .team-card-info-wrapper {
    -ms-flex-pack: center !important;
    justify-content: center !important; } }

@media (max-width: 1400px) {
  /*--------------------------------------------------------- COMMON ---------------------------------------------------------*/
  .content-wrapper {
    margin-left: 50px; }
  .content-wrapper {
    margin-right: 50px; }
  section.title:first-child {
    padding-top: 0; }
  /*--------------------------------------------------------- HEADER ---------------------------------------------------------*/
  #footer-menu > ul > li:not(:last-child),
  #main-menu > ul > li:not(:last-child) {
    margin-right: 40px; }
  #contact-header > ul > li:not(:last-child) {
    margin-right: 20px; }
  /*--------------------------------------------------------- TEAM MASONRY ---------------------------------------------------------*/
  .grid-sizer-team,
  #team-grid-masonry .team-card-wrapper,
  #team-grid-masonry .team-card-wrapper.size-big,
  #team-grid-masonry.filter .team-card-wrapper {
    width: 33.333%; }
  #team-grid-masonry .team-card-wrapper,
  #team-grid-masonry .team-card-wrapper.size-big,
  #team-grid-masonry.filter .team-card-wrapper {
    padding-bottom: 30%; } }

@media (min-width: 1200px) {
  /*--------------------------------------------------------- GENERAL ---------------------------------------------------------*/
  .hidden-xl-up {
    display: none !important; }
  /*--------------------------------------------------------- CONTENU EN BLOCK ---------------------------------------------------------*/
  .block-img-content-wrapper {
    min-height: 400px; }
  /*--------------------------------------------------------- TEAM ---------------------------------------------------------*/
  section.introduction + section.team-list:not(.no-filter) {
    padding-top: 0; }
  section.introduction + section.team-list .team-filter-wrapper {
    transform: translate(0, -90px); }
  section.introduction + section.team-list .team-filter-wrapper {
    margin-bottom: -82.5px; }
  /*--------------------------------------------------------- PROJECT ---------------------------------------------------------*/
  #project-mobile-menu {
    display: block !important; }
  body.project-menu-top .accordion-menu {
    position: fixed;
    top: 30px;
    left: auto; }
  body.project-menu-top.scrolling-to-top .accordion-menu {
    top: 140px; }
  body.project-menu-bottom .accordion-menu {
    position: absolute !important;
    top: auto !important;
    bottom: 0; }
  .menu-project.scroll-menu .accordion-menu {
    overflow: auto;
    -webkit-overflow-scrolling: touch; }
  /*--------------------------------------------------------- FORMATION & FANCYBOX ---------------------------------------------------------*/
  .introduction + .formation {
    margin-top: -60px; } }

@media (max-width: 1199px) {
  /*--------------------------------------------------------- GENERAL ---------------------------------------------------------*/
  .hidden-lg-down {
    display: none !important; }
  .anchor {
    top: 0; }
  /*--------------------------------------------------------- COLORS & BACKGROUNDS ---------------------------------------------------------*/
  .footer-services.bg-white {
    background-color: #F3F4F3 !important; }
  /*--------------------------------------------------------- FONTS ---------------------------------------------------------*/
  h1, .style-h1 {
    font-size: 50px; }
  h2, .style-h2,
  .link-item-nolist a:not(.style-h4),
  .link-item a:not(.style-h4),
  blockquote .style-h1 {
    font-size: 35px; }
  h3, .style-h3,
  blockquote .style-h2,
  .slider-quotes .link-item a,
  .map h2, .map .style-h2,
  .fc.size-h5 .fc-button.fc-customTitle-button {
    font-size: 25px;
    line-height: 1.3em; }
  .text-left-lg {
    text-align: left !important; }
  .text-right-lg {
    text-align: right !important; }
  .text-center-lg {
    text-align: center !important; }
  /*--------------------------------------------------------- COMMON ---------------------------------------------------------*/
  .download-item-container,
  .download-item-container.one-item,
  .block-item,
  .block-img-content-wrapper,
  .services-container {
    padding-left: 30px; }
  .download-item-container,
  .download-item-container.one-item,
  .block-item,
  .block-img-content-wrapper,
  .services-container {
    padding-right: 30px; }
  section,
  #footer .content-wrapper {
    padding-top: 100px; }
  .block-img-content-wrapper {
    padding-top: 70px; }
  section.introduction.padding-blocks {
    padding-bottom: 200px; }
  section,
  .text-footer-services {
    padding-bottom: 100px; }
  .team-filter-wrapper {
    padding-bottom: 75px; }
  .block-img-content-wrapper {
    padding-bottom: 70px; }
  #project-intro {
    padding-bottom: 50px; }
  .project-card-container {
    padding-top: 30px;
    padding-bottom: 30px; }
  .content-column + .resume-long.bg-light {
    margin-top: -50px; }
  /*--------------------------------------------------------- HEADER ---------------------------------------------------------*/
  #main-menu > ul > li:not(:last-child) {
    margin-right: 30px; }
  /*--------------------------------------------------------- LISTE LOGOS ---------------------------------------------------------*/
  .logo-wrapper.format_l {
    margin-left: 0;
    margin-right: 0; }
    .logo-wrapper.format_l > .row {
      margin-top: -30px;
      margin-bottom: -30px; }
      .logo-wrapper.format_l > .row .logo-item {
        width: 15%;
        max-width: 15%;
        margin-top: 30px;
        margin-bottom: 30px; }
        .logo-wrapper.format_l > .row .logo-item img {
          max-width: 115px;
          max-height: 72px; }
    .logo-wrapper.format_l.logo-nb-1 .logo-item, .logo-wrapper.format_l.logo-nb-2 .logo-item {
      min-height: 120px; }
      .logo-wrapper.format_l.logo-nb-1 .logo-item img, .logo-wrapper.format_l.logo-nb-2 .logo-item img {
        max-width: 200px;
        max-height: 120px; }
  .logo-slider {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%; }
  /*--------------------------------------------------------- PROJECT ---------------------------------------------------------*/
  body.single #project-intro,
  body.single #project-mobile-menu,
  body.archive .accordion-menu > .accordion-item > header {
    display: none; }
  #project-nav .project-container {
    display: none !important; }
  body.archive .project-box.active {
    cursor: pointer; }
  body.archive #contains-project {
    min-height: 0; }
  .accordion-menu > .accordion-item > header {
    margin-top: 2px; }
  /*--------------------------------------------------------- SWIPER ---------------------------------------------------------*/
  .swiper-pagination {
    left: 10% !important; }
  /*--------------------------------------------------------- FORMATION & FANCYBOX ---------------------------------------------------------*/
  .introduction + .formation #formation-search {
    transform: translate(0, -50%); }
  .fancybox-slide--html .fancybox-close-small {
    right: 25px !important;
    top: 25px !important; }
  /*--------------------------------------------------------- OPACITY ---------------------------------------------------------*/
  body.archive .project-box .header-project,
  html.no-touchevents body.archive .project-box .header-project:hover .arrow.opacity-0 {
    opacity: 1.0 !important;
    filter: alpha(opacity=100) !important;
    -ms-filter: "prodig:DXImageTransform.Microsoft.Alpha(Opacity=100)" !important;
    -moz-opacity: 1.0 !important;
    -khtml-opacity: 1.0 !important; } }

@media (min-width: 992px) {
  /*--------------------------------------------------------- GENERAL ---------------------------------------------------------*/
  .hidden-lg-up,
  .formation-page aside > .row > [class*="col-"]:first-child > [class*="padding-"] {
    display: none !important; }
  blockquote p:before {
    position: absolute;
    right: 100%;
    top: 0; }
  /*--------------------------------------------------------- PROJECT ---------------------------------------------------------*/
  .project-description p {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 30px;
    -moz-column-gap: 30px;
    column-gap: 30px; } }

@media (max-width: 991px) {
  /*--------------------------------------------------------- GENERAL ---------------------------------------------------------*/
  .hidden-md-down {
    display: none !important; }
  /*--------------------------------------------------------- FONTS ---------------------------------------------------------*/
  .text-bg-fullwidth p,
  section.text-bg-fullwidth .link-item a,
  section.introduction .link-item a,
  .footer-services-item h2, .footer-services-item .style-h2 {
    font-size: 25px;
    line-height: 1.3em; }
  h4, .style-h4,
  body,
  .link-item > span input,
  section.content-column .link-item a,
  section.project .link-item a,
  section.formation .link-item a,
  #main-menu ul li,
  .project-card-container span,
  .project-description p.size-h5 {
    font-size: 21px; }
  h5, .style-h5,
  .size-h5,
  .pre-footer,
  .adress-footer,
  .resume-long-container p,
  .dropdown-label,
  .question-container,
  .row-form label,
  .row-form.row-search input,
  div.wpcf7 div.wpcf7-response-output {
    font-size: 16px; }
  .text-left-md {
    text-align: left !important; }
  .text-right-md {
    text-align: right !important; }
  .text-center-md {
    text-align: center !important; }
  .block-item ul {
    margin-left: 19px; }
  /*--------------------------------------------------------- COMMON ---------------------------------------------------------*/
  .content-wrapper {
    margin-left: 25px; }
  .content-wrapper {
    margin-right: 25px; }
  .line-light {
    margin-top: 50px;
    margin-bottom: 50px; }
  section.introduction + section.resume-long,
  section.introduction + section.content-block.block-img,
  section.introduction + section.project {
    margin-top: -100px; }
  .bg-resume-long {
    margin-top: 100px; }
  section,
  #footer .content-wrapper {
    padding-top: 75px; }
  section.bg-white:first-child {
    padding-top: 50px; }
  .download-item-container,
  .download-item-container.one-item,
  .block-item,
  .block-img-content-wrapper,
  .resume-long-container,
  .project-card-container,
  .services-container {
    padding-top: 25px; }
  section.introduction.padding-blocks,
  section.introduction.padding-resume {
    padding-bottom: 150px; }
  section,
  .text-footer-services {
    padding-bottom: 75px; }
  .team-filter-wrapper {
    padding-bottom: 50px; }
  .download-item-container,
  .download-item-container.one-item,
  .block-item,
  .block-img-content-wrapper,
  .resume-long-container,
  .project-card-container,
  .services-container {
    padding-bottom: 25px; }
  .download-item-container,
  .download-item-container.one-item,
  .resume-long-container,
  .project-card-container {
    padding-left: 50px; }
  .download-item-container,
  .download-item-container.one-item,
  .block-item,
  .block-img-content-wrapper,
  .services-container {
    padding-left: 25px; }
  .download-item-container,
  .download-item-container.one-item,
  .resume-long-container,
  .project-card-container {
    padding-right: 50px; }
  .download-item-container,
  .download-item-container.one-item,
  .block-item,
  .block-img-content-wrapper,
  .services-container {
    padding-right: 25px; }
  .project-description,
  .project-gallery > *:not(:last-child) {
    margin-bottom: 30px; }
  .link-item.green::after {
    display: none; }
  /*--------------------------------------------------------- LINK BUTTON ---------------------------------------------------------*/
  section.content-column .link-item a::after,
  section.project .link-item a::after,
  section.formation .link-item a::after,
  .slider-quotes .link-item a::after,
  section.text-bg-fullwidth .link-item a::after,
  section.introduction .link-item a::after,
  .link-item a.style-h4::after,
  .wpcf7 .link-item > span::after {
    background-size: auto 70%;
    margin-top: -2px;
    margin-left: -40px; }
  section.formation .link-item.bottom a::after {
    margin-top: -6px; }
  .link-item > span input {
    padding: 7px 40px 10px 0; }
  div.wpcf7 .link-item .ajax-loader {
    background-size: 20px auto;
    top: 7px;
    right: 3px;
    width: 22px;
    height: 22px; }
  /*--------------------------------------------------------- HEADER ---------------------------------------------------------*/
  body {
    padding-top: 162px; }
  #header {
    padding: 40px 0; }
  body.page-scrolled #header {
    padding-top: 20px;
    padding-bottom: 20px; }
  body.menu-opened-step2 #header {
    padding-top: 30px;
    padding-bottom: 30px; }
  #logo img {
    margin-top: -0.44em; }
  #contact-header {
    height: auto; }
  /*--------------------------------------------------------- TEXTE & ARRIERE-PLAN ---------------------------------------------------------*/
  .list-link-box {
    margin-top: 250px; }
  /*--------------------------------------------------------- CONTENU EN BLOCK ---------------------------------------------------------*/
  .block-img-item figure {
    height: 0;
    padding-bottom: 120%; }
  /*--------------------------------------------------------- LISTE LOGOS ---------------------------------------------------------*/
  .logo-item img {
    max-height: 90px; }
  /*--------------------------------------------------------- TEAM MASONRY ---------------------------------------------------------*/
  .grid-sizer-team,
  #team-grid-masonry .team-card-wrapper,
  #team-grid-masonry .team-card-wrapper.size-big,
  #team-grid-masonry.filter .team-card-wrapper {
    width: 50%; }
  #team-grid-masonry .team-card-wrapper,
  #team-grid-masonry .team-card-wrapper.size-big,
  #team-grid-masonry.filter .team-card-wrapper {
    padding-bottom: 40%; }
  /*--------------------------------------------------------- SWIPER ---------------------------------------------------------*/
  .swiper-pagination {
    top: inherit !important;
    left: 25px !important;
    transform: none !important;
    bottom: 25px !important;
    text-align: left !important; }
  .swiper-pagination > .swiper-pagination-bullet {
    display: inline-block !important; }
  .swiper-pagination > .swiper-pagination-bullet:not(:last-child) {
    margin-bottom: 0px !important;
    margin-right: 15px !important; }
  /*--------------------------------------------------------- FORMATION & FANCYBOX ---------------------------------------------------------*/
  .fancybox-content > section {
    padding-top: 75px; }
  .fancybox-slide--html .fancybox-close-small {
    right: 15px !important;
    top: 15px !important; } }

@media (min-width: 768px) {
  /*--------------------------------------------------------- GENERAL ---------------------------------------------------------*/
  .hidden-md-up {
    display: none !important; }
  /*--------------------------------------------------------- FORMATION & FANCYBOX ---------------------------------------------------------*/
  .introduction + .formation {
    padding-top: 0; }
  /*--------------------------------------------------------- FOOTER ---------------------------------------------------------*/
  #footer .logo-footer {
    width: 77%; } }

@media (max-width: 767px) {
  /*--------------------------------------------------------- GENERAL ---------------------------------------------------------*/
  .hidden-sm-down {
    display: none !important; }
  .margin-md-b {
    margin-bottom: 40px !important; }
  section.introduction + section.resume-long {
    margin-top: 0px; }
  /*--------------------------------------------------------- COLORS & BACKGROUNDS ---------------------------------------------------------*/
  .pre-footer {
    background-color: #FFF !important; }
  #footer {
    border-color: #DBE5DB !important; }
  /*--------------------------------------------------------- FONTS ---------------------------------------------------------*/
  h1, .style-h1 {
    font-size: 36px; }
  h2, .style-h2,
  .link-item-nolist a:not(.style-h4),
  .link-item a:not(.style-h4),
  blockquote .style-h1 {
    font-size: 27px; }
  h3, .style-h3,
  blockquote .style-h2,
  .slider-quotes .link-item a,
  section.text-bg-fullwidth .link-item a,
  section.introduction .link-item a,
  .text-bg-fullwidth p,
  .text-footer p,
  .map h2, .map .style-h2,
  .fc.size-h5 .fc-button.fc-customTitle-button {
    font-size: 21px;
    line-height: 1.3em; }
  h4, .style-h4,
  body,
  .link-item > span input,
  section.content-column .link-item a,
  section.project .link-item a,
  section.formation .link-item a,
  #main-menu ul li,
  .project-card-container span,
  h5, .style-h5,
  .size-h5,
  .project-description p.size-h5,
  .pre-footer,
  .adress-footer,
  .resume-long-container p,
  .dropdown-label,
  .question-container,
  .row-form label,
  .row-form.row-search input,
  div.wpcf7 div.wpcf7-response-output {
    font-size: 16px; }
  h6, .style-h6,
  .formation-price small,
  .btn-corpo,
  .dropdown-menu,
  .row-form input, .row-form select, .row-form textarea {
    font-size: 13px;
    line-height: 1.5em; }
  small, .small,
  .row-form span.wpcf7-not-valid-tip {
    font-size: 10px;
    line-height: 1.5em; }
  #header {
    font-size: 0;
    line-height: 0; }
  .logo-wrapper.format_l > .row .logo-item,
  .logo-slider .logo-item img > .row .logo-item {
    min-height: 60px; }
    .logo-wrapper.format_l > .row .logo-item img,
    .logo-slider .logo-item img > .row .logo-item img {
      max-width: 80px;
      max-height: 60px; }
  .text-left-sm {
    text-align: left !important; }
  .text-right-sm {
    text-align: right !important; }
  .text-center-sm {
    text-align: center !important; }
  .block-item ul {
    margin-left: 15px; }
  /*--------------------------------------------------------- COMMON ---------------------------------------------------------*/
  .content-wrapper {
    margin-left: 15px; }
  .content-wrapper {
    margin-right: 15px; }
  .dl-wrapper {
    margin: -7.5px; }
  .dl-items {
    padding: 7.5px; }
  .line-light {
    margin-top: 25px;
    margin-bottom: 25px; }
  .grid-item-block .block-item {
    padding-left: 75px; }
  .download-item-container,
  .download-item-container.one-item,
  .resume-long-container,
  .project-card-container {
    padding-left: 30px; }
  .download-item-container,
  .download-item-container.one-item,
  .block-item,
  .block-img-content-wrapper,
  .services-container {
    padding-left: 15px; }
  .grid-item-block .block-item {
    padding-right: 75px; }
  .download-item-container,
  .download-item-container.one-item,
  .resume-long-container,
  .project-card-container {
    padding-right: 30px; }
  .download-item-container,
  .download-item-container.one-item,
  .block-item,
  .block-img-content-wrapper,
  .services-container {
    padding-right: 15px; }
  section.text-bg-fullwidth,
  .swiper-slide {
    padding-top: 100px; }
  section.title:first-child,
  section.introduction.bg-white + section.bg-light,
  #footer .content-wrapper,
  .pre-footer {
    padding-top: 50px; }
  section.bg-light.content-block.block-img + section.bg-light {
    padding-top: 50px !important; }
  .download-item-container,
  .download-item-container.one-item,
  .resume-long-container,
  .project-card-container {
    padding-top: 15px; }
  section.text-bg-fullwidth,
  .swiper-slide {
    padding-bottom: 100px; }
  section.introduction.bg-white:not(.padding-blocks),
  .text-footer-services,
  .pre-footer,
  section.footer-services {
    padding-bottom: 50px; }
  .download-item-container,
  .download-item-container.one-item,
  .resume-long-container,
  .project-card-container {
    padding-bottom: 15px; }
  .content-block.block-img {
    padding-bottom: 7.5px; }
  #footer .content-wrapper {
    padding-bottom: 0; }
  /*--------------------------------------------------------- HEADER ---------------------------------------------------------*/
  body {
    padding-top: 91px; }
  #header {
    padding: 30px 65px 30px 0; }
  body.page-scrolled:not(.menu-opened-step2) #header {
    padding-top: 15px;
    padding-bottom: 15px; }
  #header-logo {
    display: inline-block;
    width: 100%;
    max-width: 250px; }
  #logo img {
    margin-top: 0; }
  #contact-header > ul > li {
    margin-top: 0; }
  #contact-header > ul > li:not(:last-child) {
    margin-right: 25px; }
  /*--------------------------------------------------------- TEXTE & ARRIERE-PLAN ---------------------------------------------------------*/
  .list-link-box {
    margin-top: 120px; }
  .text-right .link-item {
    padding-right: 0; }
  /*--------------------------------------------------------- LISTE LOGOS ---------------------------------------------------------*/
  .logo-wrapper .row {
    margin: -15px; }
  .logo-item {
    max-width: 25%;
    max-height: 70px; }
  .logo-item img {
    max-height: 80px; }
  .logo-wrapper.format_l > .row .logo-item {
    width: 28%;
    max-width: 28%; }
  /*--------------------------------------------------------- SERVICES ---------------------------------------------------------*/
  .resume-long > .content-wrapper > .row,
  .project-highlights > .content-wrapper > .row {
    margin: -7.5px; }
  .resume-long .services-box,
  .project-highlights > .content-wrapper > .row > [class*="col-"] {
    padding: 7.5px; }
  /*--------------------------------------------------------- MOSAIC ---------------------------------------------------------*/
  .mosaic,
  .mosaic a, .mosaic a[style],
  .mosaic img, .mosaic a[style] img[style] {
    height: auto !important; }
  .mosaic,
  .mosaic img, .mosaic a[style] img[style] {
    float: none !important; }
  .mosaic {
    margin: -7.5px !important;
    width: auto !important;
    overflow: visible !important; }
  .mosaic a, .mosaic a[style] {
    float: left !important;
    display: block !important;
    width: auto !important;
    margin: 7.5px !important; }
  .mosaic img, .mosaic a[style] img[style] {
    width: auto !important;
    max-height: 350px;
    margin: 0 !important; }
  /*--------------------------------------------------------- GALLERY ---------------------------------------------------------*/
  .grid-sizer-gallery,
  .grid-item-gallery,
  .grid-item-gallery.medium {
    width: 50%; }
  .grid-item-gallery,
  .grid-item-gallery.medium {
    padding-bottom: 40%; }
  .grid-item-gallery.big,
  .grid-item-gallery.big + .grid-item-gallery.medium:last-child {
    width: 100%;
    padding-bottom: 80%; }
  /*--------------------------------------------------------- FORMATION & FANCYBOX ---------------------------------------------------------*/
  .introduction + .formation #formation-search {
    transform: translate(0, 0); }
  /*--------------------------------------------------------- FOOTER ---------------------------------------------------------*/
  #footer {
    border-top: 1px solid; }
  .grid-block {
    margin-top: -7.5px;
    margin-bottom: -7.5px; }
  .grid-item-block,
  .grid-sizer-block {
    width: 100%; }
  .block-item {
    margin-top: 7.5px;
    margin-bottom: 7.5px; } }

@media (min-width: 576px) {
  /*--------------------------------------------------------- GENERAL ---------------------------------------------------------*/
  .hidden-sm-up {
    display: none !important; }
  /*--------------------------------------------------------- LINK BUTTON ---------------------------------------------------------*/
  .text-center > .link-item a {
    margin-left: -70px; }
  /*--------------------------------------------------------- LISTE LOGOS ---------------------------------------------------------*/
  .logo-item:last-child {
    margin-right: auto; } }

@media (max-width: 575px) {
  /*--------------------------------------------------------- GENERAL ---------------------------------------------------------*/
  .menu-wrapper,
  .hidden-xs-down {
    display: none !important; }
  /*--------------------------------------------------------- FONTS ---------------------------------------------------------*/
  .map h2, .map .style-h2 {
    font-size: 16px; }
  #content-project td:first-child {
    font-weight: 700; }
  .text-left-xs {
    text-align: left !important; }
  .text-right-xs {
    text-align: right !important; }
  .text-center-xs {
    text-align: center !important; }
  /*--------------------------------------------------------- COMMON ---------------------------------------------------------*/
  .download-item-container,
  .download-item-container.one-item,
  .block-item,
  .resume-long-container,
  .project-card-container {
    padding: 15px; }
  .team-card-item {
    padding-top: 20px;
    padding-bottom: 20px; }
  .grid-item-block .block-item {
    padding-left: 15px; }
  .grid-item-block .block-item {
    padding-right: 15px; }
  .swiper-slide {
    padding-top: 75px; }
  .swiper-slide {
    padding-bottom: 75px; }
  .swiper-slide {
    padding-bottom: 75px; }
  /*--------------------------------------------------------- LISTE LOGOS ---------------------------------------------------------*/
  .logo-wrapper.format_l > .row .logo-item {
    margin-left: 5%;
    margin-right: 5%; }
    .logo-wrapper.format_l > .row .logo-item img {
      max-width: 100%; }
  /*--------------------------------------------------------- PROJECT ---------------------------------------------------------*/
  #content-project table,
  #content-project tbody,
  #content-project tr,
  #content-project td {
    display: block;
    width: 100%; }
  #content-project td:first-child {
    padding-bottom: 0; }
  #content-project td:last-child {
    padding-top: 0; }
  /*--------------------------------------------------------- MOSAIC ---------------------------------------------------------*/
  .mosaic img, .mosaic a[style] img[style] {
    max-height: 300px; }
  /*--------------------------------------------------------- SWIPER ---------------------------------------------------------*/
  .text-quote + .link-item {
    margin-top: 50px; }
  /*--------------------------------------------------------- TEAM MASONRY ---------------------------------------------------------*/
  .grid-sizer-team,
  #team-grid-masonry .team-card-wrapper,
  #team-grid-masonry .team-card-wrapper.size-big,
  #team-grid-masonry.filter .team-card-wrapper {
    width: 100%; }
  #team-grid-masonry .team-card-wrapper,
  #team-grid-masonry .team-card-wrapper.size-big,
  #team-grid-masonry.filter .team-card-wrapper {
    padding-bottom: 80%; }
  #team-grid-masonry .team-card-info-wrapper {
    height: auto; } }

@media (max-width: 350px) {
  /*--------------------------------------------------------- LISTE LOGOS ---------------------------------------------------------*/
  .logo-wrapper.format_l > .row {
    margin-top: -15px;
    margin-bottom: -15px; }
    .logo-wrapper.format_l > .row .logo-item {
      margin-top: 15px;
      margin-bottom: 15px; }
  /*--------------------------------------------------------- MOSAIC ---------------------------------------------------------*/
  .mosaic a, .mosaic a[style] {
    float: none !important; }
  .mosaic img, .mosaic a[style] img[style] {
    width: 100% !important;
    max-height: none !important;
    margin: 0 !important; } }

#main a,
#main button,
.focus-label,
.resume-short,
.services-box .service-img,
.project-card .project-img,
.question-item .question-header .open-question,
.filter-item,
.row-form label, .row-form input, .row-form select, .row-form textarea {
  -webkit-transition: all .2s linear;
  -moz-transition: all .2s linear;
  -ms-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear; }

.link-item-nolist a::after,
.link-item span::after,
.link-item a::after,
.link-item > span input,
div.wpcf7 .link-item .ajax-loader,
.arrow,
.project-box .arrow::after,
.project-box header,
.menu-item a,
.sub-menu,
.mobile-menu,
#menu-burger,
.menu-line,
.menu-item a::before,
.project-card,
.resume-long-wrapper,
.category-faq .category-header .arrow-accordion,
html.no-touchevents .resume-short:hover .link-item.green::after,
.swiper-pagination-bullet,
.swiper-pagination-bullet span,
.team-card-info-wrapper {
  -webkit-transition: all 0.3s cubic-bezier(0.7, 0, 0.3, 1);
  -moz-transition: all 0.3s cubic-bezier(0.7, 0, 0.3, 1);
  -ms-transition: all 0.3s cubic-bezier(0.7, 0, 0.3, 1);
  -o-transition: all 0.3s cubic-bezier(0.7, 0, 0.3, 1);
  transition: all 0.3s cubic-bezier(0.7, 0, 0.3, 1); }

.btn-corpo,
#header,
.accordion-menu,
#mobile-menu,
.contact-mobile,
.download-item-container,
#menu-background-burger,
.dropdown-wrapper .dropdown-label::after,
.logo-slider-wrapper {
  -webkit-transition: all 0.5s cubic-bezier(0.7, 0, 0.3, 1);
  -moz-transition: all 0.5s cubic-bezier(0.7, 0, 0.3, 1);
  -ms-transition: all 0.5s cubic-bezier(0.7, 0, 0.3, 1);
  -o-transition: all 0.5s cubic-bezier(0.7, 0, 0.3, 1);
  transition: all 0.5s cubic-bezier(0.7, 0, 0.3, 1); }

body.menu-opened .mobile-menu,
.services-box:hover .service-img,
.project-card:hover .project-img,
.scroll-anim {
  -webkit-transition: all .7s ease-in-out;
  -moz-transition: all .7s ease-in-out;
  -ms-transition: all .7s ease-in-out;
  -o-transition: all .7s ease-in-out;
  transition: all .7s ease-in-out; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlLmNzcyIsInNvdXJjZXMiOlsiYnVuZGxlLnNjc3MiLCJjb21wb25lbnRzL2Jvb3RzdHJhcC1ncmlkLnNjc3MiLCJjb21wb25lbnRzL2ZvbnRzLnNjc3MiLCJjb21wb25lbnRzL21haW4uc2NzcyIsImNvbXBvbmVudHMvY2FsZW5kYXIuc2NzcyIsImNvbXBvbmVudHMvcmVzcG9uc2l2ZS5zY3NzIiwiY29tcG9uZW50cy90cmFuc2l0aW9ucy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJy4vY29tcG9uZW50cy9ib290c3RyYXAtZ3JpZCc7XG5AaW1wb3J0ICcuL2NvbXBvbmVudHMvZm9udHMuc2Nzcyc7XG5AaW1wb3J0ICcuL2NvbXBvbmVudHMvbWFpbi5zY3NzJztcbkBpbXBvcnQgJy4vY29tcG9uZW50cy9jYWxlbmRhci5zY3NzJztcbkBpbXBvcnQgJy4vY29tcG9uZW50cy9yZXNwb25zaXZlLnNjc3MnO1xuQGltcG9ydCAnLi9jb21wb25lbnRzL3RyYW5zaXRpb25zLnNjc3MnOyIsImh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IHNjcm9sbGJhcjtcbn1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuLmQtZmxleCB7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94IWltcG9ydGFudDtcbiAgZGlzcGxheTogZmxleCFpbXBvcnRhbnQ7XG59XG5cbi5yb3cge1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICBtYXJnaW4tbGVmdDogLTE1cHg7XG59XG5cbi5uby1ndXR0ZXJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLm5vLWd1dHRlcnMgPiAuY29sLFxuLm5vLWd1dHRlcnMgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmNvbC0xLCAuY29sLTIsIC5jb2wtMywgLmNvbC00LCAuY29sLTUsIC5jb2wtNiwgLmNvbC03LCAuY29sLTgsIC5jb2wtOSwgLmNvbC0xMCwgLmNvbC0xMSwgLmNvbC0xMiwgLmNvbCxcbi5jb2wtYXV0bywgLmNvbC1zbS0xLCAuY29sLXNtLTIsIC5jb2wtc20tMywgLmNvbC1zbS00LCAuY29sLXNtLTUsIC5jb2wtc20tNiwgLmNvbC1zbS03LCAuY29sLXNtLTgsIC5jb2wtc20tOSwgLmNvbC1zbS0xMCwgLmNvbC1zbS0xMSwgLmNvbC1zbS0xMiwgLmNvbC1zbSxcbi5jb2wtc20tYXV0bywgLmNvbC1tZC0xLCAuY29sLW1kLTIsIC5jb2wtbWQtMywgLmNvbC1tZC00LCAuY29sLW1kLTUsIC5jb2wtbWQtNiwgLmNvbC1tZC03LCAuY29sLW1kLTgsIC5jb2wtbWQtOSwgLmNvbC1tZC0xMCwgLmNvbC1tZC0xMSwgLmNvbC1tZC0xMiwgLmNvbC1tZCxcbi5jb2wtbWQtYXV0bywgLmNvbC1sZy0xLCAuY29sLWxnLTIsIC5jb2wtbGctMywgLmNvbC1sZy00LCAuY29sLWxnLTUsIC5jb2wtbGctNiwgLmNvbC1sZy03LCAuY29sLWxnLTgsIC5jb2wtbGctOSwgLmNvbC1sZy0xMCwgLmNvbC1sZy0xMSwgLmNvbC1sZy0xMiwgLmNvbC1sZyxcbi5jb2wtbGctYXV0bywgLmNvbC14bC0xLCAuY29sLXhsLTIsIC5jb2wteGwtMywgLmNvbC14bC00LCAuY29sLXhsLTUsIC5jb2wteGwtNiwgLmNvbC14bC03LCAuY29sLXhsLTgsIC5jb2wteGwtOSwgLmNvbC14bC0xMCwgLmNvbC14bC0xMSwgLmNvbC14bC0xMiwgLmNvbC14bCxcbi5jb2wteGwtYXV0byB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbn1cblxuLmNvbCB7XG4gIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAwO1xuICBmbGV4LWJhc2lzOiAwO1xuICAtbXMtZmxleC1wb3NpdGl2ZTogMTtcbiAgZmxleC1ncm93OiAxO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5jb2wtYXV0byB7XG4gIC1tcy1mbGV4OiAwIDAgYXV0bztcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5jb2wtMSB7XG4gIC1tcy1mbGV4OiAwIDAgOC4zMzMzMzMlO1xuICBmbGV4OiAwIDAgOC4zMzMzMzMlO1xuICBtYXgtd2lkdGg6IDguMzMzMzMzJTtcbn1cblxuLmNvbC0yIHtcbiAgLW1zLWZsZXg6IDAgMCAxNi42NjY2NjclO1xuICBmbGV4OiAwIDAgMTYuNjY2NjY3JTtcbiAgbWF4LXdpZHRoOiAxNi42NjY2NjclO1xufVxuXG4uY29sLTMge1xuICAtbXMtZmxleDogMCAwIDI1JTtcbiAgZmxleDogMCAwIDI1JTtcbiAgbWF4LXdpZHRoOiAyNSU7XG59XG5cbi5jb2wtNCB7XG4gIC1tcy1mbGV4OiAwIDAgMzMuMzMzMzMzJTtcbiAgZmxleDogMCAwIDMzLjMzMzMzMyU7XG4gIG1heC13aWR0aDogMzMuMzMzMzMzJTtcbn1cblxuLmNvbC01IHtcbiAgLW1zLWZsZXg6IDAgMCA0MS42NjY2NjclO1xuICBmbGV4OiAwIDAgNDEuNjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA0MS42NjY2NjclO1xufVxuXG4uY29sLTYge1xuICAtbXMtZmxleDogMCAwIDUwJTtcbiAgZmxleDogMCAwIDUwJTtcbiAgbWF4LXdpZHRoOiA1MCU7XG59XG5cbi5jb2wtNyB7XG4gIC1tcy1mbGV4OiAwIDAgNTguMzMzMzMzJTtcbiAgZmxleDogMCAwIDU4LjMzMzMzMyU7XG4gIG1heC13aWR0aDogNTguMzMzMzMzJTtcbn1cblxuLmNvbC04IHtcbiAgLW1zLWZsZXg6IDAgMCA2Ni42NjY2NjclO1xuICBmbGV4OiAwIDAgNjYuNjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA2Ni42NjY2NjclO1xufVxuXG4uY29sLTkge1xuICAtbXMtZmxleDogMCAwIDc1JTtcbiAgZmxleDogMCAwIDc1JTtcbiAgbWF4LXdpZHRoOiA3NSU7XG59XG5cbi5jb2wtMTAge1xuICAtbXMtZmxleDogMCAwIDgzLjMzMzMzMyU7XG4gIGZsZXg6IDAgMCA4My4zMzMzMzMlO1xuICBtYXgtd2lkdGg6IDgzLjMzMzMzMyU7XG59XG5cbi5jb2wtMTEge1xuICAtbXMtZmxleDogMCAwIDkxLjY2NjY2NyU7XG4gIGZsZXg6IDAgMCA5MS42NjY2NjclO1xuICBtYXgtd2lkdGg6IDkxLjY2NjY2NyU7XG59XG5cbi5jb2wtMTIge1xuICAtbXMtZmxleDogMCAwIDEwMCU7XG4gIGZsZXg6IDAgMCAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5vcmRlci1maXJzdCB7XG4gIC1tcy1mbGV4LW9yZGVyOiAtMTtcbiAgb3JkZXI6IC0xO1xufVxuXG4ub3JkZXItbGFzdCB7XG4gIC1tcy1mbGV4LW9yZGVyOiAxMztcbiAgb3JkZXI6IDEzO1xufVxuXG4ub3JkZXItMCB7XG4gIC1tcy1mbGV4LW9yZGVyOiAwO1xuICBvcmRlcjogMDtcbn1cblxuLm9yZGVyLTEge1xuICAtbXMtZmxleC1vcmRlcjogMTtcbiAgb3JkZXI6IDE7XG59XG5cbi5vcmRlci0yIHtcbiAgLW1zLWZsZXgtb3JkZXI6IDI7XG4gIG9yZGVyOiAyO1xufVxuXG4ub3JkZXItMyB7XG4gIC1tcy1mbGV4LW9yZGVyOiAzO1xuICBvcmRlcjogMztcbn1cblxuLm9yZGVyLTQge1xuICAtbXMtZmxleC1vcmRlcjogNDtcbiAgb3JkZXI6IDQ7XG59XG5cbi5vcmRlci01IHtcbiAgLW1zLWZsZXgtb3JkZXI6IDU7XG4gIG9yZGVyOiA1O1xufVxuXG4ub3JkZXItNiB7XG4gIC1tcy1mbGV4LW9yZGVyOiA2O1xuICBvcmRlcjogNjtcbn1cblxuLm9yZGVyLTcge1xuICAtbXMtZmxleC1vcmRlcjogNztcbiAgb3JkZXI6IDc7XG59XG5cbi5vcmRlci04IHtcbiAgLW1zLWZsZXgtb3JkZXI6IDg7XG4gIG9yZGVyOiA4O1xufVxuXG4ub3JkZXItOSB7XG4gIC1tcy1mbGV4LW9yZGVyOiA5O1xuICBvcmRlcjogOTtcbn1cblxuLm9yZGVyLTEwIHtcbiAgLW1zLWZsZXgtb3JkZXI6IDEwO1xuICBvcmRlcjogMTA7XG59XG5cbi5vcmRlci0xMSB7XG4gIC1tcy1mbGV4LW9yZGVyOiAxMTtcbiAgb3JkZXI6IDExO1xufVxuXG4ub3JkZXItMTIge1xuICAtbXMtZmxleC1vcmRlcjogMTI7XG4gIG9yZGVyOiAxMjtcbn1cblxuLm9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzJTtcbn1cblxuLm9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NyU7XG59XG5cbi5vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7XG59XG5cbi5vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMlO1xufVxuXG4ub2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY2NjY3JTtcbn1cblxuLm9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTtcbn1cblxuLm9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMyU7XG59XG5cbi5vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjclO1xufVxuXG4ub2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlO1xufVxuXG4ub2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMyU7XG59XG5cbi5vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjY3JTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5jb2wtc20ge1xuICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAwO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgLW1zLWZsZXgtcG9zaXRpdmU6IDE7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLXNtLWF1dG8ge1xuICAgIC1tcy1mbGV4OiAwIDAgYXV0bztcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbC1zbS0xIHtcbiAgICAtbXMtZmxleDogMCAwIDguMzMzMzMzJTtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tMiB7XG4gICAgLW1zLWZsZXg6IDAgMCAxNi42NjY2NjclO1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTMge1xuICAgIC1tcy1mbGV4OiAwIDAgMjUlO1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgLmNvbC1zbS00IHtcbiAgICAtbXMtZmxleDogMCAwIDMzLjMzMzMzMyU7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tNSB7XG4gICAgLW1zLWZsZXg6IDAgMCA0MS42NjY2NjclO1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTYge1xuICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLmNvbC1zbS03IHtcbiAgICAtbXMtZmxleDogMCAwIDU4LjMzMzMzMyU7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tOCB7XG4gICAgLW1zLWZsZXg6IDAgMCA2Ni42NjY2NjclO1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTkge1xuICAgIC1tcy1mbGV4OiAwIDAgNzUlO1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cbiAgLmNvbC1zbS0xMCB7XG4gICAgLW1zLWZsZXg6IDAgMCA4My4zMzMzMzMlO1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMzJTtcbiAgfVxuICAuY29sLXNtLTExIHtcbiAgICAtbXMtZmxleDogMCAwIDkxLjY2NjY2NyU7XG4gICAgZmxleDogMCAwIDkxLjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NjclO1xuICB9XG4gIC5jb2wtc20tMTIge1xuICAgIC1tcy1mbGV4OiAwIDAgMTAwJTtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm9yZGVyLXNtLWZpcnN0IHtcbiAgICAtbXMtZmxleC1vcmRlcjogLTE7XG4gICAgb3JkZXI6IC0xO1xuICB9XG4gIC5vcmRlci1zbS1sYXN0IHtcbiAgICAtbXMtZmxleC1vcmRlcjogMTM7XG4gICAgb3JkZXI6IDEzO1xuICB9XG4gIC5vcmRlci1zbS0wIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMDtcbiAgICBvcmRlcjogMDtcbiAgfVxuICAub3JkZXItc20tMSB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDE7XG4gICAgb3JkZXI6IDE7XG4gIH1cbiAgLm9yZGVyLXNtLTIge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAyO1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIC5vcmRlci1zbS0zIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMztcbiAgICBvcmRlcjogMztcbiAgfVxuICAub3JkZXItc20tNCB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDQ7XG4gICAgb3JkZXI6IDQ7XG4gIH1cbiAgLm9yZGVyLXNtLTUge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA1O1xuICAgIG9yZGVyOiA1O1xuICB9XG4gIC5vcmRlci1zbS02IHtcbiAgICAtbXMtZmxleC1vcmRlcjogNjtcbiAgICBvcmRlcjogNjtcbiAgfVxuICAub3JkZXItc20tNyB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDc7XG4gICAgb3JkZXI6IDc7XG4gIH1cbiAgLm9yZGVyLXNtLTgge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA4O1xuICAgIG9yZGVyOiA4O1xuICB9XG4gIC5vcmRlci1zbS05IHtcbiAgICAtbXMtZmxleC1vcmRlcjogOTtcbiAgICBvcmRlcjogOTtcbiAgfVxuICAub3JkZXItc20tMTAge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAxMDtcbiAgICBvcmRlcjogMTA7XG4gIH1cbiAgLm9yZGVyLXNtLTExIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMTE7XG4gICAgb3JkZXI6IDExO1xuICB9XG4gIC5vcmRlci1zbS0xMiB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDEyO1xuICAgIG9yZGVyOiAxMjtcbiAgfVxuICAub2Zmc2V0LXNtLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5vZmZzZXQtc20tMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LXNtLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjclO1xuICB9XG4gIC5vZmZzZXQtc20tMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAub2Zmc2V0LXNtLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtc20tNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NyU7XG4gIH1cbiAgLm9mZnNldC1zbS02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC5vZmZzZXQtc20tNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC1zbS04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LXNtLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLm9mZnNldC1zbS0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC1zbS0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NyU7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb2wtbWQge1xuICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAwO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgLW1zLWZsZXgtcG9zaXRpdmU6IDE7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLW1kLWF1dG8ge1xuICAgIC1tcy1mbGV4OiAwIDAgYXV0bztcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbC1tZC0xIHtcbiAgICAtbXMtZmxleDogMCAwIDguMzMzMzMzJTtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMzMlO1xuICB9XG4gIC5jb2wtbWQtMiB7XG4gICAgLW1zLWZsZXg6IDAgMCAxNi42NjY2NjclO1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLTMge1xuICAgIC1tcy1mbGV4OiAwIDAgMjUlO1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgLmNvbC1tZC00IHtcbiAgICAtbXMtZmxleDogMCAwIDMzLjMzMzMzMyU7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMlO1xuICB9XG4gIC5jb2wtbWQtNSB7XG4gICAgLW1zLWZsZXg6IDAgMCA0MS42NjY2NjclO1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLTYge1xuICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLmNvbC1tZC03IHtcbiAgICAtbXMtZmxleDogMCAwIDU4LjMzMzMzMyU7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMzMlO1xuICB9XG4gIC5jb2wtbWQtOCB7XG4gICAgLW1zLWZsZXg6IDAgMCA2Ni42NjY2NjclO1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLTkge1xuICAgIC1tcy1mbGV4OiAwIDAgNzUlO1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cbiAgLmNvbC1tZC0xMCB7XG4gICAgLW1zLWZsZXg6IDAgMCA4My4zMzMzMzMlO1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLTExIHtcbiAgICAtbXMtZmxleDogMCAwIDkxLjY2NjY2NyU7XG4gICAgZmxleDogMCAwIDkxLjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtMTIge1xuICAgIC1tcy1mbGV4OiAwIDAgMTAwJTtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm9yZGVyLW1kLWZpcnN0IHtcbiAgICAtbXMtZmxleC1vcmRlcjogLTE7XG4gICAgb3JkZXI6IC0xO1xuICB9XG4gIC5vcmRlci1tZC1sYXN0IHtcbiAgICAtbXMtZmxleC1vcmRlcjogMTM7XG4gICAgb3JkZXI6IDEzO1xuICB9XG4gIC5vcmRlci1tZC0wIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMDtcbiAgICBvcmRlcjogMDtcbiAgfVxuICAub3JkZXItbWQtMSB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDE7XG4gICAgb3JkZXI6IDE7XG4gIH1cbiAgLm9yZGVyLW1kLTIge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAyO1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIC5vcmRlci1tZC0zIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMztcbiAgICBvcmRlcjogMztcbiAgfVxuICAub3JkZXItbWQtNCB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDQ7XG4gICAgb3JkZXI6IDQ7XG4gIH1cbiAgLm9yZGVyLW1kLTUge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA1O1xuICAgIG9yZGVyOiA1O1xuICB9XG4gIC5vcmRlci1tZC02IHtcbiAgICAtbXMtZmxleC1vcmRlcjogNjtcbiAgICBvcmRlcjogNjtcbiAgfVxuICAub3JkZXItbWQtNyB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDc7XG4gICAgb3JkZXI6IDc7XG4gIH1cbiAgLm9yZGVyLW1kLTgge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA4O1xuICAgIG9yZGVyOiA4O1xuICB9XG4gIC5vcmRlci1tZC05IHtcbiAgICAtbXMtZmxleC1vcmRlcjogOTtcbiAgICBvcmRlcjogOTtcbiAgfVxuICAub3JkZXItbWQtMTAge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAxMDtcbiAgICBvcmRlcjogMTA7XG4gIH1cbiAgLm9yZGVyLW1kLTExIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMTE7XG4gICAgb3JkZXI6IDExO1xuICB9XG4gIC5vcmRlci1tZC0xMiB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDEyO1xuICAgIG9yZGVyOiAxMjtcbiAgfVxuICAub2Zmc2V0LW1kLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5vZmZzZXQtbWQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LW1kLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjclO1xuICB9XG4gIC5vZmZzZXQtbWQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAub2Zmc2V0LW1kLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtbWQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NyU7XG4gIH1cbiAgLm9mZnNldC1tZC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC5vZmZzZXQtbWQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC1tZC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LW1kLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLm9mZnNldC1tZC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC1tZC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NyU7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jb2wtbGcge1xuICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAwO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgLW1zLWZsZXgtcG9zaXRpdmU6IDE7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLWxnLWF1dG8ge1xuICAgIC1tcy1mbGV4OiAwIDAgYXV0bztcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbC1sZy0xIHtcbiAgICAtbXMtZmxleDogMCAwIDguMzMzMzMzJTtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctMiB7XG4gICAgLW1zLWZsZXg6IDAgMCAxNi42NjY2NjclO1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLTMge1xuICAgIC1tcy1mbGV4OiAwIDAgMjUlO1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgLmNvbC1sZy00IHtcbiAgICAtbXMtZmxleDogMCAwIDMzLjMzMzMzMyU7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctNSB7XG4gICAgLW1zLWZsZXg6IDAgMCA0MS42NjY2NjclO1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLTYge1xuICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLmNvbC1sZy03IHtcbiAgICAtbXMtZmxleDogMCAwIDU4LjMzMzMzMyU7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctOCB7XG4gICAgLW1zLWZsZXg6IDAgMCA2Ni42NjY2NjclO1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLTkge1xuICAgIC1tcy1mbGV4OiAwIDAgNzUlO1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cbiAgLmNvbC1sZy0xMCB7XG4gICAgLW1zLWZsZXg6IDAgMCA4My4zMzMzMzMlO1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLTExIHtcbiAgICAtbXMtZmxleDogMCAwIDkxLjY2NjY2NyU7XG4gICAgZmxleDogMCAwIDkxLjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NjclO1xuICB9XG4gIC5jb2wtbGctMTIge1xuICAgIC1tcy1mbGV4OiAwIDAgMTAwJTtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm9yZGVyLWxnLWZpcnN0IHtcbiAgICAtbXMtZmxleC1vcmRlcjogLTE7XG4gICAgb3JkZXI6IC0xO1xuICB9XG4gIC5vcmRlci1sZy1sYXN0IHtcbiAgICAtbXMtZmxleC1vcmRlcjogMTM7XG4gICAgb3JkZXI6IDEzO1xuICB9XG4gIC5vcmRlci1sZy0wIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMDtcbiAgICBvcmRlcjogMDtcbiAgfVxuICAub3JkZXItbGctMSB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDE7XG4gICAgb3JkZXI6IDE7XG4gIH1cbiAgLm9yZGVyLWxnLTIge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAyO1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIC5vcmRlci1sZy0zIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMztcbiAgICBvcmRlcjogMztcbiAgfVxuICAub3JkZXItbGctNCB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDQ7XG4gICAgb3JkZXI6IDQ7XG4gIH1cbiAgLm9yZGVyLWxnLTUge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA1O1xuICAgIG9yZGVyOiA1O1xuICB9XG4gIC5vcmRlci1sZy02IHtcbiAgICAtbXMtZmxleC1vcmRlcjogNjtcbiAgICBvcmRlcjogNjtcbiAgfVxuICAub3JkZXItbGctNyB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDc7XG4gICAgb3JkZXI6IDc7XG4gIH1cbiAgLm9yZGVyLWxnLTgge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA4O1xuICAgIG9yZGVyOiA4O1xuICB9XG4gIC5vcmRlci1sZy05IHtcbiAgICAtbXMtZmxleC1vcmRlcjogOTtcbiAgICBvcmRlcjogOTtcbiAgfVxuICAub3JkZXItbGctMTAge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAxMDtcbiAgICBvcmRlcjogMTA7XG4gIH1cbiAgLm9yZGVyLWxnLTExIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMTE7XG4gICAgb3JkZXI6IDExO1xuICB9XG4gIC5vcmRlci1sZy0xMiB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDEyO1xuICAgIG9yZGVyOiAxMjtcbiAgfVxuICAub2Zmc2V0LWxnLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5vZmZzZXQtbGctMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LWxnLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjclO1xuICB9XG4gIC5vZmZzZXQtbGctMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAub2Zmc2V0LWxnLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtbGctNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NyU7XG4gIH1cbiAgLm9mZnNldC1sZy02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC5vZmZzZXQtbGctNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC1sZy04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LWxnLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLm9mZnNldC1sZy0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC1sZy0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NyU7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuY29sLXhsIHtcbiAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMDtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIC1tcy1mbGV4LXBvc2l0aXZlOiAxO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbC14bC1hdXRvIHtcbiAgICAtbXMtZmxleDogMCAwIGF1dG87XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5jb2wteGwtMSB7XG4gICAgLW1zLWZsZXg6IDAgMCA4LjMzMzMzMyU7XG4gICAgZmxleDogMCAwIDguMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzJTtcbiAgfVxuICAuY29sLXhsLTIge1xuICAgIC1tcy1mbGV4OiAwIDAgMTYuNjY2NjY3JTtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NyU7XG4gIH1cbiAgLmNvbC14bC0zIHtcbiAgICAtbXMtZmxleDogMCAwIDI1JTtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIC5jb2wteGwtNCB7XG4gICAgLW1zLWZsZXg6IDAgMCAzMy4zMzMzMzMlO1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzJTtcbiAgfVxuICAuY29sLXhsLTUge1xuICAgIC1tcy1mbGV4OiAwIDAgNDEuNjY2NjY3JTtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NyU7XG4gIH1cbiAgLmNvbC14bC02IHtcbiAgICAtbXMtZmxleDogMCAwIDUwJTtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIC5jb2wteGwtNyB7XG4gICAgLW1zLWZsZXg6IDAgMCA1OC4zMzMzMzMlO1xuICAgIGZsZXg6IDAgMCA1OC4zMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMzJTtcbiAgfVxuICAuY29sLXhsLTgge1xuICAgIC1tcy1mbGV4OiAwIDAgNjYuNjY2NjY3JTtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY2NyU7XG4gIH1cbiAgLmNvbC14bC05IHtcbiAgICAtbXMtZmxleDogMCAwIDc1JTtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG4gIC5jb2wteGwtMTAge1xuICAgIC1tcy1mbGV4OiAwIDAgODMuMzMzMzMzJTtcbiAgICBmbGV4OiAwIDAgODMuMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMyU7XG4gIH1cbiAgLmNvbC14bC0xMSB7XG4gICAgLW1zLWZsZXg6IDAgMCA5MS42NjY2NjclO1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY3JTtcbiAgfVxuICAuY29sLXhsLTEyIHtcbiAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5vcmRlci14bC1maXJzdCB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IC0xO1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuICAub3JkZXIteGwtbGFzdCB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDEzO1xuICAgIG9yZGVyOiAxMztcbiAgfVxuICAub3JkZXIteGwtMCB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDA7XG4gICAgb3JkZXI6IDA7XG4gIH1cbiAgLm9yZGVyLXhsLTEge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAxO1xuICAgIG9yZGVyOiAxO1xuICB9XG4gIC5vcmRlci14bC0yIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMjtcbiAgICBvcmRlcjogMjtcbiAgfVxuICAub3JkZXIteGwtMyB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDM7XG4gICAgb3JkZXI6IDM7XG4gIH1cbiAgLm9yZGVyLXhsLTQge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA0O1xuICAgIG9yZGVyOiA0O1xuICB9XG4gIC5vcmRlci14bC01IHtcbiAgICAtbXMtZmxleC1vcmRlcjogNTtcbiAgICBvcmRlcjogNTtcbiAgfVxuICAub3JkZXIteGwtNiB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDY7XG4gICAgb3JkZXI6IDY7XG4gIH1cbiAgLm9yZGVyLXhsLTcge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA3O1xuICAgIG9yZGVyOiA3O1xuICB9XG4gIC5vcmRlci14bC04IHtcbiAgICAtbXMtZmxleC1vcmRlcjogODtcbiAgICBvcmRlcjogODtcbiAgfVxuICAub3JkZXIteGwtOSB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDk7XG4gICAgb3JkZXI6IDk7XG4gIH1cbiAgLm9yZGVyLXhsLTEwIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMTA7XG4gICAgb3JkZXI6IDEwO1xuICB9XG4gIC5vcmRlci14bC0xMSB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDExO1xuICAgIG9yZGVyOiAxMTtcbiAgfVxuICAub3JkZXIteGwtMTIge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAxMjtcbiAgICBvcmRlcjogMTI7XG4gIH1cbiAgLm9mZnNldC14bC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAub2Zmc2V0LXhsLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC14bC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LXhsLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLm9mZnNldC14bC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LXhsLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjclO1xuICB9XG4gIC5vZmZzZXQteGwtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAub2Zmc2V0LXhsLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQteGwtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NyU7XG4gIH1cbiAgLm9mZnNldC14bC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5vZmZzZXQteGwtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQteGwtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjclO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLmNvbC14eGwge1xuICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAwO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgLW1zLWZsZXgtcG9zaXRpdmU6IDE7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLXh4bC1hdXRvIHtcbiAgICAtbXMtZmxleDogMCAwIGF1dG87XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5jb2wteHhsLTEge1xuICAgIC1tcy1mbGV4OiAwIDAgOC4zMzMzMzMlO1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzMyU7XG4gIH1cbiAgLmNvbC14eGwtMiB7XG4gICAgLW1zLWZsZXg6IDAgMCAxNi42NjY2NjclO1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY3JTtcbiAgfVxuICAuY29sLXh4bC0zIHtcbiAgICAtbXMtZmxleDogMCAwIDI1JTtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIC5jb2wteHhsLTQge1xuICAgIC1tcy1mbGV4OiAwIDAgMzMuMzMzMzMzJTtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMyU7XG4gIH1cbiAgLmNvbC14eGwtNSB7XG4gICAgLW1zLWZsZXg6IDAgMCA0MS42NjY2NjclO1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjY3JTtcbiAgfVxuICAuY29sLXh4bC02IHtcbiAgICAtbXMtZmxleDogMCAwIDUwJTtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIC5jb2wteHhsLTcge1xuICAgIC1tcy1mbGV4OiAwIDAgNTguMzMzMzMzJTtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzMyU7XG4gIH1cbiAgLmNvbC14eGwtOCB7XG4gICAgLW1zLWZsZXg6IDAgMCA2Ni42NjY2NjclO1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjY3JTtcbiAgfVxuICAuY29sLXh4bC05IHtcbiAgICAtbXMtZmxleDogMCAwIDc1JTtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG4gIC5jb2wteHhsLTEwIHtcbiAgICAtbXMtZmxleDogMCAwIDgzLjMzMzMzMyU7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMzMlO1xuICB9XG4gIC5jb2wteHhsLTExIHtcbiAgICAtbXMtZmxleDogMCAwIDkxLjY2NjY2NyU7XG4gICAgZmxleDogMCAwIDkxLjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NjclO1xuICB9XG4gIC5jb2wteHhsLTEyIHtcbiAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5vcmRlci14eGwtZmlyc3Qge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAtMTtcbiAgICBvcmRlcjogLTE7XG4gIH1cbiAgLm9yZGVyLXh4bC1sYXN0IHtcbiAgICAtbXMtZmxleC1vcmRlcjogMTM7XG4gICAgb3JkZXI6IDEzO1xuICB9XG4gIC5vcmRlci14eGwtMCB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDA7XG4gICAgb3JkZXI6IDA7XG4gIH1cbiAgLm9yZGVyLXh4bC0xIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMTtcbiAgICBvcmRlcjogMTtcbiAgfVxuICAub3JkZXIteHhsLTIge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAyO1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIC5vcmRlci14eGwtMyB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDM7XG4gICAgb3JkZXI6IDM7XG4gIH1cbiAgLm9yZGVyLXh4bC00IHtcbiAgICAtbXMtZmxleC1vcmRlcjogNDtcbiAgICBvcmRlcjogNDtcbiAgfVxuICAub3JkZXIteHhsLTUge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA1O1xuICAgIG9yZGVyOiA1O1xuICB9XG4gIC5vcmRlci14eGwtNiB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDY7XG4gICAgb3JkZXI6IDY7XG4gIH1cbiAgLm9yZGVyLXh4bC03IHtcbiAgICAtbXMtZmxleC1vcmRlcjogNztcbiAgICBvcmRlcjogNztcbiAgfVxuICAub3JkZXIteHhsLTgge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA4O1xuICAgIG9yZGVyOiA4O1xuICB9XG4gIC5vcmRlci14eGwtOSB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDk7XG4gICAgb3JkZXI6IDk7XG4gIH1cbiAgLm9yZGVyLXh4bC0xMCB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDEwO1xuICAgIG9yZGVyOiAxMDtcbiAgfVxuICAub3JkZXIteHhsLTExIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMTE7XG4gICAgb3JkZXI6IDExO1xuICB9XG4gIC5vcmRlci14eGwtMTIge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAxMjtcbiAgICBvcmRlcjogMTI7XG4gIH1cbiAgLm9mZnNldC14eGwtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLm9mZnNldC14eGwtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LXh4bC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LXh4bC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC5vZmZzZXQteHhsLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQteHhsLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjclO1xuICB9XG4gIC5vZmZzZXQteHhsLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLm9mZnNldC14eGwtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC14eGwtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NyU7XG4gIH1cbiAgLm9mZnNldC14eGwtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAub2Zmc2V0LXh4bC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC14eGwtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjclO1xuICB9XG59XG5cbi5mbGV4LXJvdyB7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtY29sdW1uIHtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1yb3ctcmV2ZXJzZSB7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LWNvbHVtbi1yZXZlcnNlIHtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtd3JhcCB7XG4gIC1tcy1mbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcbiAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LW5vd3JhcCB7XG4gIC1tcy1mbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xuICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xufVxuXG4uZmxleC13cmFwLXJldmVyc2Uge1xuICAtbXMtZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcbiAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtZmlsbCB7XG4gIC1tcy1mbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xuICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1ncm93LTAge1xuICAtbXMtZmxleC1wb3NpdGl2ZTogMCAhaW1wb3J0YW50O1xuICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtZ3Jvdy0xIHtcbiAgLW1zLWZsZXgtcG9zaXRpdmU6IDEgIWltcG9ydGFudDtcbiAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LXNocmluay0wIHtcbiAgLW1zLWZsZXgtbmVnYXRpdmU6IDAgIWltcG9ydGFudDtcbiAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtc2hyaW5rLTEge1xuICAtbXMtZmxleC1uZWdhdGl2ZTogMSAhaW1wb3J0YW50O1xuICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xufVxuXG4uanVzdGlmeS1jb250ZW50LXN0YXJ0IHtcbiAgLW1zLWZsZXgtcGFjazogc3RhcnQgIWltcG9ydGFudDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG59XG5cbi5qdXN0aWZ5LWNvbnRlbnQtZW5kIHtcbiAgLW1zLWZsZXgtcGFjazogZW5kICFpbXBvcnRhbnQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbn1cblxuLmp1c3RpZnktY29udGVudC1jZW50ZXIge1xuICAtbXMtZmxleC1wYWNrOiBjZW50ZXIgIWltcG9ydGFudDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLmp1c3RpZnktY29udGVudC1iZXR3ZWVuIHtcbiAgLW1zLWZsZXgtcGFjazoganVzdGlmeSAhaW1wb3J0YW50O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbn1cblxuLmp1c3RpZnktY29udGVudC1hcm91bmQge1xuICAtbXMtZmxleC1wYWNrOiBkaXN0cmlidXRlICFpbXBvcnRhbnQ7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1pdGVtcy1zdGFydCB7XG4gIC1tcy1mbGV4LWFsaWduOiBzdGFydCAhaW1wb3J0YW50O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24taXRlbXMtZW5kIHtcbiAgLW1zLWZsZXgtYWxpZ246IGVuZCAhaW1wb3J0YW50O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWl0ZW1zLWNlbnRlciB7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24taXRlbXMtYmFzZWxpbmUge1xuICAtbXMtZmxleC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1pdGVtcy1zdHJldGNoIHtcbiAgLW1zLWZsZXgtYWxpZ246IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWNvbnRlbnQtc3RhcnQge1xuICAtbXMtZmxleC1saW5lLXBhY2s6IHN0YXJ0ICFpbXBvcnRhbnQ7XG4gIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWNvbnRlbnQtZW5kIHtcbiAgLW1zLWZsZXgtbGluZS1wYWNrOiBlbmQgIWltcG9ydGFudDtcbiAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLWNvbnRlbnQtY2VudGVyIHtcbiAgLW1zLWZsZXgtbGluZS1wYWNrOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1jb250ZW50LWJldHdlZW4ge1xuICAtbXMtZmxleC1saW5lLXBhY2s6IGp1c3RpZnkgIWltcG9ydGFudDtcbiAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tY29udGVudC1hcm91bmQge1xuICAtbXMtZmxleC1saW5lLXBhY2s6IGRpc3RyaWJ1dGUgIWltcG9ydGFudDtcbiAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1jb250ZW50LXN0cmV0Y2gge1xuICAtbXMtZmxleC1saW5lLXBhY2s6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tc2VsZi1hdXRvIHtcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogYXV0byAhaW1wb3J0YW50O1xuICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1zZWxmLXN0YXJ0IHtcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogc3RhcnQgIWltcG9ydGFudDtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tc2VsZi1lbmQge1xuICAtbXMtZmxleC1pdGVtLWFsaWduOiBlbmQgIWltcG9ydGFudDtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcbn1cblxuLmFsaWduLXNlbGYtY2VudGVyIHtcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ24tc2VsZi1iYXNlbGluZSB7XG4gIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG59XG5cbi5hbGlnbi1zZWxmLXN0cmV0Y2gge1xuICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5mbGV4LXNtLXJvdyB7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtc20tY29sdW1uIHtcbiAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1zbS1yb3ctcmV2ZXJzZSB7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXNtLWNvbHVtbi1yZXZlcnNlIHtcbiAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtc20td3JhcCB7XG4gICAgLW1zLWZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xuICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXNtLW5vd3JhcCB7XG4gICAgLW1zLWZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1zbS13cmFwLXJldmVyc2Uge1xuICAgIC1tcy1mbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50O1xuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtc20tZmlsbCB7XG4gICAgLW1zLWZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1zbS1ncm93LTAge1xuICAgIC1tcy1mbGV4LXBvc2l0aXZlOiAwICFpbXBvcnRhbnQ7XG4gICAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtc20tZ3Jvdy0xIHtcbiAgICAtbXMtZmxleC1wb3NpdGl2ZTogMSAhaW1wb3J0YW50O1xuICAgIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXNtLXNocmluay0wIHtcbiAgICAtbXMtZmxleC1uZWdhdGl2ZTogMCAhaW1wb3J0YW50O1xuICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtc20tc2hyaW5rLTEge1xuICAgIC1tcy1mbGV4LW5lZ2F0aXZlOiAxICFpbXBvcnRhbnQ7XG4gICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDtcbiAgfVxuICAuanVzdGlmeS1jb250ZW50LXNtLXN0YXJ0IHtcbiAgICAtbXMtZmxleC1wYWNrOiBzdGFydCAhaW1wb3J0YW50O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tZW5kIHtcbiAgICAtbXMtZmxleC1wYWNrOiBlbmQgIWltcG9ydGFudDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1zbS1jZW50ZXIge1xuICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1zbS1iZXR3ZWVuIHtcbiAgICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1zbS1hcm91bmQge1xuICAgIC1tcy1mbGV4LXBhY2s6IGRpc3RyaWJ1dGUgIWltcG9ydGFudDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy1zbS1zdGFydCB7XG4gICAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0ICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMtc20tZW5kIHtcbiAgICAtbXMtZmxleC1hbGlnbjogZW5kICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLXNtLWNlbnRlciB7XG4gICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMtc20tYmFzZWxpbmUge1xuICAgIC1tcy1mbGV4LWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy1zbS1zdHJldGNoIHtcbiAgICAtbXMtZmxleC1hbGlnbjogc3RyZXRjaCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtc20tc3RhcnQge1xuICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RhcnQgIWltcG9ydGFudDtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtc20tZW5kIHtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGVuZCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtc20tY2VudGVyIHtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LXNtLWJldHdlZW4ge1xuICAgIC1tcy1mbGV4LWxpbmUtcGFjazoganVzdGlmeSAhaW1wb3J0YW50O1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC1zbS1hcm91bmQge1xuICAgIC1tcy1mbGV4LWxpbmUtcGFjazogZGlzdHJpYnV0ZSAhaW1wb3J0YW50O1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LXNtLXN0cmV0Y2gge1xuICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RyZXRjaCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1zbS1hdXRvIHtcbiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLXNtLXN0YXJ0IHtcbiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdGFydCAhaW1wb3J0YW50O1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1zbS1lbmQge1xuICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGVuZCAhaW1wb3J0YW50O1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYtc20tY2VudGVyIHtcbiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1zbS1iYXNlbGluZSB7XG4gICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLXNtLXN0cmV0Y2gge1xuICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mbGV4LW1kLXJvdyB7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbWQtY29sdW1uIHtcbiAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1tZC1yb3ctcmV2ZXJzZSB7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LW1kLWNvbHVtbi1yZXZlcnNlIHtcbiAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbWQtd3JhcCB7XG4gICAgLW1zLWZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xuICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LW1kLW5vd3JhcCB7XG4gICAgLW1zLWZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1tZC13cmFwLXJldmVyc2Uge1xuICAgIC1tcy1mbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50O1xuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbWQtZmlsbCB7XG4gICAgLW1zLWZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1tZC1ncm93LTAge1xuICAgIC1tcy1mbGV4LXBvc2l0aXZlOiAwICFpbXBvcnRhbnQ7XG4gICAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbWQtZ3Jvdy0xIHtcbiAgICAtbXMtZmxleC1wb3NpdGl2ZTogMSAhaW1wb3J0YW50O1xuICAgIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LW1kLXNocmluay0wIHtcbiAgICAtbXMtZmxleC1uZWdhdGl2ZTogMCAhaW1wb3J0YW50O1xuICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbWQtc2hyaW5rLTEge1xuICAgIC1tcy1mbGV4LW5lZ2F0aXZlOiAxICFpbXBvcnRhbnQ7XG4gICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDtcbiAgfVxuICAuanVzdGlmeS1jb250ZW50LW1kLXN0YXJ0IHtcbiAgICAtbXMtZmxleC1wYWNrOiBzdGFydCAhaW1wb3J0YW50O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtZW5kIHtcbiAgICAtbXMtZmxleC1wYWNrOiBlbmQgIWltcG9ydGFudDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1tZC1jZW50ZXIge1xuICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1tZC1iZXR3ZWVuIHtcbiAgICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1tZC1hcm91bmQge1xuICAgIC1tcy1mbGV4LXBhY2s6IGRpc3RyaWJ1dGUgIWltcG9ydGFudDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy1tZC1zdGFydCB7XG4gICAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0ICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMtbWQtZW5kIHtcbiAgICAtbXMtZmxleC1hbGlnbjogZW5kICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLW1kLWNlbnRlciB7XG4gICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMtbWQtYmFzZWxpbmUge1xuICAgIC1tcy1mbGV4LWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy1tZC1zdHJldGNoIHtcbiAgICAtbXMtZmxleC1hbGlnbjogc3RyZXRjaCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtbWQtc3RhcnQge1xuICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RhcnQgIWltcG9ydGFudDtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtbWQtZW5kIHtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGVuZCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtbWQtY2VudGVyIHtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LW1kLWJldHdlZW4ge1xuICAgIC1tcy1mbGV4LWxpbmUtcGFjazoganVzdGlmeSAhaW1wb3J0YW50O1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC1tZC1hcm91bmQge1xuICAgIC1tcy1mbGV4LWxpbmUtcGFjazogZGlzdHJpYnV0ZSAhaW1wb3J0YW50O1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LW1kLXN0cmV0Y2gge1xuICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RyZXRjaCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1tZC1hdXRvIHtcbiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLW1kLXN0YXJ0IHtcbiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdGFydCAhaW1wb3J0YW50O1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1tZC1lbmQge1xuICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGVuZCAhaW1wb3J0YW50O1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYtbWQtY2VudGVyIHtcbiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1tZC1iYXNlbGluZSB7XG4gICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLW1kLXN0cmV0Y2gge1xuICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mbGV4LWxnLXJvdyB7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbGctY29sdW1uIHtcbiAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1sZy1yb3ctcmV2ZXJzZSB7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LWxnLWNvbHVtbi1yZXZlcnNlIHtcbiAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbGctd3JhcCB7XG4gICAgLW1zLWZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xuICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LWxnLW5vd3JhcCB7XG4gICAgLW1zLWZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1sZy13cmFwLXJldmVyc2Uge1xuICAgIC1tcy1mbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50O1xuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbGctZmlsbCB7XG4gICAgLW1zLWZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC1sZy1ncm93LTAge1xuICAgIC1tcy1mbGV4LXBvc2l0aXZlOiAwICFpbXBvcnRhbnQ7XG4gICAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbGctZ3Jvdy0xIHtcbiAgICAtbXMtZmxleC1wb3NpdGl2ZTogMSAhaW1wb3J0YW50O1xuICAgIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LWxnLXNocmluay0wIHtcbiAgICAtbXMtZmxleC1uZWdhdGl2ZTogMCAhaW1wb3J0YW50O1xuICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgtbGctc2hyaW5rLTEge1xuICAgIC1tcy1mbGV4LW5lZ2F0aXZlOiAxICFpbXBvcnRhbnQ7XG4gICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDtcbiAgfVxuICAuanVzdGlmeS1jb250ZW50LWxnLXN0YXJ0IHtcbiAgICAtbXMtZmxleC1wYWNrOiBzdGFydCAhaW1wb3J0YW50O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctZW5kIHtcbiAgICAtbXMtZmxleC1wYWNrOiBlbmQgIWltcG9ydGFudDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1sZy1jZW50ZXIge1xuICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1sZy1iZXR3ZWVuIHtcbiAgICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC1sZy1hcm91bmQge1xuICAgIC1tcy1mbGV4LXBhY2s6IGRpc3RyaWJ1dGUgIWltcG9ydGFudDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy1sZy1zdGFydCB7XG4gICAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0ICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMtbGctZW5kIHtcbiAgICAtbXMtZmxleC1hbGlnbjogZW5kICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLWxnLWNlbnRlciB7XG4gICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMtbGctYmFzZWxpbmUge1xuICAgIC1tcy1mbGV4LWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy1sZy1zdHJldGNoIHtcbiAgICAtbXMtZmxleC1hbGlnbjogc3RyZXRjaCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtbGctc3RhcnQge1xuICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RhcnQgIWltcG9ydGFudDtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtbGctZW5kIHtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGVuZCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQtbGctY2VudGVyIHtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LWxnLWJldHdlZW4ge1xuICAgIC1tcy1mbGV4LWxpbmUtcGFjazoganVzdGlmeSAhaW1wb3J0YW50O1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC1sZy1hcm91bmQge1xuICAgIC1tcy1mbGV4LWxpbmUtcGFjazogZGlzdHJpYnV0ZSAhaW1wb3J0YW50O1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LWxnLXN0cmV0Y2gge1xuICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RyZXRjaCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1sZy1hdXRvIHtcbiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLWxnLXN0YXJ0IHtcbiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdGFydCAhaW1wb3J0YW50O1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1sZy1lbmQge1xuICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGVuZCAhaW1wb3J0YW50O1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYtbGctY2VudGVyIHtcbiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi1sZy1iYXNlbGluZSB7XG4gICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLWxnLXN0cmV0Y2gge1xuICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZmxleC14bC1yb3cge1xuICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXhsLWNvbHVtbiB7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgteGwtcm93LXJldmVyc2Uge1xuICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC14bC1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXhsLXdyYXAge1xuICAgIC1tcy1mbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC14bC1ub3dyYXAge1xuICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgteGwtd3JhcC1yZXZlcnNlIHtcbiAgICAtbXMtZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcbiAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXhsLWZpbGwge1xuICAgIC1tcy1mbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZsZXgteGwtZ3Jvdy0wIHtcbiAgICAtbXMtZmxleC1wb3NpdGl2ZTogMCAhaW1wb3J0YW50O1xuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXhsLWdyb3ctMSB7XG4gICAgLW1zLWZsZXgtcG9zaXRpdmU6IDEgIWltcG9ydGFudDtcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcbiAgfVxuICAuZmxleC14bC1zaHJpbmstMCB7XG4gICAgLW1zLWZsZXgtbmVnYXRpdmU6IDAgIWltcG9ydGFudDtcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5mbGV4LXhsLXNocmluay0xIHtcbiAgICAtbXMtZmxleC1uZWdhdGl2ZTogMSAhaW1wb3J0YW50O1xuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmp1c3RpZnktY29udGVudC14bC1zdGFydCB7XG4gICAgLW1zLWZsZXgtcGFjazogc3RhcnQgIWltcG9ydGFudDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgfVxuICAuanVzdGlmeS1jb250ZW50LXhsLWVuZCB7XG4gICAgLW1zLWZsZXgtcGFjazogZW5kICFpbXBvcnRhbnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtY2VudGVyIHtcbiAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtYmV0d2VlbiB7XG4gICAgLW1zLWZsZXgtcGFjazoganVzdGlmeSAhaW1wb3J0YW50O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xuICB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtYXJvdW5kIHtcbiAgICAtbXMtZmxleC1wYWNrOiBkaXN0cmlidXRlICFpbXBvcnRhbnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMteGwtc3RhcnQge1xuICAgIC1tcy1mbGV4LWFsaWduOiBzdGFydCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLXhsLWVuZCB7XG4gICAgLW1zLWZsZXgtYWxpZ246IGVuZCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1pdGVtcy14bC1jZW50ZXIge1xuICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWl0ZW1zLXhsLWJhc2VsaW5lIHtcbiAgICAtbXMtZmxleC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24taXRlbXMteGwtc3RyZXRjaCB7XG4gICAgLW1zLWZsZXgtYWxpZ246IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LXhsLXN0YXJ0IHtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6IHN0YXJ0ICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LXhsLWVuZCB7XG4gICAgLW1zLWZsZXgtbGluZS1wYWNrOiBlbmQgIWltcG9ydGFudDtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1jb250ZW50LXhsLWNlbnRlciB7XG4gICAgLW1zLWZsZXgtbGluZS1wYWNrOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC14bC1iZXR3ZWVuIHtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGp1c3RpZnkgIWltcG9ydGFudDtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLWNvbnRlbnQteGwtYXJvdW5kIHtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGRpc3RyaWJ1dGUgIWltcG9ydGFudDtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tY29udGVudC14bC1zdHJldGNoIHtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6IHN0cmV0Y2ggIWltcG9ydGFudDtcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYteGwtYXV0byB7XG4gICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogYXV0byAhaW1wb3J0YW50O1xuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi14bC1zdGFydCB7XG4gICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogc3RhcnQgIWltcG9ydGFudDtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYteGwtZW5kIHtcbiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBlbmQgIWltcG9ydGFudDtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xuICB9XG4gIC5hbGlnbi1zZWxmLXhsLWNlbnRlciB7XG4gICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsaWduLXNlbGYteGwtYmFzZWxpbmUge1xuICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcbiAgfVxuICAuYWxpZ24tc2VsZi14bC1zdHJldGNoIHtcbiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdHJldGNoICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5tLTAge1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cblxuLm10LTAsXG4ubXktMCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cblxuLm1yLTAsXG4ubXgtMCB7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4ubWItMCxcbi5teS0wIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4ubWwtMCxcbi5teC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLnAtMCB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLnB0LTAsXG4ucHktMCB7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5wci0wLFxuLnB4LTAge1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5wYi0wLFxuLnB5LTAge1xuICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4ucGwtMCxcbi5weC0wIHtcbiAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tLWF1dG8ge1xuICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm10LWF1dG8sXG4ubXktYXV0byB7XG4gIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLm1yLWF1dG8sXG4ubXgtYXV0byB7XG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubWItYXV0byxcbi5teS1hdXRvIHtcbiAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubWwtYXV0byxcbi5teC1hdXRvIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5tLXNtLTAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1zbS0wLFxuICAubXktc20tMCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1zbS0wLFxuICAubXgtc20tMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXNtLTAsXG4gIC5teS1zbS0wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLXNtLTAsXG4gIC5teC1zbS0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wLXNtLTAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuICAucHQtc20tMCxcbiAgLnB5LXNtLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLXNtLTAsXG4gIC5weC1zbS0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBiLXNtLTAsXG4gIC5weS1zbS0wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wbC1zbS0wLFxuICAucHgtc20tMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tc20tYXV0byB7XG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LXNtLWF1dG8sXG4gIC5teS1zbS1hdXRvIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLXNtLWF1dG8sXG4gIC5teC1zbS1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAubWItc20tYXV0byxcbiAgLm15LXNtLWF1dG8ge1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAubWwtc20tYXV0byxcbiAgLm14LXNtLWF1dG8ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tLW1kLTAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1tZC0wLFxuICAubXktbWQtMCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1tZC0wLFxuICAubXgtbWQtMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLW1kLTAsXG4gIC5teS1tZC0wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLW1kLTAsXG4gIC5teC1tZC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wLW1kLTAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuICAucHQtbWQtMCxcbiAgLnB5LW1kLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLW1kLTAsXG4gIC5weC1tZC0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBiLW1kLTAsXG4gIC5weS1tZC0wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wbC1tZC0wLFxuICAucHgtbWQtMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tbWQtYXV0byB7XG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LW1kLWF1dG8sXG4gIC5teS1tZC1hdXRvIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLW1kLWF1dG8sXG4gIC5teC1tZC1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAubWItbWQtYXV0byxcbiAgLm15LW1kLWF1dG8ge1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAubWwtbWQtYXV0byxcbiAgLm14LW1kLWF1dG8ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tLWxnLTAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC1sZy0wLFxuICAubXktbGctMCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tci1sZy0wLFxuICAubXgtbGctMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLWxnLTAsXG4gIC5teS1sZy0wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLWxnLTAsXG4gIC5teC1sZy0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wLWxnLTAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuICAucHQtbGctMCxcbiAgLnB5LWxnLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByLWxnLTAsXG4gIC5weC1sZy0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBiLWxnLTAsXG4gIC5weS1sZy0wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wbC1sZy0wLFxuICAucHgtbGctMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm0tbGctYXV0byB7XG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm10LWxnLWF1dG8sXG4gIC5teS1sZy1hdXRvIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1yLWxnLWF1dG8sXG4gIC5teC1sZy1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAubWItbGctYXV0byxcbiAgLm15LWxnLWF1dG8ge1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAubWwtbGctYXV0byxcbiAgLm14LWxnLWF1dG8ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubS14bC0wIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuICAubXQteGwtMCxcbiAgLm15LXhsLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuICAubXIteGwtMCxcbiAgLm14LXhsLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tYi14bC0wLFxuICAubXkteGwtMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tbC14bC0wLFxuICAubXgteGwtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAucC14bC0wIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnB0LXhsLTAsXG4gIC5weS14bC0wIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wci14bC0wLFxuICAucHgteGwtMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wYi14bC0wLFxuICAucHkteGwtMCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuICAucGwteGwtMCxcbiAgLnB4LXhsLTAge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5tLXhsLWF1dG8ge1xuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5tdC14bC1hdXRvLFxuICAubXkteGwtYXV0byB7XG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5tci14bC1hdXRvLFxuICAubXgteGwtYXV0byB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1iLXhsLWF1dG8sXG4gIC5teS14bC1hdXRvIHtcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1sLXhsLWF1dG8sXG4gIC5teC14bC1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG59IiwiQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkFwYXggUmVndWxhclwiO1xuICBzcmM6IHVybCgnLi4vZm9udHMvT3B0aW1vLUFwYXgvQXBheC1SZWd1bGFyL0FwYXgtUmVndWxhci5lb3QnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICB1cmwoJy4uL2ZvbnRzL09wdGltby1BcGF4L0FwYXgtUmVndWxhci9BcGF4LVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICB1cmwoJy4uL2ZvbnRzL09wdGltby1BcGF4L0FwYXgtUmVndWxhci9BcGF4LVJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgdXJsKCcuLi9mb250cy9PcHRpbW8tQXBheC9BcGF4LVJlZ3VsYXIvQXBheC1SZWd1bGFyLm90ZicpIGZvcm1hdCgnb3BlbnR5cGUnKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiQXBheCBCb2xkXCI7XG4gIHNyYzogdXJsKCcuLi9mb250cy9PcHRpbW8tQXBheC9BcGF4LUJvbGQvQXBheC1Cb2xkLmVvdCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgIHVybCgnLi4vZm9udHMvT3B0aW1vLUFwYXgvQXBheC1Cb2xkL0FwYXgtQm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgIHVybCgnLi4vZm9udHMvT3B0aW1vLUFwYXgvQXBheC1Cb2xkL0FwYXgtQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICB1cmwoJy4uL2ZvbnRzL09wdGltby1BcGF4L0FwYXgtQm9sZC9BcGF4LUJvbGQub3RmJykgZm9ybWF0KCdvcGVudHlwZScpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBib2xkO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gR0VORVJBTCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuKiB7XG4gICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbn1cblxuKjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIE5PIEZJUkVGT1ggQ09NUEFUSUJJTElUSUVTICovXG5cbmh0bWwsIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuaW1nIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG5hW2hyZWZePVwibWFpbHRvOlwiXSB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xufVxuXG4ucGFkZGluZy14cywgLnBhZGRpbmctcywgLnBhZGRpbmctbSwgLnBhZGRpbmctbCwgLnBhZGRpbmcteGwge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4ucGFkZGluZy14cyB7XG4gICAgaGVpZ2h0OiAxNXB4O1xufVxuXG4ucGFkZGluZy1zIHtcbiAgICBoZWlnaHQ6IDMwcHg7XG59XG5cbi5wYWRkaW5nLW0ge1xuICAgIGhlaWdodDogNTBweDtcbn1cblxuLnBhZGRpbmctbCB7XG4gICAgaGVpZ2h0OiAxMDBweDtcbn1cblxuLnBhZGRpbmcteGwge1xuICAgIGhlaWdodDogMTUwcHg7XG59XG5cbi5oLWF1dG8ge1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG5ociB7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogNzVweCBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbnVsLCB1bCBsaSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxudWwge1xuXG4gICAgJi51bC1kaXNjIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxOHB4O1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IGRpc2M7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnVsLXRhYmxlIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE2cHggMCAxMnB4O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5vbCB7XG4gICAgY291bnRlci1yZXNldDogbGk7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAqbGlzdC1zdHlsZTogZGVjaW1hbDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGxpIHtcbiAgICAgICAgcGFkZGluZzogMTJweCAwIDEycHggNjBweDtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogY291bnRlcihsaSk7XG4gICAgICAgICAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IGxpO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtNjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzhweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbnZpZGVvLCBoZWFkZXIsIGFzaWRlLCBuYXYsIG1haW4sIHNlY3Rpb24sIGZvb3RlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jb250ZW50LXdyYXBwZXIsXG5zZWN0aW9uLFxuLnotaW5kZXgtdXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xufVxuXG4uei1pbmRleC11cCB7XG4gICAgei1pbmRleDogMTAwO1xufVxuXG5zZWN0aW9uOm5vdCguZm9ybWF0aW9uKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuZmlndXJlLCBmaWdjYXB0aW9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbmZpZ2NhcHRpb24ge1xuICAgIG1hcmdpbi10b3A6IDhweDtcbn1cblxuYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbmJsb2NrcXVvdGUgcDpiZWZvcmUsXG5ibG9ja3F1b3RlIHA6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuYmxvY2txdW90ZSBwOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDAwYWJcIjtcbn1cblxuYmxvY2txdW90ZSBwOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGNvbnRlbnQ6IFwiXFwwMGJiXCI7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMWVtO1xufVxuXG5odG1sW2xhbmc9XCJkZS1ERVwiXSBibG9ja3F1b3RlIHA6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAxRVwiO1xufVxuXG5odG1sW2xhbmc9XCJkZS1ERVwiXSBibG9ja3F1b3RlIHA6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDFEXCI7XG59XG5cbi5hbmNob3ItcGFyZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5hbmNob3Ige1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogLTUwcHg7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4ub2VtYmVkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IC8qIEZPUk1BVCAxNjo5ICovXG59XG5cbi5iZy1zZWN0aW9uLFxuLmJnLWxpbmssXG4uYmctb3ZlcmxheTphZnRlcixcbi5iZy1vdmVybGF5LWxpZ2h0OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgei1pbmRleDogMDtcbn1cblxuLmJnLW92ZXJsYXk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgei1pbmRleDogMTtcbn1cblxuLmJnLXNlY3Rpb24ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG4uYmctbGluayB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB6LWluZGV4OiAxMDA7XG59XG5cbi5iZy1zZWN0aW9uLXZpZGVvIHZpZGVvLFxuLmJnLXNlY3Rpb24gLnl0cGxheWVyLWNvbnRhaW5lcixcbi5iZy1zZWN0aW9uIGlmcmFtZSxcbi5vZW1iZWQgaWZyYW1lIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gICAgdG9wOiA1MCUgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5iZy1zZWN0aW9uLXZpZGVvIHZpZGVvIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG5odG1sLnVzZXItaWUgLmJnLXNlY3Rpb24tdmlkZW8gdmlkZW8sXG5odG1sLnVzZXItZWRnZSAuYmctc2VjdGlvbi12aWRlbyB2aWRlbyB7XG4gICAgbWluLXdpZHRoOiAwO1xufVxuXG5odG1sLnVzZXItaWUgLmJnLXNlY3Rpb24tdmlkZW8ud2lkdGggdmlkZW8sXG5odG1sLnVzZXItZWRnZSAuYmctc2VjdGlvbi12aWRlby53aWR0aCB2aWRlbyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG5odG1sLnVzZXItaWUgLmJnLXNlY3Rpb24tdmlkZW8uaGVpZ2h0IHZpZGVvLFxuaHRtbC51c2VyLWVkZ2UgLmJnLXNlY3Rpb24tdmlkZW8uaGVpZ2h0IHZpZGVvIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uYnRuLWNvcnBvLFxuLmJ0bi1yb3VuZGVkIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAyMHB4IDM1cHg7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYnRuLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4uYnRuLXJvdW5kZWQge1xuICAgIHBhZGRpbmc6IDhweCAxMnB4IDZweDtcbn1cblxuLmJ0bi1hcnJvdyB7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uLWFycm93LWxpbmstYmxhY2suc3ZnKSBuby1yZXBlYXQgdG9wIDglIHJpZ2h0IDFweDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gOTIlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICYuYm90dG9tIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29uLWFycm93LWxpbmstYm90dG9tLWJsYWNrLnN2Zyk7XG4gICAgfVxufVxuXG4ubGlzdC1pY29ucyB7XG4gICAgbWFyZ2luOiAtOHB4O1xufVxuXG4ubGlzdC1pY29ucyA+IFtjbGFzcyo9XCJjb2xcIl0ge1xuICAgIHBhZGRpbmc6IDhweDtcbn1cblxuLmJvcmRlci1yYWRpdXMsXG4uYnRuLXJvdW5kZWQsXG4ubW9iaWxlLW1lbnUgLnN1Yi1tZW51IGEsXG5kaXYud3BjZjcgLmxpbmstaXRlbSAuYWpheC1sb2FkZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDIwMDBweCAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMjAwMHB4ICFpbXBvcnRhbnQ7XG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAyMDAwcHggIWltcG9ydGFudDtcbn1cblxuLm5vLWJvcmRlci1yYWRpdXMsXG5pbnB1dCwgdGV4dGFyZWEsIHNlbGVjdCwgYnV0dG9uIHtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIENPTE9SUyAmIEJBQ0tHUk9VTkRTIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYmctd2hpdGUsXG5ocixcbiNtYWluLW1lbnUgPiB1bCA+IGxpIC5zdWItbWVudSxcbi5tb2JpbGUtbWVudSAuc3ViLW1lbnUgYSxcbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsXG4ucHJvamVjdC1jYXJkLWNvbnRhaW5lcixcbi5kcm9wZG93bi1tZW51LFxuLmJ0bi1jb3Jwbyxcbi5idG4tcm91bmRlZCxcbi5yb3ctZm9ybS5yb3ctZm9ybS10ZXh0YXJlYSA+IGxhYmVsLFxuZGl2LndwY2Y3IC5saW5rLWl0ZW0gLmFqYXgtbG9hZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1saWdodCxcbmh0bWwsXG5ib2R5LFxuLmxpbmUtbGlnaHQsXG4uZmFuY3lib3gtYmcsXG4uY2F0ZWdvcnktZmFxLmFjdGl2ZSxcbmRpdi53cGNmNyBkaXYud3BjZjctcmVzcG9uc2Utb3V0cHV0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjNGNEYzICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1jb3Jwb3JhdGUsXG4ubWVudS1pdGVtIGE6OmJlZm9yZSxcbi5kb3dubG9hZC1pdGVtLWNvbnRhaW5lcjpob3Zlcixcbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQuZ3JlZW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxMjQ3MzQgIWltcG9ydGFudDtcbn1cblxuLmJnLWJsYWNrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG59XG5cbi5zZXJ2aWNlcy1jYXJkLWltZyAuYmctb3ZlcmxheSxcbi50ZWFtLWNhcmQtaW1hZ2UuYmctc2VjdGlvbjpub3QoLm5vLWltYWdlKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMSkgIWltcG9ydGFudDtcbn1cblxuLmJnLW92ZXJsYXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjQpICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1vdmVybGF5LmJnLW92ZXJsYXktbGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjQpICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1vdmVybGF5OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIC4zNSkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAuMzUpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAuMzUpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpO1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyM1OTAwMDAwMCcsIGVuZENvbG9yc3RyPScjMDAwMDAwMDAnLCBHcmFkaWVudFR5cGU9MSk7XG59XG5cbi5zbGlkZXItcXVvdGVzIC5iZy1vdmVybGF5OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDApIDAlLCByZ2JhKDAsIDAsIDAsIC4zNSkgMTAwJSk7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAwKSAwJSwgcmdiYSgwLCAwLCAwLCAuMzUpIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwKSAwJSwgcmdiYSgwLCAwLCAwLCAuMzUpIDEwMCUpO1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyMwMDAwMDAwMCcsIGVuZENvbG9yc3RyPScjNTkwMDAwMDAnLCBHcmFkaWVudFR5cGU9MSk7XG59XG5cbi5iZy1vdmVybGF5LmJnLW92ZXJsYXktbGlnaHQ6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkgMzAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkgMzAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAzMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI2ZmZmZmZicsIGVuZENvbG9yc3RyPScjMDBmZmZmZmYnLCBHcmFkaWVudFR5cGU9MSk7XG59XG5cbi5wcm9qZWN0LWNhcmQtaW1nOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMCkgMCUsIHJnYmEoMCwgMCwgMCwgMC4xKSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMCkgMCUsIHJnYmEoMCwgMCwgMCwgMC4xKSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDApIDAlLCByZ2JhKDAsIDAsIDAsIDAuMSkgMTAwJSk7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzAwMDAwMDAwJywgZW5kQ29sb3JzdHI9JyMxYTAwMDAwMCcsIEdyYWRpZW50VHlwZT0wKTtcbn1cblxuLnJvdy1mb3JtIGlucHV0LCAucm93LWZvcm0gc2VsZWN0LCAucm93LWZvcm0gdGV4dGFyZWEsIC5yb3ctc2VhcmNoIGlucHV0LFxuc2VjdGlvbi5pbnRyb2R1Y3Rpb24gKyBzZWN0aW9uLmNvbnRlbnQtYmxvY2suYmxvY2staW1nLFxuc2VjdGlvbi5pbnRyb2R1Y3Rpb24gKyBzZWN0aW9uLnByb2plY3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGwsXG5pbnB1dDotaW50ZXJuYWwtYXV0b2ZpbGwtc2VsZWN0ZWQsXG50ZXh0YXJlYTotd2Via2l0LWF1dG9maWxsLFxudGV4dGFyZWE6LWludGVybmFsLWF1dG9maWxsLXNlbGVjdGVkLFxuc2VsZWN0Oi13ZWJraXQtYXV0b2ZpbGwsXG5zZWxlY3Q6LWludGVybmFsLWF1dG9maWxsLXNlbGVjdGVkIHtcbiAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogIzEyNDczNCAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDBweCAxMDAwcHggcmdiYSgwLCAwLCAwLCAwKSBpbnNldCAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgNTAwMHMgZWFzZS1pbi1vdXQgMHMgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci13aGl0ZSxcbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQgc3Bhbixcbi5tb2JpbGUtbWVudSArIC5tb2JpbGUtbWVudSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjRkZGICFpbXBvcnRhbnQ7XG59XG5cbi5zZXJ2aWNlcy1jb250YWluZXIsXG4uYm9yZGVyLWxpZ2h0IHtcbiAgICBib3JkZXItY29sb3I6ICNGM0Y0RjMgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1ibGFjayxcbi5kcm9wZG93bi1sYWJlbCxcbi5yb3ctZm9ybS5yb3ctc2VhcmNoIGlucHV0IHtcbiAgICBib3JkZXItY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci1jb3Jwb3JhdGUsXG4ucm93LWZvcm0gaW5wdXQsXG4ucm93LWZvcm0gdGV4dGFyZWEsXG4ucm93LWZvcm0gc2VsZWN0IHtcbiAgICBib3JkZXItY29sb3I6ICNEQkU1REIgIWltcG9ydGFudDtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC5ncmVlbiBzcGFuLFxuLnJvdy1mb3JtLXNlbGVjdCBsYWJlbDpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogIzEyNDczNCAhaW1wb3J0YW50O1xufVxuXG4uYnRuLWNvcnBvLndoaXRlLFxuLmNvbG9yLXdoaXRlLFxuLmRvd25sb2FkLWl0ZW0tY29udGFpbmVyOmhvdmVyIHtcbiAgICBjb2xvcjogI0ZGRiAhaW1wb3J0YW50O1xufVxuXG4uY29sb3ItY29ycG9yYXRlLFxuaHRtbC5uby10b3VjaGV2ZW50cyAubWVudS1pdGVtIGE6aG92ZXIsXG5hLFxuaHRtbC5uby10b3VjaGV2ZW50cyAjbWFpbiBhLmNvbG9yLWJsYWNrOmhvdmVyLFxuLm1lbnUtaXRlbS5ob3Zlci1zdGVwMSBhLFxuLmJ0bi1jb3JwbyxcbmZvcm0sXG5pbnB1dCwgdGV4dGFyZWEsIHNlbGVjdCxcbi5mYW5jeWJveC1idXR0b24gc3ZnLFxuLmZhbmN5Ym94LWNsb3NlLXNtYWxsLFxuaHRtbC5uby10b3VjaGV2ZW50cyAucmVzdW1lLXNob3J0OmhvdmVyLFxuaHRtbC5uby10b3VjaGV2ZW50cyAucmVzdW1lLWxvbmctd3JhcHBlcjpob3ZlcixcbiNmb290ZXIsXG4jZm9vdGVyIGEsXG4uZmMtdG9vbGJhci10aXRsZXtcbiAgICBjb2xvcjogIzEyNDczNCAhaW1wb3J0YW50O1xufVxuXG4uY29sb3ItY29ycG9yYXRlLW9wYWNpdHkge1xuICAgIGNvbG9yOiByZ2JhKCMxMjQ3MzQsIC41KSAhaW1wb3J0YW50O1xufVxuXG4uY29sb3ItYmxhY2ssXG4ubWVudS1pdGVtIGEsXG4ubW9iaWxlLW1lbnUgLm1lbnUtaXRlbSBhIHtcbiAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xufVxuXG4uY29sb3ItcmVkIHtcbiAgICBjb2xvcjogI2U4MjAxNyAhaW1wb3J0YW50O1xufVxuXG4uY29sb3ItbGlnaHQsXG4uY3VycmVudCAuZmlsdGVyLWl0ZW0sXG5odG1sLm5vLXRvdWNoZXZlbnRzIC5zdWItbWVudTpob3ZlciBhOm5vdCg6aG92ZXIpLFxuYm9keS5zaW5nbGUtc2VydmljZS5zYWZldHkgLnN1Yi1tZW51IGxpOm5vdCgubWVudS1pdGVtLW9iamVjdC1zYWZldHkpIGE6bm90KDpob3ZlciksXG5ib2R5LnNpbmdsZS1zZXJ2aWNlLnNvbHV0aW9ucyAuc3ViLW1lbnUgbGk6bm90KC5tZW51LWl0ZW0tb2JqZWN0LXNvbHV0aW9ucykgYTpub3QoOmhvdmVyKSxcbmJvZHkuc2luZ2xlLXNlcnZpY2UuZXF1aXBtZW50IC5zdWItbWVudSBsaTpub3QoLm1lbnUtaXRlbS1vYmplY3QtZXF1aXBtZW50KSBhOm5vdCg6aG92ZXIpLFxuYm9keS5zaW5nbGUtc2VydmljZS5hcmNoaXRlY3R1cmUgLnN1Yi1tZW51IGxpOm5vdCgubWVudS1pdGVtLW9iamVjdC1hcmNoaXRlY3R1cmUpIGE6bm90KDpob3ZlciksXG4ucm93LWZvcm0uZm9jdXMtbGFiZWwgbGFiZWw6bm90KC5uby1lZmZlY3QpIHtcbiAgICBjb2xvcjogcmdiYSgzNCwgNDAsIDM0LCAuNCkgIWltcG9ydGFudDtcbn1cblxuLmFjY29yZGlvbi1pdGVtLmFjdGl2ZSBoZWFkZXIgKiB7XG4gICAgY29sb3I6ICMyMjI4MjIgIWltcG9ydGFudDtcbn1cblxuLnJvdy1zZWFyY2ggaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4ucm93LXNlYXJjaCBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjMDAwO1xufVxuXG4ucm93LXNlYXJjaCBpbnB1dDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogIzAwMDtcbn1cblxuLnJvdy1zZWFyY2guZm9jdXMtbGFiZWwgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4ucm93LXNlYXJjaC5mb2N1cy1sYWJlbCBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4ucm93LXNlYXJjaC5mb2N1cy1sYWJlbCBpbnB1dDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuYm9keS5zY3JvbGxpbmctdG8tYm90dG9tOm5vdCgucGFnZS1zY3JvbGxlZCk6bm90KC5tZW51LW9wZW5lZC1zdGVwMikgI2hlYWRlcixcbmJvZHkucGFnZS1zY3JvbGxlZC5zY3JvbGxpbmctdG8tdG9wOm5vdCgubWVudS1vcGVuZWQtc3RlcDIpICNoZWFkZXIsXG5ib2R5LnBhZ2Utc2Nyb2xsZWQuc2Nyb2xsaW5nLXRvLXRvcDpub3QoLm1lbnUtb3BlbmVkLXN0ZXAyKTpub3QoLmVuZC1wYWdlKSAuY29udGFjdC1tb2JpbGUge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDE1cHggMCByZ2JhKDAsIDAsIDAsIC4xKTtcbiAgICAtbW96LWJveC1zaGFkb3c6IDAgMCAxNXB4IDAgcmdiYSgwLCAwLCAwLCAuMSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDE1cHggMCByZ2JhKDAsIDAsIDAsIC4xKTtcbn1cblxuaHRtbC5uby10b3VjaGV2ZW50cyAucHJvamVjdC1jYXJkOmhvdmVyLFxuaHRtbC5uby10b3VjaGV2ZW50cyAucmVzdW1lLWxvbmctd3JhcHBlcjpob3ZlciB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDRweCAyNXB4IDAgcmdiYSgwLCAwLCAwLCAuMDYpO1xuICAgIC1tb3otYm94LXNoYWRvdzogMCA0cHggMjVweCAwIHJnYmEoMCwgMCwgMCwgLjA2KTtcbiAgICBib3gtc2hhZG93OiAwIDRweCAyNXB4IDAgcmdiYSgwLCAwLCAwLCAuMDYpO1xufVxuXG4jbWFpbi1tZW51ID4gdWwgPiBsaSAuc3ViLW1lbnUsXG4uZHJvcGRvd24tbWVudSB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDhweCA4cHggMCByZ2JhKDAsIDAsIDAsIC4wNyk7XG4gICAgLW1vei1ib3gtc2hhZG93OiAwIDhweCA4cHggMCByZ2JhKDAsIDAsIDAsIC4wNyk7XG4gICAgYm94LXNoYWRvdzogMCA4cHggOHB4IDAgcmdiYSgwLCAwLCAwLCAuMDcpO1xufVxuXG5odG1sLm5vLXRvdWNoZXZlbnRzIC5kb3dubG9hZC1pdGVtLWNvbnRhaW5lci5iZy1jb3Jwb3JhdGU6aG92ZXIge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxMHB4IDM1cHggMCByZ2JhKDM0LCA0MCwgMzQsIC4yKTtcbiAgICAtbW96LWJveC1zaGFkb3c6IDAgMTBweCAzNXB4IDAgcmdiYSgzNCwgNDAsIDM0LCAuMik7XG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDM1cHggMCByZ2JhKDM0LCA0MCwgMzQsIC4yKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gRk9OVFMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbioge1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbmJvZHksXG5pbnB1dCwgdGV4dGFyZWEsIHNlbGVjdCwgYnV0dG9uLFxuLnJlZ3VsYXIge1xuICAgIGZvbnQtZmFtaWx5OiBcIkFwYXggUmVndWxhclwiLCBBcmlhbCwgc2Fucy1zZXJpZiAhaW1wb3J0YW50O1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udGV4dC1xdW90ZSBibG9ja3F1b3RlLFxuLmxpbmstaXRlbSBhLFxuLmxpbmstaXRlbS1ub2xpc3QgYSxcbi5saW5rLWl0ZW0gPiBzcGFuIGlucHV0LFxuLm1vYmlsZS1tZW51IC5tZW51LWl0ZW0gYSxcbmIsIHN0cm9uZywgLmJvbGQsXG5oMSwgLnN0eWxlLWgxLFxuaDIsIC5zdHlsZS1oMixcbmgzLCAuc3R5bGUtaDMsXG5oNCwgLnN0eWxlLWg0LFxuaDUsIC5zdHlsZS1oNSxcbmg2LCAuc3R5bGUtaDYsXG4uZmMuc2l6ZS1oNSAuZmMtYnV0dG9uLmZjLWN1c3RvbVRpdGxlLWJ1dHRvbiB7XG4gICAgZm9udC1mYW1pbHk6IFwiQXBheCBCb2xkXCIsIEFyaWFsLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xufVxuXG5oMSwgLnN0eWxlLWgxIHtcbiAgICBmb250LXNpemU6IDY1cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4wMWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbn1cblxuaDIsIC5zdHlsZS1oMixcbi5saW5rLWl0ZW0tbm9saXN0IGE6bm90KC5zdHlsZS1oNCksXG4ubGluay1pdGVtIGE6bm90KC5zdHlsZS1oNCkge1xuICAgIGZvbnQtc2l6ZTogNDRweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjAxZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xufVxuXG5oMywgLnN0eWxlLWgzLFxuLmZjLnNpemUtaDUgLmZjLWJ1dHRvbi5mYy1jdXN0b21UaXRsZS1idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjAxZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xufVxuXG5oNCwgLnN0eWxlLWg0LFxuYm9keSxcbi5saW5rLWl0ZW0gPiBzcGFuIGlucHV0LFxuc2VjdGlvbi5jb250ZW50LWNvbHVtbiAubGluay1pdGVtIGEsXG5zZWN0aW9uLnByb2plY3QgLmxpbmstaXRlbSBhLFxuc2VjdGlvbi5mb3JtYXRpb24gLmxpbmstaXRlbSBhLFxuI21haW4tbWVudSB1bCBsaSxcbi5wcm9qZWN0LWNhcmQtY29udGFpbmVyIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjAxZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuM2VtO1xufVxuXG4uaGVhZGVyLXByb2plY3QgLnN0eWxlLWg0IHtcbiAgICBsaW5lLWhlaWdodDogMS4xZW07XG59XG5cbmg1LCAuc3R5bGUtaDUsXG4uc2l6ZS1oNSxcbi5wcmUtZm9vdGVyLFxuLmFkcmVzcy1mb290ZXIsXG4ucmVzdW1lLWxvbmctY29udGFpbmVyIHAsXG4uZHJvcGRvd24tbGFiZWwsXG4ucXVlc3Rpb24tY29udGFpbmVyLFxuLnJvdy1mb3JtIGxhYmVsLFxuLnJvdy1mb3JtLnJvdy1zZWFyY2ggaW5wdXQsXG5kaXYud3BjZjcgZGl2LndwY2Y3LXJlc3BvbnNlLW91dHB1dCB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAuMDFlbTtcbiAgICBsaW5lLWhlaWdodDogMS4zZW07XG59XG5cbmg2LCAuc3R5bGUtaDYsXG4uZm9ybWF0aW9uLXByaWNlIHNtYWxsLFxuLmJ0bi1jb3Jwbyxcbi5kcm9wZG93bi1tZW51LFxuLnJvdy1mb3JtIGlucHV0LCAucm93LWZvcm0gc2VsZWN0LCAucm93LWZvcm0gdGV4dGFyZWEge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjAxZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xufVxuXG5zbWFsbCwgLnNtYWxsLFxuLnJvdy1mb3JtIHNwYW4ud3BjZjctbm90LXZhbGlkLXRpcCB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAuMDFlbTtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG59XG5cbnN1cCB7XG4gICAgZm9udC1zaXplOiA2NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbmksIGVtLFxuLml0YWxpYyB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLnRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbmEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udXBwZXJjYXNlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XG59XG5cbnAsXG5oMSwgLnN0eWxlLWgxLFxuaDIsIC5zdHlsZS1oMixcbmgzLCAuc3R5bGUtaDMsXG5oNCwgLnN0eWxlLWg0LFxuaDUsIC5zdHlsZS1oNSxcbmg2LCAuc3R5bGUtaDYge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLm1hcmdpbi10b3Age1xuICAgIG1hcmdpbi10b3A6IDJlbTtcbn1cblxucDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogMWVtO1xufVxuXG4udGVhbS1jYXJkLWl0ZW0gcDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogMC41ZW07XG59XG5cbmgxOm5vdCg6bGFzdC1jaGlsZCksIC5zdHlsZS1oMTpub3QoOmxhc3QtY2hpbGQpLFxuaDI6bm90KDpsYXN0LWNoaWxkKSwgLnN0eWxlLWgyOm5vdCg6bGFzdC1jaGlsZCksXG5oMzpub3QoOmxhc3QtY2hpbGQpLCAuc3R5bGUtaDM6bm90KDpsYXN0LWNoaWxkKSxcbmg0Om5vdCg6bGFzdC1jaGlsZCksIC5zdHlsZS1oNDpub3QoOmxhc3QtY2hpbGQpLFxuaDU6bm90KDpsYXN0LWNoaWxkKSwgLnN0eWxlLWg1Om5vdCg6bGFzdC1jaGlsZCksXG5oNjpub3QoOmxhc3QtY2hpbGQpLCAuc3R5bGUtaDY6bm90KDpsYXN0LWNoaWxkKSxcbi50ZWFtLWNhcmQtaXRlbSBwOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNWVtO1xufVxuXG4udGl0bGUtc2VjdGlvbiwgLnRpdGxlLXNlY3Rpb246bm90KDpsYXN0LWNoaWxkKSxcbi5mb3JtYXRpb24tcGFnZSBoMixcbnA6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBIRUFERVIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbmJvZHkge1xuICAgIHBhZGRpbmctdG9wOiAxOTVweDtcbn1cblxuI2hlYWRlciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDgwcHggMDtcbiAgICB6LWluZGV4OiA5OTk2Njtcbn1cblxuYm9keS5wYWdlLXNjcm9sbGVkICNoZWFkZXIge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xufVxuXG5ib2R5LnBhZ2Utc2Nyb2xsZWQuc2Nyb2xsaW5nLXRvLWJvdHRvbTpub3QoLm1lbnUtb3BlbmVkLXN0ZXAyKSAjaGVhZGVyIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMDAlKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMDAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwMCUpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTAwJSk7XG59XG5cbiNoZWFkZXItbG9nbyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzNXB4O1xufVxuXG4jbG9nbyxcbiNsb2dvIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG4jbG9nbyBpbWcge1xuICAgIG1hcmdpbi10b3A6IC0wLjM0ZW07XG59XG5cbiNmb290ZXItbWVudSA+IHVsID4gbGksXG4jbWFpbi1tZW51ID4gdWwgPiBsaSxcbiNjb250YWN0LWhlYWRlciA+IHVsID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiNmb290ZXItbWVudSA+IHVsID4gbGk6bm90KDpsYXN0LWNoaWxkKSxcbiNtYWluLW1lbnUgPiB1bCA+IGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogNzVweDtcbn1cblxuI2NvbnRhY3QtaGVhZGVyID4gdWwgPiBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG59XG5cbiNtYWluLW1lbnUgPiB1bCA+IGxpIC5zdWItbWVudSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLTI1cHg7XG4gICAgdG9wOiAxMDAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTBweCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTBweCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTBweCk7XG59XG5cbiNtYWluLW1lbnUgPiB1bCA+IGxpIC5zdWItbWVudSxcbiNtYWluLW1lbnUgPiB1bCA+IGxpIC5zdWItbWVudSBhIHtcbiAgICBwYWRkaW5nLXRvcDogOHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA2cHg7XG59XG5cbiNtYWluLW1lbnUgPiB1bCA+IGxpIC5zdWItbWVudSBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbn1cblxuLm1lbnUtaXRlbS5ob3Zlci1zdGVwMSAuc3ViLW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5tZW51LWl0ZW0uaG92ZXItc3RlcDIgLnN1Yi1tZW51IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApICFpbXBvcnRhbnQ7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKSAhaW1wb3J0YW50O1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKSAhaW1wb3J0YW50O1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCkgIWltcG9ydGFudDtcbn1cblxuI2NvbnRhY3QtaGVhZGVyIGEsXG4jY29udGFjdC1oZWFkZXIgaW1nIHtcbiAgICB3aWR0aDogMjZweDtcbiAgICBoZWlnaHQ6IDI2cHg7XG59XG5cbiNtYWluLW1lbnUsXG4jY29udGFjdC1oZWFkZXIge1xuICAgIGhlaWdodDogMzVweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiNjb250YWN0LWhlYWRlciBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLm1lbnUtaXRlbSBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuI21haW4tbWVudSAuY3VycmVudF9wYWdlX2l0ZW0gYTo6YmVmb3JlLFxuLm1lbnUtaXRlbSBhOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDQwcHg7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgIHdpZHRoOiAycHg7XG4gICAgaGVpZ2h0OiAwO1xufVxuXG4jbW9iaWxlLW1lbnUgLm1lbnUtaXRlbSBhOjpiZWZvcmUsXG4uc3ViLW1lbnUgLm1lbnUtaXRlbSBhOjpiZWZvcmUsXG4jZm9vdGVyIC5tZW51LWl0ZW0gYTo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4jbWFpbi1tZW51IC5jdXJyZW50X3BhZ2VfaXRlbSBhOjpiZWZvcmUsXG4ubWVudS1pdGVtIGE6aG92ZXI6OmJlZm9yZSxcbi5tZW51LWl0ZW0uaG92ZXItc3RlcDIgYTo6YmVmb3JlIHtcbiAgICBoZWlnaHQ6IDIwMHB4O1xufVxuXG4uY29udGFjdC1tb2JpbGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMDAlKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwMCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMDAlKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxMDAlKTtcbiAgICB6LWluZGV4OiA5OTk2Njtcbn1cblxuYm9keS5tZW51LW9wZW5lZC1zdGVwMiAuY29udGFjdC1tb2JpbGUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuI21lbnUtYnVyZ2VyLXdyYXBwZXIsXG4jbWVudS1idXJnZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xufVxuXG4jbWVudS1idXJnZXItd3JhcHBlciB7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgei1pbmRleDogODg4ODtcbn1cblxuI21lbnUtYnVyZ2VyIHtcbiAgICByaWdodDogMTVweDtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG59XG5cbi5tZW51LWxpbmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDJweDtcbn1cblxuLm1lbnUtbGluZTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogNnB4O1xufVxuXG4ubWVudS1saW5lOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiA4MCU7XG59XG5cbiNtb2JpbGUtbWVudSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDg1cHg7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAxNXB4IDAgMTEwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDMwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMzBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDMwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDMwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDMwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHotaW5kZXg6IDk5OTMzO1xufVxuXG4ubW9iaWxlLW1lbnUge1xuICAgIG1hcmdpbjogMCAtMTVweDtcbn1cblxuLm1vYmlsZS1tZW51ICsgLm1vYmlsZS1tZW51IHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbn1cblxuLm1vYmlsZS1tZW51IGxpIGEsXG4ubW9iaWxlLW1lbnUgLnN1Yi1tZW51IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxNXB4O1xufVxuXG4ubW9iaWxlLW1lbnUgLnN1Yi1tZW51IHtcbiAgICBtYXJnaW46IC0xNXB4IC01cHggLTVweDtcbiAgICBsaW5lLWhlaWdodDogMWVtO1xufVxuXG4ubW9iaWxlLW1lbnUgLnN1Yi1tZW51IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDVweDtcbn1cblxuLm1vYmlsZS1tZW51IC5zdWItbWVudSBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMTJweCAyMHB4IDhweDtcbn1cblxuI21lbnUtYmFja2dyb3VuZC1idXJnZXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxLCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEsIDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbiAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gICAgLW8tdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICAgIHotaW5kZXg6IDk5OTAwO1xufVxuXG5ib2R5Lm1lbnUtb3BlbmVkLXN0ZXAxICNtb2JpbGUtbWVudSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbmJvZHkubWVudS1vcGVuZWQtc3RlcDIgI21vYmlsZS1tZW51IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCkgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG5ib2R5Lm1lbnUtb3BlbmVkLXN0ZXAyICNtZW51LWJhY2tncm91bmQtYnVyZ2VyIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSwgMSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEsIDEpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEsIDEpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLCAxKTtcbn1cblxuYm9keS5tZW51LW9wZW5lZC1zdGVwMiAubWVudS1saW5lLTEge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgOXB4KSByb3RhdGUoNDVkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgOXB4KSByb3RhdGUoNDVkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA5cHgpIHJvdGF0ZSg0NWRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgOXB4KSByb3RhdGUoNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDlweCkgcm90YXRlKDQ1ZGVnKTtcbn1cblxuYm9keS5tZW51LW9wZW5lZC1zdGVwMiAubWVudS1saW5lLTIge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMXB4KSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDFweCkgcm90YXRlKC00NWRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDFweCkgcm90YXRlKC00NWRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMXB4KSByb3RhdGUoLTQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxcHgpIHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBTRVJWSUNFUyBGT09URVIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5zZXJ2aWNlcy1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDYwcHggNzBweDtcbiAgICBib3JkZXI6IHNvbGlkIDFweDtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xufVxuXG4uZm9vdGVyLXNlcnZpY2VzIGZpZ3VyZSAqIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5mb290ZXItc2VydmljZXMgZmlndXJlIC5iZy1zZWN0aW9uIHtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgKCgxMDB2dyAtIDE2MDBweCkgLyAyKSk7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbn1cblxuLmZvb3Rlci1zZXJ2aWNlcy13cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiAtNy41cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogLTcuNXB4O1xufVxuXG4uZm9vdGVyLXNlcnZpY2VzLWl0ZW0ge1xuICAgIHBhZGRpbmctdG9wOiA3LjVweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNy41cHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIENPTU1PTiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuaW5wdXQsIHRleHRhcmVhLCBzZWxlY3Qge1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuc2VjdGlvbi50ZXh0LWJnLWZ1bGx3aWR0aCB7XG4gICAgcGFkZGluZy10b3A6IDIwMHB4O1xufVxuXG5zZWN0aW9uLFxuI2Zvb3RlciAuY29udGVudC13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMTUwcHg7XG59XG5cbnNlY3Rpb24udGl0bGUge1xuICAgIHBhZGRpbmctdG9wOiAxMDBweDtcbn1cblxuc2VjdGlvbi5nYWxsZXJ5LFxuc2VjdGlvbi5wcm9qZWN0ICsgc2VjdGlvbi5jb250ZW50LWJsb2NrLFxuc2VjdGlvbi5jb250ZW50LWJsb2NrLWZ3ICsgc2VjdGlvbi5jb250ZW50LWJsb2NrLFxuc2VjdGlvbi5jb250ZW50LWJsb2NrICsgc2VjdGlvbi5jb250ZW50LWJsb2NrLFxuc2VjdGlvbi5zbGlkZXItcXVvdGVzLFxuc2VjdGlvbi5iZy1saWdodCArIHNlY3Rpb24uYmctbGlnaHQsXG5zZWN0aW9uOm5vdCguYmctbGlnaHQpOm5vdCgudGV4dC1iZy1mdWxsd2lkdGgpOm5vdCguaW50cm9kdWN0aW9uKSArIHNlY3Rpb246bm90KC5iZy1saWdodCk6bm90KC50ZXh0LWJnLWZ1bGx3aWR0aCk6bm90KC5pbnRyb2R1Y3Rpb24pOm5vdCguZm9vdGVyLXNlcnZpY2VzKSxcbnNlY3Rpb24uaW50cm9kdWN0aW9uICsgc2VjdGlvbi5jb250ZW50LWJsb2NrLmJsb2NrLWltZyxcbnNlY3Rpb24uaW50cm9kdWN0aW9uICsgc2VjdGlvbi5yZXN1bWUtbG9uZyxcbnNlY3Rpb24uaW50cm9kdWN0aW9uICsgc2VjdGlvbi5wcm9qZWN0LFxuc2VjdGlvbi5yZXN1bWUtbG9uZyArIHNlY3Rpb24uYmctbGlnaHQge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbnNlY3Rpb24udGV4dC1iZy1mdWxsd2lkdGgge1xuICAgIHBhZGRpbmctYm90dG9tOiAyMDBweDtcbn1cblxuc2VjdGlvbixcbi50ZXh0LWZvb3Rlci1zZXJ2aWNlcyB7XG4gICAgcGFkZGluZy1ib3R0b206IDE1MHB4O1xufVxuXG4jcHJvamVjdC1pbnRybyxcbi5wcm9qZWN0LWhpZ2hsaWdodHMgPiAuY29udGVudC13cmFwcGVyID4gLnJvdzpmaXJzdC1jaGlsZCxcbi50ZWFtLWZpbHRlci13cmFwcGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG59XG5cbnNlY3Rpb24uaW50cm9kdWN0aW9uICsgc2VjdGlvbi50ZWFtLWxpc3QgLnRlYW0tZmlsdGVyLXdyYXBwZXIsXG4jZm9vdGVyIC5jb250ZW50LXdyYXBwZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xufVxuXG5zZWN0aW9uLmdhbGxlcnk6bGFzdC1jaGlsZCxcbnNlY3Rpb24uc2xpZGVyLXF1b3RlcyB7XG4gICAgcGFkZGluZy1ib3R0b206IDBweCAhaW1wb3J0YW50O1xufVxuXG5zZWN0aW9uLmludHJvZHVjdGlvbiArIHNlY3Rpb24uY29udGVudC1ibG9jay5ibG9jay1pbWcsXG5zZWN0aW9uLmludHJvZHVjdGlvbiArIHNlY3Rpb24ucmVzdW1lLWxvbmcsXG5zZWN0aW9uLmludHJvZHVjdGlvbiArIHNlY3Rpb24ucHJvamVjdCB7XG4gICAgbWFyZ2luLXRvcDogLTE1MHB4O1xufVxuXG4uY29udGVudC1jb2x1bW4gKyAucmVzdW1lLWxvbmcuYmctbGlnaHQge1xuICAgIG1hcmdpbi10b3A6IC0xMDBweDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbn1cblxuLm1hcCArIC5iZy1saWdodCB7XG4gICAgei1pbmRleDogMDtcbn1cblxuLm15LTAsXG4ubXQtMCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4ubXktMCxcbi5tYi0wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5teC0wLFxuLm1sLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5teC0wLFxuLm1yLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4ubGluZS1saWdodCB7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogOTBweCAwO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBURVhURSAmIEFSUklFUkUtUExBTiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmxpc3QtbGluay1ib3gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiAzNTBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi5saW5rLWJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIExJTksgQlVUVE9OIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ubGluay1pdGVtLW5vbGlzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG59XG5cbi5saW5rLWl0ZW0sXG4ubGluay1pdGVtIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5saW5rLWl0ZW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG59XG5cbmZvcm0gLnRleHQtcmlnaHQgLmxpbmstaXRlbSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuc3Bhbi5hcnJvdy1tb2JpbGUsXG4ubGluay1pdGVtOjphZnRlcixcbi5saW5rLWl0ZW0tbm9saXN0IGEuZ3JlZW46OmFmdGVyLFxuLmxpbmstaXRlbSA+IHNwYW4uZ3JlZW46OmFmdGVyLFxuLmxpbmstaXRlbSBhLmdyZWVuOjphZnRlcixcbi5saW5rLWl0ZW0tbm9saXN0IGEud2hpdGU6OmFmdGVyLFxuLmxpbmstaXRlbSBhLndoaXRlOjphZnRlcixcbi5saW5rLWl0ZW0tbm9saXN0IGEuYmxhY2s6OmFmdGVyLFxuLmxpbmstaXRlbSBhLmJsYWNrOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgd2lkdGg6IDkwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcbiAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XG4gICAgei1pbmRleDogMDtcbn1cblxuLmxpbmstaXRlbS5ib3R0b20gYTo6YWZ0ZXIge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZSgwLCA1MCUpICFpbXBvcnRhbnQ7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZykgdHJhbnNsYXRlKDAsIDUwJSkgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZykgdHJhbnNsYXRlKDAsIDUwJSkgIWltcG9ydGFudDtcbn1cblxuLmxpbmstaXRlbTo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG59XG5cbnNwYW4uYXJyb3ctbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdG9wOiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgbWFyZ2luLXRvcDogMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuaHRtbC5uby10b3VjaGV2ZW50cyAubGluay1pdGVtLW5vbGlzdDpob3ZlciBhOjphZnRlcixcbmh0bWwubm8tdG91Y2hldmVudHMgLmxpbmstaXRlbTpob3ZlciBhOjphZnRlcixcbmh0bWwubm8tdG91Y2hldmVudHMgLmJnLWxpbms6aG92ZXIgKyAqIC5saW5rLWl0ZW0gYTo6YWZ0ZXIge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTBweCwgLTUwJSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMHB4LCAtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTBweCwgLTUwJSk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTBweCwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTBweCwgLTUwJSk7XG59XG5cbi5saW5rLWl0ZW0uZ3JlZW46OmFmdGVyLFxuLmxpbmstaXRlbS1ub2xpc3QgYS5ncmVlbjo6YWZ0ZXIsXG4ubGluay1pdGVtID4gc3Bhbi5ncmVlbjo6YWZ0ZXIsXG4ubGluay1pdGVtIGEuZ3JlZW46OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tYXJyb3ctbGluay1ncmVlbi5zdmcpO1xufVxuXG4ubGluay1pdGVtLW5vbGlzdCBhLndoaXRlOjphZnRlcixcbi5saW5rLWl0ZW0gYS53aGl0ZTo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbi1hcnJvdy1saW5rLXdoaXRlLnN2Zyk7XG59XG5cbnNwYW4uYXJyb3ctbW9iaWxlLFxuLmxpbmstaXRlbS1ub2xpc3QgYS5ibGFjazo6YWZ0ZXIsXG4ubGluay1pdGVtIGEuYmxhY2s6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24tYXJyb3ctbGluay1ibGFjay5zdmcpO1xufVxuXG4ubGluay1pdGVtLmdyZWVuOjphZnRlciB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuaHRtbC5uby10b3VjaGV2ZW50cyAucmVzdW1lLXNob3J0OmhvdmVyIC5saW5rLWl0ZW0uZ3JlZW46OmFmdGVyIHtcbiAgICB3aWR0aDogNDBweCAhaW1wb3J0YW50O1xufVxuXG4ubGluay1pdGVtID4gc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbWFyZ2luLXRvcDogMzVweDtcbn1cblxuLmxpbmstaXRlbSA+IHNwYW4gaW5wdXQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHBhZGRpbmc6IDlweCA2NXB4IDEwcHggMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgei1pbmRleDogMTAwO1xufVxuXG4ud3BjZjcgLmxpbmstaXRlbSA+IHNwYW46OmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG5odG1sLm5vLXRvdWNoZXZlbnRzIC53cGNmNyAubGluay1pdGVtID4gc3Bhbjpob3Zlcjo6YWZ0ZXIsXG5odG1sLm5vLXRvdWNoZXZlbnRzIC53cGNmNyAubGluay1pdGVtID4gc3Bhbjpob3ZlciAuYWpheC1sb2FkZXIge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTBweCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMHB4LCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTBweCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTBweCwgMCk7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIENPTlRFTlUgSU5UUk9EVUNUSU9OIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5zZWN0aW9uLmludHJvZHVjdGlvbi5wYWRkaW5nLWJsb2NrcyB7XG4gICAgcGFkZGluZy1ib3R0b206IDI1MHB4O1xufVxuXG5zZWN0aW9uLmludHJvZHVjdGlvbi5wYWRkaW5nLXJlc3VtZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDMwMHB4O1xufVxuXG5zZWN0aW9uLmludHJvZHVjdGlvbiArIHNlY3Rpb24uY29udGVudC1ibG9jay5ibG9jay1pbWcgLmJnLXNlY3Rpb24ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICB0b3A6IDE4MHB4O1xuICAgIGJvdHRvbTogMDtcbn1cblxuLmJnLXJlc3VtZS1sb25nIHtcbiAgICBtYXJnaW4tdG9wOiAyMDBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gTElTVEUgTE9HT1MgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5sb2dvLXdyYXBwZXIuZm9ybWF0X2wge1xuICAgIG1hcmdpbi1sZWZ0OiA4NXB4O1xuICAgIG1hcmdpbi1yaWdodDogODVweDtcblxuICAgICYgPiAucm93IHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTYwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC02MHB4O1xuXG4gICAgICAgIC5sb2dvLWl0ZW0ge1xuICAgICAgICAgICAgd2lkdGg6IDE4MHB4O1xuICAgICAgICAgICAgbWluLWhlaWdodDogODBweDtcbiAgICAgICAgICAgIG1hcmdpbjogNjBweCAzLjMzMyU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sb2dvLXdyYXBwZXIuZm9ybWF0X2wgLmxvZ28taXRlbSBpbWcge1xuICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgbWF4LWhlaWdodDogODBweDtcbn1cblxuLmxvZ28td3JhcHBlci5mb3JtYXRfbCAubG9nby1pdGVtIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4ubG9nby13cmFwcGVyLFxuLmxvZ28tc2xpZGVyLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5sb2dvLXNsaWRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4ubG9nby1pdGVtIHtcbiAgICB3aWR0aDogMjYuNjY2JTtcbiAgICBtYXJnaW46IDIwcHggMy4zMzMlO1xuXG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMHB4O1xuICAgIH1cbn1cblxuLmxvZ28tbmItMSxcbi5sb2dvLW5iLTJ7XG5cbiAgICAubG9nby1pdGVtIHtcbiAgICAgICAgbWF4LXdpZHRoOiA0MCU7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIElNQUdFIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uaW1nLWl0ZW0gaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgIC5mbGV4LWNvbHVtbi1yZXZlcnNlLW1vYmlsZSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICB9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIENPTlRFTlUgRU4gQ09MT05ORVMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbnNlY3Rpb24uY29udGVudC1jb2x1bW4gPiAuY29udGVudC13cmFwcGVyID4gLnJvdyB7XG4gICAgbWFyZ2luLXRvcDogLTI1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogLTI1cHg7XG59XG5cbi5wYXJhZ3JhcGgtYm94IHtcbiAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIENPTlRFTlUgRU4gQkxPQ0sgKyBET1dOTE9BRCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNvbnRlbnQtYmxvY2stZncuZnVsbC13aWR0aC1pdGVtIHtcbiAgICBwYWRkaW5nOiAyMDBweCAwO1xufVxuXG4uZGwtd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogLTE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogLTE1cHg7XG59XG5cbi5kbC1pdGVtcyB7XG4gICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG59XG5cbi5kb3dubG9hZC1pdGVtLWNvbnRhaW5lciB7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiA1MHB4IDcwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZG93bmxvYWQtaXRlbS1jb250YWluZXIgLmxpbmstaXRlbS1ib3gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDM1cHg7XG59XG5cbi5kb3dubG9hZC1pdGVtLWNvbnRhaW5lciAubGluay1pdGVtIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5kb3dubG9hZC1pdGVtLWNvbnRhaW5lci5vbmUtaXRlbSxcbi5ibG9jay1pdGVtIHtcbiAgICBwYWRkaW5nOiA1MHB4IDEzNXB4O1xufVxuXG4uYmxvY2staXRlbSB7XG4gICAgbWFyZ2luOiAxNXB4O1xufVxuXG4uYmxvY2staXRlbSB1bCBsaSB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICAgIC8qIGxpbmUtaGVpZ2h0OiAzNXB4OyAqL1xufVxuXG4uZ3JpZC1ibG9jayB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAtMTVweDtcbn1cblxuLmdyaWQtaXRlbS1ibG9jayxcbi5ncmlkLXNpemVyLWJsb2NrIHtcbiAgICB3aWR0aDogNTAlO1xufVxuXG4uYmxvY2staW1nLWl0ZW0td3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5ibG9jay1pbWctaXRlbSxcbi5ibG9jay1pbWctaXRlbSBmaWd1cmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5ibG9jay1pbWctY29udGVudC13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBTV0lQRVIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5zd2lwZXItcXVvdGVzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5zd2lwZXItc2xpZGUge1xuICAgIHBhZGRpbmc6IDE1MHB4IDA7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbiB7XG4gICAgdG9wOiA1MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiAyMCUgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpICFpbXBvcnRhbnQ7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKSAhaW1wb3J0YW50O1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKSAhaW1wb3J0YW50O1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSkgIWltcG9ydGFudDtcbiAgICBib3R0b206IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbiA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweCAhaW1wb3J0YW50O1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHNwYW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtNXB4O1xuICAgIGxlZnQ6IC01cHg7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQuYWN0aXZlIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXF1b3RlICsgLmxpbmstaXRlbSB7XG4gICAgbWFyZ2luLXRvcDogMTIwcHg7XG59XG5cbi5ibG9ja3F1b3RlLWVtcHR5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBNT1NBSUMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5tb3NhaWMgYVtzdHlsZV0ge1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubW9zYWljIGFbc3R5bGVdIGltZ1tzdHlsZV0ge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFBST0pFQ1QgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiNwcm9qZWN0LW5hdiB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xufVxuXG4ucHJvamVjdC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuI3Byb2plY3QtbmF2IC5hY2NvcmRpb24taXRlbTpub3QoOmxhc3QtY2hpbGQpIC5wcm9qZWN0LWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbn1cblxuLnByb2plY3QtaGlnaGxpZ2h0cyA+IC5jb250ZW50LXdyYXBwZXIgPiAucm93IHtcbiAgICBtYXJnaW4tdG9wOiAtMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMTVweDtcbn1cblxuLnByb2plY3QtaGlnaGxpZ2h0cyA+IC5jb250ZW50LXdyYXBwZXIgPiAucm93ID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xufVxuXG4ucHJvamVjdC1oaWdobGlnaHRzIC5wcm9qZWN0LWNhcmQge1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG59XG5cbi5wcm9qZWN0LWNhcmQtaW1nLFxuLnByb2plY3QtY29udGFpbmVyIGZpZ3VyZSB7XG4gICAgcGFkZGluZy10b3A6IDcwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wcm9qZWN0LWNhcmQtaW1nOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5wcm9qZWN0LWNhcmQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiA1MHB4IDcwcHg7XG59XG5cbi5oZWFkZXItcHJvamVjdCxcbi5hY2NvcmRpb24tbWVudSA+IC5hY2NvcmRpb24taXRlbSA+IGhlYWRlciB7XG4gICAgcGFkZGluZzogMTVweCA0MHB4IDE1cHggMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGVhZGVyLXByb2plY3QgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTBweCwgLTUwJSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTBweCwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMHB4LCAtNTAlKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTBweCwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwcHgsIC01MCUpO1xufVxuXG5odG1sLm5vLXRvdWNoZXZlbnRzIC5oZWFkZXItcHJvamVjdDpob3ZlciAuYXJyb3cge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG59XG5cbi5wcm9qZWN0LWJveCB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wcm9qZWN0LWNvbnRhaW5lciBmaWd1cmUge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbiNjb250ZW50LXByb2plY3QgdGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIG1hcmdpbjogLTVweCAwO1xufVxuXG4jY29udGVudC1wcm9qZWN0IHRyLFxuI2NvbnRlbnQtcHJvamVjdCB0ZCB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4jY29udGVudC1wcm9qZWN0IHRyIHtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4jY29udGVudC1wcm9qZWN0IHRkIHtcbiAgICBwYWRkaW5nOiA1cHggMDtcbn1cblxuI2NvbnRlbnQtcHJvamVjdCB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4jY29udGVudC1wcm9qZWN0IHRkOmxhc3QtY2hpbGQge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi5jb250ZW50LXByb2plY3QuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4ucHJvamVjdC1wcm9ncmFtbWUge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG59XG5cbiNjb250YWlucy1wcm9qZWN0IHtcbiAgICBtaW4taGVpZ2h0OiA0MDBweDtcbn1cblxuYm9keS5sb2FkaW5nICNjb250YWlucy1wcm9qZWN0IHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9sb2FkaW5nLWdyZXkuZ2lmJykgbm8tcmVwZWF0IGNlbnRlciA4MCU7XG4gICAgYmFja2dyb3VuZC1zaXplOiA1MHB4IGF1dG87XG59XG5cbi5wcm9qZWN0LWRlc2NyaXB0aW9uLFxuLnByb2plY3QtZ2FsbGVyeSA+ICo6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbn1cblxuLnByb2plY3QtZ2FsbGVyeSA+IGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEZPUk1BVElPTiAmIEZBTkNZQk9YIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uaW50cm9kdWN0aW9uICsgLmZvcm1hdGlvbiB7XG5cbiAgICAjZm9ybWF0aW9uLXNlYXJjaCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMDAlKTtcbiAgICB9XG59XG5cbi5mYW5jeWJveC1jb250YWluZXIge1xuXG4gICAgLmZhbmN5Ym94LWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDE2MDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxufVxuXG4uZmFuY3lib3gtYnV0dG9uIHN2ZyB7XG4gICAgd2lkdGg6IDQwcHggIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDQwcHggIWltcG9ydGFudDtcbn1cblxuLmZhbmN5Ym94LWNsb3NlLXNtYWxsIHtcbiAgICB3aWR0aDogNDBweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogNDBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG59XG5cbi5mYW5jeWJveC1zbGlkZS0taHRtbCAuZmFuY3lib3gtY2xvc2Utc21hbGwge1xuICAgIHJpZ2h0OiA1NXB4ICFpbXBvcnRhbnQ7XG4gICAgdG9wOiA1NXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5mYW5jeWJveC1zbGlkZS5mYW5jeWJveC1zbGlkZS0taWZyYW1lIHtcbiAgICBwYWRkaW5nOiAxMDBweCAwIDA7XG59XG5cbi5mYW5jeWJveC1zbGlkZS0taWZyYW1lIC5mYW5jeWJveC1jbG9zZS1zbWFsbCB7XG4gICAgcmlnaHQ6IDMwcHggIWltcG9ydGFudDtcbiAgICB0b3A6IC03MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5lcnJvci1tZXNzYWdlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgIHBhZGRpbmc6IDUwcHggMTVweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gU0VSVklDRVMgUkVTVU1FIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ucmVzdW1lID4gLmNvbnRlbnQtd3JhcHBlciA+IC5yb3csXG4ucmVzdW1lLWxvbmcgPiAuY29udGVudC13cmFwcGVyID4gLnJvdyB7XG4gICAgbWFyZ2luLXRvcDogLTE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogLTE1cHg7XG59XG5cbi5yZXN1bWUgLnNlcnZpY2VzLWJveCxcbi5yZXN1bWUtbG9uZyAuc2VydmljZXMtYm94IHtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbn1cblxuLnJlc3VtZS1sb25nLXdyYXBwZXIge1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG59XG5cbi5zZXJ2aWNlcy1jYXJkLWltZyB7XG4gICAgcGFkZGluZy10b3A6IDUwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5yZXN1bWUtbG9uZy1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDEwMHB4IDEzNXB4O1xufVxuXG4ucHJvamVjdC1jYXJkOmhvdmVyIC5wcm9qZWN0LWltZyxcbi5zZXJ2aWNlcy1ib3g6aG92ZXIgLnNlcnZpY2UtaW1nIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wMykgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEuMDMpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMDMpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMS4wMykgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gR09PR0xFIE1BUFMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5hY2YtbWFwLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5hY2YtbWFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDUwdmg7XG4gICAgei1pbmRleDogMDtcbn1cblxuLmFjZi1tYXAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IGluaGVyaXQgIWltcG9ydGFudDtcbn1cblxuLmFjZi1tYXAge1xuICAgIC5nbW5vcHJpbnQ6bm90KC5nbS1idW5kbGVkLWNvbnRyb2wpLFxuICAgIC5nbS1zdHlsZS1jYyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5nbW5vcHJpbnQuZ20tYnVuZGxlZC1jb250cm9sIHtcbiAgICAgICAgLmdtbm9wcmludCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFjZi1tYXAgLmdtLXN0eWxlIC5nbS1zdHlsZS1pdy1jIHtcbiAgICBwYWRkaW5nOiAyMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5hY2YtbWFwIC5nbS1zdHlsZSAuZ20tc3R5bGUtaXctZCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5tYXAgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5idG4tbWFwcy1tb2JpbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgcGFkZGluZzogMTVweCA3MHB4IDE1cHggMjVweDtcbn1cblxuLmJ0bi1tYXBzLW1vYmlsZTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMjVweDtcbiAgICB0b3A6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9pY29uLW1hcC13aGl0ZS5zdmcnKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDI2cHggMjZweDtcbiAgICBtYXJnaW4tdG9wOiAtMTMuNXB4O1xuICAgIHdpZHRoOiAyNnB4O1xuICAgIGhlaWdodDogMjZweDtcbn1cblxuLmFkZHJlc3Mtd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogLTE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogLTE1cHg7XG5cbiAgICAmLmdyaWQtYmxvY2t7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ibG9jay1pdGVtIHtcblxuICAgICAgICBwIHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdCguZ3JpZC1ibG9jaykgPiBbY2xhc3MqPVwiY29sXCJdIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgIH1cbn1cblxuLmxvZ28td3JhcHBlci5mb3JtYXRfbCB7XG5cbiAgICAmLmxvZ28tbmItMSxcbiAgICAmLmxvZ28tbmItMiB7XG5cbiAgICAgICAgLmxvZ28taXRlbSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxNTBweDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDE1MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFRBQkxFIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZm9ybWF0aW9uLWNhdCB7XG5cbiAgICAmOm50aC1sYXN0LWNoaWxkKG4rMikge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNzVweDtcbiAgICB9XG5cbiAgICAmID4gLnJvdyB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMTVweDtcblxuICAgICAgICAmID4gLmZvcm1hdGlvbi1pdGVtcyB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9ybWF0aW9uLWl0ZW1zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmLm9sZCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzAwMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDE1cHg7XG4gICAgfVxuXG4gICAgJi1jZWxsIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZDtcbiAgICAgICAgcGFkZGluZzogMjVweCAxNXB4O1xuXG4gICAgICAgICY6aG92ZXIgLmFycm93IHtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLWNhcmQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgIC5mb3JtYXRpb24tY2FyZCB7XG5cbiAgICAgICAgICAgICYtaW1hZ2Uge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDUwJTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgLmJnLXNlY3Rpb24ucGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gICAgICAgICAgICAgICAgICAgIGZpbHRlcjogYmx1cigyMHB4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuI2ZhcS1zZWFyY2gsXG4jZm9ybWF0aW9uLXNlYXJjaCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNjBweDtcbn1cblxuLmFycm93LFxuLmNhdGVnb3J5LWhlYWRlciAuYXJyb3ctYWNjb3JkaW9uLFxuLnF1ZXN0aW9uLWhlYWRlciAub3Blbi1xdWVzdGlvbixcbi5kcm9wZG93bi1sYWJlbDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYXJyb3ctdGFibGUuc3ZnKSBuby1yZXBlYXQ7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgaGVpZ2h0OiAxOHB4O1xufVxuXG4uc2VhcmNoLWljb24ge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvc2VhcmNoLXRhYmxlLnN2Zykgbm8tcmVwZWF0O1xuICAgIHdpZHRoOiAyMXB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICB6LWluZGV4OiAxMDtcbn1cblxuLmFycm93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMHB4LCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTBweCwgMCk7XG59XG5cbi5zZWFyY2gtaWNvbiB7XG4gICAgcmlnaHQ6IDE2cHg7XG4gICAgdG9wOiA1MCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbn1cblxuI2Zvcm1hdGlvbi1maWx0ZXIge1xuICAgIHotaW5kZXg6IDg4ODg7XG59XG5cbi5yb3ctc2VhcmNoIGlucHV0LFxuLmRyb3Bkb3duLXdyYXBwZXIsXG4uZHJvcGRvd24tbGFiZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDYwcHg7XG59XG5cbi5yb3ctc2VhcmNoIGlucHV0LFxuLmRyb3Bkb3duLWxhYmVsIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgICBwYWRkaW5nOiAxOXB4IDQ1cHggMTVweCAyMHB4O1xufVxuXG4ucm93LXNlYXJjaCBpbnB1dCB7XG4gICAgei1pbmRleDogMTAwO1xufVxuXG4uZHJvcGRvd24tbGFiZWwge1xuICAgIG1pbi13aWR0aDogMjUwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ucXVlc3Rpb24taGVhZGVyIC5vcGVuLXF1ZXN0aW9uLFxuLmNhdGVnb3J5LWhlYWRlciAuYXJyb3ctYWNjb3JkaW9uLFxuLmRyb3Bkb3duLWxhYmVsOjphZnRlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHJpZ2h0OiAxNXB4O1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVaKDkwZGVnKSB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZVooOTBkZWcpIHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVaKDkwZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVooOTBkZWcpIHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooOTBkZWcpIHRyYW5zbGF0ZSgtNTAlLCAwKTtcbn1cblxuLmNhdGVnb3J5LWZhcS5hY3RpdmUgLmNhdGVnb3J5LWhlYWRlciAuYXJyb3ctYWNjb3JkaW9uLFxuLnF1ZXN0aW9uLWl0ZW0uYWN0aXZlIC5xdWVzdGlvbi1oZWFkZXIgLm9wZW4tcXVlc3Rpb24sXG4uZHJvcGRvd24td3JhcHBlci5hY3RpdmUgLmRyb3Bkb3duLWxhYmVsOjphZnRlcixcbi5jbGFzcy10ZXN0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgdHJhbnNsYXRlKDUwJSwgMCkgIWltcG9ydGFudDtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgdHJhbnNsYXRlKDUwJSwgMCkgIWltcG9ydGFudDtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKSAhaW1wb3J0YW50O1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgdHJhbnNsYXRlKDUwJSwgMCkgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZSg1MCUsIDApICFpbXBvcnRhbnQ7XG59XG5cbi5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIHotaW5kZXg6IDk5OTk5O1xufVxuXG4uZHJvcGRvd24tbWVudSBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBGQVEgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5hY2NvcmRpb24tbWVudSA+IC5hY2NvcmRpb24taXRlbSA+IGhlYWRlcixcbi5hY2NvcmRpb24taXRlbS5xdWVzdGlvbi1pdGVtLFxuLmFjY29yZGlvbi1pdGVtLmNhdGVnb3J5LWZhcSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xufVxuXG4uYWNjb3JkaW9uLW1lbnUgPiAuYWNjb3JkaW9uLWl0ZW0gPiBoZWFkZXIsXG4jZmFxLXdyYXBwZXI6bm90KC5lbXB0eSkge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbn1cblxuLnF1ZXN0aW9uLWhlYWRlcixcbi5xdWVzdGlvbi1jb250YWluZXIsXG4uY2F0ZWdvcnktY29udGFpbmVyLFxuLmNhdGVnb3J5LWhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDIzcHggMTBweCAyMHB4O1xufVxuXG4ucXVlc3Rpb24taGVhZGVyLFxuLmNhdGVnb3J5LWhlYWRlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmctcmlnaHQ6IDY1cHg7XG59XG5cbi5jYXRlZ29yeS1jb250YWluZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4jZmFxLXdyYXBwZXIge1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4jZmFxLXdyYXBwZXIgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBURUFNIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5zZWN0aW9uLmludHJvZHVjdGlvbiArIHNlY3Rpb24udGVhbS1saXN0IHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB6LWluZGV4OiAxMDA7XG59XG5cbiN0ZWFtLWdyaWQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIG1hcmdpbi10b3A6IC0xNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IC0xNXB4O1xufVxuXG4udGVhbS1jYXJkLWl0ZW0ge1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xufVxuXG4udGVhbS1jYXJkLWl0ZW0gaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnRlYW0tZmlsdGVyLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDA7XG59XG5cbi50ZWFtLWNhcmQtaW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDEzMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnRlYW0tY2FyZC1pbWFnZS5uby1pbWFnZSB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvdmVydGljYWwtYWNjZXNzLWljb24td2hpdGUuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyMCUgYXV0bztcbn1cblxuLnRlYW0tY2FyZC1pbWFnZSBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdG9wOiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTQ0JSwgLTMlKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC00NCUsIC0zJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC00NCUsIC0zJSk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTQ0JSwgLTMlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNDQlLCAtMyUpO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBoZWlnaHQ6IDE4MCU7XG59XG5cbi50ZWFtLWNhcmQtaXRlbSAubGlzdC1pY29ucyB7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4udGVhbS1jYXJkLWl0ZW0gLmJ0bi1yb3VuZGVkIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgICBsaW5lLWhlaWdodDogMWVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBURUFNIE1BU09OUlkgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiN0ZWFtLWdyaWQtbWFzb25yeSB7XG4gICAgbWFyZ2luOiAtNy41cHg7XG59XG5cbi5ncmlkLXNpemVyLXRlYW0ge1xuICAgIHdpZHRoOiA4LjMzMyU7XG59XG5cbiN0ZWFtLWdyaWQtbWFzb25yeSAudGVhbS1jYXJkLXdyYXBwZXIge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAyMCU7XG59XG5cbiN0ZWFtLWdyaWQtbWFzb25yeSAudGVhbS1jYXJkLXdyYXBwZXIuc2l6ZS1iaWcge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcGFkZGluZy1ib3R0b206IDQwJTtcbn1cblxuI3RlYW0tZ3JpZC1tYXNvbnJ5LmZpbHRlciAudGVhbS1jYXJkLXdyYXBwZXIge1xuICAgIHdpZHRoOiAzMy4zMzMlO1xuICAgIHBhZGRpbmctYm90dG9tOiAzMCU7XG59XG5cbiN0ZWFtLWdyaWQtbWFzb25yeSAudGVhbS1jYXJkLWl0ZW0sXG4jdGVhbS1ncmlkLW1hc29ucnkgLnRlYW0tY2FyZC1pbmZvLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuI3RlYW0tZ3JpZC1tYXNvbnJ5IC50ZWFtLWNhcmQtaXRlbSB7XG4gICAgbGVmdDogNy41cHg7XG4gICAgcmlnaHQ6IDcuNXB4O1xuICAgIHRvcDogNy41cHg7XG4gICAgYm90dG9tOiA3LjVweDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4jdGVhbS1ncmlkLW1hc29ucnkgLnRlYW0tY2FyZC1pbWFnZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbiN0ZWFtLWdyaWQtbWFzb25yeSAudGVhbS1jYXJkLWluZm8td3JhcHBlciB7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcGFkZGluZzogMTVweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEdBTExFUlkgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5ncmlkLXNpemVyLWdhbGxlcnkge1xuICAgIHdpZHRoOiA4LjMzMyU7XG59XG5cbi5ncmlkLWl0ZW0tZ2FsbGVyeSB7XG4gICAgd2lkdGg6IDMzLjMzMyU7XG4gICAgcGFkZGluZy1ib3R0b206IDIwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5ncmlkLWl0ZW0tZ2FsbGVyeS5iaWcge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcGFkZGluZy1ib3R0b206IDQwJTtcbn1cblxuLmdyaWQtaXRlbS1nYWxsZXJ5Lm1lZGl1bSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBQUkVTUyBNT1NBSUMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5tb3NhaWMgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB6LWluZGV4OiAwO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBGT1JNUyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuZm9ybSwgZmllbGRzZXQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuaW5wdXQsIHRleHRhcmVhLCBzZWxlY3QsIGJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYXBwZWFyYW5jZTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmUgIWltcG9ydGFudDtcbn1cblxudGV4dGFyZWEge1xuICAgIHJlc2l6ZTogbm9uZTtcbiAgICBoZWlnaHQ6IDE4MHB4O1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xufVxuXG5zZWxlY3Q6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5yb3ctZm9ybSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMTBweCAwO1xufVxuXG4ucm93LWZvcm0gKyAucm93LWZvcm0ge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbmZvcm0gLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTEwcHg7XG59XG5cbmZvcm0gW2NsYXNzKj1cImNvbFwiXSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbi5yb3ctc2VhcmNoIHtcbiAgICBtYXJnaW46IDA7XG59XG5cbi5yb3ctZm9ybSA+IGxhYmVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMjBweCAwIDAgMjBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMDtcbn1cblxuLnJvdy1mb3JtLnJvdy1mb3JtLXRleHRhcmVhID4gbGFiZWwge1xuICAgIGxlZnQ6IDFweDtcbiAgICByaWdodDogMXB4O1xuICAgIHRvcDogMXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA3cHg7XG59XG5cbi5yb3ctZm9ybS5mb2N1cy1sYWJlbCBsYWJlbDpub3QoLm5vLWVmZmVjdCkge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBwYWRkaW5nLXRvcDogMTVweCAhaW1wb3J0YW50O1xufVxuXG4ucm93LWZvcm0ucm93LWZvcm0tdGV4dGFyZWEuZm9jdXMtbGFiZWwgPiBsYWJlbDpub3QoLm5vLWVmZmVjdCkge1xuICAgIHotaW5kZXg6IDEwMDtcbn1cblxuLnJvdy1mb3JtOm5vdCgucm93LWZvcm0tc3VibWl0KTpub3QoLnJvdy1zZWFyY2gpIGlucHV0LCAucm93LWZvcm0gc2VsZWN0LCAucm93LWZvcm0gdGV4dGFyZWEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMzBweCAyMHB4IDEwcHg7XG4gICAgei1pbmRleDogMTtcbn1cblxuLnJvdy1mb3JtIHRleHRhcmVhIHtcbiAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbn1cblxuLnJvdy1mb3JtLXN1Ym1pdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucm93LWZvcm0tc3VibWl0IGlucHV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHotaW5kZXg6IDEwO1xufVxuXG5kaXYud3BjZjcge1xuICAgIC5saW5rLWl0ZW0ge1xuICAgICAgICAuYWpheC1sb2FkZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvbG9hZGluZy5naWYnKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyNnB4IGF1dG87XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDNweDtcbiAgICAgICAgICAgIHJpZ2h0OiA0cHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB6LWluZGV4OiAwO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZvcm0uc3VibWl0dGluZyB7XG4gICAgICAgIC5saW5rLWl0ZW0ge1xuICAgICAgICAgICAgLmFqYXgtbG9hZGVyIHtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yb3ctZm9ybS1zZWxlY3QgbGFiZWwge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDU1cHg7XG59XG5cbi5yb3ctZm9ybS1zZWxlY3Qgc2VsZWN0IHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDk5O1xufVxuXG4ucm93LWZvcm0tc2VsZWN0IGxhYmVsOmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxNXB4O1xuICAgIHRvcDogNTAlO1xuICAgIGhlaWdodDogNTAlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gICAgei1pbmRleDogMDtcbn1cblxuLnJvdy1mb3JtLWNoZWNrYm94IC53cGNmNy1saXN0LWl0ZW0sXG4ucm93LWZvcm0tY2hlY2tib3ggaW5wdXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4ucm93LWZvcm0tY2hlY2tib3ggbGFiZWwsXG4ucm93LWZvcm0tcmFkaW8gbGFiZWwge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDAgMCA1cHg7XG4gICAgcGFkZGluZzogMjRweCAyMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnJvdy1mb3JtLWNoZWNrYm94IGxhYmVsOmJlZm9yZSxcbi5yb3ctZm9ybS1jaGVja2JveCBsYWJlbDphZnRlcixcbi5yb3ctZm9ybS1yYWRpbyBsYWJlbDpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAyMHB4O1xuICAgIHRvcDogNTAlO1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBtYXJnaW46IC0xMHB4IDAgMDtcbn1cblxuLnJvdy1mb3JtLWNoZWNrYm94IGxhYmVsOmJlZm9yZSxcbi5yb3ctZm9ybS1yYWRpbyBsYWJlbDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG59XG5cbi5yb3ctZm9ybS1jaGVja2JveC5jaGVja2VkIGxhYmVsOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcMDBkN1wiO1xuICAgIG1hcmdpbi1sZWZ0OiAuNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucm93LWZvcm0tY2hlY2tib3ggLndwY2Y3LWNoZWNrYm94LFxuLnJvdy1mb3JtLWNoZWNrYm94ICNub2Fuc3dlcixcbi5yb3ctZm9ybS1yYWRpbyBpbnB1dCxcbi5yb3ctZm9ybS1pY29uIGlucHV0LCAucm93LWZvcm0taWNvbiAud3BjZjctbGlzdC1pdGVtLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgei1pbmRleDogLTE7XG59XG5cbi5yb3ctZm9ybS1jaGVja2JveCAubGFiZWwtdGV4dCxcbi5yb3ctZm9ybS1yYWRpbyAud3BjZjctbGlzdC1pdGVtLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDM3cHg7XG59XG5cbi5yb3ctZm9ybS1jaGVja2JveCAuaWYtY2hlY2tlZCxcbi5yb3ctZm9ybS1jaGVja2JveC5jaGVja2VkIC5pZi11bmNoZWNrZWQsXG4ucm93LWZvcm0tY2hlY2tib3ggLndwY2Y3LWxpc3QtaXRlbS1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLnJvdy1mb3JtLWNoZWNrYm94LmNoZWNrZWQgLmlmLWNoZWNrZWQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnJvdy1mb3JtLXJhZGlvIC53cGNmNy1mb3JtLWNvbnRyb2wtd3JhcCxcbi5yb3ctZm9ybS1yYWRpbyAud3BjZjctZm9ybS1jb250cm9sLFxuLnJvdy1mb3JtLXJhZGlvIC53cGNmNy1saXN0LWl0ZW0sXG4ucm93LWZvcm0tcmFkaW8gbGFiZWwsXG4ucm93LWZvcm0taWNvbiAud3BjZjctZm9ybS1jb250cm9sLXdyYXAsXG4ucm93LWZvcm0taWNvbiAud3BjZjctZm9ybS1jb250cm9sLFxuLnJvdy1mb3JtLWljb24gLndwY2Y3LWxpc3QtaXRlbSxcbi5yb3ctZm9ybS1pY29uIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5yb3ctZm9ybS1yYWRpbyAud3BjZjctbGlzdC1pdGVtIHtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xufVxuXG4ucm93LWZvcm0tcmFkaW8gLndwY2Y3LWxpc3QtaXRlbS5sYXN0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kaXYjbWZjZjdfemxfbXVsdGlmaWxlY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cblxuZGl2I21mY2Y3X3psX211bHRpZmlsZWNvbnRhaW5lciBwIHtcbiAgICBtYXJnaW46IDAgMCAzMHB4ICFpbXBvcnRhbnQ7XG59XG5cblxuLnJvdy1mb3JtIC53cGNmNy1mb3JtLWNvbnRyb2wtd3JhcCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5yb3ctZm9ybSBzcGFuLndwY2Y3LW5vdC12YWxpZC10aXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiA1cHggMCAwIDA7XG59XG5cbmRpdi53cGNmNyBkaXYud3BjZjctcmVzcG9uc2Utb3V0cHV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG1hcmdpbjogMzBweCAwIDA7XG4gICAgcGFkZGluZzogMTVweDtcbn1cblxuLmdyZWNhcHRjaGEtYmFkZ2UsIC5ncmVjYXB0Y2hhLWJhZGdlICoge1xuICAgIHdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB6LWluZGV4OiAtOTk5OSAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBGT09URVIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiNmb290ZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbiNmb290ZXIsXG4jZm9vdGVyIC5sb2dvLWZvb3RlcixcbiNmb290ZXIgLmNyZWRpdHMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDA7XG59XG5cbiNmb290ZXIgLmxvZ28tZm9vdGVyIGEsXG4jZm9vdGVyIC5sb2dvLWZvb3RlciBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4jZm9vdGVyIC5jb250ZW50LXdyYXBwZXIgLmJnLXNlY3Rpb24ge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAtMTAwMCU7XG4gICAgd2lkdGg6IDEwMDAwMDAlO1xuICAgIGhlaWdodDogMTAwMDAwMCU7XG59XG5cbi5sb2dvLWZvb3RlciBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLmxvZ28tY2FydG91Y2hlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ucHJlLWZvb3RlciB7XG4gICAgcGFkZGluZy10b3A6IDEzMHB4O1xufVxuXG4jZm9vdGVyIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBPUEFDSVRZIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ub3BhY2l0eS0wLFxuLm1vYmlsZS1tZW51LFxuI21haW4tbWVudSAubWVudS1pdGVtOm5vdCguaG92ZXItc3RlcDIpIC5zdWItbWVudSxcbmJvZHkubWVudS1vcGVuZWQtc3RlcDIgLm1lbnUtbGluZS0zIHtcbiAgICBvcGFjaXR5OiAwLjA7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xuICAgIC1tcy1maWx0ZXI6IFwicHJvZGlnOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MClcIjtcbiAgICAtbW96LW9wYWNpdHk6IDAuMDtcbiAgICAta2h0bWwtb3BhY2l0eTogMC4wO1xufVxuXG4ub3BhY2l0eS00MCxcbi5jYXRlZ29yeS1mYXEuYWN0aXZlIC5jYXRlZ29yeS1oZWFkZXIsXG4ucHJvamVjdC1ib3g6bm90KC5hY3RpdmUpIC5oZWFkZXItcHJvamVjdCB7XG4gICAgb3BhY2l0eTogMC40ICFpbXBvcnRhbnQ7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTQwKSAhaW1wb3J0YW50O1xuICAgIC1tcy1maWx0ZXI6IFwicHJvZGlnOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9NDApXCIgIWltcG9ydGFudDtcbiAgICAtbW96LW9wYWNpdHk6IDAuNCAhaW1wb3J0YW50O1xuICAgIC1raHRtbC1vcGFjaXR5OiAwLjQgIWltcG9ydGFudDtcbn1cblxuLm9wYWNpdHktNiB7XG4gICAgb3BhY2l0eTogMC42ICFpbXBvcnRhbnQ7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTYwKSAhaW1wb3J0YW50O1xuICAgIC1tcy1maWx0ZXI6IFwicHJvZGlnOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9NjApXCIgIWltcG9ydGFudDtcbiAgICAtbW96LW9wYWNpdHk6IDAuNiAhaW1wb3J0YW50O1xuICAgIC1raHRtbC1vcGFjaXR5OiAwLjYgIWltcG9ydGFudDtcbn1cblxuLmZhbmN5Ym94LWlzLW9wZW4gLmZhbmN5Ym94LWJnIHtcbiAgICBvcGFjaXR5OiAuOTUgIWltcG9ydGFudDtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9OTUpICFpbXBvcnRhbnQ7XG4gICAgLW1zLWZpbHRlcjogXCJwcm9kaWc6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT05NSlcIiAhaW1wb3J0YW50O1xuICAgIC1tb3otb3BhY2l0eTogLjk1ICFpbXBvcnRhbnQ7XG4gICAgLWtodG1sLW9wYWNpdHk6IC45NSAhaW1wb3J0YW50O1xufVxuXG4ub3BhY2l0eS0xMDAsXG4uZm9jdXMtbGFiZWwgc3BhbixcbmJvZHkubWVudS1vcGVuZWQtc3RlcDIgLm1vYmlsZS1tZW51LFxuYm9keS5wYWdlLXNjcm9sbGVkLnNjcm9sbGluZy10by10b3A6bm90KC5lbmQtcGFnZSkgLmNvbnRhY3QtbW9iaWxlLm9wYWNpdHktMCxcbmJvZHkubWVudS1vcGVuZWQtc3RlcDIgLmNvbnRhY3QtbW9iaWxlLm9wYWNpdHktMCxcbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsXG5odG1sLm5vLXRvdWNoZXZlbnRzIC5wcm9qZWN0LWJveDpub3QoLmFjdGl2ZSkgLmhlYWRlci1wcm9qZWN0OmhvdmVyLFxuaHRtbC5uby10b3VjaGV2ZW50cyAucHJvamVjdC1ib3g6bm90KC5hY3RpdmUpIC5oZWFkZXItcHJvamVjdDpob3ZlciAuYXJyb3cub3BhY2l0eS0wLFxuaHRtbC5uby10b3VjaGV2ZW50cyAudGVhbS1jYXJkLXdyYXBwZXI6aG92ZXIgLnRlYW0tY2FyZC1pbmZvLXdyYXBwZXIub3BhY2l0eS0wLFxuaHRtbC50b3VjaGV2ZW50cyAudGVhbS1jYXJkLXdyYXBwZXIuaG92ZXIgLnRlYW0tY2FyZC1pbmZvLXdyYXBwZXIub3BhY2l0eS0wIHtcbiAgICBvcGFjaXR5OiAxLjAgIWltcG9ydGFudDtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MTAwKSAhaW1wb3J0YW50O1xuICAgIC1tcy1maWx0ZXI6IFwicHJvZGlnOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MTAwKVwiICFpbXBvcnRhbnQ7XG4gICAgLW1vei1vcGFjaXR5OiAxLjAgIWltcG9ydGFudDtcbiAgICAta2h0bWwtb3BhY2l0eTogMS4wICFpbXBvcnRhbnQ7XG59IiwiLmZjIHtcbiAgICAmLFxuICAgICYuc2l6ZS1oNSAuZmMtYnV0dG9uLFxuICAgICYuc2l6ZS1oNSB0YWJsZSxcbiAgICAmLnNpemUtaDUgLmZjLXRvb2xiYXItdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IGluaXRpYWw7XG4gICAgfVxuXG4gICAgLmZjLWV2ZW50LFxuICAgIC5mYy1oLWV2ZW50LFxuICAgIC5mYy1idXR0b24tcHJpbWFyeXtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzEyNDczNCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMTI0NzM0ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJixcbiAgICAgICAgLmZjLWV2ZW50LW1haW4ge1xuICAgICAgICAgICAgY29sb3I6ICNGRkYgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpkaXNhYmxlZCk6bm90KC51bmF2YWlsYWJsZSk6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZmMtbGlzdC1ldmVudDpob3ZlciB0ZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmZjLWV2ZW50LnVuYXZhaWxhYmxlLFxuICAgIC5mYy1oLWV2ZW50LnVuYXZhaWxhYmxlLFxuICAgIC5mYy1kYXktcGFzdCAuZmMtZXZlbnQsXG4gICAgLmZjLWRheS1wYXN0IC5mYy1oLWV2ZW50IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0YzRjRGMyAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItY29sb3I6ICNGM0Y0RjMgIWltcG9ydGFudDtcblxuICAgICAgICAmLFxuICAgICAgICAuZmMtZXZlbnQtbWFpbiB7XG4gICAgICAgICAgICBjb2xvcjogcmdiYSgjMTI0NzM0LCAuNSkgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mYy10b29sYmFyLmZjLWhlYWRlci10b29sYmFyIHtcblxuICAgICAgICAuZmMtdG9vbGJhci1jaHVuayB7XG4gICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgLW1zLWZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAtbXMtZmxleC1hbGlnbjogZW5kICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mYy1jdXN0b21UaXRsZS1idXR0b24ge1xuICAgICAgICAgICAgLW1zLWZsZXg6IDAgMCAxMDAlO1xuICAgICAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuZmMtdG9vbGJhci10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMWVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZjLWJ1dHRvbi1ncm91cCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mYy10b2RheS1idXR0b24sIC5mYy1jdXN0b21EYXRlU2VsZWN0LWJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZjLWRheWdyaWQtZGF5LmZjLWRheS10b2RheSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGM0Y0RjMgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuZmMtYnV0dG9uIHtcblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuMiAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJi1wcmltYXJ5IHtcblxuICAgICAgICAgICAgJi5mYy1jdXN0b21UaXRsZS1idXR0b24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICAmLFxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mYy1kYXkge1xuICAgICAgICAmLXBhc3QsXG4gICAgICAgICYtb3RoZXIge1xuICAgICAgICAgICAgLmZjLWRheWdyaWQtZGF5LXRvcCB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mYy1oLWV2ZW50IHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLXBhc3Qge1xuICAgICAgICAgICAgJixcbiAgICAgICAgICAgICoge1xuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZmMtZXZlbnQge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOXB4O1xuICAgICAgICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgJi5mYy1kYXlncmlkLWV2ZW50IHtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZmMtZGF5Z3JpZC1ldmVudC1kb3Qge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5mYy1oLWV2ZW50LFxuICAgIC5mYy1kYXlncmlkLWRvdC1ldmVudCB7XG4gICAgICAgIC5mYy1ldmVudC10aW1lLFxuICAgICAgICAuZmMtZXZlbnQtdGl0bGUge1xuICAgICAgICAgICAgcGFkZGluZzogMXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmZjLWV2ZW50LXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBpbml0aWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZjLWJ1dHRvbi5mYy1jdXN0b21EYXRlU2VsZWN0LWJ1dHRvbiB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAtbXMtdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAtby10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAuZm9ybWF0aW9uICsgLmZvcm1hdGlvbi1jYWxlbmRhciB7XG4gICAgICAgIG1hcmdpbi10b3A6IC01MHB4O1xuICAgIH1cblxuICAgIC5mYyB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuXG4gICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuZmMtdG9vbGJhci5mYy1oZWFkZXItdG9vbGJhciB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAtbXMtZmxleC1hbGlnbjogc3RhcnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgICAgICAgICAgIC1tcy1mbGV4OiAwIDAgMjUlO1xuICAgICAgICAgICAgZmxleDogMCAwIDI1JTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjUlO1xuXG4gICAgICAgICAgICAuZmMtdG9kYXktYnV0dG9uLCAuZmMtY3VzdG9tRGF0ZVNlbGVjdC1idXR0b24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZjLXZpZXctaGFybmVzcyB7XG4gICAgICAgICAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMDtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgICAtbXMtZmxleC1wb3NpdGl2ZTogMTtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5mYyB7XG4gICAgICAgIC5mYy10b29sYmFyLmZjLWhlYWRlci10b29sYmFyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGVuZCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIC5mYy10b29sYmFyLXRpdGxlIHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDE0MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmMtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcblxuICAgICAgICAgICAgICAgICYuZmMtdG9kYXktYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmMtdG9kYXktYnV0dG9uLCAuZmMtY3VzdG9tRGF0ZVNlbGVjdC1idXR0b24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTAwcHgpIHtcbiAgICAuZmMge1xuICAgICAgICAuZmMtdG9vbGJhci5mYy1oZWFkZXItdG9vbGJhciB7XG4gICAgICAgICAgICAuZmMtdG9kYXktYnV0dG9uLCAuZmMtY3VzdG9tRGF0ZVNlbGVjdC1idXR0b24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIC1tcy1mbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAbWVkaWEobWluLXdpZHRoOiAxODAxcHgpIHtcbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQ09NTU9OIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5jb250ZW50LXdyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTYwMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBGT1JNQVRJT04gJiBGQU5DWUJPWCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAuZmFuY3lib3gtY29udGVudCA+IHNlY3Rpb24ge1xuICAgIHBhZGRpbmctbGVmdDogMTAwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTAwcHg7XG4gIH1cbn1cblxuQG1lZGlhKG1heC13aWR0aDogMTgwMHB4KSB7XG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEZPTlRTIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5mb290ZXItc2VydmljZXMtaXRlbSBoMiwgLmZvb3Rlci1zZXJ2aWNlcy1pdGVtIC5zdHlsZS1oMixcbiAgLm1hcCBoMiwgLm1hcCAuc3R5bGUtaDIge1xuICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIENPTU1PTiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAuY29udGVudC13cmFwcGVyIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuY29udGVudC13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMTAwcHg7XG4gIH1cbiAgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMDBweDtcbiAgfVxuXG4gIC5kb3dubG9hZC1pdGVtLWNvbnRhaW5lcixcbiAgLmRvd25sb2FkLWl0ZW0tY29udGFpbmVyLm9uZS1pdGVtLFxuICAuYmxvY2staXRlbSxcbiAgLnJlc3VtZS1sb25nLWNvbnRhaW5lcixcbiAgLnByb2plY3QtY2FyZC1jb250YWluZXIsXG4gIC5zZXJ2aWNlcy1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDUwcHggNzBweDtcbiAgfVxuXG4gIHNlY3Rpb24udGV4dC1iZy1mdWxsd2lkdGgge1xuICAgIHBhZGRpbmctdG9wOiAxNTBweDtcbiAgfVxuICAucHJlLWZvb3RlciB7XG4gICAgcGFkZGluZy10b3A6IDc1cHg7XG4gIH1cbiAgc2VjdGlvbi50aXRsZTpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gIH1cbiAgc2VjdGlvbi50ZXh0LWJnLWZ1bGx3aWR0aCB7XG4gICAgcGFkZGluZy1ib3R0b206IDE1MHB4O1xuICB9XG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gSEVBREVSIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gICNtYWluLW1lbnUgPiB1bCA+IGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogNTBweDtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIExJU1RFIExPR09TIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5sb2dvLXdyYXBwZXIuZm9ybWF0X2wge1xuICAgIG1hcmdpbi1sZWZ0OiA3MHB4O1xuICAgIG1hcmdpbi1yaWdodDogNzBweDtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEZPUk1BVElPTiAmIEZBTkNZQk9YIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5mYW5jeWJveC1jb250ZW50ID4gc2VjdGlvbiB7XG4gICAgcGFkZGluZzogMTAwcHggMDtcbiAgfVxuXG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gU0VSVklDRVMgRk9PVEVSIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5mb290ZXItc2VydmljZXMgZmlndXJlIC5iZy1zZWN0aW9uIHtcbiAgICB3aWR0aDogY2FsYygoKDEwMHZ3IC0gMjAwcHgpIC8gMykgKyAxMDBweCk7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgfVxufVxuXG5AbWVkaWEobWluLXdpZHRoOiAxNDAxcHgpIHtcbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gVEVBTSBNQVNPTlJZIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gICN0ZWFtLWdyaWQtbWFzb25yeSAudGVhbS1jYXJkLXdyYXBwZXIuc2l6ZS1iaWcgLnRlYW0tY2FyZC1pbmZvLXdyYXBwZXIge1xuICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhKG1heC13aWR0aDogMTQwMHB4KSB7XG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIENPTU1PTiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAuY29udGVudC13cmFwcGVyIHtcbiAgICBtYXJnaW4tbGVmdDogNTBweDtcbiAgfVxuICAuY29udGVudC13cmFwcGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7XG4gIH1cblxuICBzZWN0aW9uLnRpdGxlOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEhFQURFUiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAjZm9vdGVyLW1lbnUgPiB1bCA+IGxpOm5vdCg6bGFzdC1jaGlsZCksXG4gICNtYWluLW1lbnUgPiB1bCA+IGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogNDBweDtcbiAgfVxuICAjY29udGFjdC1oZWFkZXIgPiB1bCA+IGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFRFQU0gTUFTT05SWSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAuZ3JpZC1zaXplci10ZWFtLFxuICAjdGVhbS1ncmlkLW1hc29ucnkgLnRlYW0tY2FyZC13cmFwcGVyLFxuICAjdGVhbS1ncmlkLW1hc29ucnkgLnRlYW0tY2FyZC13cmFwcGVyLnNpemUtYmlnLFxuICAjdGVhbS1ncmlkLW1hc29ucnkuZmlsdGVyIC50ZWFtLWNhcmQtd3JhcHBlciB7XG4gICAgd2lkdGg6IDMzLjMzMyU7XG4gIH1cbiAgI3RlYW0tZ3JpZC1tYXNvbnJ5IC50ZWFtLWNhcmQtd3JhcHBlcixcbiAgI3RlYW0tZ3JpZC1tYXNvbnJ5IC50ZWFtLWNhcmQtd3JhcHBlci5zaXplLWJpZyxcbiAgI3RlYW0tZ3JpZC1tYXNvbnJ5LmZpbHRlciAudGVhbS1jYXJkLXdyYXBwZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAzMCU7XG4gIH1cbn1cblxuQG1lZGlhKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEdFTkVSQUwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgLmhpZGRlbi14bC11cCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQ09OVEVOVSBFTiBCTE9DSyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAuYmxvY2staW1nLWNvbnRlbnQtd3JhcHBlciB7XG4gICAgbWluLWhlaWdodDogNDAwcHg7XG4gIH1cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBURUFNIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIHNlY3Rpb24uaW50cm9kdWN0aW9uICsgc2VjdGlvbi50ZWFtLWxpc3Q6bm90KC5uby1maWx0ZXIpIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuICBzZWN0aW9uLmludHJvZHVjdGlvbiArIHNlY3Rpb24udGVhbS1saXN0IC50ZWFtLWZpbHRlci13cmFwcGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtOTBweCk7XG4gIH1cbiAgc2VjdGlvbi5pbnRyb2R1Y3Rpb24gKyBzZWN0aW9uLnRlYW0tbGlzdCAudGVhbS1maWx0ZXItd3JhcHBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTgyLjVweDtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFBST0pFQ1QgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgI3Byb2plY3QtbW9iaWxlLW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgYm9keS5wcm9qZWN0LW1lbnUtdG9wIC5hY2NvcmRpb24tbWVudSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMzBweDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgYm9keS5wcm9qZWN0LW1lbnUtdG9wLnNjcm9sbGluZy10by10b3AgLmFjY29yZGlvbi1tZW51IHtcbiAgICB0b3A6IDE0MHB4O1xuICB9XG5cbiAgYm9keS5wcm9qZWN0LW1lbnUtYm90dG9tIC5hY2NvcmRpb24tbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgYm90dG9tOiAwO1xuICB9XG5cbiAgLm1lbnUtcHJvamVjdC5zY3JvbGwtbWVudSAuYWNjb3JkaW9uLW1lbnUge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEZPUk1BVElPTiAmIEZBTkNZQk9YIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5pbnRyb2R1Y3Rpb24gKyAuZm9ybWF0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAtNjBweDtcbiAgfVxufVxuXG5AbWVkaWEobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gR0VORVJBTCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAuaGlkZGVuLWxnLWRvd24ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5hbmNob3Ige1xuICAgIHRvcDogMDtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIENPTE9SUyAmIEJBQ0tHUk9VTkRTIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5mb290ZXItc2VydmljZXMuYmctd2hpdGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGM0Y0RjMgIWltcG9ydGFudDtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEZPTlRTIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIGgxLCAuc3R5bGUtaDEge1xuICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgfVxuICBoMiwgLnN0eWxlLWgyLFxuICAubGluay1pdGVtLW5vbGlzdCBhOm5vdCguc3R5bGUtaDQpLFxuICAubGluay1pdGVtIGE6bm90KC5zdHlsZS1oNCksXG4gIGJsb2NrcXVvdGUgLnN0eWxlLWgxIHtcbiAgICBmb250LXNpemU6IDM1cHg7XG4gIH1cbiAgaDMsIC5zdHlsZS1oMyxcbiAgYmxvY2txdW90ZSAuc3R5bGUtaDIsXG4gIC5zbGlkZXItcXVvdGVzIC5saW5rLWl0ZW0gYSxcbiAgLm1hcCBoMiwgLm1hcCAuc3R5bGUtaDIsXG4gIC5mYy5zaXplLWg1IC5mYy1idXR0b24uZmMtY3VzdG9tVGl0bGUtYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDI1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuM2VtO1xuICB9XG5cbiAgLnRleHQtbGVmdC1sZyB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICB9XG4gIC50ZXh0LXJpZ2h0LWxnIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICB9XG4gIC50ZXh0LWNlbnRlci1sZyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBDT01NT04gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgLmRvd25sb2FkLWl0ZW0tY29udGFpbmVyLFxuICAuZG93bmxvYWQtaXRlbS1jb250YWluZXIub25lLWl0ZW0sXG4gIC5ibG9jay1pdGVtLFxuICAuYmxvY2staW1nLWNvbnRlbnQtd3JhcHBlcixcbiAgLnNlcnZpY2VzLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG4gIC5kb3dubG9hZC1pdGVtLWNvbnRhaW5lcixcbiAgLmRvd25sb2FkLWl0ZW0tY29udGFpbmVyLm9uZS1pdGVtLFxuICAuYmxvY2staXRlbSxcbiAgLmJsb2NrLWltZy1jb250ZW50LXdyYXBwZXIsXG4gIC5zZXJ2aWNlcy1jb250YWluZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbiAgc2VjdGlvbixcbiAgI2Zvb3RlciAuY29udGVudC13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gIH1cbiAgLmJsb2NrLWltZy1jb250ZW50LXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA3MHB4O1xuICB9XG4gIHNlY3Rpb24uaW50cm9kdWN0aW9uLnBhZGRpbmctYmxvY2tzIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjAwcHg7XG4gIH1cbiAgc2VjdGlvbixcbiAgLnRleHQtZm9vdGVyLXNlcnZpY2VzIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gIH1cbiAgLnRlYW0tZmlsdGVyLXdyYXBwZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA3NXB4O1xuICB9XG4gIC5ibG9jay1pbWctY29udGVudC13cmFwcGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzBweDtcbiAgfVxuICAjcHJvamVjdC1pbnRybyB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIH1cblxuICAucHJvamVjdC1jYXJkLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIH1cblxuICAuY29udGVudC1jb2x1bW4gKyAucmVzdW1lLWxvbmcuYmctbGlnaHQge1xuICAgIG1hcmdpbi10b3A6IC01MHB4O1xuICB9XG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gSEVBREVSIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gICNtYWluLW1lbnUgPiB1bCA+IGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIExJU1RFIExPR09TIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5sb2dvLXdyYXBwZXIuZm9ybWF0X2wge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgICYgPiAucm93IHtcbiAgICAgIG1hcmdpbi10b3A6IC0zMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTMwcHg7XG5cbiAgICAgIC5sb2dvLWl0ZW0ge1xuICAgICAgICB3aWR0aDogMTUlO1xuICAgICAgICBtYXgtd2lkdGg6IDE1JTtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIG1heC13aWR0aDogMTE1cHg7XG4gICAgICAgICAgbWF4LWhlaWdodDogNzJweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYubG9nby1uYi0xLFxuICAgICYubG9nby1uYi0yIHtcblxuICAgICAgLmxvZ28taXRlbSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEyMHB4O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiAxMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5sb2dvLXNsaWRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gUFJPSkVDVCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICBib2R5LnNpbmdsZSAjcHJvamVjdC1pbnRybyxcbiAgYm9keS5zaW5nbGUgI3Byb2plY3QtbW9iaWxlLW1lbnUsXG4gIGJvZHkuYXJjaGl2ZSAuYWNjb3JkaW9uLW1lbnUgPiAuYWNjb3JkaW9uLWl0ZW0gPiBoZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgI3Byb2plY3QtbmF2IC5wcm9qZWN0LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgYm9keS5hcmNoaXZlIC5wcm9qZWN0LWJveC5hY3RpdmUge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIGJvZHkuYXJjaGl2ZSAjY29udGFpbnMtcHJvamVjdCB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxuXG4gIC5hY2NvcmRpb24tbWVudSA+IC5hY2NvcmRpb24taXRlbSA+IGhlYWRlciB7XG4gICAgbWFyZ2luLXRvcDogMnB4O1xuICB9XG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gU1dJUEVSIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5zd2lwZXItcGFnaW5hdGlvbiB7XG4gICAgbGVmdDogMTAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBGT1JNQVRJT04gJiBGQU5DWUJPWCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAuaW50cm9kdWN0aW9uICsgLmZvcm1hdGlvbiAjZm9ybWF0aW9uLXNlYXJjaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIH1cblxuICAuZmFuY3lib3gtc2xpZGUtLWh0bWwgLmZhbmN5Ym94LWNsb3NlLXNtYWxsIHtcbiAgICByaWdodDogMjVweCAhaW1wb3J0YW50O1xuICAgIHRvcDogMjVweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gT1BBQ0lUWSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICBib2R5LmFyY2hpdmUgLnByb2plY3QtYm94IC5oZWFkZXItcHJvamVjdCxcbiAgaHRtbC5uby10b3VjaGV2ZW50cyBib2R5LmFyY2hpdmUgLnByb2plY3QtYm94IC5oZWFkZXItcHJvamVjdDpob3ZlciAuYXJyb3cub3BhY2l0eS0wIHtcbiAgICBvcGFjaXR5OiAxLjAgIWltcG9ydGFudDtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MTAwKSAhaW1wb3J0YW50O1xuICAgIC1tcy1maWx0ZXI6IFwicHJvZGlnOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MTAwKVwiICFpbXBvcnRhbnQ7XG4gICAgLW1vei1vcGFjaXR5OiAxLjAgIWltcG9ydGFudDtcbiAgICAta2h0bWwtb3BhY2l0eTogMS4wICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gR0VORVJBTCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAuaGlkZGVuLWxnLXVwLFxuICAuZm9ybWF0aW9uLXBhZ2UgYXNpZGUgPiAucm93ID4gW2NsYXNzKj1cImNvbC1cIl06Zmlyc3QtY2hpbGQgPiBbY2xhc3MqPVwicGFkZGluZy1cIl0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIGJsb2NrcXVvdGUgcDpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gIH1cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBQUk9KRUNUIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5wcm9qZWN0LWRlc2NyaXB0aW9uIHAge1xuICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAyO1xuICAgIC1tb3otY29sdW1uLWNvdW50OiAyO1xuICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAtd2Via2l0LWNvbHVtbi1nYXA6IDMwcHg7XG4gICAgLW1vei1jb2x1bW4tZ2FwOiAzMHB4O1xuICAgIGNvbHVtbi1nYXA6IDMwcHg7XG4gIH1cbn1cblxuQG1lZGlhKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gR0VORVJBTCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAuaGlkZGVuLW1kLWRvd24ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEZPTlRTIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC50ZXh0LWJnLWZ1bGx3aWR0aCBwLFxuICBzZWN0aW9uLnRleHQtYmctZnVsbHdpZHRoIC5saW5rLWl0ZW0gYSxcbiAgc2VjdGlvbi5pbnRyb2R1Y3Rpb24gLmxpbmstaXRlbSBhLFxuICAuZm9vdGVyLXNlcnZpY2VzLWl0ZW0gaDIsIC5mb290ZXItc2VydmljZXMtaXRlbSAuc3R5bGUtaDIge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBsaW5lLWhlaWdodDogMS4zZW07XG4gIH1cbiAgaDQsIC5zdHlsZS1oNCxcbiAgYm9keSxcbiAgLmxpbmstaXRlbSA+IHNwYW4gaW5wdXQsXG4gIHNlY3Rpb24uY29udGVudC1jb2x1bW4gLmxpbmstaXRlbSBhLFxuICBzZWN0aW9uLnByb2plY3QgLmxpbmstaXRlbSBhLFxuICBzZWN0aW9uLmZvcm1hdGlvbiAubGluay1pdGVtIGEsXG4gICNtYWluLW1lbnUgdWwgbGksXG4gIC5wcm9qZWN0LWNhcmQtY29udGFpbmVyIHNwYW4sXG4gIC5wcm9qZWN0LWRlc2NyaXB0aW9uIHAuc2l6ZS1oNSB7XG4gICAgZm9udC1zaXplOiAyMXB4O1xuICB9XG4gIGg1LCAuc3R5bGUtaDUsXG4gIC5zaXplLWg1LFxuICAucHJlLWZvb3RlcixcbiAgLmFkcmVzcy1mb290ZXIsXG4gIC5yZXN1bWUtbG9uZy1jb250YWluZXIgcCxcbiAgLmRyb3Bkb3duLWxhYmVsLFxuICAucXVlc3Rpb24tY29udGFpbmVyLFxuICAucm93LWZvcm0gbGFiZWwsXG4gIC5yb3ctZm9ybS5yb3ctc2VhcmNoIGlucHV0LFxuICBkaXYud3BjZjcgZGl2LndwY2Y3LXJlc3BvbnNlLW91dHB1dCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG5cbiAgLnRleHQtbGVmdC1tZCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICB9XG4gIC50ZXh0LXJpZ2h0LW1kIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICB9XG4gIC50ZXh0LWNlbnRlci1tZCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmJsb2NrLWl0ZW0gdWwge1xuICAgIG1hcmdpbi1sZWZ0OiAxOXB4O1xuICB9XG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQ09NTU9OIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5jb250ZW50LXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICB9XG4gIC5jb250ZW50LXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMjVweDtcbiAgfVxuXG4gIC5saW5lLWxpZ2h0IHtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIH1cbiAgc2VjdGlvbi5pbnRyb2R1Y3Rpb24gKyBzZWN0aW9uLnJlc3VtZS1sb25nLFxuICBzZWN0aW9uLmludHJvZHVjdGlvbiArIHNlY3Rpb24uY29udGVudC1ibG9jay5ibG9jay1pbWcsXG4gIHNlY3Rpb24uaW50cm9kdWN0aW9uICsgc2VjdGlvbi5wcm9qZWN0IHtcbiAgICBtYXJnaW4tdG9wOiAtMTAwcHg7XG4gIH1cblxuICAuYmctcmVzdW1lLWxvbmcge1xuICAgIG1hcmdpbi10b3A6IDEwMHB4O1xuICB9XG5cbiAgc2VjdGlvbixcbiAgI2Zvb3RlciAuY29udGVudC13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogNzVweDtcbiAgfVxuICBzZWN0aW9uLmJnLXdoaXRlOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgfVxuICAuZG93bmxvYWQtaXRlbS1jb250YWluZXIsXG4gIC5kb3dubG9hZC1pdGVtLWNvbnRhaW5lci5vbmUtaXRlbSxcbiAgLmJsb2NrLWl0ZW0sXG4gIC5ibG9jay1pbWctY29udGVudC13cmFwcGVyLFxuICAucmVzdW1lLWxvbmctY29udGFpbmVyLFxuICAucHJvamVjdC1jYXJkLWNvbnRhaW5lcixcbiAgLnNlcnZpY2VzLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDI1cHg7XG4gIH1cbiAgc2VjdGlvbi5pbnRyb2R1Y3Rpb24ucGFkZGluZy1ibG9ja3MsXG4gIHNlY3Rpb24uaW50cm9kdWN0aW9uLnBhZGRpbmctcmVzdW1lIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTUwcHg7XG4gIH1cbiAgc2VjdGlvbixcbiAgLnRleHQtZm9vdGVyLXNlcnZpY2VzIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzVweDtcbiAgfVxuICAudGVhbS1maWx0ZXItd3JhcHBlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIH1cbiAgLmRvd25sb2FkLWl0ZW0tY29udGFpbmVyLFxuICAuZG93bmxvYWQtaXRlbS1jb250YWluZXIub25lLWl0ZW0sXG4gIC5ibG9jay1pdGVtLFxuICAuYmxvY2staW1nLWNvbnRlbnQtd3JhcHBlcixcbiAgLnJlc3VtZS1sb25nLWNvbnRhaW5lcixcbiAgLnByb2plY3QtY2FyZC1jb250YWluZXIsXG4gIC5zZXJ2aWNlcy1jb250YWluZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICB9XG4gIC5kb3dubG9hZC1pdGVtLWNvbnRhaW5lcixcbiAgLmRvd25sb2FkLWl0ZW0tY29udGFpbmVyLm9uZS1pdGVtLFxuICAucmVzdW1lLWxvbmctY29udGFpbmVyLFxuICAucHJvamVjdC1jYXJkLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICB9XG4gIC5kb3dubG9hZC1pdGVtLWNvbnRhaW5lcixcbiAgLmRvd25sb2FkLWl0ZW0tY29udGFpbmVyLm9uZS1pdGVtLFxuICAuYmxvY2staXRlbSxcbiAgLmJsb2NrLWltZy1jb250ZW50LXdyYXBwZXIsXG4gIC5zZXJ2aWNlcy1jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgfVxuICAuZG93bmxvYWQtaXRlbS1jb250YWluZXIsXG4gIC5kb3dubG9hZC1pdGVtLWNvbnRhaW5lci5vbmUtaXRlbSxcbiAgLnJlc3VtZS1sb25nLWNvbnRhaW5lcixcbiAgLnByb2plY3QtY2FyZC1jb250YWluZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gIH1cbiAgLmRvd25sb2FkLWl0ZW0tY29udGFpbmVyLFxuICAuZG93bmxvYWQtaXRlbS1jb250YWluZXIub25lLWl0ZW0sXG4gIC5ibG9jay1pdGVtLFxuICAuYmxvY2staW1nLWNvbnRlbnQtd3JhcHBlcixcbiAgLnNlcnZpY2VzLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxuXG4gIC5wcm9qZWN0LWRlc2NyaXB0aW9uLFxuICAucHJvamVjdC1nYWxsZXJ5ID4gKjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG4gIC5saW5rLWl0ZW0uZ3JlZW46OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gTElOSyBCVVRUT04gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgc2VjdGlvbi5jb250ZW50LWNvbHVtbiAubGluay1pdGVtIGE6OmFmdGVyLFxuICBzZWN0aW9uLnByb2plY3QgLmxpbmstaXRlbSBhOjphZnRlcixcbiAgc2VjdGlvbi5mb3JtYXRpb24gLmxpbmstaXRlbSBhOjphZnRlcixcbiAgLnNsaWRlci1xdW90ZXMgLmxpbmstaXRlbSBhOjphZnRlcixcbiAgc2VjdGlvbi50ZXh0LWJnLWZ1bGx3aWR0aCAubGluay1pdGVtIGE6OmFmdGVyLFxuICBzZWN0aW9uLmludHJvZHVjdGlvbiAubGluay1pdGVtIGE6OmFmdGVyLFxuICAubGluay1pdGVtIGEuc3R5bGUtaDQ6OmFmdGVyLFxuICAud3BjZjcgLmxpbmstaXRlbSA+IHNwYW46OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gNzAlO1xuICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgbWFyZ2luLWxlZnQ6IC00MHB4O1xuICB9XG5cbiAgc2VjdGlvbi5mb3JtYXRpb24gLmxpbmstaXRlbS5ib3R0b20gYTo6YWZ0ZXIge1xuICAgIG1hcmdpbi10b3A6IC02cHg7XG4gIH1cblxuICAubGluay1pdGVtID4gc3BhbiBpbnB1dCB7XG4gICAgcGFkZGluZzogN3B4IDQwcHggMTBweCAwO1xuICB9XG5cbiAgZGl2LndwY2Y3IC5saW5rLWl0ZW0gLmFqYXgtbG9hZGVyIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggYXV0bztcbiAgICB0b3A6IDdweDtcbiAgICByaWdodDogM3B4O1xuICAgIHdpZHRoOiAyMnB4O1xuICAgIGhlaWdodDogMjJweDtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEhFQURFUiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICBib2R5IHtcbiAgICBwYWRkaW5nLXRvcDogMTYycHg7XG4gIH1cbiAgI2hlYWRlciB7XG4gICAgcGFkZGluZzogNDBweCAwO1xuICB9XG4gIGJvZHkucGFnZS1zY3JvbGxlZCAjaGVhZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgfVxuICBib2R5Lm1lbnUtb3BlbmVkLXN0ZXAyICNoZWFkZXIge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgI2xvZ28gaW1nIHtcbiAgICBtYXJnaW4tdG9wOiAtMC40NGVtO1xuICB9XG5cbiAgI2NvbnRhY3QtaGVhZGVyIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBURVhURSAmIEFSUklFUkUtUExBTiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAubGlzdC1saW5rLWJveCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBDT05URU5VIEVOIEJMT0NLIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5ibG9jay1pbWctaXRlbSBmaWd1cmUge1xuICAgIGhlaWdodDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIwJTtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIExJU1RFIExPR09TIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5sb2dvLWl0ZW0gaW1nIHtcbiAgICBtYXgtaGVpZ2h0OiA5MHB4O1xuICB9XG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gVEVBTSBNQVNPTlJZIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5ncmlkLXNpemVyLXRlYW0sXG4gICN0ZWFtLWdyaWQtbWFzb25yeSAudGVhbS1jYXJkLXdyYXBwZXIsXG4gICN0ZWFtLWdyaWQtbWFzb25yeSAudGVhbS1jYXJkLXdyYXBwZXIuc2l6ZS1iaWcsXG4gICN0ZWFtLWdyaWQtbWFzb25yeS5maWx0ZXIgLnRlYW0tY2FyZC13cmFwcGVyIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gICN0ZWFtLWdyaWQtbWFzb25yeSAudGVhbS1jYXJkLXdyYXBwZXIsXG4gICN0ZWFtLWdyaWQtbWFzb25yeSAudGVhbS1jYXJkLXdyYXBwZXIuc2l6ZS1iaWcsXG4gICN0ZWFtLWdyaWQtbWFzb25yeS5maWx0ZXIgLnRlYW0tY2FyZC13cmFwcGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDAlO1xuICB9XG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gU1dJUEVSIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5zd2lwZXItcGFnaW5hdGlvbiB7XG4gICAgdG9wOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogMjVweCAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJvdHRvbTogMjVweCAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24gPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24gPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0Om5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogMTVweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gRk9STUFUSU9OICYgRkFOQ1lCT1ggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgLmZhbmN5Ym94LWNvbnRlbnQgPiBzZWN0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogNzVweDtcbiAgfVxuXG4gIC5mYW5jeWJveC1zbGlkZS0taHRtbCAuZmFuY3lib3gtY2xvc2Utc21hbGwge1xuICAgIHJpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgdG9wOiAxNXB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gR0VORVJBTCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAuaGlkZGVuLW1kLXVwIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBGT1JNQVRJT04gJiBGQU5DWUJPWCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAuaW50cm9kdWN0aW9uICsgLmZvcm1hdGlvbiB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBGT09URVIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgI2Zvb3RlciAubG9nby1mb290ZXIge1xuICAgIHdpZHRoOiA3NyU7XG4gIH1cbn1cblxuQG1lZGlhKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gR0VORVJBTCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAuaGlkZGVuLXNtLWRvd24ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYXJnaW4tbWQtYiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweCAhaW1wb3J0YW50O1xuICB9XG4gIHNlY3Rpb24uaW50cm9kdWN0aW9uICsgc2VjdGlvbi5yZXN1bWUtbG9uZyB7XG4gICAgbWFyZ2luLXRvcDogMHB4O1xuICB9XG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQ09MT1JTICYgQkFDS0dST1VORFMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgLnByZS1mb290ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkYgIWltcG9ydGFudDtcbiAgfVxuXG4gICNmb290ZXIge1xuICAgIGJvcmRlci1jb2xvcjogI0RCRTVEQiAhaW1wb3J0YW50O1xuICB9XG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gRk9OVFMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgaDEsIC5zdHlsZS1oMSB7XG4gICAgZm9udC1zaXplOiAzNnB4O1xuICB9XG4gIGgyLCAuc3R5bGUtaDIsXG4gIC5saW5rLWl0ZW0tbm9saXN0IGE6bm90KC5zdHlsZS1oNCksXG4gIC5saW5rLWl0ZW0gYTpub3QoLnN0eWxlLWg0KSxcbiAgYmxvY2txdW90ZSAuc3R5bGUtaDEge1xuICAgIGZvbnQtc2l6ZTogMjdweDtcbiAgfVxuICBoMywgLnN0eWxlLWgzLFxuICBibG9ja3F1b3RlIC5zdHlsZS1oMixcbiAgLnNsaWRlci1xdW90ZXMgLmxpbmstaXRlbSBhLFxuICBzZWN0aW9uLnRleHQtYmctZnVsbHdpZHRoIC5saW5rLWl0ZW0gYSxcbiAgc2VjdGlvbi5pbnRyb2R1Y3Rpb24gLmxpbmstaXRlbSBhLFxuICAudGV4dC1iZy1mdWxsd2lkdGggcCxcbiAgLnRleHQtZm9vdGVyIHAsXG4gIC5tYXAgaDIsIC5tYXAgLnN0eWxlLWgyLFxuICAuZmMuc2l6ZS1oNSAuZmMtYnV0dG9uLmZjLWN1c3RvbVRpdGxlLWJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAyMXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgfVxuICBoNCwgLnN0eWxlLWg0LFxuICBib2R5LFxuICAubGluay1pdGVtID4gc3BhbiBpbnB1dCxcbiAgc2VjdGlvbi5jb250ZW50LWNvbHVtbiAubGluay1pdGVtIGEsXG4gIHNlY3Rpb24ucHJvamVjdCAubGluay1pdGVtIGEsXG4gIHNlY3Rpb24uZm9ybWF0aW9uIC5saW5rLWl0ZW0gYSxcbiAgI21haW4tbWVudSB1bCBsaSxcbiAgLnByb2plY3QtY2FyZC1jb250YWluZXIgc3BhbixcbiAgaDUsIC5zdHlsZS1oNSxcbiAgLnNpemUtaDUsXG4gIC5wcm9qZWN0LWRlc2NyaXB0aW9uIHAuc2l6ZS1oNSxcbiAgLnByZS1mb290ZXIsXG4gIC5hZHJlc3MtZm9vdGVyLFxuICAucmVzdW1lLWxvbmctY29udGFpbmVyIHAsXG4gIC5kcm9wZG93bi1sYWJlbCxcbiAgLnF1ZXN0aW9uLWNvbnRhaW5lcixcbiAgLnJvdy1mb3JtIGxhYmVsLFxuICAucm93LWZvcm0ucm93LXNlYXJjaCBpbnB1dCxcbiAgZGl2LndwY2Y3IGRpdi53cGNmNy1yZXNwb25zZS1vdXRwdXQge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuICBoNiwgLnN0eWxlLWg2LFxuICAuZm9ybWF0aW9uLXByaWNlIHNtYWxsLFxuICAuYnRuLWNvcnBvLFxuICAuZHJvcGRvd24tbWVudSxcbiAgLnJvdy1mb3JtIGlucHV0LCAucm93LWZvcm0gc2VsZWN0LCAucm93LWZvcm0gdGV4dGFyZWEge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gIH1cbiAgc21hbGwsIC5zbWFsbCxcbiAgLnJvdy1mb3JtIHNwYW4ud3BjZjctbm90LXZhbGlkLXRpcCB7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgfVxuXG4gICNoZWFkZXIge1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgfVxuXG4gIC5sb2dvLXdyYXBwZXIuZm9ybWF0X2wsXG4gIC5sb2dvLXNsaWRlciAubG9nby1pdGVtIGltZyB7XG5cbiAgICAmID4gLnJvdyB7XG5cbiAgICAgIC5sb2dvLWl0ZW0ge1xuICAgICAgICBtaW4taGVpZ2h0OiA2MHB4O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA4MHB4O1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDYwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGV4dC1sZWZ0LXNtIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRleHQtcmlnaHQtc20ge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRleHQtY2VudGVyLXNtIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuICAuYmxvY2staXRlbSB1bCB7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gIH1cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBDT01NT04gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gIH1cbiAgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICB9XG5cbiAgLmRsLXdyYXBwZXIge1xuICAgIG1hcmdpbjogLTcuNXB4O1xuICB9XG4gIC5kbC1pdGVtcyB7XG4gICAgcGFkZGluZzogNy41cHg7XG4gIH1cblxuICAubGluZS1saWdodCB7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICB9XG5cbiAgLmdyaWQtaXRlbS1ibG9jayAuYmxvY2staXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiA3NXB4O1xuICB9XG4gIC5kb3dubG9hZC1pdGVtLWNvbnRhaW5lcixcbiAgLmRvd25sb2FkLWl0ZW0tY29udGFpbmVyLm9uZS1pdGVtLFxuICAucmVzdW1lLWxvbmctY29udGFpbmVyLFxuICAucHJvamVjdC1jYXJkLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG4gIC5kb3dubG9hZC1pdGVtLWNvbnRhaW5lcixcbiAgLmRvd25sb2FkLWl0ZW0tY29udGFpbmVyLm9uZS1pdGVtLFxuICAuYmxvY2staXRlbSxcbiAgLmJsb2NrLWltZy1jb250ZW50LXdyYXBwZXIsXG4gIC5zZXJ2aWNlcy1jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgfVxuICAuZ3JpZC1pdGVtLWJsb2NrIC5ibG9jay1pdGVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NXB4O1xuICB9XG4gIC5kb3dubG9hZC1pdGVtLWNvbnRhaW5lcixcbiAgLmRvd25sb2FkLWl0ZW0tY29udGFpbmVyLm9uZS1pdGVtLFxuICAucmVzdW1lLWxvbmctY29udGFpbmVyLFxuICAucHJvamVjdC1jYXJkLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxuICAuZG93bmxvYWQtaXRlbS1jb250YWluZXIsXG4gIC5kb3dubG9hZC1pdGVtLWNvbnRhaW5lci5vbmUtaXRlbSxcbiAgLmJsb2NrLWl0ZW0sXG4gIC5ibG9jay1pbWctY29udGVudC13cmFwcGVyLFxuICAuc2VydmljZXMtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICB9XG5cbiAgc2VjdGlvbi50ZXh0LWJnLWZ1bGx3aWR0aCxcbiAgLnN3aXBlci1zbGlkZSB7XG4gICAgcGFkZGluZy10b3A6IDEwMHB4O1xuICB9XG4gIHNlY3Rpb24udGl0bGU6Zmlyc3QtY2hpbGQsXG4gIHNlY3Rpb24uaW50cm9kdWN0aW9uLmJnLXdoaXRlICsgc2VjdGlvbi5iZy1saWdodCxcbiAgI2Zvb3RlciAuY29udGVudC13cmFwcGVyLFxuICAucHJlLWZvb3RlciB7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gIH1cbiAgc2VjdGlvbi5iZy1saWdodC5jb250ZW50LWJsb2NrLmJsb2NrLWltZyArIHNlY3Rpb24uYmctbGlnaHQge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmRvd25sb2FkLWl0ZW0tY29udGFpbmVyLFxuICAuZG93bmxvYWQtaXRlbS1jb250YWluZXIub25lLWl0ZW0sXG4gIC5yZXN1bWUtbG9uZy1jb250YWluZXIsXG4gIC5wcm9qZWN0LWNhcmQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgfVxuICBzZWN0aW9uLnRleHQtYmctZnVsbHdpZHRoLFxuICAuc3dpcGVyLXNsaWRlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gIH1cbiAgc2VjdGlvbi5pbnRyb2R1Y3Rpb24uYmctd2hpdGU6bm90KC5wYWRkaW5nLWJsb2NrcyksXG4gIC50ZXh0LWZvb3Rlci1zZXJ2aWNlcyxcbiAgLnByZS1mb290ZXIsXG4gIHNlY3Rpb24uZm9vdGVyLXNlcnZpY2VzIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgfVxuICAuZG93bmxvYWQtaXRlbS1jb250YWluZXIsXG4gIC5kb3dubG9hZC1pdGVtLWNvbnRhaW5lci5vbmUtaXRlbSxcbiAgLnJlc3VtZS1sb25nLWNvbnRhaW5lcixcbiAgLnByb2plY3QtY2FyZC1jb250YWluZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICB9XG4gIC5jb250ZW50LWJsb2NrLmJsb2NrLWltZyB7XG4gICAgcGFkZGluZy1ib3R0b206IDcuNXB4O1xuICB9XG4gICNmb290ZXIgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBIRUFERVIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgYm9keSB7XG4gICAgcGFkZGluZy10b3A6IDkxcHg7XG4gIH1cbiAgI2hlYWRlciB7XG4gICAgcGFkZGluZzogMzBweCA2NXB4IDMwcHggMDtcbiAgfVxuICBib2R5LnBhZ2Utc2Nyb2xsZWQ6bm90KC5tZW51LW9wZW5lZC1zdGVwMikgI2hlYWRlciB7XG4gICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gIH1cblxuICAjaGVhZGVyLWxvZ28ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICB9XG4gICNsb2dvIGltZyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gICNjb250YWN0LWhlYWRlciA+IHVsID4gbGkge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgI2NvbnRhY3QtaGVhZGVyID4gdWwgPiBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG4gIH1cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBURVhURSAmIEFSUklFUkUtUExBTiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAubGlzdC1saW5rLWJveCB7XG4gICAgbWFyZ2luLXRvcDogMTIwcHg7XG4gIH1cblxuICAudGV4dC1yaWdodCAubGluay1pdGVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gTElTVEUgTE9HT1MgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgLmxvZ28td3JhcHBlciB7XG5cbiAgICAucm93IHtcbiAgICAgIG1hcmdpbjogLTE1cHg7XG4gICAgfVxuICB9XG4gIC5sb2dvLWl0ZW0ge1xuICAgIG1heC13aWR0aDogMjUlO1xuICAgIG1heC1oZWlnaHQ6IDcwcHg7XG4gIH1cbiAgLmxvZ28taXRlbSBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDgwcHg7XG4gIH1cblxuICAubG9nby13cmFwcGVyLmZvcm1hdF9sIHtcblxuICAgICYgPiAucm93IHtcblxuICAgICAgLmxvZ28taXRlbSB7XG4gICAgICAgIHdpZHRoOiAyOCU7XG4gICAgICAgIG1heC13aWR0aDogMjglO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFNFUlZJQ0VTIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5yZXN1bWUtbG9uZyA+IC5jb250ZW50LXdyYXBwZXIgPiAucm93LFxuICAucHJvamVjdC1oaWdobGlnaHRzID4gLmNvbnRlbnQtd3JhcHBlciA+IC5yb3cge1xuICAgIG1hcmdpbjogLTcuNXB4O1xuICB9XG4gIC5yZXN1bWUtbG9uZyAuc2VydmljZXMtYm94LFxuICAucHJvamVjdC1oaWdobGlnaHRzID4gLmNvbnRlbnQtd3JhcHBlciA+IC5yb3cgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgcGFkZGluZzogNy41cHg7XG4gIH1cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBNT1NBSUMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgLm1vc2FpYyxcbiAgLm1vc2FpYyBhLCAubW9zYWljIGFbc3R5bGVdLFxuICAubW9zYWljIGltZywgLm1vc2FpYyBhW3N0eWxlXSBpbWdbc3R5bGVdIHtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAubW9zYWljLFxuICAubW9zYWljIGltZywgLm1vc2FpYyBhW3N0eWxlXSBpbWdbc3R5bGVdIHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5tb3NhaWMge1xuICAgIG1hcmdpbjogLTcuNXB4ICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICB9XG4gIC5tb3NhaWMgYSwgLm1vc2FpYyBhW3N0eWxlXSB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiA3LjVweCAhaW1wb3J0YW50O1xuICB9XG4gIC5tb3NhaWMgaW1nLCAubW9zYWljIGFbc3R5bGVdIGltZ1tzdHlsZV0ge1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWF4LWhlaWdodDogMzUwcHg7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBHQUxMRVJZIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5ncmlkLXNpemVyLWdhbGxlcnksXG4gIC5ncmlkLWl0ZW0tZ2FsbGVyeSxcbiAgLmdyaWQtaXRlbS1nYWxsZXJ5Lm1lZGl1bSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuZ3JpZC1pdGVtLWdhbGxlcnksXG4gIC5ncmlkLWl0ZW0tZ2FsbGVyeS5tZWRpdW0ge1xuICAgIHBhZGRpbmctYm90dG9tOiA0MCU7XG4gIH1cbiAgLmdyaWQtaXRlbS1nYWxsZXJ5LmJpZyxcbiAgLmdyaWQtaXRlbS1nYWxsZXJ5LmJpZyArIC5ncmlkLWl0ZW0tZ2FsbGVyeS5tZWRpdW06bGFzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1ib3R0b206IDgwJTtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEZPUk1BVElPTiAmIEZBTkNZQk9YIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5pbnRyb2R1Y3Rpb24gKyAuZm9ybWF0aW9uICNmb3JtYXRpb24tc2VhcmNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEZPT1RFUiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAjZm9vdGVyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gIH1cblxuICAuZ3JpZC1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogLTcuNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IC03LjVweDtcbiAgfVxuXG4gIC5ncmlkLWl0ZW0tYmxvY2ssXG4gIC5ncmlkLXNpemVyLWJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuYmxvY2staXRlbSB7XG4gICAgbWFyZ2luLXRvcDogNy41cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNy41cHg7XG4gIH1cbn1cblxuQG1lZGlhKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gR0VORVJBTCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAuaGlkZGVuLXNtLXVwIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBMSU5LIEJVVFRPTiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAudGV4dC1jZW50ZXIgPiAubGluay1pdGVtIGEge1xuICAgIG1hcmdpbi1sZWZ0OiAtNzBweDtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIExJU1RFIExPR09TIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5sb2dvLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG59XG5cbkBtZWRpYShtYXgtd2lkdGg6IDU3NXB4KSB7XG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEdFTkVSQUwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgLm1lbnUtd3JhcHBlcixcbiAgLmhpZGRlbi14cy1kb3duIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBGT05UUyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAubWFwIGgyLCAubWFwIC5zdHlsZS1oMiB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG5cbiAgI2NvbnRlbnQtcHJvamVjdCB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgfVxuXG4gIC50ZXh0LWxlZnQteHMge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuICAudGV4dC1yaWdodC14cyB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuICAudGV4dC1jZW50ZXIteHMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQ09NTU9OIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5kb3dubG9hZC1pdGVtLWNvbnRhaW5lcixcbiAgLmRvd25sb2FkLWl0ZW0tY29udGFpbmVyLm9uZS1pdGVtLFxuICAuYmxvY2staXRlbSxcbiAgLnJlc3VtZS1sb25nLWNvbnRhaW5lcixcbiAgLnByb2plY3QtY2FyZC1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gIH1cblxuICAudGVhbS1jYXJkLWl0ZW0ge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgLmdyaWQtaXRlbS1ibG9jayAuYmxvY2staXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICB9XG4gIC5ncmlkLWl0ZW0tYmxvY2sgLmJsb2NrLWl0ZW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIH1cbiAgLnN3aXBlci1zbGlkZSB7XG4gICAgcGFkZGluZy10b3A6IDc1cHg7XG4gIH1cbiAgLnN3aXBlci1zbGlkZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDc1cHg7XG4gIH1cbiAgLnN3aXBlci1zbGlkZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDc1cHg7XG4gIH1cblxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBMSVNURSBMT0dPUyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAubG9nby13cmFwcGVyLmZvcm1hdF9sIHtcblxuICAgICYgPiAucm93IHtcblxuICAgICAgLmxvZ28taXRlbSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1JTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1JTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFBST0pFQ1QgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgI2NvbnRlbnQtcHJvamVjdCB0YWJsZSxcbiAgI2NvbnRlbnQtcHJvamVjdCB0Ym9keSxcbiAgI2NvbnRlbnQtcHJvamVjdCB0cixcbiAgI2NvbnRlbnQtcHJvamVjdCB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgI2NvbnRlbnQtcHJvamVjdCB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgI2NvbnRlbnQtcHJvamVjdCB0ZDpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIE1PU0FJQyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAubW9zYWljIGltZywgLm1vc2FpYyBhW3N0eWxlXSBpbWdbc3R5bGVdIHtcbiAgICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgfVxuXG5cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gU1dJUEVSIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC50ZXh0LXF1b3RlICsgLmxpbmstaXRlbSB7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFRFQU0gTUFTT05SWSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAuZ3JpZC1zaXplci10ZWFtLFxuICAjdGVhbS1ncmlkLW1hc29ucnkgLnRlYW0tY2FyZC13cmFwcGVyLFxuICAjdGVhbS1ncmlkLW1hc29ucnkgLnRlYW0tY2FyZC13cmFwcGVyLnNpemUtYmlnLFxuICAjdGVhbS1ncmlkLW1hc29ucnkuZmlsdGVyIC50ZWFtLWNhcmQtd3JhcHBlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgI3RlYW0tZ3JpZC1tYXNvbnJ5IC50ZWFtLWNhcmQtd3JhcHBlcixcbiAgI3RlYW0tZ3JpZC1tYXNvbnJ5IC50ZWFtLWNhcmQtd3JhcHBlci5zaXplLWJpZyxcbiAgI3RlYW0tZ3JpZC1tYXNvbnJ5LmZpbHRlciAudGVhbS1jYXJkLXdyYXBwZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA4MCU7XG4gIH1cblxuICAjdGVhbS1ncmlkLW1hc29ucnkgLnRlYW0tY2FyZC1pbmZvLXdyYXBwZXIge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG5AbWVkaWEobWF4LXdpZHRoOiAzNTBweCkge1xuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBMSVNURSBMT0dPUyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAubG9nby13cmFwcGVyLmZvcm1hdF9sIHtcblxuICAgICYgPiAucm93IHtcbiAgICAgIG1hcmdpbi10b3A6IC0xNXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTE1cHg7XG5cbiAgICAgIC5sb2dvLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIE1PU0FJQyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAubW9zYWljIGEsIC5tb3NhaWMgYVtzdHlsZV0ge1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1vc2FpYyBpbWcsIC5tb3NhaWMgYVtzdHlsZV0gaW1nW3N0eWxlXSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIiNtYWluIGEsXG4jbWFpbiBidXR0b24sXG4uZm9jdXMtbGFiZWwsXG4ucmVzdW1lLXNob3J0LFxuLnNlcnZpY2VzLWJveCAuc2VydmljZS1pbWcsXG4ucHJvamVjdC1jYXJkIC5wcm9qZWN0LWltZyxcbi5xdWVzdGlvbi1pdGVtIC5xdWVzdGlvbi1oZWFkZXIgLm9wZW4tcXVlc3Rpb24sXG4uZmlsdGVyLWl0ZW0sXG4ucm93LWZvcm0gbGFiZWwsIC5yb3ctZm9ybSBpbnB1dCwgLnJvdy1mb3JtIHNlbGVjdCwgLnJvdy1mb3JtIHRleHRhcmVhe1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuMnMgbGluZWFyO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAuMnMgbGluZWFyO1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIC4ycyBsaW5lYXI7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAuMnMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzIGxpbmVhcjtcbn1cbi5saW5rLWl0ZW0tbm9saXN0IGE6OmFmdGVyLFxuLmxpbmstaXRlbSBzcGFuOjphZnRlcixcbi5saW5rLWl0ZW0gYTo6YWZ0ZXIsXG4ubGluay1pdGVtID4gc3BhbiBpbnB1dCxcbmRpdi53cGNmNyAubGluay1pdGVtIC5hamF4LWxvYWRlcixcbi5hcnJvdyxcbi5wcm9qZWN0LWJveCAuYXJyb3c6OmFmdGVyLFxuLnByb2plY3QtYm94IGhlYWRlcixcbi5tZW51LWl0ZW0gYSxcbi5zdWItbWVudSxcbi5tb2JpbGUtbWVudSxcbiNtZW51LWJ1cmdlcixcbi5tZW51LWxpbmUsXG4ubWVudS1pdGVtIGE6OmJlZm9yZSxcbi5wcm9qZWN0LWNhcmQsXG4ucmVzdW1lLWxvbmctd3JhcHBlcixcbi5jYXRlZ29yeS1mYXEgLmNhdGVnb3J5LWhlYWRlciAuYXJyb3ctYWNjb3JkaW9uLFxuaHRtbC5uby10b3VjaGV2ZW50cyAucmVzdW1lLXNob3J0OmhvdmVyIC5saW5rLWl0ZW0uZ3JlZW46OmFmdGVyLFxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCxcbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQgc3Bhbixcbi50ZWFtLWNhcmQtaW5mby13cmFwcGVye1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgY3ViaWMtYmV6aWVyKC43LCAuMCwgLjMsIDEpO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAuM3MgY3ViaWMtYmV6aWVyKC43LCAuMCwgLjMsIDEpO1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIC4zcyBjdWJpYy1iZXppZXIoLjcsIC4wLCAuMywgMSk7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAuM3MgY3ViaWMtYmV6aWVyKC43LCAuMCwgLjMsIDEpO1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGN1YmljLWJlemllciguNywgLjAsIC4zLCAxKTtcbn1cbi5idG4tY29ycG8sXG4jaGVhZGVyLFxuLmFjY29yZGlvbi1tZW51LFxuI21vYmlsZS1tZW51LFxuLmNvbnRhY3QtbW9iaWxlLFxuLmRvd25sb2FkLWl0ZW0tY29udGFpbmVyLFxuI21lbnUtYmFja2dyb3VuZC1idXJnZXIsXG4uZHJvcGRvd24td3JhcHBlciAuZHJvcGRvd24tbGFiZWw6OmFmdGVyLFxuLmxvZ28tc2xpZGVyLXdyYXBwZXJ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC41cyBjdWJpYy1iZXppZXIoLjcsIC4wLCAuMywgMSk7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIC41cyBjdWJpYy1iZXppZXIoLjcsIC4wLCAuMywgMSk7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgLjVzIGN1YmljLWJlemllciguNywgLjAsIC4zLCAxKTtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIC41cyBjdWJpYy1iZXppZXIoLjcsIC4wLCAuMywgMSk7XG4gIHRyYW5zaXRpb246IGFsbCAuNXMgY3ViaWMtYmV6aWVyKC43LCAuMCwgLjMsIDEpO1xufVxuYm9keS5tZW51LW9wZW5lZCAubW9iaWxlLW1lbnUsXG4uc2VydmljZXMtYm94OmhvdmVyIC5zZXJ2aWNlLWltZyxcbi5wcm9qZWN0LWNhcmQ6aG92ZXIgLnByb2plY3QtaW1nLFxuLnNjcm9sbC1hbmlte1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuN3MgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIC43cyBlYXNlLWluLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAuN3MgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAuN3MgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAuN3MgZWFzZS1pbi1vdXQ7XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFDQUEsQUFBQSxJQUFJLENBQUM7RUFDSCxVQUFVLEVBQUUsVUFBVTtFQUN0QixrQkFBa0IsRUFBRSxTQUFTLEdBQzlCOztBQUVELEFBQUEsQ0FBQztBQUNELENBQUMsQUFBQSxRQUFRO0FBQ1QsQ0FBQyxBQUFBLE9BQU8sQ0FBQztFQUNQLFVBQVUsRUFBRSxPQUFPLEdBQ3BCOztBQUVELEFBQUEsT0FBTyxDQUFDO0VBQ04sT0FBTyxFQUFFLFdBQVcsQ0FBQSxVQUFVO0VBQzlCLE9BQU8sRUFBRSxJQUFJLENBQUEsVUFBVSxHQUN4Qjs7QUFFRCxBQUFBLElBQUksQ0FBQztFQUNILE9BQU8sRUFBRSxXQUFXO0VBQ3BCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsYUFBYSxFQUFFLElBQUk7RUFDbkIsU0FBUyxFQUFFLElBQUk7RUFDZixZQUFZLEVBQUUsS0FBSztFQUNuQixXQUFXLEVBQUUsS0FBSyxHQUNuQjs7QUFFRCxBQUFBLFdBQVcsQ0FBQztFQUNWLFlBQVksRUFBRSxDQUFDO0VBQ2YsV0FBVyxFQUFFLENBQUMsR0FDZjs7QUFFRCxBQUFBLFdBQVcsR0FBRyxJQUFJO0FBQ2xCLFdBQVcsSUFBRyxBQUFBLEtBQUMsRUFBTyxNQUFNLEFBQWIsRUFBZTtFQUM1QixhQUFhLEVBQUUsQ0FBQztFQUNoQixZQUFZLEVBQUUsQ0FBQyxHQUNoQjs7QUFFRCxBQUFBLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUk7QUFD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Q2xCLEtBQUssRUFBRSxFQUFFLEdBQ1Y7RUFDRCxBQUFBLFdBQVcsQ0FBQztJQUNWLGNBQWMsRUFBRSxDQUFDO0lBQ2pCLEtBQUssRUFBRSxDQUFDLEdBQ1Q7RUFDRCxBQUFBLFdBQVcsQ0FBQztJQUNWLGNBQWMsRUFBRSxDQUFDO0lBQ2pCLEtBQUssRUFBRSxDQUFDLEdBQ1Q7RUFDRCxBQUFBLFdBQVcsQ0FBQztJQUNWLGNBQWMsRUFBRSxDQUFDO0lBQ2pCLEtBQUssRUFBRSxDQUFDLEdBQ1Q7RUFDRCxBQUFBLFdBQVcsQ0FBQztJQUNWLGNBQWMsRUFBRSxDQUFDO0lBQ2pCLEtBQUssRUFBRSxDQUFDLEdBQ1Q7RUFDRCxBQUFBLFdBQVcsQ0FBQztJQUNWLGNBQWMsRUFBRSxDQUFDO0lBQ2pCLEtBQUssRUFBRSxDQUFDLEdBQ1Q7RUFDRCxBQUFBLFdBQVcsQ0FBQztJQUNWLGNBQWMsRUFBRSxDQUFDO0lBQ2pCLEtBQUssRUFBRSxDQUFDLEdBQ1Q7RUFDRCxBQUFBLFdBQVcsQ0FBQztJQUNWLGNBQWMsRUFBRSxDQUFDO0lBQ2pCLEtBQUssRUFBRSxDQUFDLEdBQ1Q7RUFDRCxBQUFBLFdBQVcsQ0FBQztJQUNWLGNBQWMsRUFBRSxDQUFDO0lBQ2pCLEtBQUssRUFBRSxDQUFDLEdBQ1Q7RUFDRCxBQUFBLFdBQVcsQ0FBQztJQUNWLGNBQWMsRUFBRSxDQUFDO0lBQ2pCLEtBQUssRUFBRSxDQUFDLEdBQ1Q7RUFDRCxBQUFBLFdBQVcsQ0FBQztJQUNWLGNBQWMsRUFBRSxDQUFDO0lBQ2pCLEtBQUssRUFBRSxDQUFDLEdBQ1Q7RUFDRCxBQUFBLFlBQVksQ0FBQztJQUNYLGNBQWMsRUFBRSxFQUFFO0lBQ2xCLEtBQUssRUFBRSxFQUFFLEdBQ1Y7RUFDRCxBQUFBLFlBQVksQ0FBQztJQUNYLGNBQWMsRUFBRSxFQUFFO0lBQ2xCLEtBQUssRUFBRSxFQUFFLEdBQ1Y7RUFDRCxBQUFBLFlBQVksQ0FBQztJQUNYLGNBQWMsRUFBRSxFQUFFO0lBQ2xCLEtBQUssRUFBRSxFQUFFLEdBQ1Y7RUFDRCxBQUFBLFlBQVksQ0FB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LFFBQVE7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxTQUFTLEVBQUUsSUFBSSxHQUNoQjtFQUNELEFBQUEsZ0JBQWdCLENBQUM7SUFDZixjQUFjLEVBQUUsRUFBRTtJQUNsQixLQUFLLEVBQUUsRUFBRSxHQUNWO0VBQ0QsQUFBQSxlQUFlLENBQUM7SUFDZCxjQUFjLEVBQUUsRUFBRTtJQUNsQixLQUFLLEVBQUUsRUFBRSxHQUNWO0VBQ0QsQUFBQSxZQUFZLENBQUM7SUFDWCxjQUFjLEVBQUUsQ0FBQztJQUNqQixLQUFLLEVBQUUsQ0FBQyxHQUNUO0VBQ0QsQUFBQSxZQUFZLENBQUM7SUFDWCxjQUFjLEVBQUUsQ0FBQztJQUNqQixLQUFLLEVBQUUsQ0FBQyxHQUNUO0VBQ0QsQUFBQSxZQUFZLENBQUM7SUFDWCxjQUFjLEVBQUUsQ0FBQztJQUNqQixLQUFLLEVBQUUsQ0FBQyxHQUNUO0VBQ0QsQUFBQSxZQUFZLENBQUM7SUFDWCxjQUFjLEVBQUUsQ0FBQztJQUNqQixLQUFLLEVBQUUsQ0FBQyxHQUNUO0VBQ0QsQUFBQSxZQUFZLENBQUM7SUFDWCxjQUFjLEVBQUUsQ0FBQztJQUNqQixLQUFLLEVBQUUsQ0FBQyxHQUNUO0VBQ0QsQUFBQSxZQUFZLENBQUM7SUFDWCxjQUFjLEVBQUUsQ0FBQztJQUNqQixLQUFLLEVBQUUsQ0FBQyxHQUNUO0VBQ0QsQUFBQSxZQUFZLENBQUM7SUFDWCxjQUFjLEVBQUUsQ0FBQztJQUNqQixLQUFLLEVBQUUsQ0FBQyxHQUNUO0VBQ0QsQUFBQSxZQUFZLENBQUM7SUFDWCxjQUFjLEVBQUUsQ0FBQztJQUNqQixLQUFLLEVBQUUsQ0FBQyxHQUNUO0VBQ0QsQUFBQSxZQUFZLENBQUM7SUFDWCxjQUFjLEVBQUUsQ0FBQztJQUNqQixLQUFLLEVBQUUsQ0FBQyxHQUNUO0VBQ0QsQUFBQSxZQUFZLENBQUM7SUFDWCxjQUFjLEVBQUUsQ0FBQztJQUNqQixLQUFLLEVBQUUsQ0FBQyxHQUNUO0VBQ0QsQUFBQSxhQUFhLENBQUM7SUFDWixjQUFjLEVBQUUsRUFBRTtJQUNsQixLQUFLLEVB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 */
