@charset "UTF-8";
/*!
 * Bootstrap Grid v4.0.0 (https://getbootstrap.com)
 * Copyright 2011-2018 The Bootstrap Authors
 * Copyright 2011-2018 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
@-ms-viewport {
  width: device-width; }

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

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

.container {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto; }
  @media (min-width: 320px) {
    .container {
      max-width: 320px; } }
  @media (min-width: 720px) {
    .container {
      max-width: 720px; } }
  @media (min-width: 1200px) {
    .container {
      max-width: 1200px; } }
  @media (min-width: 1201px) {
    .container {
      max-width: 1201px; } }

.container-fluid {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto; }

.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%;
  min-height: 1px;
  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: none; }

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

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

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

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

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

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

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

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

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

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

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

.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.33333%; }

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

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

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

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

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

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

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

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

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

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

@media (min-width: 320px) {
  .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: none; }
  .col-sm-1 {
    -ms-flex: 0 0 8.33333%;
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-sm-2 {
    -ms-flex: 0 0 16.66667%;
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-sm-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%; }
  .col-sm-4 {
    -ms-flex: 0 0 33.33333%;
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-sm-5 {
    -ms-flex: 0 0 41.66667%;
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-sm-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%; }
  .col-sm-7 {
    -ms-flex: 0 0 58.33333%;
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-sm-8 {
    -ms-flex: 0 0 66.66667%;
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-sm-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%; }
  .col-sm-10 {
    -ms-flex: 0 0 83.33333%;
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-sm-11 {
    -ms-flex: 0 0 91.66667%;
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .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.33333%; }
  .offset-sm-2 {
    margin-left: 16.66667%; }
  .offset-sm-3 {
    margin-left: 25%; }
  .offset-sm-4 {
    margin-left: 33.33333%; }
  .offset-sm-5 {
    margin-left: 41.66667%; }
  .offset-sm-6 {
    margin-left: 50%; }
  .offset-sm-7 {
    margin-left: 58.33333%; }
  .offset-sm-8 {
    margin-left: 66.66667%; }
  .offset-sm-9 {
    margin-left: 75%; }
  .offset-sm-10 {
    margin-left: 83.33333%; }
  .offset-sm-11 {
    margin-left: 91.66667%; } }

@media (min-width: 720px) {
  .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: none; }
  .col-md-1 {
    -ms-flex: 0 0 8.33333%;
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-md-2 {
    -ms-flex: 0 0 16.66667%;
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-md-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%; }
  .col-md-4 {
    -ms-flex: 0 0 33.33333%;
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-md-5 {
    -ms-flex: 0 0 41.66667%;
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-md-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%; }
  .col-md-7 {
    -ms-flex: 0 0 58.33333%;
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-md-8 {
    -ms-flex: 0 0 66.66667%;
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-md-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%; }
  .col-md-10 {
    -ms-flex: 0 0 83.33333%;
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-md-11 {
    -ms-flex: 0 0 91.66667%;
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .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.33333%; }
  .offset-md-2 {
    margin-left: 16.66667%; }
  .offset-md-3 {
    margin-left: 25%; }
  .offset-md-4 {
    margin-left: 33.33333%; }
  .offset-md-5 {
    margin-left: 41.66667%; }
  .offset-md-6 {
    margin-left: 50%; }
  .offset-md-7 {
    margin-left: 58.33333%; }
  .offset-md-8 {
    margin-left: 66.66667%; }
  .offset-md-9 {
    margin-left: 75%; }
  .offset-md-10 {
    margin-left: 83.33333%; }
  .offset-md-11 {
    margin-left: 91.66667%; } }

@media (min-width: 1200px) {
  .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: none; }
  .col-lg-1 {
    -ms-flex: 0 0 8.33333%;
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-lg-2 {
    -ms-flex: 0 0 16.66667%;
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-lg-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%; }
  .col-lg-4 {
    -ms-flex: 0 0 33.33333%;
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-lg-5 {
    -ms-flex: 0 0 41.66667%;
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-lg-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%; }
  .col-lg-7 {
    -ms-flex: 0 0 58.33333%;
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-lg-8 {
    -ms-flex: 0 0 66.66667%;
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-lg-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%; }
  .col-lg-10 {
    -ms-flex: 0 0 83.33333%;
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-lg-11 {
    -ms-flex: 0 0 91.66667%;
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .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.33333%; }
  .offset-lg-2 {
    margin-left: 16.66667%; }
  .offset-lg-3 {
    margin-left: 25%; }
  .offset-lg-4 {
    margin-left: 33.33333%; }
  .offset-lg-5 {
    margin-left: 41.66667%; }
  .offset-lg-6 {
    margin-left: 50%; }
  .offset-lg-7 {
    margin-left: 58.33333%; }
  .offset-lg-8 {
    margin-left: 66.66667%; }
  .offset-lg-9 {
    margin-left: 75%; }
  .offset-lg-10 {
    margin-left: 83.33333%; }
  .offset-lg-11 {
    margin-left: 91.66667%; } }

@media (min-width: 1201px) {
  .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: none; }
  .col-xl-1 {
    -ms-flex: 0 0 8.33333%;
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-xl-2 {
    -ms-flex: 0 0 16.66667%;
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-xl-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%; }
  .col-xl-4 {
    -ms-flex: 0 0 33.33333%;
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-xl-5 {
    -ms-flex: 0 0 41.66667%;
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-xl-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%; }
  .col-xl-7 {
    -ms-flex: 0 0 58.33333%;
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-xl-8 {
    -ms-flex: 0 0 66.66667%;
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-xl-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%; }
  .col-xl-10 {
    -ms-flex: 0 0 83.33333%;
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-xl-11 {
    -ms-flex: 0 0 91.66667%;
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .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.33333%; }
  .offset-xl-2 {
    margin-left: 16.66667%; }
  .offset-xl-3 {
    margin-left: 25%; }
  .offset-xl-4 {
    margin-left: 33.33333%; }
  .offset-xl-5 {
    margin-left: 41.66667%; }
  .offset-xl-6 {
    margin-left: 50%; }
  .offset-xl-7 {
    margin-left: 58.33333%; }
  .offset-xl-8 {
    margin-left: 66.66667%; }
  .offset-xl-9 {
    margin-left: 75%; }
  .offset-xl-10 {
    margin-left: 83.33333%; }
  .offset-xl-11 {
    margin-left: 91.66667%; } }

.d-none {
  display: none !important; }

.d-inline {
  display: inline !important; }

.d-inline-block {
  display: inline-block !important; }

.d-block {
  display: block !important; }

.d-table {
  display: table !important; }

.d-table-row {
  display: table-row !important; }

.d-table-cell {
  display: table-cell !important; }

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

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

@media (min-width: 320px) {
  .d-sm-none {
    display: none !important; }
  .d-sm-inline {
    display: inline !important; }
  .d-sm-inline-block {
    display: inline-block !important; }
  .d-sm-block {
    display: block !important; }
  .d-sm-table {
    display: table !important; }
  .d-sm-table-row {
    display: table-row !important; }
  .d-sm-table-cell {
    display: table-cell !important; }
  .d-sm-flex {
    display: -ms-flexbox !important;
    display: flex !important; }
  .d-sm-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important; } }

@media (min-width: 720px) {
  .d-md-none {
    display: none !important; }
  .d-md-inline {
    display: inline !important; }
  .d-md-inline-block {
    display: inline-block !important; }
  .d-md-block {
    display: block !important; }
  .d-md-table {
    display: table !important; }
  .d-md-table-row {
    display: table-row !important; }
  .d-md-table-cell {
    display: table-cell !important; }
  .d-md-flex {
    display: -ms-flexbox !important;
    display: flex !important; }
  .d-md-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important; } }

@media (min-width: 1200px) {
  .d-lg-none {
    display: none !important; }
  .d-lg-inline {
    display: inline !important; }
  .d-lg-inline-block {
    display: inline-block !important; }
  .d-lg-block {
    display: block !important; }
  .d-lg-table {
    display: table !important; }
  .d-lg-table-row {
    display: table-row !important; }
  .d-lg-table-cell {
    display: table-cell !important; }
  .d-lg-flex {
    display: -ms-flexbox !important;
    display: flex !important; }
  .d-lg-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important; } }

@media (min-width: 1201px) {
  .d-xl-none {
    display: none !important; }
  .d-xl-inline {
    display: inline !important; }
  .d-xl-inline-block {
    display: inline-block !important; }
  .d-xl-block {
    display: block !important; }
  .d-xl-table {
    display: table !important; }
  .d-xl-table-row {
    display: table-row !important; }
  .d-xl-table-cell {
    display: table-cell !important; }
  .d-xl-flex {
    display: -ms-flexbox !important;
    display: flex !important; }
  .d-xl-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important; } }

@media print {
  .d-print-none {
    display: none !important; }
  .d-print-inline {
    display: inline !important; }
  .d-print-inline-block {
    display: inline-block !important; }
  .d-print-block {
    display: block !important; }
  .d-print-table {
    display: table !important; }
  .d-print-table-row {
    display: table-row !important; }
  .d-print-table-cell {
    display: table-cell !important; }
  .d-print-flex {
    display: -ms-flexbox !important;
    display: flex !important; }
  .d-print-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important; } }

.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; }

.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;
  -ms-grid-row-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;
  -ms-grid-row-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;
  -ms-grid-row-align: stretch !important;
  align-self: stretch !important; }

@media (min-width: 320px) {
  .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; }
  .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;
    -ms-grid-row-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;
    -ms-grid-row-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;
    -ms-grid-row-align: stretch !important;
    align-self: stretch !important; } }

@media (min-width: 720px) {
  .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; }
  .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;
    -ms-grid-row-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;
    -ms-grid-row-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;
    -ms-grid-row-align: stretch !important;
    align-self: stretch !important; } }

@media (min-width: 1200px) {
  .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; }
  .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;
    -ms-grid-row-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;
    -ms-grid-row-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;
    -ms-grid-row-align: stretch !important;
    align-self: stretch !important; } }

@media (min-width: 1201px) {
  .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; }
  .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;
    -ms-grid-row-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;
    -ms-grid-row-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;
    -ms-grid-row-align: stretch !important;
    align-self: stretch !important; } }

.w-25 {
  width: 25% !important; }

.w-50 {
  width: 50% !important; }

.w-75 {
  width: 75% !important; }

.w-100 {
  width: 100% !important; }

.h-25 {
  height: 25% !important; }

.h-50 {
  height: 50% !important; }

.h-75 {
  height: 75% !important; }

.h-100 {
  height: 100% !important; }

.mw-100 {
  max-width: 100% !important; }

.mh-100 {
  max-height: 100% !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; }

.m-1 {
  margin: 0.25rem !important; }

.mt-1,
.my-1 {
  margin-top: 0.25rem !important; }

.mr-1,
.mx-1 {
  margin-right: 0.25rem !important; }

.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important; }

.ml-1,
.mx-1 {
  margin-left: 0.25rem !important; }

.m-2 {
  margin: 0.5rem !important; }

.mt-2,
.my-2 {
  margin-top: 0.5rem !important; }

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important; }

.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important; }

.ml-2,
.mx-2 {
  margin-left: 0.5rem !important; }

.m-3 {
  margin: 1rem !important; }

.mt-3,
.my-3 {
  margin-top: 1rem !important; }

.mr-3,
.mx-3 {
  margin-right: 1rem !important; }

.mb-3,
.my-3 {
  margin-bottom: 1rem !important; }

.ml-3,
.mx-3 {
  margin-left: 1rem !important; }

.m-4 {
  margin: 1.5rem !important; }

.mt-4,
.my-4 {
  margin-top: 1.5rem !important; }

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important; }

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important; }

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important; }

.m-5 {
  margin: 3rem !important; }

.mt-5,
.my-5 {
  margin-top: 3rem !important; }

.mr-5,
.mx-5 {
  margin-right: 3rem !important; }

.mb-5,
.my-5 {
  margin-bottom: 3rem !important; }

.ml-5,
.mx-5 {
  margin-left: 3rem !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; }

.p-1 {
  padding: 0.25rem !important; }

.pt-1,
.py-1 {
  padding-top: 0.25rem !important; }

.pr-1,
.px-1 {
  padding-right: 0.25rem !important; }

.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important; }

.pl-1,
.px-1 {
  padding-left: 0.25rem !important; }

.p-2 {
  padding: 0.5rem !important; }

.pt-2,
.py-2 {
  padding-top: 0.5rem !important; }

.pr-2,
.px-2 {
  padding-right: 0.5rem !important; }

.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important; }

.pl-2,
.px-2 {
  padding-left: 0.5rem !important; }

.p-3 {
  padding: 1rem !important; }

.pt-3,
.py-3 {
  padding-top: 1rem !important; }

.pr-3,
.px-3 {
  padding-right: 1rem !important; }

.pb-3,
.py-3 {
  padding-bottom: 1rem !important; }

.pl-3,
.px-3 {
  padding-left: 1rem !important; }

.p-4 {
  padding: 1.5rem !important; }

.pt-4,
.py-4 {
  padding-top: 1.5rem !important; }

.pr-4,
.px-4 {
  padding-right: 1.5rem !important; }

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important; }

.pl-4,
.px-4 {
  padding-left: 1.5rem !important; }

.p-5 {
  padding: 3rem !important; }

.pt-5,
.py-5 {
  padding-top: 3rem !important; }

.pr-5,
.px-5 {
  padding-right: 3rem !important; }

.pb-5,
.py-5 {
  padding-bottom: 3rem !important; }

.pl-5,
.px-5 {
  padding-left: 3rem !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: 320px) {
  .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; }
  .m-sm-1 {
    margin: 0.25rem !important; }
  .mt-sm-1,
  .my-sm-1 {
    margin-top: 0.25rem !important; }
  .mr-sm-1,
  .mx-sm-1 {
    margin-right: 0.25rem !important; }
  .mb-sm-1,
  .my-sm-1 {
    margin-bottom: 0.25rem !important; }
  .ml-sm-1,
  .mx-sm-1 {
    margin-left: 0.25rem !important; }
  .m-sm-2 {
    margin: 0.5rem !important; }
  .mt-sm-2,
  .my-sm-2 {
    margin-top: 0.5rem !important; }
  .mr-sm-2,
  .mx-sm-2 {
    margin-right: 0.5rem !important; }
  .mb-sm-2,
  .my-sm-2 {
    margin-bottom: 0.5rem !important; }
  .ml-sm-2,
  .mx-sm-2 {
    margin-left: 0.5rem !important; }
  .m-sm-3 {
    margin: 1rem !important; }
  .mt-sm-3,
  .my-sm-3 {
    margin-top: 1rem !important; }
  .mr-sm-3,
  .mx-sm-3 {
    margin-right: 1rem !important; }
  .mb-sm-3,
  .my-sm-3 {
    margin-bottom: 1rem !important; }
  .ml-sm-3,
  .mx-sm-3 {
    margin-left: 1rem !important; }
  .m-sm-4 {
    margin: 1.5rem !important; }
  .mt-sm-4,
  .my-sm-4 {
    margin-top: 1.5rem !important; }
  .mr-sm-4,
  .mx-sm-4 {
    margin-right: 1.5rem !important; }
  .mb-sm-4,
  .my-sm-4 {
    margin-bottom: 1.5rem !important; }
  .ml-sm-4,
  .mx-sm-4 {
    margin-left: 1.5rem !important; }
  .m-sm-5 {
    margin: 3rem !important; }
  .mt-sm-5,
  .my-sm-5 {
    margin-top: 3rem !important; }
  .mr-sm-5,
  .mx-sm-5 {
    margin-right: 3rem !important; }
  .mb-sm-5,
  .my-sm-5 {
    margin-bottom: 3rem !important; }
  .ml-sm-5,
  .mx-sm-5 {
    margin-left: 3rem !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; }
  .p-sm-1 {
    padding: 0.25rem !important; }
  .pt-sm-1,
  .py-sm-1 {
    padding-top: 0.25rem !important; }
  .pr-sm-1,
  .px-sm-1 {
    padding-right: 0.25rem !important; }
  .pb-sm-1,
  .py-sm-1 {
    padding-bottom: 0.25rem !important; }
  .pl-sm-1,
  .px-sm-1 {
    padding-left: 0.25rem !important; }
  .p-sm-2 {
    padding: 0.5rem !important; }
  .pt-sm-2,
  .py-sm-2 {
    padding-top: 0.5rem !important; }
  .pr-sm-2,
  .px-sm-2 {
    padding-right: 0.5rem !important; }
  .pb-sm-2,
  .py-sm-2 {
    padding-bottom: 0.5rem !important; }
  .pl-sm-2,
  .px-sm-2 {
    padding-left: 0.5rem !important; }
  .p-sm-3 {
    padding: 1rem !important; }
  .pt-sm-3,
  .py-sm-3 {
    padding-top: 1rem !important; }
  .pr-sm-3,
  .px-sm-3 {
    padding-right: 1rem !important; }
  .pb-sm-3,
  .py-sm-3 {
    padding-bottom: 1rem !important; }
  .pl-sm-3,
  .px-sm-3 {
    padding-left: 1rem !important; }
  .p-sm-4 {
    padding: 1.5rem !important; }
  .pt-sm-4,
  .py-sm-4 {
    padding-top: 1.5rem !important; }
  .pr-sm-4,
  .px-sm-4 {
    padding-right: 1.5rem !important; }
  .pb-sm-4,
  .py-sm-4 {
    padding-bottom: 1.5rem !important; }
  .pl-sm-4,
  .px-sm-4 {
    padding-left: 1.5rem !important; }
  .p-sm-5 {
    padding: 3rem !important; }
  .pt-sm-5,
  .py-sm-5 {
    padding-top: 3rem !important; }
  .pr-sm-5,
  .px-sm-5 {
    padding-right: 3rem !important; }
  .pb-sm-5,
  .py-sm-5 {
    padding-bottom: 3rem !important; }
  .pl-sm-5,
  .px-sm-5 {
    padding-left: 3rem !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: 720px) {
  .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; }
  .m-md-1 {
    margin: 0.25rem !important; }
  .mt-md-1,
  .my-md-1 {
    margin-top: 0.25rem !important; }
  .mr-md-1,
  .mx-md-1 {
    margin-right: 0.25rem !important; }
  .mb-md-1,
  .my-md-1 {
    margin-bottom: 0.25rem !important; }
  .ml-md-1,
  .mx-md-1 {
    margin-left: 0.25rem !important; }
  .m-md-2 {
    margin: 0.5rem !important; }
  .mt-md-2,
  .my-md-2 {
    margin-top: 0.5rem !important; }
  .mr-md-2,
  .mx-md-2 {
    margin-right: 0.5rem !important; }
  .mb-md-2,
  .my-md-2 {
    margin-bottom: 0.5rem !important; }
  .ml-md-2,
  .mx-md-2 {
    margin-left: 0.5rem !important; }
  .m-md-3 {
    margin: 1rem !important; }
  .mt-md-3,
  .my-md-3 {
    margin-top: 1rem !important; }
  .mr-md-3,
  .mx-md-3 {
    margin-right: 1rem !important; }
  .mb-md-3,
  .my-md-3 {
    margin-bottom: 1rem !important; }
  .ml-md-3,
  .mx-md-3 {
    margin-left: 1rem !important; }
  .m-md-4 {
    margin: 1.5rem !important; }
  .mt-md-4,
  .my-md-4 {
    margin-top: 1.5rem !important; }
  .mr-md-4,
  .mx-md-4 {
    margin-right: 1.5rem !important; }
  .mb-md-4,
  .my-md-4 {
    margin-bottom: 1.5rem !important; }
  .ml-md-4,
  .mx-md-4 {
    margin-left: 1.5rem !important; }
  .m-md-5 {
    margin: 3rem !important; }
  .mt-md-5,
  .my-md-5 {
    margin-top: 3rem !important; }
  .mr-md-5,
  .mx-md-5 {
    margin-right: 3rem !important; }
  .mb-md-5,
  .my-md-5 {
    margin-bottom: 3rem !important; }
  .ml-md-5,
  .mx-md-5 {
    margin-left: 3rem !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; }
  .p-md-1 {
    padding: 0.25rem !important; }
  .pt-md-1,
  .py-md-1 {
    padding-top: 0.25rem !important; }
  .pr-md-1,
  .px-md-1 {
    padding-right: 0.25rem !important; }
  .pb-md-1,
  .py-md-1 {
    padding-bottom: 0.25rem !important; }
  .pl-md-1,
  .px-md-1 {
    padding-left: 0.25rem !important; }
  .p-md-2 {
    padding: 0.5rem !important; }
  .pt-md-2,
  .py-md-2 {
    padding-top: 0.5rem !important; }
  .pr-md-2,
  .px-md-2 {
    padding-right: 0.5rem !important; }
  .pb-md-2,
  .py-md-2 {
    padding-bottom: 0.5rem !important; }
  .pl-md-2,
  .px-md-2 {
    padding-left: 0.5rem !important; }
  .p-md-3 {
    padding: 1rem !important; }
  .pt-md-3,
  .py-md-3 {
    padding-top: 1rem !important; }
  .pr-md-3,
  .px-md-3 {
    padding-right: 1rem !important; }
  .pb-md-3,
  .py-md-3 {
    padding-bottom: 1rem !important; }
  .pl-md-3,
  .px-md-3 {
    padding-left: 1rem !important; }
  .p-md-4 {
    padding: 1.5rem !important; }
  .pt-md-4,
  .py-md-4 {
    padding-top: 1.5rem !important; }
  .pr-md-4,
  .px-md-4 {
    padding-right: 1.5rem !important; }
  .pb-md-4,
  .py-md-4 {
    padding-bottom: 1.5rem !important; }
  .pl-md-4,
  .px-md-4 {
    padding-left: 1.5rem !important; }
  .p-md-5 {
    padding: 3rem !important; }
  .pt-md-5,
  .py-md-5 {
    padding-top: 3rem !important; }
  .pr-md-5,
  .px-md-5 {
    padding-right: 3rem !important; }
  .pb-md-5,
  .py-md-5 {
    padding-bottom: 3rem !important; }
  .pl-md-5,
  .px-md-5 {
    padding-left: 3rem !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: 1200px) {
  .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; }
  .m-lg-1 {
    margin: 0.25rem !important; }
  .mt-lg-1,
  .my-lg-1 {
    margin-top: 0.25rem !important; }
  .mr-lg-1,
  .mx-lg-1 {
    margin-right: 0.25rem !important; }
  .mb-lg-1,
  .my-lg-1 {
    margin-bottom: 0.25rem !important; }
  .ml-lg-1,
  .mx-lg-1 {
    margin-left: 0.25rem !important; }
  .m-lg-2 {
    margin: 0.5rem !important; }
  .mt-lg-2,
  .my-lg-2 {
    margin-top: 0.5rem !important; }
  .mr-lg-2,
  .mx-lg-2 {
    margin-right: 0.5rem !important; }
  .mb-lg-2,
  .my-lg-2 {
    margin-bottom: 0.5rem !important; }
  .ml-lg-2,
  .mx-lg-2 {
    margin-left: 0.5rem !important; }
  .m-lg-3 {
    margin: 1rem !important; }
  .mt-lg-3,
  .my-lg-3 {
    margin-top: 1rem !important; }
  .mr-lg-3,
  .mx-lg-3 {
    margin-right: 1rem !important; }
  .mb-lg-3,
  .my-lg-3 {
    margin-bottom: 1rem !important; }
  .ml-lg-3,
  .mx-lg-3 {
    margin-left: 1rem !important; }
  .m-lg-4 {
    margin: 1.5rem !important; }
  .mt-lg-4,
  .my-lg-4 {
    margin-top: 1.5rem !important; }
  .mr-lg-4,
  .mx-lg-4 {
    margin-right: 1.5rem !important; }
  .mb-lg-4,
  .my-lg-4 {
    margin-bottom: 1.5rem !important; }
  .ml-lg-4,
  .mx-lg-4 {
    margin-left: 1.5rem !important; }
  .m-lg-5 {
    margin: 3rem !important; }
  .mt-lg-5,
  .my-lg-5 {
    margin-top: 3rem !important; }
  .mr-lg-5,
  .mx-lg-5 {
    margin-right: 3rem !important; }
  .mb-lg-5,
  .my-lg-5 {
    margin-bottom: 3rem !important; }
  .ml-lg-5,
  .mx-lg-5 {
    margin-left: 3rem !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; }
  .p-lg-1 {
    padding: 0.25rem !important; }
  .pt-lg-1,
  .py-lg-1 {
    padding-top: 0.25rem !important; }
  .pr-lg-1,
  .px-lg-1 {
    padding-right: 0.25rem !important; }
  .pb-lg-1,
  .py-lg-1 {
    padding-bottom: 0.25rem !important; }
  .pl-lg-1,
  .px-lg-1 {
    padding-left: 0.25rem !important; }
  .p-lg-2 {
    padding: 0.5rem !important; }
  .pt-lg-2,
  .py-lg-2 {
    padding-top: 0.5rem !important; }
  .pr-lg-2,
  .px-lg-2 {
    padding-right: 0.5rem !important; }
  .pb-lg-2,
  .py-lg-2 {
    padding-bottom: 0.5rem !important; }
  .pl-lg-2,
  .px-lg-2 {
    padding-left: 0.5rem !important; }
  .p-lg-3 {
    padding: 1rem !important; }
  .pt-lg-3,
  .py-lg-3 {
    padding-top: 1rem !important; }
  .pr-lg-3,
  .px-lg-3 {
    padding-right: 1rem !important; }
  .pb-lg-3,
  .py-lg-3 {
    padding-bottom: 1rem !important; }
  .pl-lg-3,
  .px-lg-3 {
    padding-left: 1rem !important; }
  .p-lg-4 {
    padding: 1.5rem !important; }
  .pt-lg-4,
  .py-lg-4 {
    padding-top: 1.5rem !important; }
  .pr-lg-4,
  .px-lg-4 {
    padding-right: 1.5rem !important; }
  .pb-lg-4,
  .py-lg-4 {
    padding-bottom: 1.5rem !important; }
  .pl-lg-4,
  .px-lg-4 {
    padding-left: 1.5rem !important; }
  .p-lg-5 {
    padding: 3rem !important; }
  .pt-lg-5,
  .py-lg-5 {
    padding-top: 3rem !important; }
  .pr-lg-5,
  .px-lg-5 {
    padding-right: 3rem !important; }
  .pb-lg-5,
  .py-lg-5 {
    padding-bottom: 3rem !important; }
  .pl-lg-5,
  .px-lg-5 {
    padding-left: 3rem !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: 1201px) {
  .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; }
  .m-xl-1 {
    margin: 0.25rem !important; }
  .mt-xl-1,
  .my-xl-1 {
    margin-top: 0.25rem !important; }
  .mr-xl-1,
  .mx-xl-1 {
    margin-right: 0.25rem !important; }
  .mb-xl-1,
  .my-xl-1 {
    margin-bottom: 0.25rem !important; }
  .ml-xl-1,
  .mx-xl-1 {
    margin-left: 0.25rem !important; }
  .m-xl-2 {
    margin: 0.5rem !important; }
  .mt-xl-2,
  .my-xl-2 {
    margin-top: 0.5rem !important; }
  .mr-xl-2,
  .mx-xl-2 {
    margin-right: 0.5rem !important; }
  .mb-xl-2,
  .my-xl-2 {
    margin-bottom: 0.5rem !important; }
  .ml-xl-2,
  .mx-xl-2 {
    margin-left: 0.5rem !important; }
  .m-xl-3 {
    margin: 1rem !important; }
  .mt-xl-3,
  .my-xl-3 {
    margin-top: 1rem !important; }
  .mr-xl-3,
  .mx-xl-3 {
    margin-right: 1rem !important; }
  .mb-xl-3,
  .my-xl-3 {
    margin-bottom: 1rem !important; }
  .ml-xl-3,
  .mx-xl-3 {
    margin-left: 1rem !important; }
  .m-xl-4 {
    margin: 1.5rem !important; }
  .mt-xl-4,
  .my-xl-4 {
    margin-top: 1.5rem !important; }
  .mr-xl-4,
  .mx-xl-4 {
    margin-right: 1.5rem !important; }
  .mb-xl-4,
  .my-xl-4 {
    margin-bottom: 1.5rem !important; }
  .ml-xl-4,
  .mx-xl-4 {
    margin-left: 1.5rem !important; }
  .m-xl-5 {
    margin: 3rem !important; }
  .mt-xl-5,
  .my-xl-5 {
    margin-top: 3rem !important; }
  .mr-xl-5,
  .mx-xl-5 {
    margin-right: 3rem !important; }
  .mb-xl-5,
  .my-xl-5 {
    margin-bottom: 3rem !important; }
  .ml-xl-5,
  .mx-xl-5 {
    margin-left: 3rem !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; }
  .p-xl-1 {
    padding: 0.25rem !important; }
  .pt-xl-1,
  .py-xl-1 {
    padding-top: 0.25rem !important; }
  .pr-xl-1,
  .px-xl-1 {
    padding-right: 0.25rem !important; }
  .pb-xl-1,
  .py-xl-1 {
    padding-bottom: 0.25rem !important; }
  .pl-xl-1,
  .px-xl-1 {
    padding-left: 0.25rem !important; }
  .p-xl-2 {
    padding: 0.5rem !important; }
  .pt-xl-2,
  .py-xl-2 {
    padding-top: 0.5rem !important; }
  .pr-xl-2,
  .px-xl-2 {
    padding-right: 0.5rem !important; }
  .pb-xl-2,
  .py-xl-2 {
    padding-bottom: 0.5rem !important; }
  .pl-xl-2,
  .px-xl-2 {
    padding-left: 0.5rem !important; }
  .p-xl-3 {
    padding: 1rem !important; }
  .pt-xl-3,
  .py-xl-3 {
    padding-top: 1rem !important; }
  .pr-xl-3,
  .px-xl-3 {
    padding-right: 1rem !important; }
  .pb-xl-3,
  .py-xl-3 {
    padding-bottom: 1rem !important; }
  .pl-xl-3,
  .px-xl-3 {
    padding-left: 1rem !important; }
  .p-xl-4 {
    padding: 1.5rem !important; }
  .pt-xl-4,
  .py-xl-4 {
    padding-top: 1.5rem !important; }
  .pr-xl-4,
  .px-xl-4 {
    padding-right: 1.5rem !important; }
  .pb-xl-4,
  .py-xl-4 {
    padding-bottom: 1.5rem !important; }
  .pl-xl-4,
  .px-xl-4 {
    padding-left: 1.5rem !important; }
  .p-xl-5 {
    padding: 3rem !important; }
  .pt-xl-5,
  .py-xl-5 {
    padding-top: 3rem !important; }
  .pr-xl-5,
  .px-xl-5 {
    padding-right: 3rem !important; }
  .pb-xl-5,
  .py-xl-5 {
    padding-bottom: 3rem !important; }
  .pl-xl-5,
  .px-xl-5 {
    padding-left: 3rem !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; } }

.visible {
  visibility: visible !important; }

.invisible {
  visibility: hidden !important; }

/*!
 * Hover.css (http://ianlunn.github.io/Hover/)
 * Version: 2.2.1
 * Author: Ian Lunn @IanLunn
 * Author URL: http://ianlunn.co.uk/
 * Github: https://github.com/IanLunn/Hover

 * Hover.css Copyright Ian Lunn 2017. Generated with Sass.
 */
/* 2D TRANSITIONS */
/* Grow */
.hvr-grow {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: transform; }
  .hvr-grow:hover, .hvr-grow:focus, .hvr-grow:active {
    -ms-transform: scale(1.1);
    transform: scale(1.1); }

/* Shrink */
.hvr-shrink {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: transform; }
  .hvr-shrink:hover, .hvr-shrink:focus, .hvr-shrink:active {
    -ms-transform: scale(0.9);
    transform: scale(0.9); }

/* Pulse */

@keyframes hvr-pulse {
  25% {
    transform: scale(1.1); }
  75% {
    transform: scale(0.9); } }

.hvr-pulse {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent; }
  .hvr-pulse:hover, .hvr-pulse:focus, .hvr-pulse:active {
    animation-name: hvr-pulse;
    animation-duration: 1s;
    animation-timing-function: linear;
    animation-iteration-count: infinite; }

/* Pulse Grow */

@keyframes hvr-pulse-grow {
  to {
    transform: scale(1.1); } }

.hvr-pulse-grow {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent; }
  .hvr-pulse-grow:hover, .hvr-pulse-grow:focus, .hvr-pulse-grow:active {
    animation-name: hvr-pulse-grow;
    animation-duration: 0.3s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-direction: alternate; }

/* Pulse Shrink */

@keyframes hvr-pulse-shrink {
  to {
    transform: scale(0.9); } }

.hvr-pulse-shrink {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent; }
  .hvr-pulse-shrink:hover, .hvr-pulse-shrink:focus, .hvr-pulse-shrink:active {
    animation-name: hvr-pulse-shrink;
    animation-duration: 0.3s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-direction: alternate; }

/* Push */

@keyframes hvr-push {
  50% {
    transform: scale(0.8); }
  100% {
    transform: scale(1); } }

.hvr-push {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent; }
  .hvr-push:hover, .hvr-push:focus, .hvr-push:active {
    animation-name: hvr-push;
    animation-duration: 0.3s;
    animation-timing-function: linear;
    animation-iteration-count: 1; }

/* Pop */

@keyframes hvr-pop {
  50% {
    transform: scale(1.2); } }

.hvr-pop {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent; }
  .hvr-pop:hover, .hvr-pop:focus, .hvr-pop:active {
    animation-name: hvr-pop;
    animation-duration: 0.3s;
    animation-timing-function: linear;
    animation-iteration-count: 1; }

/* Bounce In */
.hvr-bounce-in {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.5s; }
  .hvr-bounce-in:hover, .hvr-bounce-in:focus, .hvr-bounce-in:active {
    -ms-transform: scale(1.2);
    transform: scale(1.2);
    transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36); }

/* Bounce Out */
.hvr-bounce-out {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.5s; }
  .hvr-bounce-out:hover, .hvr-bounce-out:focus, .hvr-bounce-out:active {
    -ms-transform: scale(0.8);
    transform: scale(0.8);
    transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36); }

/* Rotate */
.hvr-rotate {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: transform; }
  .hvr-rotate:hover, .hvr-rotate:focus, .hvr-rotate:active {
    -ms-transform: rotate(4deg);
    transform: rotate(4deg); }

/* Grow Rotate */
.hvr-grow-rotate {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: transform; }
  .hvr-grow-rotate:hover, .hvr-grow-rotate:focus, .hvr-grow-rotate:active {
    -ms-transform: scale(1.1) rotate(4deg);
    transform: scale(1.1) rotate(4deg); }

/* Float */
.hvr-float {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: transform;
  transition-timing-function: ease-out; }
  .hvr-float:hover, .hvr-float:focus, .hvr-float:active {
    -ms-transform: translateY(-8px);
    transform: translateY(-8px); }

/* Sink */
.hvr-sink {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: transform;
  transition-timing-function: ease-out; }
  .hvr-sink:hover, .hvr-sink:focus, .hvr-sink:active {
    -ms-transform: translateY(8px);
    transform: translateY(8px); }

/* Bob */

@keyframes hvr-bob {
  0% {
    transform: translateY(-8px); }
  50% {
    transform: translateY(-4px); }
  100% {
    transform: translateY(-8px); } }

@keyframes hvr-bob-float {
  100% {
    transform: translateY(-8px); } }

.hvr-bob {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent; }
  .hvr-bob:hover, .hvr-bob:focus, .hvr-bob:active {
    animation-name: hvr-bob-float, hvr-bob;
    animation-duration: .3s, 1.5s;
    animation-delay: 0s, .3s;
    animation-timing-function: ease-out, ease-in-out;
    animation-iteration-count: 1, infinite;
    animation-fill-mode: forwards;
    animation-direction: normal, alternate; }

/* Hang */

@keyframes hvr-hang {
  0% {
    transform: translateY(8px); }
  50% {
    transform: translateY(4px); }
  100% {
    transform: translateY(8px); } }

@keyframes hvr-hang-sink {
  100% {
    transform: translateY(8px); } }

.hvr-hang {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent; }
  .hvr-hang:hover, .hvr-hang:focus, .hvr-hang:active {
    animation-name: hvr-hang-sink, hvr-hang;
    animation-duration: .3s, 1.5s;
    animation-delay: 0s, .3s;
    animation-timing-function: ease-out, ease-in-out;
    animation-iteration-count: 1, infinite;
    animation-fill-mode: forwards;
    animation-direction: normal, alternate; }

/* Skew */
.hvr-skew {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: transform; }
  .hvr-skew:hover, .hvr-skew:focus, .hvr-skew:active {
    -ms-transform: skew(-10deg);
    transform: skew(-10deg); }

/* Skew Forward */
.hvr-skew-forward {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: transform;
  -ms-transform-origin: 0 100%;
  transform-origin: 0 100%; }
  .hvr-skew-forward:hover, .hvr-skew-forward:focus, .hvr-skew-forward:active {
    -ms-transform: skew(-10deg);
    transform: skew(-10deg); }

/* Skew Backward */
.hvr-skew-backward {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: transform;
  -ms-transform-origin: 0 100%;
  transform-origin: 0 100%; }
  .hvr-skew-backward:hover, .hvr-skew-backward:focus, .hvr-skew-backward:active {
    -ms-transform: skew(10deg);
    transform: skew(10deg); }

/* Wobble Vertical */

@keyframes hvr-wobble-vertical {
  16.65% {
    transform: translateY(8px); }
  33.3% {
    transform: translateY(-6px); }
  49.95% {
    transform: translateY(4px); }
  66.6% {
    transform: translateY(-2px); }
  83.25% {
    transform: translateY(1px); }
  100% {
    transform: translateY(0); } }

.hvr-wobble-vertical {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent; }
  .hvr-wobble-vertical:hover, .hvr-wobble-vertical:focus, .hvr-wobble-vertical:active {
    animation-name: hvr-wobble-vertical;
    animation-duration: 1s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: 1; }

/* Wobble Horizontal */

@keyframes hvr-wobble-horizontal {
  16.65% {
    transform: translateX(8px); }
  33.3% {
    transform: translateX(-6px); }
  49.95% {
    transform: translateX(4px); }
  66.6% {
    transform: translateX(-2px); }
  83.25% {
    transform: translateX(1px); }
  100% {
    transform: translateX(0); } }

.hvr-wobble-horizontal {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent; }
  .hvr-wobble-horizontal:hover, .hvr-wobble-horizontal:focus, .hvr-wobble-horizontal:active {
    animation-name: hvr-wobble-horizontal;
    animation-duration: 1s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: 1; }

/* Wobble To Bottom Right */

@keyframes hvr-wobble-to-bottom-right {
  16.65% {
    transform: translate(8px, 8px); }
  33.3% {
    transform: translate(-6px, -6px); }
  49.95% {
    transform: translate(4px, 4px); }
  66.6% {
    transform: translate(-2px, -2px); }
  83.25% {
    transform: translate(1px, 1px); }
  100% {
    transform: translate(0, 0); } }

.hvr-wobble-to-bottom-right {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent; }
  .hvr-wobble-to-bottom-right:hover, .hvr-wobble-to-bottom-right:focus, .hvr-wobble-to-bottom-right:active {
    animation-name: hvr-wobble-to-bottom-right;
    animation-duration: 1s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: 1; }

/* Wobble To Top Right */

@keyframes hvr-wobble-to-top-right {
  16.65% {
    transform: translate(8px, -8px); }
  33.3% {
    transform: translate(-6px, 6px); }
  49.95% {
    transform: translate(4px, -4px); }
  66.6% {
    transform: translate(-2px, 2px); }
  83.25% {
    transform: translate(1px, -1px); }
  100% {
    transform: translate(0, 0); } }

.hvr-wobble-to-top-right {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent; }
  .hvr-wobble-to-top-right:hover, .hvr-wobble-to-top-right:focus, .hvr-wobble-to-top-right:active {
    animation-name: hvr-wobble-to-top-right;
    animation-duration: 1s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: 1; }

/* Wobble Top */

@keyframes hvr-wobble-top {
  16.65% {
    transform: skew(-12deg); }
  33.3% {
    transform: skew(10deg); }
  49.95% {
    transform: skew(-6deg); }
  66.6% {
    transform: skew(4deg); }
  83.25% {
    transform: skew(-2deg); }
  100% {
    transform: skew(0); } }

.hvr-wobble-top {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  -ms-transform-origin: 0 100%;
  transform-origin: 0 100%; }
  .hvr-wobble-top:hover, .hvr-wobble-top:focus, .hvr-wobble-top:active {
    animation-name: hvr-wobble-top;
    animation-duration: 1s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: 1; }

/* Wobble Bottom */

@keyframes hvr-wobble-bottom {
  16.65% {
    transform: skew(-12deg); }
  33.3% {
    transform: skew(10deg); }
  49.95% {
    transform: skew(-6deg); }
  66.6% {
    transform: skew(4deg); }
  83.25% {
    transform: skew(-2deg); }
  100% {
    transform: skew(0); } }

.hvr-wobble-bottom {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  -ms-transform-origin: 100% 0;
  transform-origin: 100% 0; }
  .hvr-wobble-bottom:hover, .hvr-wobble-bottom:focus, .hvr-wobble-bottom:active {
    animation-name: hvr-wobble-bottom;
    animation-duration: 1s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: 1; }

/* Wobble Skew */

@keyframes hvr-wobble-skew {
  16.65% {
    transform: skew(-12deg); }
  33.3% {
    transform: skew(10deg); }
  49.95% {
    transform: skew(-6deg); }
  66.6% {
    transform: skew(4deg); }
  83.25% {
    transform: skew(-2deg); }
  100% {
    transform: skew(0); } }

.hvr-wobble-skew {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent; }
  .hvr-wobble-skew:hover, .hvr-wobble-skew:focus, .hvr-wobble-skew:active {
    animation-name: hvr-wobble-skew;
    animation-duration: 1s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: 1; }

/* Buzz */

@keyframes hvr-buzz {
  50% {
    transform: translateX(3px) rotate(2deg); }
  100% {
    transform: translateX(-3px) rotate(-2deg); } }

.hvr-buzz {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent; }
  .hvr-buzz:hover, .hvr-buzz:focus, .hvr-buzz:active {
    animation-name: hvr-buzz;
    animation-duration: 0.15s;
    animation-timing-function: linear;
    animation-iteration-count: infinite; }

/* Buzz Out */

@keyframes hvr-buzz-out {
  10% {
    transform: translateX(3px) rotate(2deg); }
  20% {
    transform: translateX(-3px) rotate(-2deg); }
  30% {
    transform: translateX(3px) rotate(2deg); }
  40% {
    transform: translateX(-3px) rotate(-2deg); }
  50% {
    transform: translateX(2px) rotate(1deg); }
  60% {
    transform: translateX(-2px) rotate(-1deg); }
  70% {
    transform: translateX(2px) rotate(1deg); }
  80% {
    transform: translateX(-2px) rotate(-1deg); }
  90% {
    transform: translateX(1px) rotate(0); }
  100% {
    transform: translateX(-1px) rotate(0); } }

.hvr-buzz-out {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent; }
  .hvr-buzz-out:hover, .hvr-buzz-out:focus, .hvr-buzz-out:active {
    animation-name: hvr-buzz-out;
    animation-duration: 0.75s;
    animation-timing-function: linear;
    animation-iteration-count: 1; }

/* Forward */
.hvr-forward {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: transform; }
  .hvr-forward:hover, .hvr-forward:focus, .hvr-forward:active {
    -ms-transform: translateX(8px);
    transform: translateX(8px); }

/* Backward */
.hvr-backward {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: transform; }
  .hvr-backward:hover, .hvr-backward:focus, .hvr-backward:active {
    -ms-transform: translateX(-8px);
    transform: translateX(-8px); }

/* BACKGROUND TRANSITIONS */
/* Fade */
.hvr-fade {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  overflow: hidden;
  transition-duration: 0.3s;
  transition-property: color, background-color; }
  .hvr-fade:hover, .hvr-fade:focus, .hvr-fade:active {
    background-color: #2098D1;
    color: white; }

/* Back Pulse */

@keyframes hvr-back-pulse {
  50% {
    background-color: rgba(32, 152, 209, 0.75); } }

.hvr-back-pulse {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  overflow: hidden;
  transition-duration: 0.5s;
  transition-property: color, background-color; }
  .hvr-back-pulse:hover, .hvr-back-pulse:focus, .hvr-back-pulse:active {
    animation-name: hvr-back-pulse;
    animation-duration: 1s;
    animation-delay: 0.5s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    background-color: #2098D1;
    background-color: #2098d1;
    color: white; }

/* Sweep To Right */
.hvr-sweep-to-right {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  transition-property: color;
  transition-duration: 0.3s; }
  .hvr-sweep-to-right:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #2098D1;
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -ms-transform-origin: 0 50%;
    transform-origin: 0 50%;
    transition-property: transform;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-sweep-to-right:hover, .hvr-sweep-to-right:focus, .hvr-sweep-to-right:active {
    color: white; }
    .hvr-sweep-to-right:hover:before, .hvr-sweep-to-right:focus:before, .hvr-sweep-to-right:active:before {
      -ms-transform: scaleX(1);
      transform: scaleX(1); }

/* Sweep To Left */
.hvr-sweep-to-left {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  transition-property: color;
  transition-duration: 0.3s; }
  .hvr-sweep-to-left:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #2098D1;
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -ms-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
    transition-property: transform;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-sweep-to-left:hover, .hvr-sweep-to-left:focus, .hvr-sweep-to-left:active {
    color: white; }
    .hvr-sweep-to-left:hover:before, .hvr-sweep-to-left:focus:before, .hvr-sweep-to-left:active:before {
      -ms-transform: scaleX(1);
      transform: scaleX(1); }

/* Sweep To Bottom */
.hvr-sweep-to-bottom {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  transition-property: color;
  transition-duration: 0.3s; }
  .hvr-sweep-to-bottom:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #2098D1;
    -ms-transform: scaleY(0);
    transform: scaleY(0);
    -ms-transform-origin: 50% 0;
    transform-origin: 50% 0;
    transition-property: transform;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-sweep-to-bottom:hover, .hvr-sweep-to-bottom:focus, .hvr-sweep-to-bottom:active {
    color: white; }
    .hvr-sweep-to-bottom:hover:before, .hvr-sweep-to-bottom:focus:before, .hvr-sweep-to-bottom:active:before {
      -ms-transform: scaleY(1);
      transform: scaleY(1); }

/* Sweep To Top */
.hvr-sweep-to-top {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  transition-property: color;
  transition-duration: 0.3s; }
  .hvr-sweep-to-top:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #2098D1;
    -ms-transform: scaleY(0);
    transform: scaleY(0);
    -ms-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
    transition-property: transform;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-sweep-to-top:hover, .hvr-sweep-to-top:focus, .hvr-sweep-to-top:active {
    color: white; }
    .hvr-sweep-to-top:hover:before, .hvr-sweep-to-top:focus:before, .hvr-sweep-to-top:active:before {
      -ms-transform: scaleY(1);
      transform: scaleY(1); }

/* Bounce To Right */
.hvr-bounce-to-right {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  transition-property: color;
  transition-duration: 0.5s; }
  .hvr-bounce-to-right:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #2098D1;
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -ms-transform-origin: 0 50%;
    transform-origin: 0 50%;
    transition-property: transform;
    transition-duration: 0.5s;
    transition-timing-function: ease-out; }
  .hvr-bounce-to-right:hover, .hvr-bounce-to-right:focus, .hvr-bounce-to-right:active {
    color: white; }
    .hvr-bounce-to-right:hover:before, .hvr-bounce-to-right:focus:before, .hvr-bounce-to-right:active:before {
      -ms-transform: scaleX(1);
      transform: scaleX(1);
      transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66); }

/* Bounce To Left */
.hvr-bounce-to-left {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  transition-property: color;
  transition-duration: 0.5s; }
  .hvr-bounce-to-left:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #2098D1;
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -ms-transform-origin: 100% 50%;
    transform-origin: 100% 50%;
    transition-property: transform;
    transition-duration: 0.5s;
    transition-timing-function: ease-out; }
  .hvr-bounce-to-left:hover, .hvr-bounce-to-left:focus, .hvr-bounce-to-left:active {
    color: white; }
    .hvr-bounce-to-left:hover:before, .hvr-bounce-to-left:focus:before, .hvr-bounce-to-left:active:before {
      -ms-transform: scaleX(1);
      transform: scaleX(1);
      transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66); }

/* Bounce To Bottom */
.hvr-bounce-to-bottom {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  transition-property: color;
  transition-duration: 0.5s; }
  .hvr-bounce-to-bottom:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #2098D1;
    -ms-transform: scaleY(0);
    transform: scaleY(0);
    -ms-transform-origin: 50% 0;
    transform-origin: 50% 0;
    transition-property: transform;
    transition-duration: 0.5s;
    transition-timing-function: ease-out; }
  .hvr-bounce-to-bottom:hover, .hvr-bounce-to-bottom:focus, .hvr-bounce-to-bottom:active {
    color: white; }
    .hvr-bounce-to-bottom:hover:before, .hvr-bounce-to-bottom:focus:before, .hvr-bounce-to-bottom:active:before {
      -ms-transform: scaleY(1);
      transform: scaleY(1);
      transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66); }

/* Bounce To Top */
.hvr-bounce-to-top {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  transition-property: color;
  transition-duration: 0.5s; }
  .hvr-bounce-to-top:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #2098D1;
    -ms-transform: scaleY(0);
    transform: scaleY(0);
    -ms-transform-origin: 50% 100%;
    transform-origin: 50% 100%;
    transition-property: transform;
    transition-duration: 0.5s;
    transition-timing-function: ease-out; }
  .hvr-bounce-to-top:hover, .hvr-bounce-to-top:focus, .hvr-bounce-to-top:active {
    color: white; }
    .hvr-bounce-to-top:hover:before, .hvr-bounce-to-top:focus:before, .hvr-bounce-to-top:active:before {
      -ms-transform: scaleY(1);
      transform: scaleY(1);
      transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66); }

/* Radial Out */
.hvr-radial-out {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden;
  background: #e1e1e1;
  transition-property: color;
  transition-duration: 0.3s; }
  .hvr-radial-out:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #2098D1;
    border-radius: 100%;
    -ms-transform: scale(0);
    transform: scale(0);
    transition-property: transform;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-radial-out:hover, .hvr-radial-out:focus, .hvr-radial-out:active {
    color: white; }
    .hvr-radial-out:hover:before, .hvr-radial-out:focus:before, .hvr-radial-out:active:before {
      -ms-transform: scale(2);
      transform: scale(2); }

/* Radial In */
.hvr-radial-in {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden;
  background: #2098D1;
  transition-property: color;
  transition-duration: 0.3s; }
  .hvr-radial-in:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #e1e1e1;
    border-radius: 100%;
    -ms-transform: scale(2);
    transform: scale(2);
    transition-property: transform;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-radial-in:hover, .hvr-radial-in:focus, .hvr-radial-in:active {
    color: white; }
    .hvr-radial-in:hover:before, .hvr-radial-in:focus:before, .hvr-radial-in:active:before {
      -ms-transform: scale(0);
      transform: scale(0); }

/* Rectangle In */
.hvr-rectangle-in {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  background: #2098D1;
  transition-property: color;
  transition-duration: 0.3s; }
  .hvr-rectangle-in:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #e1e1e1;
    -ms-transform: scale(1);
    transform: scale(1);
    transition-property: transform;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-rectangle-in:hover, .hvr-rectangle-in:focus, .hvr-rectangle-in:active {
    color: white; }
    .hvr-rectangle-in:hover:before, .hvr-rectangle-in:focus:before, .hvr-rectangle-in:active:before {
      -ms-transform: scale(0);
      transform: scale(0); }

/* Rectangle Out */
.hvr-rectangle-out {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  background: #e1e1e1;
  transition-property: color;
  transition-duration: 0.3s; }
  .hvr-rectangle-out:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #2098D1;
    -ms-transform: scale(0);
    transform: scale(0);
    transition-property: transform;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-rectangle-out:hover, .hvr-rectangle-out:focus, .hvr-rectangle-out:active {
    color: white; }
    .hvr-rectangle-out:hover:before, .hvr-rectangle-out:focus:before, .hvr-rectangle-out:active:before {
      -ms-transform: scale(1);
      transform: scale(1); }

/* Shutter In Horizontal */
.hvr-shutter-in-horizontal {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  background: #2098D1;
  transition-property: color;
  transition-duration: 0.3s; }
  .hvr-shutter-in-horizontal:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #e1e1e1;
    -ms-transform: scaleX(1);
    transform: scaleX(1);
    -ms-transform-origin: 50%;
    transform-origin: 50%;
    transition-property: transform;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-shutter-in-horizontal:hover, .hvr-shutter-in-horizontal:focus, .hvr-shutter-in-horizontal:active {
    color: white; }
    .hvr-shutter-in-horizontal:hover:before, .hvr-shutter-in-horizontal:focus:before, .hvr-shutter-in-horizontal:active:before {
      -ms-transform: scaleX(0);
      transform: scaleX(0); }

/* Shutter Out Horizontal */
.hvr-shutter-out-horizontal {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  background: #e1e1e1;
  transition-property: color;
  transition-duration: 0.3s; }
  .hvr-shutter-out-horizontal:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #2098D1;
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -ms-transform-origin: 50%;
    transform-origin: 50%;
    transition-property: transform;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-shutter-out-horizontal:hover, .hvr-shutter-out-horizontal:focus, .hvr-shutter-out-horizontal:active {
    color: white; }
    .hvr-shutter-out-horizontal:hover:before, .hvr-shutter-out-horizontal:focus:before, .hvr-shutter-out-horizontal:active:before {
      -ms-transform: scaleX(1);
      transform: scaleX(1); }

/* Shutter In Vertical */
.hvr-shutter-in-vertical {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  background: #2098D1;
  transition-property: color;
  transition-duration: 0.3s; }
  .hvr-shutter-in-vertical:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #e1e1e1;
    -ms-transform: scaleY(1);
    transform: scaleY(1);
    -ms-transform-origin: 50%;
    transform-origin: 50%;
    transition-property: transform;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-shutter-in-vertical:hover, .hvr-shutter-in-vertical:focus, .hvr-shutter-in-vertical:active {
    color: white; }
    .hvr-shutter-in-vertical:hover:before, .hvr-shutter-in-vertical:focus:before, .hvr-shutter-in-vertical:active:before {
      -ms-transform: scaleY(0);
      transform: scaleY(0); }

/* Shutter Out Vertical */
.hvr-shutter-out-vertical {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  background: #e1e1e1;
  transition-property: color;
  transition-duration: 0.3s; }
  .hvr-shutter-out-vertical:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #2098D1;
    -ms-transform: scaleY(0);
    transform: scaleY(0);
    -ms-transform-origin: 50%;
    transform-origin: 50%;
    transition-property: transform;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-shutter-out-vertical:hover, .hvr-shutter-out-vertical:focus, .hvr-shutter-out-vertical:active {
    color: white; }
    .hvr-shutter-out-vertical:hover:before, .hvr-shutter-out-vertical:focus:before, .hvr-shutter-out-vertical:active:before {
      -ms-transform: scaleY(1);
      transform: scaleY(1); }

/* BORDER TRANSITIONS */
/* Border Fade */
.hvr-border-fade {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: box-shadow;
  box-shadow: inset 0 0 0 4px #e1e1e1, 0 0 1px transparent;
  /* Hack to improve aliasing on mobile/tablet devices */ }
  .hvr-border-fade:hover, .hvr-border-fade:focus, .hvr-border-fade:active {
    box-shadow: inset 0 0 0 4px #2098D1, 0 0 1px transparent;
    /* Hack to improve aliasing on mobile/tablet devices */ }

/* Hollow */
.hvr-hollow {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: background;
  box-shadow: inset 0 0 0 4px #e1e1e1, 0 0 1px transparent;
  /* Hack to improve aliasing on mobile/tablet devices */ }
  .hvr-hollow:hover, .hvr-hollow:focus, .hvr-hollow:active {
    background: none; }

/* Trim */
.hvr-trim {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative; }
  .hvr-trim:before {
    content: '';
    position: absolute;
    border: white solid 4px;
    top: 4px;
    left: 4px;
    right: 4px;
    bottom: 4px;
    opacity: 0;
    transition-duration: 0.3s;
    transition-property: opacity; }
  .hvr-trim:hover:before, .hvr-trim:focus:before, .hvr-trim:active:before {
    opacity: 1; }

/* Ripple Out */

@keyframes hvr-ripple-out {
  100% {
    top: -12px;
    right: -12px;
    bottom: -12px;
    left: -12px;
    opacity: 0; } }

.hvr-ripple-out {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative; }
  .hvr-ripple-out:before {
    content: '';
    position: absolute;
    border: #e1e1e1 solid 6px;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    animation-duration: 1s; }
  .hvr-ripple-out:hover:before, .hvr-ripple-out:focus:before, .hvr-ripple-out:active:before {
    animation-name: hvr-ripple-out; }

/* Ripple In */

@keyframes hvr-ripple-in {
  100% {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 1; } }

.hvr-ripple-in {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative; }
  .hvr-ripple-in:before {
    content: '';
    position: absolute;
    border: #e1e1e1 solid 4px;
    top: -12px;
    right: -12px;
    bottom: -12px;
    left: -12px;
    opacity: 0;
    animation-duration: 1s; }
  .hvr-ripple-in:hover:before, .hvr-ripple-in:focus:before, .hvr-ripple-in:active:before {
    animation-name: hvr-ripple-in; }

/* Outline Out */
.hvr-outline-out {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative; }
  .hvr-outline-out:before {
    content: '';
    position: absolute;
    border: #e1e1e1 solid 4px;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition-duration: 0.3s;
    transition-property: top, right, bottom, left; }
  .hvr-outline-out:hover:before, .hvr-outline-out:focus:before, .hvr-outline-out:active:before {
    top: -8px;
    right: -8px;
    bottom: -8px;
    left: -8px; }

/* Outline In */
.hvr-outline-in {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative; }
  .hvr-outline-in:before {
    pointer-events: none;
    content: '';
    position: absolute;
    border: #e1e1e1 solid 4px;
    top: -16px;
    right: -16px;
    bottom: -16px;
    left: -16px;
    opacity: 0;
    transition-duration: 0.3s;
    transition-property: top, right, bottom, left; }
  .hvr-outline-in:hover:before, .hvr-outline-in:focus:before, .hvr-outline-in:active:before {
    top: -8px;
    right: -8px;
    bottom: -8px;
    left: -8px;
    opacity: 1; }

/* Round Corners */
.hvr-round-corners {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: border-radius; }
  .hvr-round-corners:hover, .hvr-round-corners:focus, .hvr-round-corners:active {
    border-radius: 1em; }

/* Underline From Left */
.hvr-underline-from-left {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden; }
  .hvr-underline-from-left:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 0;
    right: 100%;
    bottom: 0;
    background: #2098D1;
    height: 4px;
    transition-property: right;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-underline-from-left:hover:before, .hvr-underline-from-left:focus:before, .hvr-underline-from-left:active:before {
    right: 0; }

/* Underline From Center */
.hvr-underline-from-center {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden; }
  .hvr-underline-from-center:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 50%;
    right: 50%;
    bottom: 0;
    background: #2098D1;
    height: 4px;
    transition-property: left, right;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-underline-from-center:hover:before, .hvr-underline-from-center:focus:before, .hvr-underline-from-center:active:before {
    left: 0;
    right: 0; }

/* Underline From Right */
.hvr-underline-from-right {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden; }
  .hvr-underline-from-right:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 100%;
    right: 0;
    bottom: 0;
    background: #2098D1;
    height: 4px;
    transition-property: left;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-underline-from-right:hover:before, .hvr-underline-from-right:focus:before, .hvr-underline-from-right:active:before {
    left: 0; }

/* Overline From Left */
.hvr-overline-from-left {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden; }
  .hvr-overline-from-left:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 0;
    right: 100%;
    top: 0;
    background: #2098D1;
    height: 4px;
    transition-property: right;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-overline-from-left:hover:before, .hvr-overline-from-left:focus:before, .hvr-overline-from-left:active:before {
    right: 0; }

/* Overline From Center */
.hvr-overline-from-center {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden; }
  .hvr-overline-from-center:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 50%;
    right: 50%;
    top: 0;
    background: #2098D1;
    height: 4px;
    transition-property: left, right;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-overline-from-center:hover:before, .hvr-overline-from-center:focus:before, .hvr-overline-from-center:active:before {
    left: 0;
    right: 0; }

/* Overline From Right */
.hvr-overline-from-right {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden; }
  .hvr-overline-from-right:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 100%;
    right: 0;
    top: 0;
    background: #2098D1;
    height: 4px;
    transition-property: left;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-overline-from-right:hover:before, .hvr-overline-from-right:focus:before, .hvr-overline-from-right:active:before {
    left: 0; }

/* Reveal */
.hvr-reveal {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden; }
  .hvr-reveal:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    border-color: #2098D1;
    border-style: solid;
    border-width: 0;
    transition-property: border-width;
    transition-duration: 0.1s;
    transition-timing-function: ease-out; }
  .hvr-reveal:hover:before, .hvr-reveal:focus:before, .hvr-reveal:active:before {
    -ms-transform: translateY(0);
    transform: translateY(0);
    border-width: 4px; }

/* Underline Reveal */
.hvr-underline-reveal {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden; }
  .hvr-underline-reveal:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 0;
    right: 0;
    bottom: 0;
    background: #2098D1;
    height: 4px;
    -ms-transform: translateY(4px);
    transform: translateY(4px);
    transition-property: transform;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-underline-reveal:hover:before, .hvr-underline-reveal:focus:before, .hvr-underline-reveal:active:before {
    -ms-transform: translateY(0);
    transform: translateY(0); }

/* Overline Reveal */
.hvr-overline-reveal {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden; }
  .hvr-overline-reveal:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 0;
    right: 0;
    top: 0;
    background: #2098D1;
    height: 4px;
    -ms-transform: translateY(-4px);
    transform: translateY(-4px);
    transition-property: transform;
    transition-duration: 0.3s;
    transition-timing-function: ease-out; }
  .hvr-overline-reveal:hover:before, .hvr-overline-reveal:focus:before, .hvr-overline-reveal:active:before {
    -ms-transform: translateY(0);
    transform: translateY(0); }

/* SHADOW/GLOW TRANSITIONS */
/* Glow */
.hvr-glow {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: box-shadow; }
  .hvr-glow:hover, .hvr-glow:focus, .hvr-glow:active {
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); }

/* Shadow */
.hvr-shadow {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: box-shadow; }
  .hvr-shadow:hover, .hvr-shadow:focus, .hvr-shadow:active {
    box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.5); }

/* Grow Shadow */
.hvr-grow-shadow {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: box-shadow, transform; }
  .hvr-grow-shadow:hover, .hvr-grow-shadow:focus, .hvr-grow-shadow:active {
    box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.5);
    -ms-transform: scale(1.1);
    transform: scale(1.1); }

/* Box Shadow Outset */
.hvr-box-shadow-outset {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: box-shadow; }
  .hvr-box-shadow-outset:hover, .hvr-box-shadow-outset:focus, .hvr-box-shadow-outset:active {
    box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.6); }

/* Box Shadow Inset */
.hvr-box-shadow-inset {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  transition-duration: 0.3s;
  transition-property: box-shadow;
  box-shadow: inset 0 0 0 rgba(0, 0, 0, 0.6), 0 0 1px transparent;
  /* Hack to improve aliasing on mobile/tablet devices */ }
  .hvr-box-shadow-inset:hover, .hvr-box-shadow-inset:focus, .hvr-box-shadow-inset:active {
    box-shadow: inset 2px 2px 2px rgba(0, 0, 0, 0.6), 0 0 1px transparent;
    /* Hack to improve aliasing on mobile/tablet devices */ }

/* Float Shadow */
.hvr-float-shadow {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  transition-duration: 0.3s;
  transition-property: transform; }
  .hvr-float-shadow:before {
    pointer-events: none;
    position: absolute;
    z-index: -1;
    content: '';
    top: 100%;
    left: 5%;
    height: 10px;
    width: 90%;
    opacity: 0;
    background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.35) 0%, transparent 80%);
    /* W3C */
    transition-duration: 0.3s;
    transition-property: transform, opacity; }
  .hvr-float-shadow:hover, .hvr-float-shadow:focus, .hvr-float-shadow:active {
    -ms-transform: translateY(-5px);
    transform: translateY(-5px);
    /* move the element up by 5px */ }
    .hvr-float-shadow:hover:before, .hvr-float-shadow:focus:before, .hvr-float-shadow:active:before {
      opacity: 1;
      -ms-transform: translateY(5px);
      transform: translateY(5px);
      /* move the element down by 5px (it will stay in place because it's attached to the element that also moves up 5px) */ }

/* Shadow Radial */
.hvr-shadow-radial {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative; }
  .hvr-shadow-radial:before, .hvr-shadow-radial:after {
    pointer-events: none;
    position: absolute;
    content: '';
    left: 0;
    width: 100%;
    box-sizing: border-box;
    background-repeat: no-repeat;
    height: 5px;
    opacity: 0;
    transition-duration: 0.3s;
    transition-property: opacity; }
  .hvr-shadow-radial:before {
    bottom: 100%;
    background: radial-gradient(ellipse at 50% 150%, rgba(0, 0, 0, 0.6) 0%, transparent 80%); }
  .hvr-shadow-radial:after {
    top: 100%;
    background: radial-gradient(ellipse at 50% -50%, rgba(0, 0, 0, 0.6) 0%, transparent 80%); }
  .hvr-shadow-radial:hover:before, .hvr-shadow-radial:focus:before, .hvr-shadow-radial:active:before, .hvr-shadow-radial:hover:after, .hvr-shadow-radial:focus:after, .hvr-shadow-radial:active:after {
    opacity: 1; }

/* SPEECH BUBBLES */
/* Bubble Top */
.hvr-bubble-top {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative; }
  .hvr-bubble-top:before {
    pointer-events: none;
    position: absolute;
    z-index: -1;
    content: '';
    border-style: solid;
    transition-duration: 0.3s;
    transition-property: transform;
    left: calc(50% - 10px);
    top: 0;
    border-width: 0 10px 10px 10px;
    border-color: transparent transparent #e1e1e1 transparent; }
  .hvr-bubble-top:hover:before, .hvr-bubble-top:focus:before, .hvr-bubble-top:active:before {
    -ms-transform: translateY(-10px);
    transform: translateY(-10px); }

/* Bubble Right */
.hvr-bubble-right {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative; }
  .hvr-bubble-right:before {
    pointer-events: none;
    position: absolute;
    z-index: -1;
    content: '';
    border-style: solid;
    transition-duration: 0.3s;
    transition-property: transform;
    top: calc(50% - 10px);
    right: 0;
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent #e1e1e1; }
  .hvr-bubble-right:hover:before, .hvr-bubble-right:focus:before, .hvr-bubble-right:active:before {
    -ms-transform: translateX(10px);
    transform: translateX(10px); }

/* Bubble Bottom */
.hvr-bubble-bottom {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative; }
  .hvr-bubble-bottom:before {
    pointer-events: none;
    position: absolute;
    z-index: -1;
    content: '';
    border-style: solid;
    transition-duration: 0.3s;
    transition-property: transform;
    left: calc(50% - 10px);
    bottom: 0;
    border-width: 10px 10px 0 10px;
    border-color: #e1e1e1 transparent transparent transparent; }
  .hvr-bubble-bottom:hover:before, .hvr-bubble-bottom:focus:before, .hvr-bubble-bottom:active:before {
    -ms-transform: translateY(10px);
    transform: translateY(10px); }

/* Bubble Left */
.hvr-bubble-left {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative; }
  .hvr-bubble-left:before {
    pointer-events: none;
    position: absolute;
    z-index: -1;
    content: '';
    border-style: solid;
    transition-duration: 0.3s;
    transition-property: transform;
    top: calc(50% - 10px);
    left: 0;
    border-width: 10px 10px 10px 0;
    border-color: transparent #e1e1e1 transparent transparent; }
  .hvr-bubble-left:hover:before, .hvr-bubble-left:focus:before, .hvr-bubble-left:active:before {
    -ms-transform: translateX(-10px);
    transform: translateX(-10px); }

/* Bubble Float Top */
.hvr-bubble-float-top {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  transition-duration: 0.3s;
  transition-property: transform; }
  .hvr-bubble-float-top:before {
    position: absolute;
    z-index: -1;
    content: '';
    left: calc(50% - 10px);
    top: 0;
    border-style: solid;
    border-width: 0 10px 10px 10px;
    border-color: transparent transparent #e1e1e1 transparent;
    transition-duration: 0.3s;
    transition-property: transform; }
  .hvr-bubble-float-top:hover, .hvr-bubble-float-top:focus, .hvr-bubble-float-top:active {
    -ms-transform: translateY(10px);
    transform: translateY(10px); }
    .hvr-bubble-float-top:hover:before, .hvr-bubble-float-top:focus:before, .hvr-bubble-float-top:active:before {
      -ms-transform: translateY(-10px);
      transform: translateY(-10px); }

/* Bubble Float Right */
.hvr-bubble-float-right {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  transition-duration: 0.3s;
  transition-property: transform; }
  .hvr-bubble-float-right:before {
    position: absolute;
    z-index: -1;
    top: calc(50% - 10px);
    right: 0;
    content: '';
    border-style: solid;
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent #e1e1e1;
    transition-duration: 0.3s;
    transition-property: transform; }
  .hvr-bubble-float-right:hover, .hvr-bubble-float-right:focus, .hvr-bubble-float-right:active {
    -ms-transform: translateX(-10px);
    transform: translateX(-10px); }
    .hvr-bubble-float-right:hover:before, .hvr-bubble-float-right:focus:before, .hvr-bubble-float-right:active:before {
      -ms-transform: translateX(10px);
      transform: translateX(10px); }

/* Bubble Float Bottom */
.hvr-bubble-float-bottom {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  transition-duration: 0.3s;
  transition-property: transform; }
  .hvr-bubble-float-bottom:before {
    position: absolute;
    z-index: -1;
    content: '';
    left: calc(50% - 10px);
    bottom: 0;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: #e1e1e1 transparent transparent transparent;
    transition-duration: 0.3s;
    transition-property: transform; }
  .hvr-bubble-float-bottom:hover, .hvr-bubble-float-bottom:focus, .hvr-bubble-float-bottom:active {
    -ms-transform: translateY(-10px);
    transform: translateY(-10px); }
    .hvr-bubble-float-bottom:hover:before, .hvr-bubble-float-bottom:focus:before, .hvr-bubble-float-bottom:active:before {
      -ms-transform: translateY(10px);
      transform: translateY(10px); }

/* Bubble Float Left */
.hvr-bubble-float-left {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  transition-duration: 0.3s;
  transition-property: transform; }
  .hvr-bubble-float-left:before {
    position: absolute;
    z-index: -1;
    content: '';
    top: calc(50% - 10px);
    left: 0;
    border-style: solid;
    border-width: 10px 10px 10px 0;
    border-color: transparent #e1e1e1 transparent transparent;
    transition-duration: 0.3s;
    transition-property: transform; }
  .hvr-bubble-float-left:hover, .hvr-bubble-float-left:focus, .hvr-bubble-float-left:active {
    -ms-transform: translateX(10px);
    transform: translateX(10px); }
    .hvr-bubble-float-left:hover:before, .hvr-bubble-float-left:focus:before, .hvr-bubble-float-left:active:before {
      -ms-transform: translateX(-10px);
      transform: translateX(-10px); }

/* ICONS */
/* Icon Back */
.hvr-icon-back {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-left: 2.2em;
  transition-duration: 0.1s; }
  .hvr-icon-back:before {
    content: "\f137";
    position: absolute;
    left: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0);
    transition-duration: 0.1s;
    transition-property: transform;
    transition-timing-function: ease-out; }
  .hvr-icon-back:hover:before, .hvr-icon-back:focus:before, .hvr-icon-back:active:before {
    -ms-transform: translateX(-4px);
    transform: translateX(-4px); }

/* Icon Forward */
.hvr-icon-forward {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em;
  transition-duration: 0.1s; }
  .hvr-icon-forward:before {
    content: "\f138";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0);
    transition-duration: 0.1s;
    transition-property: transform;
    transition-timing-function: ease-out; }
  .hvr-icon-forward:hover:before, .hvr-icon-forward:focus:before, .hvr-icon-forward:active:before {
    -ms-transform: translateX(4px);
    transform: translateX(4px); }

/* Icon Down */

@keyframes hvr-icon-down {
  0%,
  50%,
  100% {
    transform: translateY(0); }
  25%,
  75% {
    transform: translateY(6px); } }

/* Icon Down */
.hvr-icon-down {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em; }
  .hvr-icon-down:before {
    content: "\f01a";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0); }
  .hvr-icon-down:hover:before, .hvr-icon-down:focus:before, .hvr-icon-down:active:before {
    animation-name: hvr-icon-down;
    animation-duration: 0.75s;
    animation-timing-function: ease-out; }

/* Icon Up */

@keyframes hvr-icon-up {
  0%,
  50%,
  100% {
    transform: translateY(0); }
  25%,
  75% {
    transform: translateY(-6px); } }

/* Icon Up */
.hvr-icon-up {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em; }
  .hvr-icon-up:before {
    content: "\f01b";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0); }
  .hvr-icon-up:hover:before, .hvr-icon-up:focus:before, .hvr-icon-up:active:before {
    animation-name: hvr-icon-up;
    animation-duration: 0.75s;
    animation-timing-function: ease-out; }

/* Icon Spin */
.hvr-icon-spin {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em; }
  .hvr-icon-spin:before {
    content: "\f021";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transition-duration: 1s;
    transition-property: transform;
    transition-timing-function: ease-in-out; }
  .hvr-icon-spin:hover:before, .hvr-icon-spin:focus:before, .hvr-icon-spin:active:before {
    -ms-transform: rotate(360deg);
    transform: rotate(360deg); }

/* Icon Drop */

@keyframes hvr-icon-drop {
  0% {
    opacity: 0; }
  50% {
    opacity: 0;
    transform: translateY(-100%); }
  51%,
  100% {
    opacity: 1; } }

/* Icon Drop */
.hvr-icon-drop {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em; }
  .hvr-icon-drop:before {
    content: "\f041";
    position: absolute;
    right: 1em;
    opacity: 1;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0); }
  .hvr-icon-drop:hover:before, .hvr-icon-drop:focus:before, .hvr-icon-drop:active:before {
    opacity: 0;
    transition-duration: 0.3s;
    animation-name: hvr-icon-drop;
    animation-duration: 0.5s;
    animation-delay: 0.3s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-in-out;
    animation-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66); }

/* Icon Fade */
.hvr-icon-fade {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em; }
  .hvr-icon-fade:before {
    content: "\f00c";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0);
    transition-duration: 0.5s;
    transition-property: color; }
  .hvr-icon-fade:hover:before, .hvr-icon-fade:focus:before, .hvr-icon-fade:active:before {
    color: #0F9E5E; }

/* Icon Float Away */

@keyframes hvr-icon-float-away {
  0% {
    opacity: 1; }
  100% {
    opacity: 0;
    transform: translateY(-1em); } }

/* Icon Float Away */
.hvr-icon-float-away {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em; }
  .hvr-icon-float-away:before, .hvr-icon-float-away:after {
    content: "\f055";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome; }
  .hvr-icon-float-away:after {
    opacity: 0;
    animation-duration: 0.5s;
    animation-fill-mode: forwards; }
  .hvr-icon-float-away:hover:after, .hvr-icon-float-away:focus:after, .hvr-icon-float-away:active:after {
    animation-name: hvr-icon-float-away;
    animation-timing-function: ease-out; }

/* Icon Sink Away */

@keyframes hvr-icon-sink-away {
  0% {
    opacity: 1; }
  100% {
    opacity: 0;
    transform: translateY(1em); } }

/* Icon Sink Away */
.hvr-icon-sink-away {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em; }
  .hvr-icon-sink-away:before, .hvr-icon-sink-away:after {
    content: "\f056";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0); }
  .hvr-icon-sink-away:after {
    opacity: 0;
    animation-duration: 0.5s;
    animation-fill-mode: forwards; }
  .hvr-icon-sink-away:hover:after, .hvr-icon-sink-away:focus:after, .hvr-icon-sink-away:active:after {
    animation-name: hvr-icon-sink-away;
    animation-timing-function: ease-out; }

/* Icon Grow */
.hvr-icon-grow {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em;
  transition-duration: 0.3s; }
  .hvr-icon-grow:before {
    content: "\f118";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0);
    transition-duration: 0.3s;
    transition-property: transform;
    transition-timing-function: ease-out; }
  .hvr-icon-grow:hover:before, .hvr-icon-grow:focus:before, .hvr-icon-grow:active:before {
    transform: scale(1.3) translateZ(0); }

/* Icon Shrink */
.hvr-icon-shrink {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em;
  transition-duration: 0.3s; }
  .hvr-icon-shrink:before {
    content: "\f119";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0);
    transition-duration: 0.3s;
    transition-property: transform;
    transition-timing-function: ease-out; }
  .hvr-icon-shrink:hover:before, .hvr-icon-shrink:focus:before, .hvr-icon-shrink:active:before {
    -ms-transform: scale(0.8);
    transform: scale(0.8); }

/* Icon Pulse */

@keyframes hvr-icon-pulse {
  25% {
    transform: scale(1.3); }
  75% {
    transform: scale(0.8); } }

.hvr-icon-pulse {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em; }
  .hvr-icon-pulse:before {
    content: "\f015";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0);
    transition-timing-function: ease-out; }
  .hvr-icon-pulse:hover:before, .hvr-icon-pulse:focus:before, .hvr-icon-pulse:active:before {
    animation-name: hvr-icon-pulse;
    animation-duration: 1s;
    animation-timing-function: linear;
    animation-iteration-count: infinite; }

/* Icon Pulse Grow */

@keyframes hvr-icon-pulse-grow {
  to {
    transform: scale(1.3); } }

.hvr-icon-pulse-grow {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em; }
  .hvr-icon-pulse-grow:before {
    content: "\f015";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0);
    transition-timing-function: ease-out; }
  .hvr-icon-pulse-grow:hover:before, .hvr-icon-pulse-grow:focus:before, .hvr-icon-pulse-grow:active:before {
    animation-name: hvr-icon-pulse-grow;
    animation-duration: 0.3s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-direction: alternate; }

/* Icon Pulse Shrink */

@keyframes hvr-icon-pulse-shrink {
  to {
    transform: scale(0.8); } }

.hvr-icon-pulse-shrink {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em; }
  .hvr-icon-pulse-shrink:before {
    content: "\f015";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0);
    transition-timing-function: ease-out; }
  .hvr-icon-pulse-shrink:hover:before, .hvr-icon-pulse-shrink:focus:before, .hvr-icon-pulse-shrink:active:before {
    animation-name: hvr-icon-pulse-shrink;
    animation-duration: 0.3s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-direction: alternate; }

/* Icon Push */

@keyframes hvr-icon-push {
  50% {
    transform: scale(0.5); } }

.hvr-icon-push {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em;
  transition-duration: 0.3s; }
  .hvr-icon-push:before {
    content: "\f006";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0);
    transition-duration: 0.3s;
    transition-property: transform;
    transition-timing-function: ease-out; }
  .hvr-icon-push:hover:before, .hvr-icon-push:focus:before, .hvr-icon-push:active:before {
    animation-name: hvr-icon-push;
    animation-duration: 0.3s;
    animation-timing-function: linear;
    animation-iteration-count: 1; }

/* Icon Pop */

@keyframes hvr-icon-pop {
  50% {
    transform: scale(1.5); } }

.hvr-icon-pop {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em;
  transition-duration: 0.3s; }
  .hvr-icon-pop:before {
    content: "\f005";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0);
    transition-duration: 0.3s;
    transition-property: transform;
    transition-timing-function: ease-out; }
  .hvr-icon-pop:hover:before, .hvr-icon-pop:focus:before, .hvr-icon-pop:active:before {
    animation-name: hvr-icon-pop;
    animation-duration: 0.3s;
    animation-timing-function: linear;
    animation-iteration-count: 1; }

/* Icon Bounce */
.hvr-icon-bounce {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em;
  transition-duration: 0.3s; }
  .hvr-icon-bounce:before {
    content: "\f087";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0);
    transition-duration: 0.3s;
    transition-property: transform;
    transition-timing-function: ease-out; }
  .hvr-icon-bounce:hover:before, .hvr-icon-bounce:focus:before, .hvr-icon-bounce:active:before {
    -ms-transform: scale(1.5);
    transform: scale(1.5);
    transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36); }

/* Icon Rotate */
.hvr-icon-rotate {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em;
  transition-duration: 0.3s; }
  .hvr-icon-rotate:before {
    content: "\f0c6";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0);
    transition-duration: 0.3s;
    transition-property: transform;
    transition-timing-function: ease-out; }
  .hvr-icon-rotate:hover:before, .hvr-icon-rotate:focus:before, .hvr-icon-rotate:active:before {
    -ms-transform: rotate(20deg);
    transform: rotate(20deg); }

/* Icon Grow Rotate */
.hvr-icon-grow-rotate {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em;
  transition-duration: 0.3s; }
  .hvr-icon-grow-rotate:before {
    content: "\f095";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0);
    transition-duration: 0.3s;
    transition-property: transform;
    transition-timing-function: ease-out; }
  .hvr-icon-grow-rotate:hover:before, .hvr-icon-grow-rotate:focus:before, .hvr-icon-grow-rotate:active:before {
    -ms-transform: scale(1.5) rotate(12deg);
    transform: scale(1.5) rotate(12deg); }

/* Icon Float */
.hvr-icon-float {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em;
  transition-duration: 0.3s; }
  .hvr-icon-float:before {
    content: "\f01b";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0);
    transition-duration: 0.3s;
    transition-property: transform;
    transition-timing-function: ease-out; }
  .hvr-icon-float:hover:before, .hvr-icon-float:focus:before, .hvr-icon-float:active:before {
    -ms-transform: translateY(-4px);
    transform: translateY(-4px); }

/* Icon Sink */
.hvr-icon-sink {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em;
  transition-duration: 0.3s; }
  .hvr-icon-sink:before {
    content: "\f01a";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0);
    transition-duration: 0.3s;
    transition-property: transform;
    transition-timing-function: ease-out; }
  .hvr-icon-sink:hover:before, .hvr-icon-sink:focus:before, .hvr-icon-sink:active:before {
    -ms-transform: translateY(4px);
    transform: translateY(4px); }

/* Icon Bob */

@keyframes hvr-icon-bob {
  0% {
    transform: translateY(-6px); }
  50% {
    transform: translateY(-2px); }
  100% {
    transform: translateY(-6px); } }

@keyframes hvr-icon-bob-float {
  100% {
    transform: translateY(-6px); } }

.hvr-icon-bob {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em;
  transition-duration: 0.3s; }
  .hvr-icon-bob:before {
    content: "\f077";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0); }
  .hvr-icon-bob:hover:before, .hvr-icon-bob:focus:before, .hvr-icon-bob:active:before {
    animation-name: hvr-icon-bob-float, hvr-icon-bob;
    animation-duration: .3s, 1.5s;
    animation-delay: 0s, .3s;
    animation-timing-function: ease-out, ease-in-out;
    animation-iteration-count: 1, infinite;
    animation-fill-mode: forwards;
    animation-direction: normal, alternate; }

/* Icon Hang */

@keyframes hvr-icon-hang {
  0% {
    transform: translateY(6px); }
  50% {
    transform: translateY(2px); }
  100% {
    transform: translateY(6px); } }

@keyframes hvr-icon-hang-sink {
  100% {
    transform: translateY(6px); } }

.hvr-icon-hang {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em;
  transition-duration: 0.3s; }
  .hvr-icon-hang:before {
    content: "\f078";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0); }
  .hvr-icon-hang:hover:before, .hvr-icon-hang:focus:before, .hvr-icon-hang:active:before {
    animation-name: hvr-icon-hang-sink, hvr-icon-hang;
    animation-duration: .3s, 1.5s;
    animation-delay: 0s, .3s;
    animation-timing-function: ease-out, ease-in-out;
    animation-iteration-count: 1, infinite;
    animation-fill-mode: forwards;
    animation-direction: normal, alternate; }

/* Icon Wobble Horizontal */

@keyframes hvr-icon-wobble-horizontal {
  16.65% {
    transform: translateX(6px); }
  33.3% {
    transform: translateX(-5px); }
  49.95% {
    transform: translateX(4px); }
  66.6% {
    transform: translateX(-2px); }
  83.25% {
    transform: translateX(1px); }
  100% {
    transform: translateX(0); } }

.hvr-icon-wobble-horizontal {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em;
  transition-duration: 0.3s; }
  .hvr-icon-wobble-horizontal:before {
    content: "\f061";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0); }
  .hvr-icon-wobble-horizontal:hover:before, .hvr-icon-wobble-horizontal:focus:before, .hvr-icon-wobble-horizontal:active:before {
    animation-name: hvr-icon-wobble-horizontal;
    animation-duration: 1s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: 1; }

/* Icon Wobble Vertical */

@keyframes hvr-icon-wobble-vertical {
  16.65% {
    transform: translateY(6px); }
  33.3% {
    transform: translateY(-5px); }
  49.95% {
    transform: translateY(4px); }
  66.6% {
    transform: translateY(-2px); }
  83.25% {
    transform: translateY(1px); }
  100% {
    transform: translateY(0); } }

.hvr-icon-wobble-vertical {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em;
  transition-duration: 0.3s; }
  .hvr-icon-wobble-vertical:before {
    content: "\f062";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0); }
  .hvr-icon-wobble-vertical:hover:before, .hvr-icon-wobble-vertical:focus:before, .hvr-icon-wobble-vertical:active:before {
    animation-name: hvr-icon-wobble-vertical;
    animation-duration: 1s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: 1; }

/* Icon Buzz */

@keyframes hvr-icon-buzz {
  50% {
    transform: translateX(3px) rotate(2deg); }
  100% {
    transform: translateX(-3px) rotate(-2deg); } }

.hvr-icon-buzz {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em;
  transition-duration: 0.3s; }
  .hvr-icon-buzz:before {
    content: "\f017";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0); }
  .hvr-icon-buzz:hover:before, .hvr-icon-buzz:focus:before, .hvr-icon-buzz:active:before {
    animation-name: hvr-icon-buzz;
    animation-duration: 0.15s;
    animation-timing-function: linear;
    animation-iteration-count: infinite; }

/* Icon Buzz Out */

@keyframes hvr-icon-buzz-out {
  10% {
    transform: translateX(3px) rotate(2deg); }
  20% {
    transform: translateX(-3px) rotate(-2deg); }
  30% {
    transform: translateX(3px) rotate(2deg); }
  40% {
    transform: translateX(-3px) rotate(-2deg); }
  50% {
    transform: translateX(2px) rotate(1deg); }
  60% {
    transform: translateX(-2px) rotate(-1deg); }
  70% {
    transform: translateX(2px) rotate(1deg); }
  80% {
    transform: translateX(-2px) rotate(-1deg); }
  90% {
    transform: translateX(1px) rotate(0); }
  100% {
    transform: translateX(-1px) rotate(0); } }

.hvr-icon-buzz-out {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em;
  transition-duration: 0.3s; }
  .hvr-icon-buzz-out:before {
    content: "\f023";
    position: absolute;
    right: 1em;
    padding: 0 1px;
    font-family: FontAwesome;
    transform: translateZ(0); }
  .hvr-icon-buzz-out:hover:before, .hvr-icon-buzz-out:focus:before, .hvr-icon-buzz-out:active:before {
    animation-name: hvr-icon-buzz-out;
    animation-duration: 0.75s;
    animation-timing-function: linear;
    animation-iteration-count: 1; }

/* CURLS */
/* Curl Top Left */
.hvr-curl-top-left {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative; }
  .hvr-curl-top-left:before {
    pointer-events: none;
    position: absolute;
    content: '';
    height: 0;
    width: 0;
    top: 0;
    left: 0;
    background: white;
    /* IE9 */
    background: linear-gradient(135deg, white 45%, #aaa 50%, #ccc 56%, white 80%);
    filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#ffffff', endColorstr='#000000');
    /*For IE7-8-9*/
    z-index: 1000;
    box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.4);
    transition-duration: 0.3s;
    transition-property: width, height; }
  .hvr-curl-top-left:hover:before, .hvr-curl-top-left:focus:before, .hvr-curl-top-left:active:before {
    width: 25px;
    height: 25px; }

/* Curl Top Right */
.hvr-curl-top-right {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative; }
  .hvr-curl-top-right:before {
    pointer-events: none;
    position: absolute;
    content: '';
    height: 0;
    width: 0;
    top: 0;
    right: 0;
    background: white;
    /* IE9 */
    background: linear-gradient(225deg, white 45%, #aaa 50%, #ccc 56%, white 80%);
    box-shadow: -1px 1px 1px rgba(0, 0, 0, 0.4);
    transition-duration: 0.3s;
    transition-property: width, height; }
  .hvr-curl-top-right:hover:before, .hvr-curl-top-right:focus:before, .hvr-curl-top-right:active:before {
    width: 25px;
    height: 25px; }

/* Curl Bottom Right */
.hvr-curl-bottom-right {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative; }
  .hvr-curl-bottom-right:before {
    pointer-events: none;
    position: absolute;
    content: '';
    height: 0;
    width: 0;
    bottom: 0;
    right: 0;
    background: white;
    /* IE9 */
    background: linear-gradient(315deg, white 45%, #aaa 50%, #ccc 56%, white 80%);
    box-shadow: -1px -1px 1px rgba(0, 0, 0, 0.4);
    transition-duration: 0.3s;
    transition-property: width, height; }
  .hvr-curl-bottom-right:hover:before, .hvr-curl-bottom-right:focus:before, .hvr-curl-bottom-right:active:before {
    width: 25px;
    height: 25px; }

/* Curl Bottom Left */
.hvr-curl-bottom-left {
  display: inline-block;
  vertical-align: middle;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative; }
  .hvr-curl-bottom-left:before {
    pointer-events: none;
    position: absolute;
    content: '';
    height: 0;
    width: 0;
    bottom: 0;
    left: 0;
    background: white;
    /* IE9 */
    background: linear-gradient(45deg, white 45%, #aaa 50%, #ccc 56%, white 80%);
    box-shadow: 1px -1px 1px rgba(0, 0, 0, 0.4);
    transition-duration: 0.3s;
    transition-property: width, height; }
  .hvr-curl-bottom-left:hover:before, .hvr-curl-bottom-left:focus:before, .hvr-curl-bottom-left:active:before {
    width: 25px;
    height: 25px; }

/**
 * Variables declared here can be overridden by consuming applications, with
 * the help of the `!default` flag.
 *
 * @example
 *     // overriding $hoverColor
 *     $hoverColor: rgba(red, 0.05);
 *
 *     // overriding image path
 *     $flagsImagePath: "images/";
 *
 *     // import the scss file after the overrides
 *     @import "bower_component/intl-tel-input/src/css/intlTelInput";
 */
.intl-tel-input {
  position: relative;
  display: inline-block; }
  .intl-tel-input * {
    box-sizing: border-box;
    -moz-box-sizing: border-box; }
  .intl-tel-input .hide {
    display: none; }
  .intl-tel-input .v-hide {
    visibility: hidden; }
  .intl-tel-input input, .intl-tel-input input[type=text], .intl-tel-input input[type=tel] {
    position: relative;
    z-index: 0;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-right: 36px;
    margin-right: 0; }
  .intl-tel-input .flag-container {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    padding: 1px; }
  .intl-tel-input .selected-flag {
    z-index: 1;
    position: relative;
    width: 36px;
    height: 100%;
    padding: 0 0 0 8px; }
    .intl-tel-input .selected-flag .iti-flag {
      position: absolute;
      top: 0;
      bottom: 0;
      margin: auto; }
    .intl-tel-input .selected-flag .iti-arrow {
      position: absolute;
      top: 50%;
      margin-top: -2px;
      right: 6px;
      width: 0;
      height: 0;
      border-left: 3px solid transparent;
      border-right: 3px solid transparent;
      border-top: 4px solid #555; }
      .intl-tel-input .selected-flag .iti-arrow.up {
        border-top: none;
        border-bottom: 4px solid #555; }
  .intl-tel-input .country-list {
    position: absolute;
    z-index: 2;
    list-style: none;
    text-align: left;
    padding: 0;
    margin: 0 0 0 -1px;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.2);
    background-color: white;
    border: 1px solid #CCC;
    white-space: nowrap;
    max-height: 200px;
    overflow-y: scroll; }
    .intl-tel-input .country-list.dropup {
      bottom: 100%;
      margin-bottom: -1px; }
    .intl-tel-input .country-list .flag-box {
      display: inline-block;
      width: 20px; }
    @media (max-width: 500px) {
      .intl-tel-input .country-list {
        white-space: normal; } }
    .intl-tel-input .country-list .divider {
      padding-bottom: 5px;
      margin-bottom: 5px;
      border-bottom: 1px solid #CCC; }
    .intl-tel-input .country-list .country {
      padding: 5px 10px; }
      .intl-tel-input .country-list .country .dial-code {
        color: #999; }
    .intl-tel-input .country-list .country.highlight {
      background-color: rgba(0, 0, 0, 0.05); }
    .intl-tel-input .country-list .flag-box, .intl-tel-input .country-list .country-name, .intl-tel-input .country-list .dial-code {
      vertical-align: middle; }
    .intl-tel-input .country-list .flag-box, .intl-tel-input .country-list .country-name {
      margin-right: 6px; }
  .intl-tel-input.allow-dropdown input, .intl-tel-input.allow-dropdown input[type=text], .intl-tel-input.allow-dropdown input[type=tel], .intl-tel-input.separate-dial-code input, .intl-tel-input.separate-dial-code input[type=text], .intl-tel-input.separate-dial-code input[type=tel] {
    padding-right: 6px;
    padding-left: 52px;
    margin-left: 0; }
  .intl-tel-input.allow-dropdown .flag-container, .intl-tel-input.separate-dial-code .flag-container {
    right: auto;
    left: 0; }
  .intl-tel-input.allow-dropdown .selected-flag, .intl-tel-input.separate-dial-code .selected-flag {
    width: 46px; }
  .intl-tel-input.allow-dropdown .flag-container:hover {
    cursor: pointer; }
    .intl-tel-input.allow-dropdown .flag-container:hover .selected-flag {
      background-color: rgba(0, 0, 0, 0.05); }
  .intl-tel-input.allow-dropdown input[disabled] + .flag-container:hover, .intl-tel-input.allow-dropdown input[readonly] + .flag-container:hover {
    cursor: default; }
    .intl-tel-input.allow-dropdown input[disabled] + .flag-container:hover .selected-flag, .intl-tel-input.allow-dropdown input[readonly] + .flag-container:hover .selected-flag {
      background-color: transparent; }
  .intl-tel-input.separate-dial-code .selected-flag {
    background-color: rgba(0, 0, 0, 0.05);
    display: table; }
  .intl-tel-input.separate-dial-code .selected-dial-code {
    display: table-cell;
    vertical-align: middle;
    padding-left: 28px; }
  .intl-tel-input.separate-dial-code.iti-sdc-2 input, .intl-tel-input.separate-dial-code.iti-sdc-2 input[type=text], .intl-tel-input.separate-dial-code.iti-sdc-2 input[type=tel] {
    padding-left: 66px; }
  .intl-tel-input.separate-dial-code.iti-sdc-2 .selected-flag {
    width: 60px; }
  .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-2 input, .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-2 input[type=text], .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-2 input[type=tel] {
    padding-left: 76px; }
  .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-2 .selected-flag {
    width: 70px; }
  .intl-tel-input.separate-dial-code.iti-sdc-3 input, .intl-tel-input.separate-dial-code.iti-sdc-3 input[type=text], .intl-tel-input.separate-dial-code.iti-sdc-3 input[type=tel] {
    padding-left: 74px; }
  .intl-tel-input.separate-dial-code.iti-sdc-3 .selected-flag {
    width: 68px; }
  .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-3 input, .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-3 input[type=text], .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-3 input[type=tel] {
    padding-left: 84px; }
  .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-3 .selected-flag {
    width: 78px; }
  .intl-tel-input.separate-dial-code.iti-sdc-4 input, .intl-tel-input.separate-dial-code.iti-sdc-4 input[type=text], .intl-tel-input.separate-dial-code.iti-sdc-4 input[type=tel] {
    padding-left: 82px; }
  .intl-tel-input.separate-dial-code.iti-sdc-4 .selected-flag {
    width: 76px; }
  .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-4 input, .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-4 input[type=text], .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-4 input[type=tel] {
    padding-left: 92px; }
  .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-4 .selected-flag {
    width: 86px; }
  .intl-tel-input.separate-dial-code.iti-sdc-5 input, .intl-tel-input.separate-dial-code.iti-sdc-5 input[type=text], .intl-tel-input.separate-dial-code.iti-sdc-5 input[type=tel] {
    padding-left: 90px; }
  .intl-tel-input.separate-dial-code.iti-sdc-5 .selected-flag {
    width: 84px; }
  .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-5 input, .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-5 input[type=text], .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-5 input[type=tel] {
    padding-left: 100px; }
  .intl-tel-input.separate-dial-code.allow-dropdown.iti-sdc-5 .selected-flag {
    width: 94px; }
  .intl-tel-input.iti-container {
    position: absolute;
    top: -1000px;
    left: -1000px;
    z-index: 1060;
    padding: 1px; }
    .intl-tel-input.iti-container:hover {
      cursor: pointer; }

.iti-mobile .intl-tel-input.iti-container {
  top: 30px;
  bottom: 30px;
  left: 30px;
  right: 30px;
  position: fixed; }

.iti-mobile .intl-tel-input .country-list {
  max-height: 100%;
  width: 100%; }
  .iti-mobile .intl-tel-input .country-list .country {
    padding: 10px 10px;
    line-height: 1.5em; }

.iti-flag {
  width: 20px; }
  .iti-flag.be {
    width: 18px; }
  .iti-flag.ch {
    width: 15px; }
  .iti-flag.mc {
    width: 19px; }
  .iti-flag.ne {
    width: 18px; }
  .iti-flag.np {
    width: 13px; }
  .iti-flag.va {
    width: 15px; }
  @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
    .iti-flag {
      background-size: 5630px 15px; } }
  .iti-flag.ac {
    height: 10px;
    background-position: 0px 0px; }
  .iti-flag.ad {
    height: 14px;
    background-position: -22px 0px; }
  .iti-flag.ae {
    height: 10px;
    background-position: -44px 0px; }
  .iti-flag.af {
    height: 14px;
    background-position: -66px 0px; }
  .iti-flag.ag {
    height: 14px;
    background-position: -88px 0px; }
  .iti-flag.ai {
    height: 10px;
    background-position: -110px 0px; }
  .iti-flag.al {
    height: 15px;
    background-position: -132px 0px; }
  .iti-flag.am {
    height: 10px;
    background-position: -154px 0px; }
  .iti-flag.ao {
    height: 14px;
    background-position: -176px 0px; }
  .iti-flag.aq {
    height: 14px;
    background-position: -198px 0px; }
  .iti-flag.ar {
    height: 13px;
    background-position: -220px 0px; }
  .iti-flag.as {
    height: 10px;
    background-position: -242px 0px; }
  .iti-flag.at {
    height: 14px;
    background-position: -264px 0px; }
  .iti-flag.au {
    height: 10px;
    background-position: -286px 0px; }
  .iti-flag.aw {
    height: 14px;
    background-position: -308px 0px; }
  .iti-flag.ax {
    height: 13px;
    background-position: -330px 0px; }
  .iti-flag.az {
    height: 10px;
    background-position: -352px 0px; }
  .iti-flag.ba {
    height: 10px;
    background-position: -374px 0px; }
  .iti-flag.bb {
    height: 14px;
    background-position: -396px 0px; }
  .iti-flag.bd {
    height: 12px;
    background-position: -418px 0px; }
  .iti-flag.be {
    height: 15px;
    background-position: -440px 0px; }
  .iti-flag.bf {
    height: 14px;
    background-position: -460px 0px; }
  .iti-flag.bg {
    height: 12px;
    background-position: -482px 0px; }
  .iti-flag.bh {
    height: 12px;
    background-position: -504px 0px; }
  .iti-flag.bi {
    height: 12px;
    background-position: -526px 0px; }
  .iti-flag.bj {
    height: 14px;
    background-position: -548px 0px; }
  .iti-flag.bl {
    height: 14px;
    background-position: -570px 0px; }
  .iti-flag.bm {
    height: 10px;
    background-position: -592px 0px; }
  .iti-flag.bn {
    height: 10px;
    background-position: -614px 0px; }
  .iti-flag.bo {
    height: 14px;
    background-position: -636px 0px; }
  .iti-flag.bq {
    height: 14px;
    background-position: -658px 0px; }
  .iti-flag.br {
    height: 14px;
    background-position: -680px 0px; }
  .iti-flag.bs {
    height: 10px;
    background-position: -702px 0px; }
  .iti-flag.bt {
    height: 14px;
    background-position: -724px 0px; }
  .iti-flag.bv {
    height: 15px;
    background-position: -746px 0px; }
  .iti-flag.bw {
    height: 14px;
    background-position: -768px 0px; }
  .iti-flag.by {
    height: 10px;
    background-position: -790px 0px; }
  .iti-flag.bz {
    height: 14px;
    background-position: -812px 0px; }
  .iti-flag.ca {
    height: 10px;
    background-position: -834px 0px; }
  .iti-flag.cc {
    height: 10px;
    background-position: -856px 0px; }
  .iti-flag.cd {
    height: 15px;
    background-position: -878px 0px; }
  .iti-flag.cf {
    height: 14px;
    background-position: -900px 0px; }
  .iti-flag.cg {
    height: 14px;
    background-position: -922px 0px; }
  .iti-flag.ch {
    height: 15px;
    background-position: -944px 0px; }
  .iti-flag.ci {
    height: 14px;
    background-position: -961px 0px; }
  .iti-flag.ck {
    height: 10px;
    background-position: -983px 0px; }
  .iti-flag.cl {
    height: 14px;
    background-position: -1005px 0px; }
  .iti-flag.cm {
    height: 14px;
    background-position: -1027px 0px; }
  .iti-flag.cn {
    height: 14px;
    background-position: -1049px 0px; }
  .iti-flag.co {
    height: 14px;
    background-position: -1071px 0px; }
  .iti-flag.cp {
    height: 14px;
    background-position: -1093px 0px; }
  .iti-flag.cr {
    height: 12px;
    background-position: -1115px 0px; }
  .iti-flag.cu {
    height: 10px;
    background-position: -1137px 0px; }
  .iti-flag.cv {
    height: 12px;
    background-position: -1159px 0px; }
  .iti-flag.cw {
    height: 14px;
    background-position: -1181px 0px; }
  .iti-flag.cx {
    height: 10px;
    background-position: -1203px 0px; }
  .iti-flag.cy {
    height: 13px;
    background-position: -1225px 0px; }
  .iti-flag.cz {
    height: 14px;
    background-position: -1247px 0px; }
  .iti-flag.de {
    height: 12px;
    background-position: -1269px 0px; }
  .iti-flag.dg {
    height: 10px;
    background-position: -1291px 0px; }
  .iti-flag.dj {
    height: 14px;
    background-position: -1313px 0px; }
  .iti-flag.dk {
    height: 15px;
    background-position: -1335px 0px; }
  .iti-flag.dm {
    height: 10px;
    background-position: -1357px 0px; }
  .iti-flag.do {
    height: 13px;
    background-position: -1379px 0px; }
  .iti-flag.dz {
    height: 14px;
    background-position: -1401px 0px; }
  .iti-flag.ea {
    height: 14px;
    background-position: -1423px 0px; }
  .iti-flag.ec {
    height: 14px;
    background-position: -1445px 0px; }
  .iti-flag.ee {
    height: 13px;
    background-position: -1467px 0px; }
  .iti-flag.eg {
    height: 14px;
    background-position: -1489px 0px; }
  .iti-flag.eh {
    height: 10px;
    background-position: -1511px 0px; }
  .iti-flag.er {
    height: 10px;
    background-position: -1533px 0px; }
  .iti-flag.es {
    height: 14px;
    background-position: -1555px 0px; }
  .iti-flag.et {
    height: 10px;
    background-position: -1577px 0px; }
  .iti-flag.eu {
    height: 14px;
    background-position: -1599px 0px; }
  .iti-flag.fi {
    height: 12px;
    background-position: -1621px 0px; }
  .iti-flag.fj {
    height: 10px;
    background-position: -1643px 0px; }
  .iti-flag.fk {
    height: 10px;
    background-position: -1665px 0px; }
  .iti-flag.fm {
    height: 11px;
    background-position: -1687px 0px; }
  .iti-flag.fo {
    height: 15px;
    background-position: -1709px 0px; }
  .iti-flag.fr {
    height: 14px;
    background-position: -1731px 0px; }
  .iti-flag.ga {
    height: 15px;
    background-position: -1753px 0px; }
  .iti-flag.gb {
    height: 10px;
    background-position: -1775px 0px; }
  .iti-flag.gd {
    height: 12px;
    background-position: -1797px 0px; }
  .iti-flag.ge {
    height: 14px;
    background-position: -1819px 0px; }
  .iti-flag.gf {
    height: 14px;
    background-position: -1841px 0px; }
  .iti-flag.gg {
    height: 14px;
    background-position: -1863px 0px; }
  .iti-flag.gh {
    height: 14px;
    background-position: -1885px 0px; }
  .iti-flag.gi {
    height: 10px;
    background-position: -1907px 0px; }
  .iti-flag.gl {
    height: 14px;
    background-position: -1929px 0px; }
  .iti-flag.gm {
    height: 14px;
    background-position: -1951px 0px; }
  .iti-flag.gn {
    height: 14px;
    background-position: -1973px 0px; }
  .iti-flag.gp {
    height: 14px;
    background-position: -1995px 0px; }
  .iti-flag.gq {
    height: 14px;
    background-position: -2017px 0px; }
  .iti-flag.gr {
    height: 14px;
    background-position: -2039px 0px; }
  .iti-flag.gs {
    height: 10px;
    background-position: -2061px 0px; }
  .iti-flag.gt {
    height: 13px;
    background-position: -2083px 0px; }
  .iti-flag.gu {
    height: 11px;
    background-position: -2105px 0px; }
  .iti-flag.gw {
    height: 10px;
    background-position: -2127px 0px; }
  .iti-flag.gy {
    height: 12px;
    background-position: -2149px 0px; }
  .iti-flag.hk {
    height: 14px;
    background-position: -2171px 0px; }
  .iti-flag.hm {
    height: 10px;
    background-position: -2193px 0px; }
  .iti-flag.hn {
    height: 10px;
    background-position: -2215px 0px; }
  .iti-flag.hr {
    height: 10px;
    background-position: -2237px 0px; }
  .iti-flag.ht {
    height: 12px;
    background-position: -2259px 0px; }
  .iti-flag.hu {
    height: 10px;
    background-position: -2281px 0px; }
  .iti-flag.ic {
    height: 14px;
    background-position: -2303px 0px; }
  .iti-flag.id {
    height: 14px;
    background-position: -2325px 0px; }
  .iti-flag.ie {
    height: 10px;
    background-position: -2347px 0px; }
  .iti-flag.il {
    height: 15px;
    background-position: -2369px 0px; }
  .iti-flag.im {
    height: 10px;
    background-position: -2391px 0px; }
  .iti-flag.in {
    height: 14px;
    background-position: -2413px 0px; }
  .iti-flag.io {
    height: 10px;
    background-position: -2435px 0px; }
  .iti-flag.iq {
    height: 14px;
    background-position: -2457px 0px; }
  .iti-flag.ir {
    height: 12px;
    background-position: -2479px 0px; }
  .iti-flag.is {
    height: 15px;
    background-position: -2501px 0px; }
  .iti-flag.it {
    height: 14px;
    background-position: -2523px 0px; }
  .iti-flag.je {
    height: 12px;
    background-position: -2545px 0px; }
  .iti-flag.jm {
    height: 10px;
    background-position: -2567px 0px; }
  .iti-flag.jo {
    height: 10px;
    background-position: -2589px 0px; }
  .iti-flag.jp {
    height: 14px;
    background-position: -2611px 0px; }
  .iti-flag.ke {
    height: 14px;
    background-position: -2633px 0px; }
  .iti-flag.kg {
    height: 12px;
    background-position: -2655px 0px; }
  .iti-flag.kh {
    height: 13px;
    background-position: -2677px 0px; }
  .iti-flag.ki {
    height: 10px;
    background-position: -2699px 0px; }
  .iti-flag.km {
    height: 12px;
    background-position: -2721px 0px; }
  .iti-flag.kn {
    height: 14px;
    background-position: -2743px 0px; }
  .iti-flag.kp {
    height: 10px;
    background-position: -2765px 0px; }
  .iti-flag.kr {
    height: 14px;
    background-position: -2787px 0px; }
  .iti-flag.kw {
    height: 10px;
    background-position: -2809px 0px; }
  .iti-flag.ky {
    height: 10px;
    background-position: -2831px 0px; }
  .iti-flag.kz {
    height: 10px;
    background-position: -2853px 0px; }
  .iti-flag.la {
    height: 14px;
    background-position: -2875px 0px; }
  .iti-flag.lb {
    height: 14px;
    background-position: -2897px 0px; }
  .iti-flag.lc {
    height: 10px;
    background-position: -2919px 0px; }
  .iti-flag.li {
    height: 12px;
    background-position: -2941px 0px; }
  .iti-flag.lk {
    height: 10px;
    background-position: -2963px 0px; }
  .iti-flag.lr {
    height: 11px;
    background-position: -2985px 0px; }
  .iti-flag.ls {
    height: 14px;
    background-position: -3007px 0px; }
  .iti-flag.lt {
    height: 12px;
    background-position: -3029px 0px; }
  .iti-flag.lu {
    height: 12px;
    background-position: -3051px 0px; }
  .iti-flag.lv {
    height: 10px;
    background-position: -3073px 0px; }
  .iti-flag.ly {
    height: 10px;
    background-position: -3095px 0px; }
  .iti-flag.ma {
    height: 14px;
    background-position: -3117px 0px; }
  .iti-flag.mc {
    height: 15px;
    background-position: -3139px 0px; }
  .iti-flag.md {
    height: 10px;
    background-position: -3160px 0px; }
  .iti-flag.me {
    height: 10px;
    background-position: -3182px 0px; }
  .iti-flag.mf {
    height: 14px;
    background-position: -3204px 0px; }
  .iti-flag.mg {
    height: 14px;
    background-position: -3226px 0px; }
  .iti-flag.mh {
    height: 11px;
    background-position: -3248px 0px; }
  .iti-flag.mk {
    height: 10px;
    background-position: -3270px 0px; }
  .iti-flag.ml {
    height: 14px;
    background-position: -3292px 0px; }
  .iti-flag.mm {
    height: 14px;
    background-position: -3314px 0px; }
  .iti-flag.mn {
    height: 10px;
    background-position: -3336px 0px; }
  .iti-flag.mo {
    height: 14px;
    background-position: -3358px 0px; }
  .iti-flag.mp {
    height: 10px;
    background-position: -3380px 0px; }
  .iti-flag.mq {
    height: 14px;
    background-position: -3402px 0px; }
  .iti-flag.mr {
    height: 14px;
    background-position: -3424px 0px; }
  .iti-flag.ms {
    height: 10px;
    background-position: -3446px 0px; }
  .iti-flag.mt {
    height: 14px;
    background-position: -3468px 0px; }
  .iti-flag.mu {
    height: 14px;
    background-position: -3490px 0px; }
  .iti-flag.mv {
    height: 14px;
    background-position: -3512px 0px; }
  .iti-flag.mw {
    height: 14px;
    background-position: -3534px 0px; }
  .iti-flag.mx {
    height: 12px;
    background-position: -3556px 0px; }
  .iti-flag.my {
    height: 10px;
    background-position: -3578px 0px; }
  .iti-flag.mz {
    height: 14px;
    background-position: -3600px 0px; }
  .iti-flag.na {
    height: 14px;
    background-position: -3622px 0px; }
  .iti-flag.nc {
    height: 10px;
    background-position: -3644px 0px; }
  .iti-flag.ne {
    height: 15px;
    background-position: -3666px 0px; }
  .iti-flag.nf {
    height: 10px;
    background-position: -3686px 0px; }
  .iti-flag.ng {
    height: 10px;
    background-position: -3708px 0px; }
  .iti-flag.ni {
    height: 12px;
    background-position: -3730px 0px; }
  .iti-flag.nl {
    height: 14px;
    background-position: -3752px 0px; }
  .iti-flag.no {
    height: 15px;
    background-position: -3774px 0px; }
  .iti-flag.np {
    height: 15px;
    background-position: -3796px 0px; }
  .iti-flag.nr {
    height: 10px;
    background-position: -3811px 0px; }
  .iti-flag.nu {
    height: 10px;
    background-position: -3833px 0px; }
  .iti-flag.nz {
    height: 10px;
    background-position: -3855px 0px; }
  .iti-flag.om {
    height: 10px;
    background-position: -3877px 0px; }
  .iti-flag.pa {
    height: 14px;
    background-position: -3899px 0px; }
  .iti-flag.pe {
    height: 14px;
    background-position: -3921px 0px; }
  .iti-flag.pf {
    height: 14px;
    background-position: -3943px 0px; }
  .iti-flag.pg {
    height: 15px;
    background-position: -3965px 0px; }
  .iti-flag.ph {
    height: 10px;
    background-position: -3987px 0px; }
  .iti-flag.pk {
    height: 14px;
    background-position: -4009px 0px; }
  .iti-flag.pl {
    height: 13px;
    background-position: -4031px 0px; }
  .iti-flag.pm {
    height: 14px;
    background-position: -4053px 0px; }
  .iti-flag.pn {
    height: 10px;
    background-position: -4075px 0px; }
  .iti-flag.pr {
    height: 14px;
    background-position: -4097px 0px; }
  .iti-flag.ps {
    height: 10px;
    background-position: -4119px 0px; }
  .iti-flag.pt {
    height: 14px;
    background-position: -4141px 0px; }
  .iti-flag.pw {
    height: 13px;
    background-position: -4163px 0px; }
  .iti-flag.py {
    height: 11px;
    background-position: -4185px 0px; }
  .iti-flag.qa {
    height: 8px;
    background-position: -4207px 0px; }
  .iti-flag.re {
    height: 14px;
    background-position: -4229px 0px; }
  .iti-flag.ro {
    height: 14px;
    background-position: -4251px 0px; }
  .iti-flag.rs {
    height: 14px;
    background-position: -4273px 0px; }
  .iti-flag.ru {
    height: 14px;
    background-position: -4295px 0px; }
  .iti-flag.rw {
    height: 14px;
    background-position: -4317px 0px; }
  .iti-flag.sa {
    height: 14px;
    background-position: -4339px 0px; }
  .iti-flag.sb {
    height: 10px;
    background-position: -4361px 0px; }
  .iti-flag.sc {
    height: 10px;
    background-position: -4383px 0px; }
  .iti-flag.sd {
    height: 10px;
    background-position: -4405px 0px; }
  .iti-flag.se {
    height: 13px;
    background-position: -4427px 0px; }
  .iti-flag.sg {
    height: 14px;
    background-position: -4449px 0px; }
  .iti-flag.sh {
    height: 10px;
    background-position: -4471px 0px; }
  .iti-flag.si {
    height: 10px;
    background-position: -4493px 0px; }
  .iti-flag.sj {
    height: 15px;
    background-position: -4515px 0px; }
  .iti-flag.sk {
    height: 14px;
    background-position: -4537px 0px; }
  .iti-flag.sl {
    height: 14px;
    background-position: -4559px 0px; }
  .iti-flag.sm {
    height: 15px;
    background-position: -4581px 0px; }
  .iti-flag.sn {
    height: 14px;
    background-position: -4603px 0px; }
  .iti-flag.so {
    height: 14px;
    background-position: -4625px 0px; }
  .iti-flag.sr {
    height: 14px;
    background-position: -4647px 0px; }
  .iti-flag.ss {
    height: 10px;
    background-position: -4669px 0px; }
  .iti-flag.st {
    height: 10px;
    background-position: -4691px 0px; }
  .iti-flag.sv {
    height: 12px;
    background-position: -4713px 0px; }
  .iti-flag.sx {
    height: 14px;
    background-position: -4735px 0px; }
  .iti-flag.sy {
    height: 14px;
    background-position: -4757px 0px; }
  .iti-flag.sz {
    height: 14px;
    background-position: -4779px 0px; }
  .iti-flag.ta {
    height: 10px;
    background-position: -4801px 0px; }
  .iti-flag.tc {
    height: 10px;
    background-position: -4823px 0px; }
  .iti-flag.td {
    height: 14px;
    background-position: -4845px 0px; }
  .iti-flag.tf {
    height: 14px;
    background-position: -4867px 0px; }
  .iti-flag.tg {
    height: 13px;
    background-position: -4889px 0px; }
  .iti-flag.th {
    height: 14px;
    background-position: -4911px 0px; }
  .iti-flag.tj {
    height: 10px;
    background-position: -4933px 0px; }
  .iti-flag.tk {
    height: 10px;
    background-position: -4955px 0px; }
  .iti-flag.tl {
    height: 10px;
    background-position: -4977px 0px; }
  .iti-flag.tm {
    height: 14px;
    background-position: -4999px 0px; }
  .iti-flag.tn {
    height: 14px;
    background-position: -5021px 0px; }
  .iti-flag.to {
    height: 10px;
    background-position: -5043px 0px; }
  .iti-flag.tr {
    height: 14px;
    background-position: -5065px 0px; }
  .iti-flag.tt {
    height: 12px;
    background-position: -5087px 0px; }
  .iti-flag.tv {
    height: 10px;
    background-position: -5109px 0px; }
  .iti-flag.tw {
    height: 14px;
    background-position: -5131px 0px; }
  .iti-flag.tz {
    height: 14px;
    background-position: -5153px 0px; }
  .iti-flag.ua {
    height: 14px;
    background-position: -5175px 0px; }
  .iti-flag.ug {
    height: 14px;
    background-position: -5197px 0px; }
  .iti-flag.um {
    height: 11px;
    background-position: -5219px 0px; }
  .iti-flag.us {
    height: 11px;
    background-position: -5241px 0px; }
  .iti-flag.uy {
    height: 14px;
    background-position: -5263px 0px; }
  .iti-flag.uz {
    height: 10px;
    background-position: -5285px 0px; }
  .iti-flag.va {
    height: 15px;
    background-position: -5307px 0px; }
  .iti-flag.vc {
    height: 14px;
    background-position: -5324px 0px; }
  .iti-flag.ve {
    height: 14px;
    background-position: -5346px 0px; }
  .iti-flag.vg {
    height: 10px;
    background-position: -5368px 0px; }
  .iti-flag.vi {
    height: 14px;
    background-position: -5390px 0px; }
  .iti-flag.vn {
    height: 14px;
    background-position: -5412px 0px; }
  .iti-flag.vu {
    height: 12px;
    background-position: -5434px 0px; }
  .iti-flag.wf {
    height: 14px;
    background-position: -5456px 0px; }
  .iti-flag.ws {
    height: 10px;
    background-position: -5478px 0px; }
  .iti-flag.xk {
    height: 15px;
    background-position: -5500px 0px; }
  .iti-flag.ye {
    height: 14px;
    background-position: -5522px 0px; }
  .iti-flag.yt {
    height: 14px;
    background-position: -5544px 0px; }
  .iti-flag.za {
    height: 14px;
    background-position: -5566px 0px; }
  .iti-flag.zm {
    height: 14px;
    background-position: -5588px 0px; }
  .iti-flag.zw {
    height: 10px;
    background-position: -5610px 0px; }

.iti-flag {
  width: 20px;
  height: 15px;
  box-shadow: 0px 0px 1px 0px #888;
  background-image: url("../img/flags.png");
  background-repeat: no-repeat;
  background-color: #DBDBDB;
  background-position: 20px 0; }
  @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
    .iti-flag {
      background-image: url("../img/flags@2x.png"); } }

.iti-flag.np {
  background-color: transparent; }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

/* Slider */
.slick-loading .slick-list {
  background: #fff url("../img/ajax-loader.gif") center center no-repeat; }

/* Icons */
@font-face {
  font-family: "slick";
  src: url("../fonts/slick/slick.eot");
  src: url("../fonts/slick/slick.eot?#iefix") format("embedded-opentype"), url("../fonts/slick/slick.woff") format("woff"), url("../fonts/slick/slick.ttf") format("truetype"), url("../fonts/slick/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal; }

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.25; }
  .slick-prev:before,
  .slick-next:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    color: white;
    opacity: 0.75;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: -25px; }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: -25px; }
  .slick-prev:before {
    content: "←"; }
    [dir="rtl"] .slick-prev:before {
      content: "→"; }

.slick-next {
  right: -25px; }
  [dir="rtl"] .slick-next {
    left: -25px;
    right: auto; }
  .slick-next:before {
    content: "→"; }
    [dir="rtl"] .slick-next:before {
      content: "←"; }

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 20px;
      width: 20px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "•";
        width: 20px;
        height: 20px;
        font-family: "slick";
        font-size: 6px;
        line-height: 20px;
        text-align: center;
        color: black;
        opacity: 0.25;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: black;
      opacity: 0.75; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYnMuY3NzIiwibGliL2Jvb3RzdHJhcDQvZ3JpZC9ib290c3RyYXAtZ3JpZC5zY3NzIiwibGliL2Jvb3RzdHJhcDQvZ3JpZC9fZ3JpZC5zY3NzIiwibGliL2Jvb3RzdHJhcDQvZ3JpZC9taXhpbnMvX2dyaWQuc2NzcyIsImxpYi9ib290c3RyYXA0L2dyaWQvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwibGliL2Jvb3RzdHJhcDQvZ3JpZC5zY3NzIiwibGliL2Jvb3RzdHJhcDQvZ3JpZC9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCJsaWIvYm9vdHN0cmFwNC9ncmlkL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwibGliL2Jvb3RzdHJhcDQvZ3JpZC91dGlsaXRpZXMvX2ZsZXguc2NzcyIsImxpYi9ib290c3RyYXA0L3NpemluZy91dGlsaXRpZXMvX3NpemluZy5zY3NzIiwibGliL2Jvb3RzdHJhcDQvbGF5b3V0L3V0aWxpdGllcy9fc3BhY2luZy5zY3NzIiwibGliL2Jvb3RzdHJhcDQvbGF5b3V0L3V0aWxpdGllcy9fdmlzaWJpbGl0eS5zY3NzIiwibGliL2Jvb3RzdHJhcDQvbGF5b3V0L21peGlucy9fdmlzaWJpbGl0eS5zY3NzIiwibGliL2hvdmVyL2hvdmVyLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fZ3Jvdy5zY3NzIiwibGliL2hvdmVyL19oYWNrcy5zY3NzIiwibGliL2hvdmVyL19taXhpbnMuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL19zaHJpbmsuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL19wdWxzZS5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvMmQtdHJhbnNpdGlvbnMvX3B1bHNlLWdyb3cuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL19wdWxzZS1zaHJpbmsuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL19wdXNoLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fcG9wLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fYm91bmNlLWluLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fYm91bmNlLW91dC5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvMmQtdHJhbnNpdGlvbnMvX3JvdGF0ZS5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvMmQtdHJhbnNpdGlvbnMvX2dyb3ctcm90YXRlLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fZmxvYXQuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL19zaW5rLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fYm9iLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9faGFuZy5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvMmQtdHJhbnNpdGlvbnMvX3NrZXcuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL19za2V3LWZvcndhcmQuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL19za2V3LWJhY2t3YXJkLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fd29iYmxlLXZlcnRpY2FsLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fd29iYmxlLWhvcml6b250YWwuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL193b2JibGUtdG8tYm90dG9tLXJpZ2h0LnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fd29iYmxlLXRvLXRvcC1yaWdodC5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvMmQtdHJhbnNpdGlvbnMvX3dvYmJsZS10b3Auc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL193b2JibGUtYm90dG9tLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fd29iYmxlLXNrZXcuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL19idXp6LnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fYnV6ei1vdXQuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzLzJkLXRyYW5zaXRpb25zL19mb3J3YXJkLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9fYmFja3dhcmQuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2JhY2tncm91bmQtdHJhbnNpdGlvbnMvX2ZhZGUuc2NzcyIsImxpYi9ob3Zlci9fb3B0aW9ucy5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9fYmFjay1wdWxzZS5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9fc3dlZXAtdG8tcmlnaHQuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2JhY2tncm91bmQtdHJhbnNpdGlvbnMvX3N3ZWVwLXRvLWxlZnQuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2JhY2tncm91bmQtdHJhbnNpdGlvbnMvX3N3ZWVwLXRvLWJvdHRvbS5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9fc3dlZXAtdG8tdG9wLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9iYWNrZ3JvdW5kLXRyYW5zaXRpb25zL19ib3VuY2UtdG8tcmlnaHQuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2JhY2tncm91bmQtdHJhbnNpdGlvbnMvX2JvdW5jZS10by1sZWZ0LnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9iYWNrZ3JvdW5kLXRyYW5zaXRpb25zL19ib3VuY2UtdG8tYm90dG9tLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9iYWNrZ3JvdW5kLXRyYW5zaXRpb25zL19ib3VuY2UtdG8tdG9wLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9iYWNrZ3JvdW5kLXRyYW5zaXRpb25zL19yYWRpYWwtb3V0LnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9iYWNrZ3JvdW5kLXRyYW5zaXRpb25zL19yYWRpYWwtaW4uc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2JhY2tncm91bmQtdHJhbnNpdGlvbnMvX3JlY3RhbmdsZS1pbi5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9fcmVjdGFuZ2xlLW91dC5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9fc2h1dHRlci1pbi1ob3Jpem9udGFsLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9iYWNrZ3JvdW5kLXRyYW5zaXRpb25zL19zaHV0dGVyLW91dC1ob3Jpem9udGFsLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9iYWNrZ3JvdW5kLXRyYW5zaXRpb25zL19zaHV0dGVyLWluLXZlcnRpY2FsLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9iYWNrZ3JvdW5kLXRyYW5zaXRpb25zL19zaHV0dGVyLW91dC12ZXJ0aWNhbC5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL19ib3JkZXItZmFkZS5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL19ob2xsb3cuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2JvcmRlci10cmFuc2l0aW9ucy9fdHJpbS5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL19yaXBwbGUtb3V0LnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9ib3JkZXItdHJhbnNpdGlvbnMvX3JpcHBsZS1pbi5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL19vdXRsaW5lLW91dC5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL19vdXRsaW5lLWluLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9ib3JkZXItdHJhbnNpdGlvbnMvX3JvdW5kLWNvcm5lcnMuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2JvcmRlci10cmFuc2l0aW9ucy9fdW5kZXJsaW5lLWZyb20tbGVmdC5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL191bmRlcmxpbmUtZnJvbS1jZW50ZXIuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2JvcmRlci10cmFuc2l0aW9ucy9fdW5kZXJsaW5lLWZyb20tcmlnaHQuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2JvcmRlci10cmFuc2l0aW9ucy9fb3ZlcmxpbmUtZnJvbS1sZWZ0LnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9ib3JkZXItdHJhbnNpdGlvbnMvX292ZXJsaW5lLWZyb20tY2VudGVyLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9ib3JkZXItdHJhbnNpdGlvbnMvX292ZXJsaW5lLWZyb20tcmlnaHQuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2JvcmRlci10cmFuc2l0aW9ucy9fcmV2ZWFsLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9ib3JkZXItdHJhbnNpdGlvbnMvX3VuZGVybGluZS1yZXZlYWwuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2JvcmRlci10cmFuc2l0aW9ucy9fb3ZlcmxpbmUtcmV2ZWFsLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9zaGFkb3ctYW5kLWdsb3ctdHJhbnNpdGlvbnMvX2dsb3cuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL3NoYWRvdy1hbmQtZ2xvdy10cmFuc2l0aW9ucy9fc2hhZG93LnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9zaGFkb3ctYW5kLWdsb3ctdHJhbnNpdGlvbnMvX2dyb3ctc2hhZG93LnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9zaGFkb3ctYW5kLWdsb3ctdHJhbnNpdGlvbnMvX2JveC1zaGFkb3ctb3V0c2V0LnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9zaGFkb3ctYW5kLWdsb3ctdHJhbnNpdGlvbnMvX2JveC1zaGFkb3ctaW5zZXQuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL3NoYWRvdy1hbmQtZ2xvdy10cmFuc2l0aW9ucy9fZmxvYXQtc2hhZG93LnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9zaGFkb3ctYW5kLWdsb3ctdHJhbnNpdGlvbnMvX3NoYWRvdy1yYWRpYWwuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL3NwZWVjaC1idWJibGVzL19idWJibGUtdG9wLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9zcGVlY2gtYnViYmxlcy9fYnViYmxlLXJpZ2h0LnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9zcGVlY2gtYnViYmxlcy9fYnViYmxlLWJvdHRvbS5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvc3BlZWNoLWJ1YmJsZXMvX2J1YmJsZS1sZWZ0LnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9zcGVlY2gtYnViYmxlcy9fYnViYmxlLWZsb2F0LXRvcC5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvc3BlZWNoLWJ1YmJsZXMvX2J1YmJsZS1mbG9hdC1yaWdodC5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvc3BlZWNoLWJ1YmJsZXMvX2J1YmJsZS1mbG9hdC1ib3R0b20uc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL3NwZWVjaC1idWJibGVzL19idWJibGUtZmxvYXQtbGVmdC5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvaWNvbnMvX2ljb24tYmFjay5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvaWNvbnMvX2ljb24tZm9yd2FyZC5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvaWNvbnMvX2ljb24tZG93bi5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvaWNvbnMvX2ljb24tdXAuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2ljb25zL19pY29uLXNwaW4uc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2ljb25zL19pY29uLWRyb3Auc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2ljb25zL19pY29uLWZhZGUuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2ljb25zL19pY29uLWZsb2F0LWF3YXkuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2ljb25zL19pY29uLXNpbmstYXdheS5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvaWNvbnMvX2ljb24tZ3Jvdy5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvaWNvbnMvX2ljb24tc2hyaW5rLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9pY29ucy9faWNvbi1wdWxzZS5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvaWNvbnMvX2ljb24tcHVsc2UtZ3Jvdy5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvaWNvbnMvX2ljb24tcHVsc2Utc2hyaW5rLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9pY29ucy9faWNvbi1wdXNoLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9pY29ucy9faWNvbi1wb3Auc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2ljb25zL19pY29uLWJvdW5jZS5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvaWNvbnMvX2ljb24tcm90YXRlLnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9pY29ucy9faWNvbi1ncm93LXJvdGF0ZS5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvaWNvbnMvX2ljb24tZmxvYXQuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2ljb25zL19pY29uLXNpbmsuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2ljb25zL19pY29uLWJvYi5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvaWNvbnMvX2ljb24taGFuZy5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvaWNvbnMvX2ljb24td29iYmxlLWhvcml6b250YWwuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2ljb25zL19pY29uLXdvYmJsZS12ZXJ0aWNhbC5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvaWNvbnMvX2ljb24tYnV6ei5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvaWNvbnMvX2ljb24tYnV6ei1vdXQuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2N1cmxzL19jdXJsLXRvcC1sZWZ0LnNjc3MiLCJsaWIvaG92ZXIvZWZmZWN0cy9jdXJscy9fY3VybC10b3AtcmlnaHQuc2NzcyIsImxpYi9ob3Zlci9lZmZlY3RzL2N1cmxzL19jdXJsLWJvdHRvbS1yaWdodC5zY3NzIiwibGliL2hvdmVyL2VmZmVjdHMvY3VybHMvX2N1cmwtYm90dG9tLWxlZnQuc2NzcyIsImxpYi9pbnRsVGVsSW5wdXQvaW50bFRlbElucHV0LnNjc3MiLCJsaWIvaW50bFRlbElucHV0L3Nwcml0ZS5zY3NzIiwibGliL3NsaWNrL3NsaWNrLnNjc3MiLCJsaWIvc2xpY2svc2xpY2stdGhlbWUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBaUI7QUNBakI7Ozs7O0dBS0c7QUFHRDtFQUFnQixvQkFBb0IsRUFBQTs7QUFHdEM7RUFDRSx1QkFBdUI7RUFDdkIsOEJBQThCLEVBQy9COztBQUVEOzs7RUFHRSxvQkFBb0IsRUFDckI7O0FDZkM7RUNBQSxZQUFZO0VBQ1osb0JBQWtDO0VBQ2xDLG1CQUFpQztFQUNqQyxtQkFBbUI7RUFDbkIsa0JBQWtCLEVERGpCO0VFb0RDO0lGdkRGO01DWUksaUJFU1csRUhsQmQsRUFBQTtFRW9EQztJRnZERjtNQ1lJLGlCRVVXLEVIbkJkLEVBQUE7RUVvREM7SUZ2REY7TUNZSSxrQkVXWSxFSHBCZixFQUFBO0VFb0RDO0lGdkRGO01DWUksa0JFWVksRUhyQmYsRUFBQTs7QUFTRDtFQ1pBLFlBQVk7RUFDWixvQkFBa0M7RUFDbEMsbUJBQWlDO0VBQ2pDLG1CQUFtQjtFQUNuQixrQkFBa0IsRURVakI7O0FBUUQ7RUNKQSxxQkFBYztFQUFkLGNBQWM7RUFDZCxvQkFBZ0I7RUFBaEIsZ0JBQWdCO0VBQ2hC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QWxEYjtNQXFEWSxhQWhMVztNQWlMWCxjQTNLZ0IsRUE0S25CIiwiZmlsZSI6ImxpYnMuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyohXG4gKiBCb290c3RyYXAgR3JpZCB2NC4wLjAgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbSlcbiAqIENvcHlyaWdodCAyMDExLTIwMTggVGhlIEJvb3RzdHJhcCBBdXRob3JzXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE4IFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXG4gKi9cbkAtbXMtdmlld3BvcnQge1xuICB3aWR0aDogZGV2aWNlLXdpZHRoOyB9XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IHNjcm9sbGJhcjsgfVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbi5jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuICAgIC5jb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiAzMjBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3MjBweCkge1xuICAgIC5jb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiA3MjBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogMTIwMHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDFweCkge1xuICAgIC5jb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiAxMjAxcHg7IH0gfVxuXG4uY29udGFpbmVyLWZsdWlkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG4ucm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICBtYXJnaW4tbGVmdDogLTE1cHg7IH1cblxuLm5vLWd1dHRlcnMge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5uby1ndXR0ZXJzID4gLmNvbCxcbiAgLm5vLWd1dHRlcnMgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLmNvbC0xLCAuY29sLTIsIC5jb2wtMywgLmNvbC00LCAuY29sLTUsIC5jb2wtNiwgLmNvbC03LCAuY29sLTgsIC5jb2wtOSwgLmNvbC0xMCwgLmNvbC0xMSwgLmNvbC0xMiwgLmNvbCxcbi5jb2wtYXV0bywgLmNvbC1zbS0xLCAuY29sLXNtLTIsIC5jb2wtc20tMywgLmNvbC1zbS00LCAuY29sLXNtLTUsIC5jb2wtc20tNiwgLmNvbC1zbS03LCAuY29sLXNtLTgsIC5jb2wtc20tOSwgLmNvbC1zbS0xMCwgLmNvbC1zbS0xMSwgLmNvbC1zbS0xMiwgLmNvbC1zbSxcbi5jb2wtc20tYXV0bywgLmNvbC1tZC0xLCAuY29sLW1kLTIsIC5jb2wtbWQtMywgLmNvbC1tZC00LCAuY29sLW1kLTUsIC5jb2wtbWQtNiwgLmNvbC1tZC03LCAuY29sLW1kLTgsIC5jb2wtbWQtOSwgLmNvbC1tZC0xMCwgLmNvbC1tZC0xMSwgLmNvbC1tZC0xMiwgLmNvbC1tZCxcbi5jb2wtbWQtYXV0bywgLmNvbC1sZy0xLCAuY29sLWxnLTIsIC5jb2wtbGctMywgLmNvbC1sZy00LCAuY29sLWxnLTUsIC5jb2wtbGctNiwgLmNvbC1sZy03LCAuY29sLWxnLTgsIC5jb2wtbGctOSwgLmNvbC1sZy0xMCwgLmNvbC1sZy0xMSwgLmNvbC1sZy0xMiwgLmNvbC1sZyxcbi5jb2wtbGctYXV0bywgLmNvbC14bC0xLCAuY29sLXhsLTIsIC5jb2wteGwtMywgLmNvbC14bC00LCAuY29sLXhsLTUsIC5jb2wteGwtNiwgLmNvbC14bC03LCAuY29sLXhsLTgsIC5jb2wteGwtOSwgLmNvbC14bC0xMCwgLmNvbC14bC0xMSwgLmNvbC14bC0xMiwgLmNvbC14bCxcbi5jb2wteGwtYXV0byB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4OyB9XG5cbi5jb2wge1xuICBmbGV4LWJhc2lzOiAwO1xuICBmbGV4LWdyb3c6IDE7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4uY29sLWF1dG8ge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogbm9uZTsgfVxuXG4uY29sLTEge1xuICBmbGV4OiAwIDAgOC4zMzMzMyU7XG4gIG1heC13aWR0aDogOC4zMzMzMyU7IH1cblxuLmNvbC0yIHtcbiAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cblxuLmNvbC0zIHtcbiAgZmxleDogMCAwIDI1JTtcbiAgbWF4LXdpZHRoOiAyNSU7IH1cblxuLmNvbC00IHtcbiAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLmNvbC01IHtcbiAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cblxuLmNvbC02IHtcbiAgZmxleDogMCAwIDUwJTtcbiAgbWF4LXdpZHRoOiA1MCU7IH1cblxuLmNvbC03IHtcbiAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgbWF4LXdpZHRoOiA1OC4zMzMzMyU7IH1cblxuLmNvbC04IHtcbiAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLmNvbC05IHtcbiAgZmxleDogMCAwIDc1JTtcbiAgbWF4LXdpZHRoOiA3NSU7IH1cblxuLmNvbC0xMCB7XG4gIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gIG1heC13aWR0aDogODMuMzMzMzMlOyB9XG5cbi5jb2wtMTEge1xuICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuXG4uY29sLTEyIHtcbiAgZmxleDogMCAwIDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4ub3JkZXItZmlyc3Qge1xuICBvcmRlcjogLTE7IH1cblxuLm9yZGVyLWxhc3Qge1xuICBvcmRlcjogMTM7IH1cblxuLm9yZGVyLTAge1xuICBvcmRlcjogMDsgfVxuXG4ub3JkZXItMSB7XG4gIG9yZGVyOiAxOyB9XG5cbi5vcmRlci0yIHtcbiAgb3JkZXI6IDI7IH1cblxuLm9yZGVyLTMge1xuICBvcmRlcjogMzsgfVxuXG4ub3JkZXItNCB7XG4gIG9yZGVyOiA0OyB9XG5cbi5vcmRlci01IHtcbiAgb3JkZXI6IDU7IH1cblxuLm9yZGVyLTYge1xuICBvcmRlcjogNjsgfVxuXG4ub3JkZXItNyB7XG4gIG9yZGVyOiA3OyB9XG5cbi5vcmRlci04IHtcbiAgb3JkZXI6IDg7IH1cblxuLm9yZGVyLTkge1xuICBvcmRlcjogOTsgfVxuXG4ub3JkZXItMTAge1xuICBvcmRlcjogMTA7IH1cblxuLm9yZGVyLTExIHtcbiAgb3JkZXI6IDExOyB9XG5cbi5vcmRlci0xMiB7XG4gIG9yZGVyOiAxMjsgfVxuXG4ub2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cblxuLm9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4ub2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlOyB9XG5cbi5vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cblxuLm9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4ub2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlOyB9XG5cbi5vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cblxuLm9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4ub2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlOyB9XG5cbi5vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG5cbi5vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuICAuY29sLXNtIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLmNvbC1zbS1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgLmNvbC1zbS0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzJTsgfVxuICAuY29sLXNtLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmNvbC1zbS0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5jb2wtc20tNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuY29sLXNtLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmNvbC1zbS02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5jb2wtc20tNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuY29sLXNtLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmNvbC1zbS05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlOyB9XG4gIC5jb2wtc20tMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmNvbC1zbS0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuY29sLXNtLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLm9yZGVyLXNtLWZpcnN0IHtcbiAgICBvcmRlcjogLTE7IH1cbiAgLm9yZGVyLXNtLWxhc3Qge1xuICAgIG9yZGVyOiAxMzsgfVxuICAub3JkZXItc20tMCB7XG4gICAgb3JkZXI6IDA7IH1cbiAgLm9yZGVyLXNtLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5vcmRlci1zbS0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAub3JkZXItc20tMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLm9yZGVyLXNtLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5vcmRlci1zbS01IHtcbiAgICBvcmRlcjogNTsgfVxuICAub3JkZXItc20tNiB7XG4gICAgb3JkZXI6IDY7IH1cbiAgLm9yZGVyLXNtLTcge1xuICAgIG9yZGVyOiA3OyB9XG4gIC5vcmRlci1zbS04IHtcbiAgICBvcmRlcjogODsgfVxuICAub3JkZXItc20tOSB7XG4gICAgb3JkZXI6IDk7IH1cbiAgLm9yZGVyLXNtLTEwIHtcbiAgICBvcmRlcjogMTA7IH1cbiAgLm9yZGVyLXNtLTExIHtcbiAgICBvcmRlcjogMTE7IH1cbiAgLm9yZGVyLXNtLTEyIHtcbiAgICBvcmRlcjogMTI7IH1cbiAgLm9mZnNldC1zbS0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAub2Zmc2V0LXNtLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAub2Zmc2V0LXNtLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLm9mZnNldC1zbS0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5vZmZzZXQtc20tNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAub2Zmc2V0LXNtLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLm9mZnNldC1zbS02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5vZmZzZXQtc20tNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAub2Zmc2V0LXNtLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLm9mZnNldC1zbS05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5vZmZzZXQtc20tMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLm9mZnNldC1zbS0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3MjBweCkge1xuICAuY29sLW1kIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLmNvbC1tZC1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgLmNvbC1tZC0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzJTsgfVxuICAuY29sLW1kLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmNvbC1tZC0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5jb2wtbWQtNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuY29sLW1kLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmNvbC1tZC02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5jb2wtbWQtNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuY29sLW1kLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmNvbC1tZC05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlOyB9XG4gIC5jb2wtbWQtMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmNvbC1tZC0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuY29sLW1kLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLm9yZGVyLW1kLWZpcnN0IHtcbiAgICBvcmRlcjogLTE7IH1cbiAgLm9yZGVyLW1kLWxhc3Qge1xuICAgIG9yZGVyOiAxMzsgfVxuICAub3JkZXItbWQtMCB7XG4gICAgb3JkZXI6IDA7IH1cbiAgLm9yZGVyLW1kLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5vcmRlci1tZC0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAub3JkZXItbWQtMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLm9yZGVyLW1kLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5vcmRlci1tZC01IHtcbiAgICBvcmRlcjogNTsgfVxuICAub3JkZXItbWQtNiB7XG4gICAgb3JkZXI6IDY7IH1cbiAgLm9yZGVyLW1kLTcge1xuICAgIG9yZGVyOiA3OyB9XG4gIC5vcmRlci1tZC04IHtcbiAgICBvcmRlcjogODsgfVxuICAub3JkZXItbWQtOSB7XG4gICAgb3JkZXI6IDk7IH1cbiAgLm9yZGVyLW1kLTEwIHtcbiAgICBvcmRlcjogMTA7IH1cbiAgLm9yZGVyLW1kLTExIHtcbiAgICBvcmRlcjogMTE7IH1cbiAgLm9yZGVyLW1kLTEyIHtcbiAgICBvcmRlcjogMTI7IH1cbiAgLm9mZnNldC1tZC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAub2Zmc2V0LW1kLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAub2Zmc2V0LW1kLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLm9mZnNldC1tZC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5vZmZzZXQtbWQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAub2Zmc2V0LW1kLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLm9mZnNldC1tZC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5vZmZzZXQtbWQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAub2Zmc2V0LW1kLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLm9mZnNldC1tZC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5vZmZzZXQtbWQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLm9mZnNldC1tZC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNvbC1sZyB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5jb2wtbGctYXV0byB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIC5jb2wtbGctMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMyU7IH1cbiAgLmNvbC1sZy0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC5jb2wtbGctMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAuY29sLWxnLTQge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmNvbC1sZy01IHtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjclOyB9XG4gIC5jb2wtbGctNiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAuY29sLWxnLTcge1xuICAgIGZsZXg6IDAgMCA1OC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmNvbC1sZy04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjclOyB9XG4gIC5jb2wtbGctOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAuY29sLWxnLTEwIHtcbiAgICBmbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMlOyB9XG4gIC5jb2wtbGctMTEge1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmNvbC1sZy0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5vcmRlci1sZy1maXJzdCB7XG4gICAgb3JkZXI6IC0xOyB9XG4gIC5vcmRlci1sZy1sYXN0IHtcbiAgICBvcmRlcjogMTM7IH1cbiAgLm9yZGVyLWxnLTAge1xuICAgIG9yZGVyOiAwOyB9XG4gIC5vcmRlci1sZy0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAub3JkZXItbGctMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLm9yZGVyLWxnLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC5vcmRlci1sZy00IHtcbiAgICBvcmRlcjogNDsgfVxuICAub3JkZXItbGctNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLm9yZGVyLWxnLTYge1xuICAgIG9yZGVyOiA2OyB9XG4gIC5vcmRlci1sZy03IHtcbiAgICBvcmRlcjogNzsgfVxuICAub3JkZXItbGctOCB7XG4gICAgb3JkZXI6IDg7IH1cbiAgLm9yZGVyLWxnLTkge1xuICAgIG9yZGVyOiA5OyB9XG4gIC5vcmRlci1sZy0xMCB7XG4gICAgb3JkZXI6IDEwOyB9XG4gIC5vcmRlci1sZy0xMSB7XG4gICAgb3JkZXI6IDExOyB9XG4gIC5vcmRlci1sZy0xMiB7XG4gICAgb3JkZXI6IDEyOyB9XG4gIC5vZmZzZXQtbGctMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLm9mZnNldC1sZy0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLm9mZnNldC1sZy0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5vZmZzZXQtbGctMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAub2Zmc2V0LWxnLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLm9mZnNldC1sZy01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5vZmZzZXQtbGctNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAub2Zmc2V0LWxnLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLm9mZnNldC1sZy04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5vZmZzZXQtbGctOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAub2Zmc2V0LWxnLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5vZmZzZXQtbGctMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMXB4KSB7XG4gIC5jb2wteGwge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAuY29sLXhsLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogbm9uZTsgfVxuICAuY29sLXhsLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5jb2wteGwtMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuY29sLXhsLTMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgLmNvbC14bC00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5jb2wteGwtNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuY29sLXhsLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLmNvbC14bC03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC5jb2wteGwtOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuY29sLXhsLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7IH1cbiAgLmNvbC14bC0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuY29sLXhsLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjclOyB9XG4gIC5jb2wteGwtMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAub3JkZXIteGwtZmlyc3Qge1xuICAgIG9yZGVyOiAtMTsgfVxuICAub3JkZXIteGwtbGFzdCB7XG4gICAgb3JkZXI6IDEzOyB9XG4gIC5vcmRlci14bC0wIHtcbiAgICBvcmRlcjogMDsgfVxuICAub3JkZXIteGwtMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLm9yZGVyLXhsLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5vcmRlci14bC0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAub3JkZXIteGwtNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLm9yZGVyLXhsLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5vcmRlci14bC02IHtcbiAgICBvcmRlcjogNjsgfVxuICAub3JkZXIteGwtNyB7XG4gICAgb3JkZXI6IDc7IH1cbiAgLm9yZGVyLXhsLTgge1xuICAgIG9yZGVyOiA4OyB9XG4gIC5vcmRlci14bC05IHtcbiAgICBvcmRlcjogOTsgfVxuICAub3JkZXIteGwtMTAge1xuICAgIG9yZGVyOiAxMDsgfVxuICAub3JkZXIteGwtMTEge1xuICAgIG9yZGVyOiAxMTsgfVxuICAub3JkZXIteGwtMTIge1xuICAgIG9yZGVyOiAxMjsgfVxuICAub2Zmc2V0LXhsLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5vZmZzZXQteGwtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5vZmZzZXQteGwtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAub2Zmc2V0LXhsLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLm9mZnNldC14bC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5vZmZzZXQteGwtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAub2Zmc2V0LXhsLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLm9mZnNldC14bC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5vZmZzZXQteGwtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAub2Zmc2V0LXhsLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLm9mZnNldC14bC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAub2Zmc2V0LXhsLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9IH1cblxuLmQtbm9uZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uZC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfVxuXG4uZC1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfVxuXG4uZC1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLmQtdGFibGUge1xuICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG5cbi5kLXRhYmxlLXJvdyB7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG5cbi5kLXRhYmxlLWNlbGwge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuLmQtZmxleCB7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgfVxuXG4uZC1pbmxpbmUtZmxleCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gIC5kLXNtLW5vbmUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuZC1zbS1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OyB9XG4gIC5kLXNtLWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmQtc20tYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmQtc20tdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgLmQtc20tdGFibGUtcm93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAuZC1zbS10YWJsZS1jZWxsIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgLmQtc20tZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyB9XG4gIC5kLXNtLWlubGluZS1mbGV4IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDcyMHB4KSB7XG4gIC5kLW1kLW5vbmUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuZC1tZC1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OyB9XG4gIC5kLW1kLWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmQtbWQtYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmQtbWQtdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgLmQtbWQtdGFibGUtcm93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAuZC1tZC10YWJsZS1jZWxsIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgLmQtbWQtZmxleCB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyB9XG4gIC5kLW1kLWlubGluZS1mbGV4IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZC1sZy1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLmQtbGctaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfVxuICAuZC1sZy1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OyB9XG4gIC5kLWxnLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5kLWxnLXRhYmxlIHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIC5kLWxnLXRhYmxlLXJvdyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgLmQtbGctdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIC5kLWxnLWZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgfVxuICAuZC1sZy1pbmxpbmUtZmxleCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAxcHgpIHtcbiAgLmQteGwtbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5kLXhsLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH1cbiAgLmQteGwtaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfVxuICAuZC14bC1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuZC14bC10YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAuZC14bC10YWJsZS1yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIC5kLXhsLXRhYmxlLWNlbGwge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAuZC14bC1mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cbiAgLmQteGwtaW5saW5lLWZsZXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQge1xuICAuZC1wcmludC1ub25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLmQtcHJpbnQtaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LXRhYmxlIHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LXRhYmxlLXJvdyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgLmQtcHJpbnQtdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LWZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1pbmxpbmUtZmxleCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDsgfSB9XG5cbi5mbGV4LXJvdyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuXG4uZmxleC1jb2x1bW4ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7IH1cblxuLmZsZXgtcm93LXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuXG4uZmxleC1jb2x1bW4tcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG5cbi5mbGV4LXdyYXAge1xuICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsgfVxuXG4uZmxleC1ub3dyYXAge1xuICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG5cbi5mbGV4LXdyYXAtcmV2ZXJzZSB7XG4gIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuLmp1c3RpZnktY29udGVudC1zdGFydCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG5cbi5qdXN0aWZ5LWNvbnRlbnQtZW5kIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG5cbi5qdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuXG4uanVzdGlmeS1jb250ZW50LWJldHdlZW4ge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuXG4uanVzdGlmeS1jb250ZW50LWFyb3VuZCB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cblxuLmFsaWduLWl0ZW1zLXN0YXJ0IHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuXG4uYWxpZ24taXRlbXMtZW5kIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cblxuLmFsaWduLWl0ZW1zLWNlbnRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuXG4uYWxpZ24taXRlbXMtYmFzZWxpbmUge1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuXG4uYWxpZ24taXRlbXMtc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuLmFsaWduLWNvbnRlbnQtc3RhcnQge1xuICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cblxuLmFsaWduLWNvbnRlbnQtZW5kIHtcbiAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuXG4uYWxpZ24tY29udGVudC1jZW50ZXIge1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuXG4uYWxpZ24tY29udGVudC1iZXR3ZWVuIHtcbiAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG5cbi5hbGlnbi1jb250ZW50LWFyb3VuZCB7XG4gIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG5cbi5hbGlnbi1jb250ZW50LXN0cmV0Y2gge1xuICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuLmFsaWduLXNlbGYtYXV0byB7XG4gIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDsgfVxuXG4uYWxpZ24tc2VsZi1zdGFydCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuXG4uYWxpZ24tc2VsZi1lbmQge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG5cbi5hbGlnbi1zZWxmLWNlbnRlciB7XG4gIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG5cbi5hbGlnbi1zZWxmLWJhc2VsaW5lIHtcbiAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuXG4uYWxpZ24tc2VsZi1zdHJldGNoIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuICAuZmxleC1zbS1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuICAuZmxleC1zbS1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsgfVxuICAuZmxleC1zbS1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgtc20tY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LXNtLXdyYXAge1xuICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LXNtLW5vd3JhcCB7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgfVxuICAuZmxleC1zbS13cmFwLXJldmVyc2Uge1xuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgLmp1c3RpZnktY29udGVudC1zbS1zdGFydCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgLmp1c3RpZnktY29udGVudC1zbS1lbmQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAuanVzdGlmeS1jb250ZW50LXNtLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAuanVzdGlmeS1jb250ZW50LXNtLWJldHdlZW4ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tYXJvdW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1pdGVtcy1zbS1zdGFydCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24taXRlbXMtc20tZW5kIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24taXRlbXMtc20tY2VudGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWl0ZW1zLXNtLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAuYWxpZ24taXRlbXMtc20tc3RyZXRjaCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICAuYWxpZ24tY29udGVudC1zbS1zdGFydCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1jb250ZW50LXNtLWVuZCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tY29udGVudC1zbS1jZW50ZXIge1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1jb250ZW50LXNtLWJldHdlZW4ge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAuYWxpZ24tY29udGVudC1zbS1hcm91bmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1jb250ZW50LXNtLXN0cmV0Y2gge1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICAuYWxpZ24tc2VsZi1zbS1hdXRvIHtcbiAgICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLXNlbGYtc20tc3RhcnQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tc2VsZi1zbS1lbmQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLXNlbGYtc20tY2VudGVyIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tc2VsZi1zbS1iYXNlbGluZSB7XG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tc2VsZi1zbS1zdHJldGNoIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzIwcHgpIHtcbiAgLmZsZXgtbWQtcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgtbWQtY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgtbWQtcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LW1kLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAuZmxleC1tZC13cmFwIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsgfVxuICAuZmxleC1tZC1ub3dyYXAge1xuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgtbWQtd3JhcC1yZXZlcnNlIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtc3RhcnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtZW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgLmp1c3RpZnktY29udGVudC1tZC1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLmp1c3RpZnktY29udGVudC1tZC1iZXR3ZWVuIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAuanVzdGlmeS1jb250ZW50LW1kLWFyb3VuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24taXRlbXMtbWQtc3RhcnQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWl0ZW1zLW1kLWVuZCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWl0ZW1zLW1kLWNlbnRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1pdGVtcy1tZC1iYXNlbGluZSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWl0ZW1zLW1kLXN0cmV0Y2gge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWNvbnRlbnQtbWQtc3RhcnQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tY29udGVudC1tZC1lbmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWNvbnRlbnQtbWQtY2VudGVyIHtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tY29udGVudC1tZC1iZXR3ZWVuIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWNvbnRlbnQtbWQtYXJvdW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tY29udGVudC1tZC1zdHJldGNoIHtcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLXNlbGYtbWQtYXV0byB7XG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1zZWxmLW1kLXN0YXJ0IHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLXNlbGYtbWQtZW5kIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1zZWxmLW1kLWNlbnRlciB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLXNlbGYtbWQtYmFzZWxpbmUge1xuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLXNlbGYtbWQtc3RyZXRjaCB7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZmxleC1sZy1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuICAuZmxleC1sZy1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsgfVxuICAuZmxleC1sZy1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgtbGctY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LWxnLXdyYXAge1xuICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LWxnLW5vd3JhcCB7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgfVxuICAuZmxleC1sZy13cmFwLXJldmVyc2Uge1xuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgLmp1c3RpZnktY29udGVudC1sZy1zdGFydCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgLmp1c3RpZnktY29udGVudC1sZy1lbmQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAuanVzdGlmeS1jb250ZW50LWxnLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAuanVzdGlmeS1jb250ZW50LWxnLWJldHdlZW4ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctYXJvdW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1pdGVtcy1sZy1zdGFydCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24taXRlbXMtbGctZW5kIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24taXRlbXMtbGctY2VudGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWl0ZW1zLWxnLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAuYWxpZ24taXRlbXMtbGctc3RyZXRjaCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICAuYWxpZ24tY29udGVudC1sZy1zdGFydCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1jb250ZW50LWxnLWVuZCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tY29udGVudC1sZy1jZW50ZXIge1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1jb250ZW50LWxnLWJldHdlZW4ge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAuYWxpZ24tY29udGVudC1sZy1hcm91bmQge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1jb250ZW50LWxnLXN0cmV0Y2gge1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICAuYWxpZ24tc2VsZi1sZy1hdXRvIHtcbiAgICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLXNlbGYtbGctc3RhcnQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tc2VsZi1sZy1lbmQge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLXNlbGYtbGctY2VudGVyIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tc2VsZi1sZy1iYXNlbGluZSB7XG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tc2VsZi1sZy1zdHJldGNoIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMXB4KSB7XG4gIC5mbGV4LXhsLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LXhsLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LXhsLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAuZmxleC14bC1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgteGwtd3JhcCB7XG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7IH1cbiAgLmZsZXgteGwtbm93cmFwIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4gIC5mbGV4LXhsLXdyYXAtcmV2ZXJzZSB7XG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAuanVzdGlmeS1jb250ZW50LXhsLXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAuanVzdGlmeS1jb250ZW50LXhsLWVuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgLmp1c3RpZnktY29udGVudC14bC1hcm91bmQge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWl0ZW1zLXhsLXN0YXJ0IHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1pdGVtcy14bC1lbmQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1pdGVtcy14bC1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAuYWxpZ24taXRlbXMteGwtYmFzZWxpbmUge1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1pdGVtcy14bC1zdHJldGNoIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1jb250ZW50LXhsLXN0YXJ0IHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWNvbnRlbnQteGwtZW5kIHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1jb250ZW50LXhsLWNlbnRlciB7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWNvbnRlbnQteGwtYmV0d2VlbiB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1jb250ZW50LXhsLWFyb3VuZCB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cbiAgLmFsaWduLWNvbnRlbnQteGwtc3RyZXRjaCB7XG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1zZWxmLXhsLWF1dG8ge1xuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDsgfVxuICAuYWxpZ24tc2VsZi14bC1zdGFydCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1zZWxmLXhsLWVuZCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAuYWxpZ24tc2VsZi14bC1jZW50ZXIge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1zZWxmLXhsLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gIC5hbGlnbi1zZWxmLXhsLXN0cmV0Y2gge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsgfSB9XG5cbi53LTI1IHtcbiAgd2lkdGg6IDI1JSAhaW1wb3J0YW50OyB9XG5cbi53LTUwIHtcbiAgd2lkdGg6IDUwJSAhaW1wb3J0YW50OyB9XG5cbi53LTc1IHtcbiAgd2lkdGg6IDc1JSAhaW1wb3J0YW50OyB9XG5cbi53LTEwMCB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuLmgtMjUge1xuICBoZWlnaHQ6IDI1JSAhaW1wb3J0YW50OyB9XG5cbi5oLTUwIHtcbiAgaGVpZ2h0OiA1MCUgIWltcG9ydGFudDsgfVxuXG4uaC03NSB7XG4gIGhlaWdodDogNzUlICFpbXBvcnRhbnQ7IH1cblxuLmgtMTAwIHtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuLm13LTEwMCB7XG4gIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi5taC0xMDAge1xuICBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuLm0tMCB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG5cbi5tdC0wLFxuLm15LTAge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cblxuLm1yLTAsXG4ubXgtMCB7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbi5tYi0wLFxuLm15LTAge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuLm1sLTAsXG4ubXgtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuLm0tMSB7XG4gIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC0xLFxuLm15LTEge1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yLTEsXG4ubXgtMSB7XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi0xLFxuLm15LTEge1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1sLTEsXG4ubXgtMSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm0tMiB7XG4gIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTIsXG4ubXktMiB7XG4gIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci0yLFxuLm14LTIge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYi0yLFxuLm15LTIge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtMixcbi5teC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tLTMge1xuICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ubXQtMyxcbi5teS0zIHtcbiAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tci0zLFxuLm14LTMge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItMyxcbi5teS0zIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tbC0zLFxuLm14LTMge1xuICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tLTQge1xuICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tdC00LFxuLm15LTQge1xuICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItNCxcbi5teC00IHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubWItNCxcbi5teS00IHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1sLTQsXG4ubXgtNCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ubS01IHtcbiAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLm10LTUsXG4ubXktNSB7XG4gIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ubXItNSxcbi5teC01IHtcbiAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1iLTUsXG4ubXktNSB7XG4gIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ubWwtNSxcbi5teC01IHtcbiAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ucC0wIHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG5cbi5wdC0wLFxuLnB5LTAge1xuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OyB9XG5cbi5wci0wLFxuLnB4LTAge1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLnBiLTAsXG4ucHktMCB7XG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuLnBsLTAsXG4ucHgtMCB7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbi5wLTEge1xuICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTEsXG4ucHktMSB7XG4gIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnByLTEsXG4ucHgtMSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGItMSxcbi5weS0xIHtcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGwtMSxcbi5weC0xIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnAtMiB7XG4gIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wdC0yLFxuLnB5LTIge1xuICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnByLTIsXG4ucHgtMiB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYi0yLFxuLnB5LTIge1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBsLTIsXG4ucHgtMiB7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnAtMyB7XG4gIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ucHQtMyxcbi5weS0zIHtcbiAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ucHItMyxcbi5weC0zIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYi0zLFxuLnB5LTMge1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wbC0zLFxuLnB4LTMge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ucC00IHtcbiAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnB0LTQsXG4ucHktNCB7XG4gIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucHItNCxcbi5weC00IHtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBiLTQsXG4ucHktNCB7XG4gIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGwtNCxcbi5weC00IHtcbiAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDsgfVxuXG4ucC01IHtcbiAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5wdC01LFxuLnB5LTUge1xuICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5wci01LFxuLnB4LTUge1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLnBiLTUsXG4ucHktNSB7XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLnBsLTUsXG4ucHgtNSB7XG4gIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5tLWF1dG8ge1xuICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDsgfVxuXG4ubXQtYXV0byxcbi5teS1hdXRvIHtcbiAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50OyB9XG5cbi5tci1hdXRvLFxuLm14LWF1dG8ge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuXG4ubWItYXV0byxcbi5teS1hdXRvIHtcbiAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50OyB9XG5cbi5tbC1hdXRvLFxuLm14LWF1dG8ge1xuICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuICAubS1zbS0wIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuICAubXQtc20tMCxcbiAgLm15LXNtLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuICAubXItc20tMCxcbiAgLm14LXNtLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIC5tYi1zbS0wLFxuICAubXktc20tMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5tbC1zbS0wLFxuICAubXgtc20tMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAubS1zbS0xIHtcbiAgICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubXQtc20tMSxcbiAgLm15LXNtLTEge1xuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubXItc20tMSxcbiAgLm14LXNtLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi1zbS0xLFxuICAubXktc20tMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC1zbS0xLFxuICAubXgtc20tMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubS1zbS0yIHtcbiAgICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC1zbS0yLFxuICAubXktc20tMiB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLXNtLTIsXG4gIC5teC1zbS0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi1zbS0yLFxuICAubXktc20tMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLXNtLTIsXG4gIC5teC1zbS0yIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0tc20tMyB7XG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LXNtLTMsXG4gIC5teS1zbS0zIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLXNtLTMsXG4gIC5teC1zbS0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAubWItc20tMyxcbiAgLm15LXNtLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuICAubWwtc20tMyxcbiAgLm14LXNtLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0tc20tNCB7XG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAubXQtc20tNCxcbiAgLm15LXNtLTQge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tci1zbS00LFxuICAubXgtc20tNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAubWItc20tNCxcbiAgLm15LXNtLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC1zbS00LFxuICAubXgtc20tNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tLXNtLTUge1xuICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC1zbS01LFxuICAubXktc20tNSB7XG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tci1zbS01LFxuICAubXgtc20tNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLXNtLTUsXG4gIC5teS1zbS01IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLXNtLTUsXG4gIC5teC1zbS01IHtcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5wLXNtLTAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuICAucHQtc20tMCxcbiAgLnB5LXNtLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnByLXNtLTAsXG4gIC5weC1zbS0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnBiLXNtLTAsXG4gIC5weS1zbS0wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5wbC1zbS0wLFxuICAucHgtc20tMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnAtc20tMSB7XG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wdC1zbS0xLFxuICAucHktc20tMSB7XG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAucHItc20tMSxcbiAgLnB4LXNtLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAucGItc20tMSxcbiAgLnB5LXNtLTEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBsLXNtLTEsXG4gIC5weC1zbS0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAucC1zbS0yIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAucHQtc20tMixcbiAgLnB5LXNtLTIge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAucHItc20tMixcbiAgLnB4LXNtLTIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wYi1zbS0yLFxuICAucHktc20tMiB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wbC1zbS0yLFxuICAucHgtc20tMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAucC1zbS0zIHtcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnB0LXNtLTMsXG4gIC5weS1zbS0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wci1zbS0zLFxuICAucHgtc20tMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wYi1zbS0zLFxuICAucHktc20tMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuICAucGwtc20tMyxcbiAgLnB4LXNtLTMge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wLXNtLTQge1xuICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wdC1zbS00LFxuICAucHktc20tNCB7XG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wci1zbS00LFxuICAucHgtc20tNCB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBiLXNtLTQsXG4gIC5weS1zbS00IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBsLXNtLTQsXG4gIC5weC1zbS00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wLXNtLTUge1xuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDsgfVxuICAucHQtc20tNSxcbiAgLnB5LXNtLTUge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnByLXNtLTUsXG4gIC5weC1zbS01IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBiLXNtLTUsXG4gIC5weS1zbS01IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5wbC1zbS01LFxuICAucHgtc20tNSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0tc20tYXV0byB7XG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLm10LXNtLWF1dG8sXG4gIC5teS1zbS1hdXRvIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLm1yLXNtLWF1dG8sXG4gIC5teC1zbS1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuICAubWItc20tYXV0byxcbiAgLm15LXNtLWF1dG8ge1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDsgfVxuICAubWwtc20tYXV0byxcbiAgLm14LXNtLWF1dG8ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzIwcHgpIHtcbiAgLm0tbWQtMCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cbiAgLm10LW1kLTAsXG4gIC5teS1tZC0wIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgLm1yLW1kLTAsXG4gIC5teC1tZC0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAubWItbWQtMCxcbiAgLm15LW1kLTAge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAubWwtbWQtMCxcbiAgLm14LW1kLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLm0tbWQtMSB7XG4gICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LW1kLTEsXG4gIC5teS1tZC0xIHtcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLW1kLTEsXG4gIC5teC1tZC0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubWItbWQtMSxcbiAgLm15LW1kLTEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubWwtbWQtMSxcbiAgLm14LW1kLTEge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0tbWQtMiB7XG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAubXQtbWQtMixcbiAgLm15LW1kLTIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tci1tZC0yLFxuICAubXgtbWQtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAubWItbWQtMixcbiAgLm15LW1kLTIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC1tZC0yLFxuICAubXgtbWQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tLW1kLTMge1xuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC1tZC0zLFxuICAubXktbWQtMyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tci1tZC0zLFxuICAubXgtbWQtMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLW1kLTMsXG4gIC5teS1tZC0zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLW1kLTMsXG4gIC5teC1tZC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tLW1kLTQge1xuICAgIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LW1kLTQsXG4gIC5teS1tZC00IHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAubXItbWQtNCxcbiAgLm14LW1kLTQge1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLW1kLTQsXG4gIC5teS1tZC00IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAubWwtbWQtNCxcbiAgLm14LW1kLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAubS1tZC01IHtcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDsgfVxuICAubXQtbWQtNSxcbiAgLm15LW1kLTUge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDsgfVxuICAubXItbWQtNSxcbiAgLm14LW1kLTUge1xuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi1tZC01LFxuICAubXktbWQtNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC1tZC01LFxuICAubXgtbWQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuICAucC1tZC0wIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnB0LW1kLTAsXG4gIC5weS1tZC0wIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OyB9XG4gIC5wci1tZC0wLFxuICAucHgtbWQtMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIC5wYi1tZC0wLFxuICAucHktbWQtMCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAucGwtbWQtMCxcbiAgLnB4LW1kLTAge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gIC5wLW1kLTEge1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAucHQtbWQtMSxcbiAgLnB5LW1kLTEge1xuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnByLW1kLTEsXG4gIC5weC1tZC0xIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBiLW1kLTEsXG4gIC5weS1tZC0xIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wbC1tZC0xLFxuICAucHgtbWQtMSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnAtbWQtMiB7XG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnB0LW1kLTIsXG4gIC5weS1tZC0yIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnByLW1kLTIsXG4gIC5weC1tZC0yIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAucGItbWQtMixcbiAgLnB5LW1kLTIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAucGwtbWQtMixcbiAgLnB4LW1kLTIge1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnAtbWQtMyB7XG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wdC1tZC0zLFxuICAucHktbWQtMyB7XG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDsgfVxuICAucHItbWQtMyxcbiAgLnB4LW1kLTMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAucGItbWQtMyxcbiAgLnB5LW1kLTMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBsLW1kLTMsXG4gIC5weC1tZC0zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAucC1tZC00IHtcbiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAucHQtbWQtNCxcbiAgLnB5LW1kLTQge1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAucHItbWQtNCxcbiAgLnB4LW1kLTQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wYi1tZC00LFxuICAucHktbWQtNCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wbC1tZC00LFxuICAucHgtbWQtNCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAucC1tZC01IHtcbiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnB0LW1kLTUsXG4gIC5weS1tZC01IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5wci1tZC01LFxuICAucHgtbWQtNSB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5wYi1tZC01LFxuICAucHktbWQtNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuICAucGwtbWQtNSxcbiAgLnB4LW1kLTUge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tLW1kLWF1dG8ge1xuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50OyB9XG4gIC5tdC1tZC1hdXRvLFxuICAubXktbWQtYXV0byB7XG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50OyB9XG4gIC5tci1tZC1hdXRvLFxuICAubXgtbWQtYXV0byB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLm1iLW1kLWF1dG8sXG4gIC5teS1tZC1hdXRvIHtcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLm1sLW1kLWF1dG8sXG4gIC5teC1tZC1hdXRvIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubS1sZy0wIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuICAubXQtbGctMCxcbiAgLm15LWxnLTAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuICAubXItbGctMCxcbiAgLm14LWxnLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIC5tYi1sZy0wLFxuICAubXktbGctMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5tbC1sZy0wLFxuICAubXgtbGctMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAubS1sZy0xIHtcbiAgICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubXQtbGctMSxcbiAgLm15LWxnLTEge1xuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubXItbGctMSxcbiAgLm14LWxnLTEge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi1sZy0xLFxuICAubXktbGctMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC1sZy0xLFxuICAubXgtbGctMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAubS1sZy0yIHtcbiAgICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC1sZy0yLFxuICAubXktbGctMiB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLWxnLTIsXG4gIC5teC1sZy0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi1sZy0yLFxuICAubXktbGctMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLWxnLTIsXG4gIC5teC1sZy0yIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0tbGctMyB7XG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LWxnLTMsXG4gIC5teS1sZy0zIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLWxnLTMsXG4gIC5teC1sZy0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAubWItbGctMyxcbiAgLm15LWxnLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuICAubWwtbGctMyxcbiAgLm14LWxnLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0tbGctNCB7XG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAubXQtbGctNCxcbiAgLm15LWxnLTQge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tci1sZy00LFxuICAubXgtbGctNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAubWItbGctNCxcbiAgLm15LWxnLTQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC1sZy00LFxuICAubXgtbGctNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tLWxnLTUge1xuICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC1sZy01LFxuICAubXktbGctNSB7XG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tci1sZy01LFxuICAubXgtbGctNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLWxnLTUsXG4gIC5teS1sZy01IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLWxnLTUsXG4gIC5teC1sZy01IHtcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5wLWxnLTAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuICAucHQtbGctMCxcbiAgLnB5LWxnLTAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnByLWxnLTAsXG4gIC5weC1sZy0wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnBiLWxnLTAsXG4gIC5weS1sZy0wIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5wbC1sZy0wLFxuICAucHgtbGctMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnAtbGctMSB7XG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wdC1sZy0xLFxuICAucHktbGctMSB7XG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAucHItbGctMSxcbiAgLnB4LWxnLTEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAucGItbGctMSxcbiAgLnB5LWxnLTEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBsLWxnLTEsXG4gIC5weC1sZy0xIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAucC1sZy0yIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAucHQtbGctMixcbiAgLnB5LWxnLTIge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAucHItbGctMixcbiAgLnB4LWxnLTIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wYi1sZy0yLFxuICAucHktbGctMiB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wbC1sZy0yLFxuICAucHgtbGctMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAucC1sZy0zIHtcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnB0LWxnLTMsXG4gIC5weS1sZy0zIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wci1sZy0zLFxuICAucHgtbGctMyB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wYi1sZy0zLFxuICAucHktbGctMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuICAucGwtbGctMyxcbiAgLnB4LWxnLTMge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wLWxnLTQge1xuICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wdC1sZy00LFxuICAucHktbGctNCB7XG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wci1sZy00LFxuICAucHgtbGctNCB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBiLWxnLTQsXG4gIC5weS1sZy00IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBsLWxnLTQsXG4gIC5weC1sZy00IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wLWxnLTUge1xuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDsgfVxuICAucHQtbGctNSxcbiAgLnB5LWxnLTUge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnByLWxnLTUsXG4gIC5weC1sZy01IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBiLWxnLTUsXG4gIC5weS1sZy01IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5wbC1sZy01LFxuICAucHgtbGctNSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0tbGctYXV0byB7XG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLm10LWxnLWF1dG8sXG4gIC5teS1sZy1hdXRvIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLm1yLWxnLWF1dG8sXG4gIC5teC1sZy1hdXRvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuICAubWItbGctYXV0byxcbiAgLm15LWxnLWF1dG8ge1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDsgfVxuICAubWwtbGctYXV0byxcbiAgLm14LWxnLWF1dG8ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMXB4KSB7XG4gIC5tLXhsLTAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG4gIC5tdC14bC0wLFxuICAubXkteGwtMCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OyB9XG4gIC5tci14bC0wLFxuICAubXgteGwtMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLm1iLXhsLTAsXG4gIC5teS14bC0wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLm1sLXhsLTAsXG4gIC5teC14bC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gIC5tLXhsLTEge1xuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC14bC0xLFxuICAubXkteGwtMSB7XG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tci14bC0xLFxuICAubXgteGwtMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLXhsLTEsXG4gIC5teS14bC0xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLXhsLTEsXG4gIC5teC14bC0xIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tLXhsLTIge1xuICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LXhsLTIsXG4gIC5teS14bC0yIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAubXIteGwtMixcbiAgLm14LXhsLTIge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1iLXhsLTIsXG4gIC5teS14bC0yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAubWwteGwtMixcbiAgLm14LXhsLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAubS14bC0zIHtcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDsgfVxuICAubXQteGwtMyxcbiAgLm15LXhsLTMge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDsgfVxuICAubXIteGwtMyxcbiAgLm14LXhsLTMge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi14bC0zLFxuICAubXkteGwtMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tbC14bC0zLFxuICAubXgteGwtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAubS14bC00IHtcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tdC14bC00LFxuICAubXkteGwtNCB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLXhsLTQsXG4gIC5teC14bC00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tYi14bC00LFxuICAubXkteGwtNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1sLXhsLTQsXG4gIC5teC14bC00IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm0teGwtNSB7XG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm10LXhsLTUsXG4gIC5teS14bC01IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1yLXhsLTUsXG4gIC5teC14bC01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDsgfVxuICAubWIteGwtNSxcbiAgLm15LXhsLTUge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuICAubWwteGwtNSxcbiAgLm14LXhsLTUge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnAteGwtMCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG4gIC5wdC14bC0wLFxuICAucHkteGwtMCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuICAucHIteGwtMCxcbiAgLnB4LXhsLTAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAucGIteGwtMCxcbiAgLnB5LXhsLTAge1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnBsLXhsLTAsXG4gIC5weC14bC0wIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAucC14bC0xIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnB0LXhsLTEsXG4gIC5weS14bC0xIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wci14bC0xLFxuICAucHgteGwtMSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wYi14bC0xLFxuICAucHkteGwtMSB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDsgfVxuICAucGwteGwtMSxcbiAgLnB4LXhsLTEge1xuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wLXhsLTIge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wdC14bC0yLFxuICAucHkteGwtMiB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wci14bC0yLFxuICAucHgteGwtMiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBiLXhsLTIsXG4gIC5weS14bC0yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBsLXhsLTIsXG4gIC5weC14bC0yIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wLXhsLTMge1xuICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDsgfVxuICAucHQteGwtMyxcbiAgLnB5LXhsLTMge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnByLXhsLTMsXG4gIC5weC14bC0zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBiLXhsLTMsXG4gIC5weS14bC0zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wbC14bC0zLFxuICAucHgteGwtMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnAteGwtNCB7XG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnB0LXhsLTQsXG4gIC5weS14bC00IHtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnByLXhsLTQsXG4gIC5weC14bC00IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAucGIteGwtNCxcbiAgLnB5LXhsLTQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAucGwteGwtNCxcbiAgLnB4LXhsLTQge1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnAteGwtNSB7XG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5wdC14bC01LFxuICAucHkteGwtNSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDsgfVxuICAucHIteGwtNSxcbiAgLnB4LXhsLTUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDsgfVxuICAucGIteGwtNSxcbiAgLnB5LXhsLTUge1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnBsLXhsLTUsXG4gIC5weC14bC01IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuICAubS14bC1hdXRvIHtcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDsgfVxuICAubXQteGwtYXV0byxcbiAgLm15LXhsLWF1dG8ge1xuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDsgfVxuICAubXIteGwtYXV0byxcbiAgLm14LXhsLWF1dG8ge1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50OyB9XG4gIC5tYi14bC1hdXRvLFxuICAubXkteGwtYXV0byB7XG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50OyB9XG4gIC5tbC14bC1hdXRvLFxuICAubXgteGwtYXV0byB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDsgfSB9XG5cbi52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50OyB9XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDsgfVxuXG4vKiFcbiAqIEhvdmVyLmNzcyAoaHR0cDovL2lhbmx1bm4uZ2l0aHViLmlvL0hvdmVyLylcbiAqIFZlcnNpb246IDIuMi4xXG4gKiBBdXRob3I6IElhbiBMdW5uIEBJYW5MdW5uXG4gKiBBdXRob3IgVVJMOiBodHRwOi8vaWFubHVubi5jby51ay9cbiAqIEdpdGh1YjogaHR0cHM6Ly9naXRodWIuY29tL0lhbkx1bm4vSG92ZXJcblxuICogSG92ZXIuY3NzIENvcHlyaWdodCBJYW4gTHVubiAyMDE3LiBHZW5lcmF0ZWQgd2l0aCBTYXNzLlxuICovXG4vKiAyRCBUUkFOU0lUSU9OUyAqL1xuLyogR3JvdyAqL1xuLmh2ci1ncm93IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOyB9XG4gIC5odnItZ3Jvdzpob3ZlciwgLmh2ci1ncm93OmZvY3VzLCAuaHZyLWdyb3c6YWN0aXZlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7IH1cblxuLyogU2hyaW5rICovXG4uaHZyLXNocmluayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsgfVxuICAuaHZyLXNocmluazpob3ZlciwgLmh2ci1zaHJpbms6Zm9jdXMsIC5odnItc2hyaW5rOmFjdGl2ZSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpOyB9XG5cbi8qIFB1bHNlICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXB1bHNlIHtcbiAgMjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7IH1cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGh2ci1wdWxzZSB7XG4gIDI1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpOyB9XG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpOyB9IH1cblxuLmh2ci1wdWxzZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7IH1cbiAgLmh2ci1wdWxzZTpob3ZlciwgLmh2ci1wdWxzZTpmb2N1cywgLmh2ci1wdWxzZTphY3RpdmUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1wdWxzZTtcbiAgICBhbmltYXRpb24tbmFtZTogaHZyLXB1bHNlO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbi8qIFB1bHNlIEdyb3cgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBodnItcHVsc2UtZ3JvdyB7XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGh2ci1wdWxzZS1ncm93IHtcbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTsgfSB9XG5cbi5odnItcHVsc2UtZ3JvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7IH1cbiAgLmh2ci1wdWxzZS1ncm93OmhvdmVyLCAuaHZyLXB1bHNlLWdyb3c6Zm9jdXMsIC5odnItcHVsc2UtZ3JvdzphY3RpdmUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1wdWxzZS1ncm93O1xuICAgIGFuaW1hdGlvbi1uYW1lOiBodnItcHVsc2UtZ3JvdztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiBhbHRlcm5hdGU7XG4gICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlOyB9XG5cbi8qIFB1bHNlIFNocmluayAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1wdWxzZS1zaHJpbmsge1xuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpOyB9IH1cblxuQGtleWZyYW1lcyBodnItcHVsc2Utc2hyaW5rIHtcbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTsgfSB9XG5cbi5odnItcHVsc2Utc2hyaW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDsgfVxuICAuaHZyLXB1bHNlLXNocmluazpob3ZlciwgLmh2ci1wdWxzZS1zaHJpbms6Zm9jdXMsIC5odnItcHVsc2Utc2hyaW5rOmFjdGl2ZSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLXB1bHNlLXNocmluaztcbiAgICBhbmltYXRpb24tbmFtZTogaHZyLXB1bHNlLXNocmluaztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiBhbHRlcm5hdGU7XG4gICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlOyB9XG5cbi8qIFB1c2ggKi9cbkAtd2Via2l0LWtleWZyYW1lcyBodnItcHVzaCB7XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9IH1cblxuQGtleWZyYW1lcyBodnItcHVzaCB7XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9IH1cblxuLmh2ci1wdXNoIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDsgfVxuICAuaHZyLXB1c2g6aG92ZXIsIC5odnItcHVzaDpmb2N1cywgLmh2ci1wdXNoOmFjdGl2ZSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLXB1c2g7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGh2ci1wdXNoO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7IH1cblxuLyogUG9wICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXBvcCB7XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpOyB9IH1cblxuQGtleWZyYW1lcyBodnItcG9wIHtcbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7IH0gfVxuXG4uaHZyLXBvcCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7IH1cbiAgLmh2ci1wb3A6aG92ZXIsIC5odnItcG9wOmZvY3VzLCAuaHZyLXBvcDphY3RpdmUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1wb3A7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGh2ci1wb3A7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsgfVxuXG4vKiBCb3VuY2UgSW4gKi9cbi5odnItYm91bmNlLWluIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzOyB9XG4gIC5odnItYm91bmNlLWluOmhvdmVyLCAuaHZyLWJvdW5jZS1pbjpmb2N1cywgLmh2ci1ib3VuY2UtaW46YWN0aXZlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDcsIDIuMDIsIDAuMzEsIC0wLjM2KTtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDcsIDIuMDIsIDAuMzEsIC0wLjM2KTsgfVxuXG4vKiBCb3VuY2UgT3V0ICovXG4uaHZyLWJvdW5jZS1vdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7IH1cbiAgLmh2ci1ib3VuY2Utb3V0OmhvdmVyLCAuaHZyLWJvdW5jZS1vdXQ6Zm9jdXMsIC5odnItYm91bmNlLW91dDphY3RpdmUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NywgMi4wMiwgMC4zMSwgLTAuMzYpO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NywgMi4wMiwgMC4zMSwgLTAuMzYpOyB9XG5cbi8qIFJvdGF0ZSAqL1xuLmh2ci1yb3RhdGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07IH1cbiAgLmh2ci1yb3RhdGU6aG92ZXIsIC5odnItcm90YXRlOmZvY3VzLCAuaHZyLXJvdGF0ZTphY3RpdmUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNGRlZyk7IH1cblxuLyogR3JvdyBSb3RhdGUgKi9cbi5odnItZ3Jvdy1yb3RhdGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07IH1cbiAgLmh2ci1ncm93LXJvdGF0ZTpob3ZlciwgLmh2ci1ncm93LXJvdGF0ZTpmb2N1cywgLmh2ci1ncm93LXJvdGF0ZTphY3RpdmUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSg0ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKDRkZWcpOyB9XG5cbi8qIEZsb2F0ICovXG4uaHZyLWZsb2F0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyB9XG4gIC5odnItZmxvYXQ6aG92ZXIsIC5odnItZmxvYXQ6Zm9jdXMsIC5odnItZmxvYXQ6YWN0aXZlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7IH1cblxuLyogU2luayAqL1xuLmh2ci1zaW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyB9XG4gIC5odnItc2luazpob3ZlciwgLmh2ci1zaW5rOmZvY3VzLCAuaHZyLXNpbms6YWN0aXZlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOyB9XG5cbi8qIEJvYiAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1ib2Ige1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpOyB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTRweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KTsgfSB9XG5cbkBrZXlmcmFtZXMgaHZyLWJvYiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7IH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTRweCk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpOyB9IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1ib2ItZmxvYXQge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGh2ci1ib2ItZmxvYXQge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7IH0gfVxuXG4uaHZyLWJvYiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7IH1cbiAgLmh2ci1ib2I6aG92ZXIsIC5odnItYm9iOmZvY3VzLCAuaHZyLWJvYjphY3RpdmUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1ib2ItZmxvYXQsIGh2ci1ib2I7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGh2ci1ib2ItZmxvYXQsIGh2ci1ib2I7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IC4zcywgMS41cztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IC4zcywgMS41cztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMHMsIC4zcztcbiAgICBhbmltYXRpb24tZGVsYXk6IDBzLCAuM3M7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCwgZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQsIGVhc2UtaW4tb3V0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSwgaW5maW5pdGU7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSwgaW5maW5pdGU7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246IG5vcm1hbCwgYWx0ZXJuYXRlO1xuICAgIGFuaW1hdGlvbi1kaXJlY3Rpb246IG5vcm1hbCwgYWx0ZXJuYXRlOyB9XG5cbi8qIEhhbmcgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBodnItaGFuZyB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOyB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOyB9IH1cblxuQGtleWZyYW1lcyBodnItaGFuZyB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOyB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOyB9IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1oYW5nLXNpbmsge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOyB9IH1cblxuQGtleWZyYW1lcyBodnItaGFuZy1zaW5rIHtcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTsgfSB9XG5cbi5odnItaGFuZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7IH1cbiAgLmh2ci1oYW5nOmhvdmVyLCAuaHZyLWhhbmc6Zm9jdXMsIC5odnItaGFuZzphY3RpdmUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1oYW5nLXNpbmssIGh2ci1oYW5nO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBodnItaGFuZy1zaW5rLCBodnItaGFuZztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogLjNzLCAxLjVzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogLjNzLCAxLjVzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwcywgLjNzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMHMsIC4zcztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0LCBlYXNlLWluLW91dDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCwgZWFzZS1pbi1vdXQ7XG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxLCBpbmZpbml0ZTtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxLCBpbmZpbml0ZTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsLCBhbHRlcm5hdGU7XG4gICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsLCBhbHRlcm5hdGU7IH1cblxuLyogU2tldyAqL1xuLmh2ci1za2V3IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOyB9XG4gIC5odnItc2tldzpob3ZlciwgLmh2ci1za2V3OmZvY3VzLCAuaHZyLXNrZXc6YWN0aXZlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMTBkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tldygtMTBkZWcpOyB9XG5cbi8qIFNrZXcgRm9yd2FyZCAqL1xuLmh2ci1za2V3LWZvcndhcmQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7IH1cbiAgLmh2ci1za2V3LWZvcndhcmQ6aG92ZXIsIC5odnItc2tldy1mb3J3YXJkOmZvY3VzLCAuaHZyLXNrZXctZm9yd2FyZDphY3RpdmUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0xMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3KC0xMGRlZyk7IH1cblxuLyogU2tldyBCYWNrd2FyZCAqL1xuLmh2ci1za2V3LWJhY2t3YXJkIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDAgMTAwJTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlOyB9XG4gIC5odnItc2tldy1iYWNrd2FyZDpob3ZlciwgLmh2ci1za2V3LWJhY2t3YXJkOmZvY3VzLCAuaHZyLXNrZXctYmFja3dhcmQ6YWN0aXZlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygxMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3KDEwZGVnKTsgfVxuXG4vKiBXb2JibGUgVmVydGljYWwgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBodnItd29iYmxlLXZlcnRpY2FsIHtcbiAgMTYuNjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpOyB9XG4gIDMzLjMlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7IH1cbiAgNDkuOTUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpOyB9XG4gIDY2LjYlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7IH1cbiAgODMuMjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxcHgpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfSB9XG5cbkBrZXlmcmFtZXMgaHZyLXdvYmJsZS12ZXJ0aWNhbCB7XG4gIDE2LjY1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KTsgfVxuICAzMy4zJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOyB9XG4gIDQ5Ljk1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTsgfVxuICA2Ni42JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpOyB9XG4gIDgzLjI1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH0gfVxuXG4uaHZyLXdvYmJsZS12ZXJ0aWNhbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7IH1cbiAgLmh2ci13b2JibGUtdmVydGljYWw6aG92ZXIsIC5odnItd29iYmxlLXZlcnRpY2FsOmZvY3VzLCAuaHZyLXdvYmJsZS12ZXJ0aWNhbDphY3RpdmUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci13b2JibGUtdmVydGljYWw7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGh2ci13b2JibGUtdmVydGljYWw7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsgfVxuXG4vKiBXb2JibGUgSG9yaXpvbnRhbCAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGh2ci13b2JibGUtaG9yaXpvbnRhbCB7XG4gIDE2LjY1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOHB4KTsgfVxuICAzMy4zJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpOyB9XG4gIDQ5Ljk1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTsgfVxuICA2Ni42JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpOyB9XG4gIDgzLjI1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGh2ci13b2JibGUtaG9yaXpvbnRhbCB7XG4gIDE2LjY1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOHB4KTsgfVxuICAzMy4zJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpOyB9XG4gIDQ5Ljk1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTsgfVxuICA2Ni42JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpOyB9XG4gIDgzLjI1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH0gfVxuXG4uaHZyLXdvYmJsZS1ob3Jpem9udGFsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDsgfVxuICAuaHZyLXdvYmJsZS1ob3Jpem9udGFsOmhvdmVyLCAuaHZyLXdvYmJsZS1ob3Jpem9udGFsOmZvY3VzLCAuaHZyLXdvYmJsZS1ob3Jpem9udGFsOmFjdGl2ZSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLXdvYmJsZS1ob3Jpem9udGFsO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBodnItd29iYmxlLWhvcml6b250YWw7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsgfVxuXG4vKiBXb2JibGUgVG8gQm90dG9tIFJpZ2h0ICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXdvYmJsZS10by1ib3R0b20tcmlnaHQge1xuICAxNi42NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoOHB4LCA4cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDhweCwgOHB4KTsgfVxuICAzMy4zJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNnB4LCAtNnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNnB4LCAtNnB4KTsgfVxuICA0OS45NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoNHB4LCA0cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDRweCwgNHB4KTsgfVxuICA2Ni42JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMnB4LCAtMnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMnB4LCAtMnB4KTsgfVxuICA4My4yNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMXB4LCAxcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDFweCwgMXB4KTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9IH1cblxuQGtleWZyYW1lcyBodnItd29iYmxlLXRvLWJvdHRvbS1yaWdodCB7XG4gIDE2LjY1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4cHgsIDhweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoOHB4LCA4cHgpOyB9XG4gIDMzLjMlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC02cHgsIC02cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC02cHgsIC02cHgpOyB9XG4gIDQ5Ljk1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg0cHgsIDRweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNHB4LCA0cHgpOyB9XG4gIDY2LjYlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC0ycHgsIC0ycHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0ycHgsIC0ycHgpOyB9XG4gIDgzLjI1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgxcHgsIDFweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMXB4LCAxcHgpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH0gfVxuXG4uaHZyLXdvYmJsZS10by1ib3R0b20tcmlnaHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50OyB9XG4gIC5odnItd29iYmxlLXRvLWJvdHRvbS1yaWdodDpob3ZlciwgLmh2ci13b2JibGUtdG8tYm90dG9tLXJpZ2h0OmZvY3VzLCAuaHZyLXdvYmJsZS10by1ib3R0b20tcmlnaHQ6YWN0aXZlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItd29iYmxlLXRvLWJvdHRvbS1yaWdodDtcbiAgICBhbmltYXRpb24tbmFtZTogaHZyLXdvYmJsZS10by1ib3R0b20tcmlnaHQ7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsgfVxuXG4vKiBXb2JibGUgVG8gVG9wIFJpZ2h0ICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXdvYmJsZS10by10b3AtcmlnaHQge1xuICAxNi42NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoOHB4LCAtOHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg4cHgsIC04cHgpOyB9XG4gIDMzLjMlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC02cHgsIDZweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTZweCwgNnB4KTsgfVxuICA0OS45NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoNHB4LCAtNHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0cHgsIC00cHgpOyB9XG4gIDY2LjYlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC0ycHgsIDJweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTJweCwgMnB4KTsgfVxuICA4My4yNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMXB4LCAtMXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxcHgsIC0xcHgpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGh2ci13b2JibGUtdG8tdG9wLXJpZ2h0IHtcbiAgMTYuNjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDhweCwgLThweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoOHB4LCAtOHB4KTsgfVxuICAzMy4zJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNnB4LCA2cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC02cHgsIDZweCk7IH1cbiAgNDkuOTUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDRweCwgLTRweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNHB4LCAtNHB4KTsgfVxuICA2Ni42JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMnB4LCAycHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0ycHgsIDJweCk7IH1cbiAgODMuMjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDFweCwgLTFweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMXB4LCAtMXB4KTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9IH1cblxuLmh2ci13b2JibGUtdG8tdG9wLXJpZ2h0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDsgfVxuICAuaHZyLXdvYmJsZS10by10b3AtcmlnaHQ6aG92ZXIsIC5odnItd29iYmxlLXRvLXRvcC1yaWdodDpmb2N1cywgLmh2ci13b2JibGUtdG8tdG9wLXJpZ2h0OmFjdGl2ZSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLXdvYmJsZS10by10b3AtcmlnaHQ7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGh2ci13b2JibGUtdG8tdG9wLXJpZ2h0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7IH1cblxuLyogV29iYmxlIFRvcCAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGh2ci13b2JibGUtdG9wIHtcbiAgMTYuNjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMTJkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tldygtMTJkZWcpOyB9XG4gIDMzLjMlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygxMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3KDEwZGVnKTsgfVxuICA0OS45NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC02ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXcoLTZkZWcpOyB9XG4gIDY2LjYlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldyg0ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXcoNGRlZyk7IH1cbiAgODMuMjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMmRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3KC0yZGVnKTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygwKTtcbiAgICB0cmFuc2Zvcm06IHNrZXcoMCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGh2ci13b2JibGUtdG9wIHtcbiAgMTYuNjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMTJkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tldygtMTJkZWcpOyB9XG4gIDMzLjMlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygxMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3KDEwZGVnKTsgfVxuICA0OS45NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC02ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXcoLTZkZWcpOyB9XG4gIDY2LjYlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldyg0ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXcoNGRlZyk7IH1cbiAgODMuMjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMmRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3KC0yZGVnKTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygwKTtcbiAgICB0cmFuc2Zvcm06IHNrZXcoMCk7IH0gfVxuXG4uaHZyLXdvYmJsZS10b3Age1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDAgMTAwJTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlOyB9XG4gIC5odnItd29iYmxlLXRvcDpob3ZlciwgLmh2ci13b2JibGUtdG9wOmZvY3VzLCAuaHZyLXdvYmJsZS10b3A6YWN0aXZlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItd29iYmxlLXRvcDtcbiAgICBhbmltYXRpb24tbmFtZTogaHZyLXdvYmJsZS10b3A7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsgfVxuXG4vKiBXb2JibGUgQm90dG9tICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXdvYmJsZS1ib3R0b20ge1xuICAxNi42NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0xMmRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3KC0xMmRlZyk7IH1cbiAgMzMuMyUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDEwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXcoMTBkZWcpOyB9XG4gIDQ5Ljk1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoLTZkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tldygtNmRlZyk7IH1cbiAgNjYuNiUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDRkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tldyg0ZGVnKTsgfVxuICA4My4yNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0yZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXcoLTJkZWcpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDApO1xuICAgIHRyYW5zZm9ybTogc2tldygwKTsgfSB9XG5cbkBrZXlmcmFtZXMgaHZyLXdvYmJsZS1ib3R0b20ge1xuICAxNi42NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0xMmRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3KC0xMmRlZyk7IH1cbiAgMzMuMyUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDEwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXcoMTBkZWcpOyB9XG4gIDQ5Ljk1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoLTZkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tldygtNmRlZyk7IH1cbiAgNjYuNiUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDRkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tldyg0ZGVnKTsgfVxuICA4My4yNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC0yZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXcoLTJkZWcpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KDApO1xuICAgIHRyYW5zZm9ybTogc2tldygwKTsgfSB9XG5cbi5odnItd29iYmxlLWJvdHRvbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7IH1cbiAgLmh2ci13b2JibGUtYm90dG9tOmhvdmVyLCAuaHZyLXdvYmJsZS1ib3R0b206Zm9jdXMsIC5odnItd29iYmxlLWJvdHRvbTphY3RpdmUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci13b2JibGUtYm90dG9tO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBodnItd29iYmxlLWJvdHRvbTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOyB9XG5cbi8qIFdvYmJsZSBTa2V3ICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXdvYmJsZS1za2V3IHtcbiAgMTYuNjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMTJkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tldygtMTJkZWcpOyB9XG4gIDMzLjMlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygxMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3KDEwZGVnKTsgfVxuICA0OS45NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3KC02ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXcoLTZkZWcpOyB9XG4gIDY2LjYlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldyg0ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXcoNGRlZyk7IH1cbiAgODMuMjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtMmRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3KC0yZGVnKTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygwKTtcbiAgICB0cmFuc2Zvcm06IHNrZXcoMCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGh2ci13b2JibGUtc2tldyB7XG4gIDE2LjY1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoLTEyZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXcoLTEyZGVnKTsgfVxuICAzMy4zJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoMTBkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tldygxMGRlZyk7IH1cbiAgNDkuOTUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tldygtNmRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3KC02ZGVnKTsgfVxuICA2Ni42JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoNGRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3KDRkZWcpOyB9XG4gIDgzLjI1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoLTJkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tldygtMmRlZyk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXcoMCk7XG4gICAgdHJhbnNmb3JtOiBza2V3KDApOyB9IH1cblxuLmh2ci13b2JibGUtc2tldyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7IH1cbiAgLmh2ci13b2JibGUtc2tldzpob3ZlciwgLmh2ci13b2JibGUtc2tldzpmb2N1cywgLmh2ci13b2JibGUtc2tldzphY3RpdmUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci13b2JibGUtc2tldztcbiAgICBhbmltYXRpb24tbmFtZTogaHZyLXdvYmJsZS1za2V3O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7IH1cblxuLyogQnV6eiAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1idXp6IHtcbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsgfSB9XG5cbkBrZXlmcmFtZXMgaHZyLWJ1enoge1xuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOyB9IH1cblxuLmh2ci1idXp6IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDsgfVxuICAuaHZyLWJ1eno6aG92ZXIsIC5odnItYnV6ejpmb2N1cywgLmh2ci1idXp6OmFjdGl2ZSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWJ1eno7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGh2ci1idXp6O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuMTVzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbi8qIEJ1enogT3V0ICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWJ1enotb3V0IHtcbiAgMTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7IH1cbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOyB9XG4gIDMwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpOyB9XG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTsgfVxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7IH1cbiAgNzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZyk7IH1cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpOyB9XG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KSByb3RhdGUoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCkgcm90YXRlKDApOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xcHgpIHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTFweCkgcm90YXRlKDApOyB9IH1cblxuQGtleWZyYW1lcyBodnItYnV6ei1vdXQge1xuICAxMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsgfVxuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7IH1cbiAgMzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7IH1cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOyB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpOyB9XG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCkgcm90YXRlKC0xZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCkgcm90YXRlKC0xZGVnKTsgfVxuICA3MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTsgfVxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7IH1cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcHgpIHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KSByb3RhdGUoMCk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTFweCkgcm90YXRlKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMXB4KSByb3RhdGUoMCk7IH0gfVxuXG4uaHZyLWJ1enotb3V0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDsgfVxuICAuaHZyLWJ1enotb3V0OmhvdmVyLCAuaHZyLWJ1enotb3V0OmZvY3VzLCAuaHZyLWJ1enotb3V0OmFjdGl2ZSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWJ1enotb3V0O1xuICAgIGFuaW1hdGlvbi1uYW1lOiBodnItYnV6ei1vdXQ7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuNzVzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOyB9XG5cbi8qIEZvcndhcmQgKi9cbi5odnItZm9yd2FyZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsgfVxuICAuaHZyLWZvcndhcmQ6aG92ZXIsIC5odnItZm9yd2FyZDpmb2N1cywgLmh2ci1mb3J3YXJkOmFjdGl2ZSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOHB4KTsgfVxuXG4vKiBCYWNrd2FyZCAqL1xuLmh2ci1iYWNrd2FyZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsgfVxuICAuaHZyLWJhY2t3YXJkOmhvdmVyLCAuaHZyLWJhY2t3YXJkOmZvY3VzLCAuaHZyLWJhY2t3YXJkOmFjdGl2ZSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLThweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC04cHgpOyB9XG5cbi8qIEJBQ0tHUk9VTkQgVFJBTlNJVElPTlMgKi9cbi8qIEZhZGUgKi9cbi5odnItZmFkZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYmFja2dyb3VuZC1jb2xvcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3IsIGJhY2tncm91bmQtY29sb3I7IH1cbiAgLmh2ci1mYWRlOmhvdmVyLCAuaHZyLWZhZGU6Zm9jdXMsIC5odnItZmFkZTphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMDk4RDE7XG4gICAgY29sb3I6IHdoaXRlOyB9XG5cbi8qIEJhY2sgUHVsc2UgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBodnItYmFjay1wdWxzZSB7XG4gIDUwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzMiwgMTUyLCAyMDksIDAuNzUpOyB9IH1cblxuQGtleWZyYW1lcyBodnItYmFjay1wdWxzZSB7XG4gIDUwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzMiwgMTUyLCAyMDksIDAuNzUpOyB9IH1cblxuLmh2ci1iYWNrLXB1bHNlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yLCBiYWNrZ3JvdW5kLWNvbG9yO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYmFja2dyb3VuZC1jb2xvcjsgfVxuICAuaHZyLWJhY2stcHVsc2U6aG92ZXIsIC5odnItYmFjay1wdWxzZTpmb2N1cywgLmh2ci1iYWNrLXB1bHNlOmFjdGl2ZSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWJhY2stcHVsc2U7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGh2ci1iYWNrLXB1bHNlO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjVzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC41cztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjA5OEQxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMDk4ZDE7XG4gICAgY29sb3I6IHdoaXRlOyB9XG5cbi8qIFN3ZWVwIFRvIFJpZ2h0ICovXG4uaHZyLXN3ZWVwLXRvLXJpZ2h0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOyB9XG4gIC5odnItc3dlZXAtdG8tcmlnaHQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDogIzIwOThEMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCA1MCU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuICAuaHZyLXN3ZWVwLXRvLXJpZ2h0OmhvdmVyLCAuaHZyLXN3ZWVwLXRvLXJpZ2h0OmZvY3VzLCAuaHZyLXN3ZWVwLXRvLXJpZ2h0OmFjdGl2ZSB7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gICAgLmh2ci1zd2VlcC10by1yaWdodDpob3ZlcjpiZWZvcmUsIC5odnItc3dlZXAtdG8tcmlnaHQ6Zm9jdXM6YmVmb3JlLCAuaHZyLXN3ZWVwLXRvLXJpZ2h0OmFjdGl2ZTpiZWZvcmUge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpOyB9XG5cbi8qIFN3ZWVwIFRvIExlZnQgKi9cbi5odnItc3dlZXAtdG8tbGVmdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsgfVxuICAuaHZyLXN3ZWVwLXRvLWxlZnQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDogIzIwOThEMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSA1MCU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuICAuaHZyLXN3ZWVwLXRvLWxlZnQ6aG92ZXIsIC5odnItc3dlZXAtdG8tbGVmdDpmb2N1cywgLmh2ci1zd2VlcC10by1sZWZ0OmFjdGl2ZSB7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gICAgLmh2ci1zd2VlcC10by1sZWZ0OmhvdmVyOmJlZm9yZSwgLmh2ci1zd2VlcC10by1sZWZ0OmZvY3VzOmJlZm9yZSwgLmh2ci1zd2VlcC10by1sZWZ0OmFjdGl2ZTpiZWZvcmUge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpOyB9XG5cbi8qIFN3ZWVwIFRvIEJvdHRvbSAqL1xuLmh2ci1zd2VlcC10by1ib3R0b20ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7IH1cbiAgLmh2ci1zd2VlcC10by1ib3R0b206YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDogIzIwOThEMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDA7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDA7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuICAuaHZyLXN3ZWVwLXRvLWJvdHRvbTpob3ZlciwgLmh2ci1zd2VlcC10by1ib3R0b206Zm9jdXMsIC5odnItc3dlZXAtdG8tYm90dG9tOmFjdGl2ZSB7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gICAgLmh2ci1zd2VlcC10by1ib3R0b206aG92ZXI6YmVmb3JlLCAuaHZyLXN3ZWVwLXRvLWJvdHRvbTpmb2N1czpiZWZvcmUsIC5odnItc3dlZXAtdG8tYm90dG9tOmFjdGl2ZTpiZWZvcmUge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpOyB9XG5cbi8qIFN3ZWVwIFRvIFRvcCAqL1xuLmh2ci1zd2VlcC10by10b3Age1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7IH1cbiAgLmh2ci1zd2VlcC10by10b3A6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDogIzIwOThEMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDEwMCU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDEwMCU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuICAuaHZyLXN3ZWVwLXRvLXRvcDpob3ZlciwgLmh2ci1zd2VlcC10by10b3A6Zm9jdXMsIC5odnItc3dlZXAtdG8tdG9wOmFjdGl2ZSB7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gICAgLmh2ci1zd2VlcC10by10b3A6aG92ZXI6YmVmb3JlLCAuaHZyLXN3ZWVwLXRvLXRvcDpmb2N1czpiZWZvcmUsIC5odnItc3dlZXAtdG8tdG9wOmFjdGl2ZTpiZWZvcmUge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpOyB9XG5cbi8qIEJvdW5jZSBUbyBSaWdodCAqL1xuLmh2ci1ib3VuY2UtdG8tcmlnaHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7IH1cbiAgLmh2ci1ib3VuY2UtdG8tcmlnaHQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDogIzIwOThEMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCA1MCU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41cztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuICAuaHZyLWJvdW5jZS10by1yaWdodDpob3ZlciwgLmh2ci1ib3VuY2UtdG8tcmlnaHQ6Zm9jdXMsIC5odnItYm91bmNlLXRvLXJpZ2h0OmFjdGl2ZSB7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gICAgLmh2ci1ib3VuY2UtdG8tcmlnaHQ6aG92ZXI6YmVmb3JlLCAuaHZyLWJvdW5jZS10by1yaWdodDpmb2N1czpiZWZvcmUsIC5odnItYm91bmNlLXRvLXJpZ2h0OmFjdGl2ZTpiZWZvcmUge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTIsIDEuNjQsIDAuMzcsIDAuNjYpO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUyLCAxLjY0LCAwLjM3LCAwLjY2KTsgfVxuXG4vKiBCb3VuY2UgVG8gTGVmdCAqL1xuLmh2ci1ib3VuY2UtdG8tbGVmdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41cztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41czsgfVxuICAuaHZyLWJvdW5jZS10by1sZWZ0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQ6ICMyMDk4RDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgNTAlO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgNTAlO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41cztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgLmh2ci1ib3VuY2UtdG8tbGVmdDpob3ZlciwgLmh2ci1ib3VuY2UtdG8tbGVmdDpmb2N1cywgLmh2ci1ib3VuY2UtdG8tbGVmdDphY3RpdmUge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5odnItYm91bmNlLXRvLWxlZnQ6aG92ZXI6YmVmb3JlLCAuaHZyLWJvdW5jZS10by1sZWZ0OmZvY3VzOmJlZm9yZSwgLmh2ci1ib3VuY2UtdG8tbGVmdDphY3RpdmU6YmVmb3JlIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUyLCAxLjY0LCAwLjM3LCAwLjY2KTtcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41MiwgMS42NCwgMC4zNywgMC42Nik7IH1cblxuLyogQm91bmNlIFRvIEJvdHRvbSAqL1xuLmh2ci1ib3VuY2UtdG8tYm90dG9tIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzOyB9XG4gIC5odnItYm91bmNlLXRvLWJvdHRvbTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kOiAjMjA5OEQxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyB9XG4gIC5odnItYm91bmNlLXRvLWJvdHRvbTpob3ZlciwgLmh2ci1ib3VuY2UtdG8tYm90dG9tOmZvY3VzLCAuaHZyLWJvdW5jZS10by1ib3R0b206YWN0aXZlIHtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAuaHZyLWJvdW5jZS10by1ib3R0b206aG92ZXI6YmVmb3JlLCAuaHZyLWJvdW5jZS10by1ib3R0b206Zm9jdXM6YmVmb3JlLCAuaHZyLWJvdW5jZS10by1ib3R0b206YWN0aXZlOmJlZm9yZSB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41MiwgMS42NCwgMC4zNywgMC42Nik7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTIsIDEuNjQsIDAuMzcsIDAuNjYpOyB9XG5cbi8qIEJvdW5jZSBUbyBUb3AgKi9cbi5odnItYm91bmNlLXRvLXRvcCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41cztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41czsgfVxuICAuaHZyLWJvdW5jZS10by10b3A6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDogIzIwOThEMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDEwMCU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDEwMCU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41cztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuICAuaHZyLWJvdW5jZS10by10b3A6aG92ZXIsIC5odnItYm91bmNlLXRvLXRvcDpmb2N1cywgLmh2ci1ib3VuY2UtdG8tdG9wOmFjdGl2ZSB7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gICAgLmh2ci1ib3VuY2UtdG8tdG9wOmhvdmVyOmJlZm9yZSwgLmh2ci1ib3VuY2UtdG8tdG9wOmZvY3VzOmJlZm9yZSwgLmh2ci1ib3VuY2UtdG8tdG9wOmFjdGl2ZTpiZWZvcmUge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgxKTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTIsIDEuNjQsIDAuMzcsIDAuNjYpO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjUyLCAxLjY0LCAwLjM3LCAwLjY2KTsgfVxuXG4vKiBSYWRpYWwgT3V0ICovXG4uaHZyLXJhZGlhbC1vdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICNlMWUxZTE7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7IH1cbiAgLmh2ci1yYWRpYWwtb3V0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQ6ICMyMDk4RDE7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyB9XG4gIC5odnItcmFkaWFsLW91dDpob3ZlciwgLmh2ci1yYWRpYWwtb3V0OmZvY3VzLCAuaHZyLXJhZGlhbC1vdXQ6YWN0aXZlIHtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAuaHZyLXJhZGlhbC1vdXQ6aG92ZXI6YmVmb3JlLCAuaHZyLXJhZGlhbC1vdXQ6Zm9jdXM6YmVmb3JlLCAuaHZyLXJhZGlhbC1vdXQ6YWN0aXZlOmJlZm9yZSB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMik7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDIpOyB9XG5cbi8qIFJhZGlhbCBJbiAqL1xuLmh2ci1yYWRpYWwtaW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICMyMDk4RDE7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7IH1cbiAgLmh2ci1yYWRpYWwtaW46YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDogI2UxZTFlMTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgyKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDIpO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgLmh2ci1yYWRpYWwtaW46aG92ZXIsIC5odnItcmFkaWFsLWluOmZvY3VzLCAuaHZyLXJhZGlhbC1pbjphY3RpdmUge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5odnItcmFkaWFsLWluOmhvdmVyOmJlZm9yZSwgLmh2ci1yYWRpYWwtaW46Zm9jdXM6YmVmb3JlLCAuaHZyLXJhZGlhbC1pbjphY3RpdmU6YmVmb3JlIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7IH1cblxuLyogUmVjdGFuZ2xlIEluICovXG4uaHZyLXJlY3RhbmdsZS1pbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogIzIwOThEMTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsgfVxuICAuaHZyLXJlY3RhbmdsZS1pbjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kOiAjZTFlMWUxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgLmh2ci1yZWN0YW5nbGUtaW46aG92ZXIsIC5odnItcmVjdGFuZ2xlLWluOmZvY3VzLCAuaHZyLXJlY3RhbmdsZS1pbjphY3RpdmUge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5odnItcmVjdGFuZ2xlLWluOmhvdmVyOmJlZm9yZSwgLmh2ci1yZWN0YW5nbGUtaW46Zm9jdXM6YmVmb3JlLCAuaHZyLXJlY3RhbmdsZS1pbjphY3RpdmU6YmVmb3JlIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7IH1cblxuLyogUmVjdGFuZ2xlIE91dCAqL1xuLmh2ci1yZWN0YW5nbGUtb3V0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiAjZTFlMWUxO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOyB9XG4gIC5odnItcmVjdGFuZ2xlLW91dDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kOiAjMjA5OEQxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgLmh2ci1yZWN0YW5nbGUtb3V0OmhvdmVyLCAuaHZyLXJlY3RhbmdsZS1vdXQ6Zm9jdXMsIC5odnItcmVjdGFuZ2xlLW91dDphY3RpdmUge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5odnItcmVjdGFuZ2xlLW91dDpob3ZlcjpiZWZvcmUsIC5odnItcmVjdGFuZ2xlLW91dDpmb2N1czpiZWZvcmUsIC5odnItcmVjdGFuZ2xlLW91dDphY3RpdmU6YmVmb3JlIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cblxuLyogU2h1dHRlciBJbiBIb3Jpem9udGFsICovXG4uaHZyLXNodXR0ZXItaW4taG9yaXpvbnRhbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogIzIwOThEMTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsgfVxuICAuaHZyLXNodXR0ZXItaW4taG9yaXpvbnRhbDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kOiAjZTFlMWUxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgLmh2ci1zaHV0dGVyLWluLWhvcml6b250YWw6aG92ZXIsIC5odnItc2h1dHRlci1pbi1ob3Jpem9udGFsOmZvY3VzLCAuaHZyLXNodXR0ZXItaW4taG9yaXpvbnRhbDphY3RpdmUge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5odnItc2h1dHRlci1pbi1ob3Jpem9udGFsOmhvdmVyOmJlZm9yZSwgLmh2ci1zaHV0dGVyLWluLWhvcml6b250YWw6Zm9jdXM6YmVmb3JlLCAuaHZyLXNodXR0ZXItaW4taG9yaXpvbnRhbDphY3RpdmU6YmVmb3JlIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTsgfVxuXG4vKiBTaHV0dGVyIE91dCBIb3Jpem9udGFsICovXG4uaHZyLXNodXR0ZXItb3V0LWhvcml6b250YWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICNlMWUxZTE7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7IH1cbiAgLmh2ci1zaHV0dGVyLW91dC1ob3Jpem9udGFsOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6ICMyMDk4RDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuICAuaHZyLXNodXR0ZXItb3V0LWhvcml6b250YWw6aG92ZXIsIC5odnItc2h1dHRlci1vdXQtaG9yaXpvbnRhbDpmb2N1cywgLmh2ci1zaHV0dGVyLW91dC1ob3Jpem9udGFsOmFjdGl2ZSB7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gICAgLmh2ci1zaHV0dGVyLW91dC1ob3Jpem9udGFsOmhvdmVyOmJlZm9yZSwgLmh2ci1zaHV0dGVyLW91dC1ob3Jpem9udGFsOmZvY3VzOmJlZm9yZSwgLmh2ci1zaHV0dGVyLW91dC1ob3Jpem9udGFsOmFjdGl2ZTpiZWZvcmUge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgxKTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpOyB9XG5cbi8qIFNodXR0ZXIgSW4gVmVydGljYWwgKi9cbi5odnItc2h1dHRlci1pbi12ZXJ0aWNhbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogIzIwOThEMTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsgfVxuICAuaHZyLXNodXR0ZXItaW4tdmVydGljYWw6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZDogI2UxZTFlMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyB9XG4gIC5odnItc2h1dHRlci1pbi12ZXJ0aWNhbDpob3ZlciwgLmh2ci1zaHV0dGVyLWluLXZlcnRpY2FsOmZvY3VzLCAuaHZyLXNodXR0ZXItaW4tdmVydGljYWw6YWN0aXZlIHtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAuaHZyLXNodXR0ZXItaW4tdmVydGljYWw6aG92ZXI6YmVmb3JlLCAuaHZyLXNodXR0ZXItaW4tdmVydGljYWw6Zm9jdXM6YmVmb3JlLCAuaHZyLXNodXR0ZXItaW4tdmVydGljYWw6YWN0aXZlOmJlZm9yZSB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDApO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7IH1cblxuLyogU2h1dHRlciBPdXQgVmVydGljYWwgKi9cbi5odnItc2h1dHRlci1vdXQtdmVydGljYWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICNlMWUxZTE7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7IH1cbiAgLmh2ci1zaHV0dGVyLW91dC12ZXJ0aWNhbDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kOiAjMjA5OEQxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgLmh2ci1zaHV0dGVyLW91dC12ZXJ0aWNhbDpob3ZlciwgLmh2ci1zaHV0dGVyLW91dC12ZXJ0aWNhbDpmb2N1cywgLmh2ci1zaHV0dGVyLW91dC12ZXJ0aWNhbDphY3RpdmUge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5odnItc2h1dHRlci1vdXQtdmVydGljYWw6aG92ZXI6YmVmb3JlLCAuaHZyLXNodXR0ZXItb3V0LXZlcnRpY2FsOmZvY3VzOmJlZm9yZSwgLmh2ci1zaHV0dGVyLW91dC12ZXJ0aWNhbDphY3RpdmU6YmVmb3JlIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlWSgxKTsgfVxuXG4vKiBCT1JERVIgVFJBTlNJVElPTlMgKi9cbi8qIEJvcmRlciBGYWRlICovXG4uaHZyLWJvcmRlci1mYWRlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJveC1zaGFkb3c7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGJveC1zaGFkb3c7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDRweCAjZTFlMWUxLCAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICAvKiBIYWNrIHRvIGltcHJvdmUgYWxpYXNpbmcgb24gbW9iaWxlL3RhYmxldCBkZXZpY2VzICovIH1cbiAgLmh2ci1ib3JkZXItZmFkZTpob3ZlciwgLmh2ci1ib3JkZXItZmFkZTpmb2N1cywgLmh2ci1ib3JkZXItZmFkZTphY3RpdmUge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDRweCAjMjA5OEQxLCAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICAgIC8qIEhhY2sgdG8gaW1wcm92ZSBhbGlhc2luZyBvbiBtb2JpbGUvdGFibGV0IGRldmljZXMgKi8gfVxuXG4vKiBIb2xsb3cgKi9cbi5odnItaG9sbG93IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDRweCAjZTFlMWUxLCAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICAvKiBIYWNrIHRvIGltcHJvdmUgYWxpYXNpbmcgb24gbW9iaWxlL3RhYmxldCBkZXZpY2VzICovIH1cbiAgLmh2ci1ob2xsb3c6aG92ZXIsIC5odnItaG9sbG93OmZvY3VzLCAuaHZyLWhvbGxvdzphY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cblxuLyogVHJpbSAqL1xuLmh2ci10cmltIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5odnItdHJpbTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXI6IHdoaXRlIHNvbGlkIDRweDtcbiAgICB0b3A6IDRweDtcbiAgICBsZWZ0OiA0cHg7XG4gICAgcmlnaHQ6IDRweDtcbiAgICBib3R0b206IDRweDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5OyB9XG4gIC5odnItdHJpbTpob3ZlcjpiZWZvcmUsIC5odnItdHJpbTpmb2N1czpiZWZvcmUsIC5odnItdHJpbTphY3RpdmU6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG5cbi8qIFJpcHBsZSBPdXQgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBodnItcmlwcGxlLW91dCB7XG4gIDEwMCUge1xuICAgIHRvcDogLTEycHg7XG4gICAgcmlnaHQ6IC0xMnB4O1xuICAgIGJvdHRvbTogLTEycHg7XG4gICAgbGVmdDogLTEycHg7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbkBrZXlmcmFtZXMgaHZyLXJpcHBsZS1vdXQge1xuICAxMDAlIHtcbiAgICB0b3A6IC0xMnB4O1xuICAgIHJpZ2h0OiAtMTJweDtcbiAgICBib3R0b206IC0xMnB4O1xuICAgIGxlZnQ6IC0xMnB4O1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4uaHZyLXJpcHBsZS1vdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmh2ci1yaXBwbGUtb3V0OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlcjogI2UxZTFlMSBzb2xpZCA2cHg7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDFzOyB9XG4gIC5odnItcmlwcGxlLW91dDpob3ZlcjpiZWZvcmUsIC5odnItcmlwcGxlLW91dDpmb2N1czpiZWZvcmUsIC5odnItcmlwcGxlLW91dDphY3RpdmU6YmVmb3JlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItcmlwcGxlLW91dDtcbiAgICBhbmltYXRpb24tbmFtZTogaHZyLXJpcHBsZS1vdXQ7IH1cblxuLyogUmlwcGxlIEluICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgaHZyLXJpcHBsZS1pbiB7XG4gIDEwMCUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuQGtleWZyYW1lcyBodnItcmlwcGxlLWluIHtcbiAgMTAwJSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG4uaHZyLXJpcHBsZS1pbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaHZyLXJpcHBsZS1pbjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXI6ICNlMWUxZTEgc29saWQgNHB4O1xuICAgIHRvcDogLTEycHg7XG4gICAgcmlnaHQ6IC0xMnB4O1xuICAgIGJvdHRvbTogLTEycHg7XG4gICAgbGVmdDogLTEycHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxczsgfVxuICAuaHZyLXJpcHBsZS1pbjpob3ZlcjpiZWZvcmUsIC5odnItcmlwcGxlLWluOmZvY3VzOmJlZm9yZSwgLmh2ci1yaXBwbGUtaW46YWN0aXZlOmJlZm9yZSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLXJpcHBsZS1pbjtcbiAgICBhbmltYXRpb24tbmFtZTogaHZyLXJpcHBsZS1pbjsgfVxuXG4vKiBPdXRsaW5lIE91dCAqL1xuLmh2ci1vdXRsaW5lLW91dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaHZyLW91dGxpbmUtb3V0OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlcjogI2UxZTFlMSBzb2xpZCA0cHg7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdG9wLCByaWdodCwgYm90dG9tLCBsZWZ0O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdDsgfVxuICAuaHZyLW91dGxpbmUtb3V0OmhvdmVyOmJlZm9yZSwgLmh2ci1vdXRsaW5lLW91dDpmb2N1czpiZWZvcmUsIC5odnItb3V0bGluZS1vdXQ6YWN0aXZlOmJlZm9yZSB7XG4gICAgdG9wOiAtOHB4O1xuICAgIHJpZ2h0OiAtOHB4O1xuICAgIGJvdHRvbTogLThweDtcbiAgICBsZWZ0OiAtOHB4OyB9XG5cbi8qIE91dGxpbmUgSW4gKi9cbi5odnItb3V0bGluZS1pbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaHZyLW91dGxpbmUtaW46YmVmb3JlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm9yZGVyOiAjZTFlMWUxIHNvbGlkIDRweDtcbiAgICB0b3A6IC0xNnB4O1xuICAgIHJpZ2h0OiAtMTZweDtcbiAgICBib3R0b206IC0xNnB4O1xuICAgIGxlZnQ6IC0xNnB4O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdG9wLCByaWdodCwgYm90dG9tLCBsZWZ0OyB9XG4gIC5odnItb3V0bGluZS1pbjpob3ZlcjpiZWZvcmUsIC5odnItb3V0bGluZS1pbjpmb2N1czpiZWZvcmUsIC5odnItb3V0bGluZS1pbjphY3RpdmU6YmVmb3JlIHtcbiAgICB0b3A6IC04cHg7XG4gICAgcmlnaHQ6IC04cHg7XG4gICAgYm90dG9tOiAtOHB4O1xuICAgIGxlZnQ6IC04cHg7XG4gICAgb3BhY2l0eTogMTsgfVxuXG4vKiBSb3VuZCBDb3JuZXJzICovXG4uaHZyLXJvdW5kLWNvcm5lcnMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm9yZGVyLXJhZGl1cztcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm9yZGVyLXJhZGl1czsgfVxuICAuaHZyLXJvdW5kLWNvcm5lcnM6aG92ZXIsIC5odnItcm91bmQtY29ybmVyczpmb2N1cywgLmh2ci1yb3VuZC1jb3JuZXJzOmFjdGl2ZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMWVtOyB9XG5cbi8qIFVuZGVybGluZSBGcm9tIExlZnQgKi9cbi5odnItdW5kZXJsaW5lLWZyb20tbGVmdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuaHZyLXVuZGVybGluZS1mcm9tLWxlZnQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kOiAjMjA5OEQxO1xuICAgIGhlaWdodDogNHB4O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogcmlnaHQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogcmlnaHQ7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyB9XG4gIC5odnItdW5kZXJsaW5lLWZyb20tbGVmdDpob3ZlcjpiZWZvcmUsIC5odnItdW5kZXJsaW5lLWZyb20tbGVmdDpmb2N1czpiZWZvcmUsIC5odnItdW5kZXJsaW5lLWZyb20tbGVmdDphY3RpdmU6YmVmb3JlIHtcbiAgICByaWdodDogMDsgfVxuXG4vKiBVbmRlcmxpbmUgRnJvbSBDZW50ZXIgKi9cbi5odnItdW5kZXJsaW5lLWZyb20tY2VudGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5odnItdW5kZXJsaW5lLWZyb20tY2VudGVyOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgbGVmdDogNTAlO1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQ6ICMyMDk4RDE7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBsZWZ0LCByaWdodDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBsZWZ0LCByaWdodDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgLmh2ci11bmRlcmxpbmUtZnJvbS1jZW50ZXI6aG92ZXI6YmVmb3JlLCAuaHZyLXVuZGVybGluZS1mcm9tLWNlbnRlcjpmb2N1czpiZWZvcmUsIC5odnItdW5kZXJsaW5lLWZyb20tY2VudGVyOmFjdGl2ZTpiZWZvcmUge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7IH1cblxuLyogVW5kZXJsaW5lIEZyb20gUmlnaHQgKi9cbi5odnItdW5kZXJsaW5lLWZyb20tcmlnaHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmh2ci11bmRlcmxpbmUtZnJvbS1yaWdodDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQ6ICMyMDk4RDE7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBsZWZ0O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGxlZnQ7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyB9XG4gIC5odnItdW5kZXJsaW5lLWZyb20tcmlnaHQ6aG92ZXI6YmVmb3JlLCAuaHZyLXVuZGVybGluZS1mcm9tLXJpZ2h0OmZvY3VzOmJlZm9yZSwgLmh2ci11bmRlcmxpbmUtZnJvbS1yaWdodDphY3RpdmU6YmVmb3JlIHtcbiAgICBsZWZ0OiAwOyB9XG5cbi8qIE92ZXJsaW5lIEZyb20gTGVmdCAqL1xuLmh2ci1vdmVybGluZS1mcm9tLWxlZnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmh2ci1vdmVybGluZS1mcm9tLWxlZnQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBiYWNrZ3JvdW5kOiAjMjA5OEQxO1xuICAgIGhlaWdodDogNHB4O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogcmlnaHQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogcmlnaHQ7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyB9XG4gIC5odnItb3ZlcmxpbmUtZnJvbS1sZWZ0OmhvdmVyOmJlZm9yZSwgLmh2ci1vdmVybGluZS1mcm9tLWxlZnQ6Zm9jdXM6YmVmb3JlLCAuaHZyLW92ZXJsaW5lLWZyb20tbGVmdDphY3RpdmU6YmVmb3JlIHtcbiAgICByaWdodDogMDsgfVxuXG4vKiBPdmVybGluZSBGcm9tIENlbnRlciAqL1xuLmh2ci1vdmVybGluZS1mcm9tLWNlbnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuaHZyLW92ZXJsaW5lLWZyb20tY2VudGVyOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgbGVmdDogNTAlO1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgdG9wOiAwO1xuICAgIGJhY2tncm91bmQ6ICMyMDk4RDE7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBsZWZ0LCByaWdodDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBsZWZ0LCByaWdodDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgLmh2ci1vdmVybGluZS1mcm9tLWNlbnRlcjpob3ZlcjpiZWZvcmUsIC5odnItb3ZlcmxpbmUtZnJvbS1jZW50ZXI6Zm9jdXM6YmVmb3JlLCAuaHZyLW92ZXJsaW5lLWZyb20tY2VudGVyOmFjdGl2ZTpiZWZvcmUge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7IH1cblxuLyogT3ZlcmxpbmUgRnJvbSBSaWdodCAqL1xuLmh2ci1vdmVybGluZS1mcm9tLXJpZ2h0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5odnItb3ZlcmxpbmUtZnJvbS1yaWdodDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJhY2tncm91bmQ6ICMyMDk4RDE7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBsZWZ0O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGxlZnQ7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyB9XG4gIC5odnItb3ZlcmxpbmUtZnJvbS1yaWdodDpob3ZlcjpiZWZvcmUsIC5odnItb3ZlcmxpbmUtZnJvbS1yaWdodDpmb2N1czpiZWZvcmUsIC5odnItb3ZlcmxpbmUtZnJvbS1yaWdodDphY3RpdmU6YmVmb3JlIHtcbiAgICBsZWZ0OiAwOyB9XG5cbi8qIFJldmVhbCAqL1xuLmh2ci1yZXZlYWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmh2ci1yZXZlYWw6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjMjA5OEQxO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm9yZGVyLXdpZHRoO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJvcmRlci13aWR0aDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgLmh2ci1yZXZlYWw6aG92ZXI6YmVmb3JlLCAuaHZyLXJldmVhbDpmb2N1czpiZWZvcmUsIC5odnItcmV2ZWFsOmFjdGl2ZTpiZWZvcmUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBib3JkZXItd2lkdGg6IDRweDsgfVxuXG4vKiBVbmRlcmxpbmUgUmV2ZWFsICovXG4uaHZyLXVuZGVybGluZS1yZXZlYWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmh2ci11bmRlcmxpbmUtcmV2ZWFsOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZDogIzIwOThEMTtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgLmh2ci11bmRlcmxpbmUtcmV2ZWFsOmhvdmVyOmJlZm9yZSwgLmh2ci11bmRlcmxpbmUtcmV2ZWFsOmZvY3VzOmJlZm9yZSwgLmh2ci11bmRlcmxpbmUtcmV2ZWFsOmFjdGl2ZTpiZWZvcmUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuXG4vKiBPdmVybGluZSBSZXZlYWwgKi9cbi5odnItb3ZlcmxpbmUtcmV2ZWFsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5odnItb3ZlcmxpbmUtcmV2ZWFsOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgYmFja2dyb3VuZDogIzIwOThEMTtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTRweCk7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuICAuaHZyLW92ZXJsaW5lLXJldmVhbDpob3ZlcjpiZWZvcmUsIC5odnItb3ZlcmxpbmUtcmV2ZWFsOmZvY3VzOmJlZm9yZSwgLmh2ci1vdmVybGluZS1yZXZlYWw6YWN0aXZlOmJlZm9yZSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG5cbi8qIFNIQURPVy9HTE9XIFRSQU5TSVRJT05TICovXG4vKiBHbG93ICovXG4uaHZyLWdsb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm94LXNoYWRvdztcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm94LXNoYWRvdzsgfVxuICAuaHZyLWdsb3c6aG92ZXIsIC5odnItZ2xvdzpmb2N1cywgLmh2ci1nbG93OmFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDhweCByZ2JhKDAsIDAsIDAsIDAuNik7IH1cblxuLyogU2hhZG93ICovXG4uaHZyLXNoYWRvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBib3gtc2hhZG93O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3gtc2hhZG93OyB9XG4gIC5odnItc2hhZG93OmhvdmVyLCAuaHZyLXNoYWRvdzpmb2N1cywgLmh2ci1zaGFkb3c6YWN0aXZlIHtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMTBweCAtMTBweCByZ2JhKDAsIDAsIDAsIDAuNSk7IH1cblxuLyogR3JvdyBTaGFkb3cgKi9cbi5odnItZ3Jvdy1zaGFkb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm94LXNoYWRvdywgdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3gtc2hhZG93LCB0cmFuc2Zvcm07IH1cbiAgLmh2ci1ncm93LXNoYWRvdzpob3ZlciwgLmh2ci1ncm93LXNoYWRvdzpmb2N1cywgLmh2ci1ncm93LXNoYWRvdzphY3RpdmUge1xuICAgIGJveC1zaGFkb3c6IDAgMTBweCAxMHB4IC0xMHB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7IH1cblxuLyogQm94IFNoYWRvdyBPdXRzZXQgKi9cbi5odnItYm94LXNoYWRvdy1vdXRzZXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm94LXNoYWRvdztcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm94LXNoYWRvdzsgfVxuICAuaHZyLWJveC1zaGFkb3ctb3V0c2V0OmhvdmVyLCAuaHZyLWJveC1zaGFkb3ctb3V0c2V0OmZvY3VzLCAuaHZyLWJveC1zaGFkb3ctb3V0c2V0OmFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogMnB4IDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpOyB9XG5cbi8qIEJveCBTaGFkb3cgSW5zZXQgKi9cbi5odnItYm94LXNoYWRvdy1pbnNldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBib3gtc2hhZG93O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3gtc2hhZG93O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCByZ2JhKDAsIDAsIDAsIDAuNiksIDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIC8qIEhhY2sgdG8gaW1wcm92ZSBhbGlhc2luZyBvbiBtb2JpbGUvdGFibGV0IGRldmljZXMgKi8gfVxuICAuaHZyLWJveC1zaGFkb3ctaW5zZXQ6aG92ZXIsIC5odnItYm94LXNoYWRvdy1pbnNldDpmb2N1cywgLmh2ci1ib3gtc2hhZG93LWluc2V0OmFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMnB4IDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpLCAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICAgIC8qIEhhY2sgdG8gaW1wcm92ZSBhbGlhc2luZyBvbiBtb2JpbGUvdGFibGV0IGRldmljZXMgKi8gfVxuXG4vKiBGbG9hdCBTaGFkb3cgKi9cbi5odnItZmxvYXQtc2hhZG93IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07IH1cbiAgLmh2ci1mbG9hdC1zaGFkb3c6YmVmb3JlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgY29udGVudDogJyc7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDUlO1xuICAgIGhlaWdodDogMTBweDtcbiAgICB3aWR0aDogOTAlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2VudGVyLCBlbGxpcHNlLCByZ2JhKDAsIDAsIDAsIDAuMzUpIDAlLCB0cmFuc3BhcmVudCA4MCUpO1xuICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IGNlbnRlciwgcmdiYSgwLCAwLCAwLCAwLjM1KSAwJSwgdHJhbnNwYXJlbnQgODAlKTtcbiAgICAvKiBXM0MgKi9cbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7IH1cbiAgLmh2ci1mbG9hdC1zaGFkb3c6aG92ZXIsIC5odnItZmxvYXQtc2hhZG93OmZvY3VzLCAuaHZyLWZsb2F0LXNoYWRvdzphY3RpdmUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgICAvKiBtb3ZlIHRoZSBlbGVtZW50IHVwIGJ5IDVweCAqLyB9XG4gICAgLmh2ci1mbG9hdC1zaGFkb3c6aG92ZXI6YmVmb3JlLCAuaHZyLWZsb2F0LXNoYWRvdzpmb2N1czpiZWZvcmUsIC5odnItZmxvYXQtc2hhZG93OmFjdGl2ZTpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDVweCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNXB4KTtcbiAgICAgIC8qIG1vdmUgdGhlIGVsZW1lbnQgZG93biBieSA1cHggKGl0IHdpbGwgc3RheSBpbiBwbGFjZSBiZWNhdXNlIGl0J3MgYXR0YWNoZWQgdG8gdGhlIGVsZW1lbnQgdGhhdCBhbHNvIG1vdmVzIHVwIDVweCkgKi8gfVxuXG4vKiBTaGFkb3cgUmFkaWFsICovXG4uaHZyLXNoYWRvdy1yYWRpYWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmh2ci1zaGFkb3ctcmFkaWFsOmJlZm9yZSwgLmh2ci1zaGFkb3ctcmFkaWFsOmFmdGVyIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogJyc7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgaGVpZ2h0OiA1cHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTsgfVxuICAuaHZyLXNoYWRvdy1yYWRpYWw6YmVmb3JlIHtcbiAgICBib3R0b206IDEwMCU7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoNTAlIDE1MCUsIGVsbGlwc2UsIHJnYmEoMCwgMCwgMCwgMC42KSAwJSwgdHJhbnNwYXJlbnQgODAlKTtcbiAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSBhdCA1MCUgMTUwJSwgcmdiYSgwLCAwLCAwLCAwLjYpIDAlLCB0cmFuc3BhcmVudCA4MCUpOyB9XG4gIC5odnItc2hhZG93LXJhZGlhbDphZnRlciB7XG4gICAgdG9wOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KDUwJSAtNTAlLCBlbGxpcHNlLCByZ2JhKDAsIDAsIDAsIDAuNikgMCUsIHRyYW5zcGFyZW50IDgwJSk7XG4gICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgYXQgNTAlIC01MCUsIHJnYmEoMCwgMCwgMCwgMC42KSAwJSwgdHJhbnNwYXJlbnQgODAlKTsgfVxuICAuaHZyLXNoYWRvdy1yYWRpYWw6aG92ZXI6YmVmb3JlLCAuaHZyLXNoYWRvdy1yYWRpYWw6Zm9jdXM6YmVmb3JlLCAuaHZyLXNoYWRvdy1yYWRpYWw6YWN0aXZlOmJlZm9yZSwgLmh2ci1zaGFkb3ctcmFkaWFsOmhvdmVyOmFmdGVyLCAuaHZyLXNoYWRvdy1yYWRpYWw6Zm9jdXM6YWZ0ZXIsIC5odnItc2hhZG93LXJhZGlhbDphY3RpdmU6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDE7IH1cblxuLyogU1BFRUNIIEJVQkJMRVMgKi9cbi8qIEJ1YmJsZSBUb3AgKi9cbi5odnItYnViYmxlLXRvcCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaHZyLWJ1YmJsZS10b3A6YmVmb3JlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgbGVmdDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICB0b3A6IDA7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDEwcHggMTBweCAxMHB4O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2UxZTFlMSB0cmFuc3BhcmVudDsgfVxuICAuaHZyLWJ1YmJsZS10b3A6aG92ZXI6YmVmb3JlLCAuaHZyLWJ1YmJsZS10b3A6Zm9jdXM6YmVmb3JlLCAuaHZyLWJ1YmJsZS10b3A6YWN0aXZlOmJlZm9yZSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7IH1cblxuLyogQnViYmxlIFJpZ2h0ICovXG4uaHZyLWJ1YmJsZS1yaWdodCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaHZyLWJ1YmJsZS1yaWdodDpiZWZvcmUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0b3A6IGNhbGMoNTAlIC0gMTBweCk7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXdpZHRoOiAxMHB4IDAgMTBweCAxMHB4O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2UxZTFlMTsgfVxuICAuaHZyLWJ1YmJsZS1yaWdodDpob3ZlcjpiZWZvcmUsIC5odnItYnViYmxlLXJpZ2h0OmZvY3VzOmJlZm9yZSwgLmh2ci1idWJibGUtcmlnaHQ6YWN0aXZlOmJlZm9yZSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpOyB9XG5cbi8qIEJ1YmJsZSBCb3R0b20gKi9cbi5odnItYnViYmxlLWJvdHRvbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaHZyLWJ1YmJsZS1ib3R0b206YmVmb3JlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgbGVmdDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICBib3R0b206IDA7XG4gICAgYm9yZGVyLXdpZHRoOiAxMHB4IDEwcHggMCAxMHB4O1xuICAgIGJvcmRlci1jb2xvcjogI2UxZTFlMSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfVxuICAuaHZyLWJ1YmJsZS1ib3R0b206aG92ZXI6YmVmb3JlLCAuaHZyLWJ1YmJsZS1ib3R0b206Zm9jdXM6YmVmb3JlLCAuaHZyLWJ1YmJsZS1ib3R0b206YWN0aXZlOmJlZm9yZSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpOyB9XG5cbi8qIEJ1YmJsZSBMZWZ0ICovXG4uaHZyLWJ1YmJsZS1sZWZ0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5odnItYnViYmxlLWxlZnQ6YmVmb3JlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdG9wOiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgIGxlZnQ6IDA7XG4gICAgYm9yZGVyLXdpZHRoOiAxMHB4IDEwcHggMTBweCAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2UxZTFlMSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfVxuICAuaHZyLWJ1YmJsZS1sZWZ0OmhvdmVyOmJlZm9yZSwgLmh2ci1idWJibGUtbGVmdDpmb2N1czpiZWZvcmUsIC5odnItYnViYmxlLWxlZnQ6YWN0aXZlOmJlZm9yZSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7IH1cblxuLyogQnViYmxlIEZsb2F0IFRvcCAqL1xuLmh2ci1idWJibGUtZmxvYXQtdG9wIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07IH1cbiAgLmh2ci1idWJibGUtZmxvYXQtdG9wOmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGxlZnQ6IGNhbGMoNTAlIC0gMTBweCk7XG4gICAgdG9wOiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDEwcHggMTBweCAxMHB4O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2UxZTFlMSB0cmFuc3BhcmVudDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07IH1cbiAgLmh2ci1idWJibGUtZmxvYXQtdG9wOmhvdmVyLCAuaHZyLWJ1YmJsZS1mbG9hdC10b3A6Zm9jdXMsIC5odnItYnViYmxlLWZsb2F0LXRvcDphY3RpdmUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTsgfVxuICAgIC5odnItYnViYmxlLWZsb2F0LXRvcDpob3ZlcjpiZWZvcmUsIC5odnItYnViYmxlLWZsb2F0LXRvcDpmb2N1czpiZWZvcmUsIC5odnItYnViYmxlLWZsb2F0LXRvcDphY3RpdmU6YmVmb3JlIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7IH1cblxuLyogQnViYmxlIEZsb2F0IFJpZ2h0ICovXG4uaHZyLWJ1YmJsZS1mbG9hdC1yaWdodCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOyB9XG4gIC5odnItYnViYmxlLWZsb2F0LXJpZ2h0OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHRvcDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICByaWdodDogMDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMTBweCAwIDEwcHggMTBweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNlMWUxZTE7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOyB9XG4gIC5odnItYnViYmxlLWZsb2F0LXJpZ2h0OmhvdmVyLCAuaHZyLWJ1YmJsZS1mbG9hdC1yaWdodDpmb2N1cywgLmh2ci1idWJibGUtZmxvYXQtcmlnaHQ6YWN0aXZlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTsgfVxuICAgIC5odnItYnViYmxlLWZsb2F0LXJpZ2h0OmhvdmVyOmJlZm9yZSwgLmh2ci1idWJibGUtZmxvYXQtcmlnaHQ6Zm9jdXM6YmVmb3JlLCAuaHZyLWJ1YmJsZS1mbG9hdC1yaWdodDphY3RpdmU6YmVmb3JlIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpOyB9XG5cbi8qIEJ1YmJsZSBGbG9hdCBCb3R0b20gKi9cbi5odnItYnViYmxlLWZsb2F0LWJvdHRvbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOyB9XG4gIC5odnItYnViYmxlLWZsb2F0LWJvdHRvbTpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBjb250ZW50OiAnJztcbiAgICBsZWZ0OiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgIGJvdHRvbTogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMTBweCAxMHB4IDAgMTBweDtcbiAgICBib3JkZXItY29sb3I6ICNlMWUxZTEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOyB9XG4gIC5odnItYnViYmxlLWZsb2F0LWJvdHRvbTpob3ZlciwgLmh2ci1idWJibGUtZmxvYXQtYm90dG9tOmZvY3VzLCAuaHZyLWJ1YmJsZS1mbG9hdC1ib3R0b206YWN0aXZlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTsgfVxuICAgIC5odnItYnViYmxlLWZsb2F0LWJvdHRvbTpob3ZlcjpiZWZvcmUsIC5odnItYnViYmxlLWZsb2F0LWJvdHRvbTpmb2N1czpiZWZvcmUsIC5odnItYnViYmxlLWZsb2F0LWJvdHRvbTphY3RpdmU6YmVmb3JlIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpOyB9XG5cbi8qIEJ1YmJsZSBGbG9hdCBMZWZ0ICovXG4uaHZyLWJ1YmJsZS1mbG9hdC1sZWZ0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07IH1cbiAgLmh2ci1idWJibGUtZmxvYXQtbGVmdDpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBjb250ZW50OiAnJztcbiAgICB0b3A6IGNhbGMoNTAlIC0gMTBweCk7XG4gICAgbGVmdDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMTBweCAxMHB4IDEwcHggMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICNlMWUxZTEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOyB9XG4gIC5odnItYnViYmxlLWZsb2F0LWxlZnQ6aG92ZXIsIC5odnItYnViYmxlLWZsb2F0LWxlZnQ6Zm9jdXMsIC5odnItYnViYmxlLWZsb2F0LWxlZnQ6YWN0aXZlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7IH1cbiAgICAuaHZyLWJ1YmJsZS1mbG9hdC1sZWZ0OmhvdmVyOmJlZm9yZSwgLmh2ci1idWJibGUtZmxvYXQtbGVmdDpmb2N1czpiZWZvcmUsIC5odnItYnViYmxlLWZsb2F0LWxlZnQ6YWN0aXZlOmJlZm9yZSB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpOyB9XG5cbi8qIElDT05TICovXG4vKiBJY29uIEJhY2sgKi9cbi5odnItaWNvbi1iYWNrIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDIuMmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7IH1cbiAgLmh2ci1pY29uLWJhY2s6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjEzN1wiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAxZW07XG4gICAgcGFkZGluZzogMCAxcHg7XG4gICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyB9XG4gIC5odnItaWNvbi1iYWNrOmhvdmVyOmJlZm9yZSwgLmh2ci1pY29uLWJhY2s6Zm9jdXM6YmVmb3JlLCAuaHZyLWljb24tYmFjazphY3RpdmU6YmVmb3JlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTRweCk7IH1cblxuLyogSWNvbiBGb3J3YXJkICovXG4uaHZyLWljb24tZm9yd2FyZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1yaWdodDogMi4yZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xczsgfVxuICAuaHZyLWljb24tZm9yd2FyZDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMTM4XCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxZW07XG4gICAgcGFkZGluZzogMCAxcHg7XG4gICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyB9XG4gIC5odnItaWNvbi1mb3J3YXJkOmhvdmVyOmJlZm9yZSwgLmh2ci1pY29uLWZvcndhcmQ6Zm9jdXM6YmVmb3JlLCAuaHZyLWljb24tZm9yd2FyZDphY3RpdmU6YmVmb3JlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpOyB9XG5cbi8qIEljb24gRG93biAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1pY29uLWRvd24ge1xuICAwJSxcbiAgNTAlLFxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cbiAgMjUlLFxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGh2ci1pY29uLWRvd24ge1xuICAwJSxcbiAgNTAlLFxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cbiAgMjUlLFxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7IH0gfVxuXG4vKiBJY29uIERvd24gKi9cbi5odnItaWNvbi1kb3duIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTsgfVxuICAuaHZyLWljb24tZG93bjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDFhXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxZW07XG4gICAgcGFkZGluZzogMCAxcHg7XG4gICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsgfVxuICAuaHZyLWljb24tZG93bjpob3ZlcjpiZWZvcmUsIC5odnItaWNvbi1kb3duOmZvY3VzOmJlZm9yZSwgLmh2ci1pY29uLWRvd246YWN0aXZlOmJlZm9yZSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWljb24tZG93bjtcbiAgICBhbmltYXRpb24tbmFtZTogaHZyLWljb24tZG93bjtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1cztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyB9XG5cbi8qIEljb24gVXAgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi11cCB7XG4gIDAlLFxuICA1MCUsXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuICAyNSUsXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOyB9IH1cblxuQGtleWZyYW1lcyBodnItaWNvbi11cCB7XG4gIDAlLFxuICA1MCUsXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuICAyNSUsXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOyB9IH1cblxuLyogSWNvbiBVcCAqL1xuLmh2ci1pY29uLXVwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTsgfVxuICAuaHZyLWljb24tdXA6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjAxYlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMWVtO1xuICAgIHBhZGRpbmc6IDAgMXB4O1xuICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7IH1cbiAgLmh2ci1pY29uLXVwOmhvdmVyOmJlZm9yZSwgLmh2ci1pY29uLXVwOmZvY3VzOmJlZm9yZSwgLmh2ci1pY29uLXVwOmFjdGl2ZTpiZWZvcmUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXVwO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi11cDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjc1cztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyB9XG5cbi8qIEljb24gU3BpbiAqL1xuLmh2ci1pY29uLXNwaW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDIuMmVtOyB9XG4gIC5odnItaWNvbi1zcGluOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwMjFcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDFlbTtcbiAgICBwYWRkaW5nOiAwIDFweDtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAxcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OyB9XG4gIC5odnItaWNvbi1zcGluOmhvdmVyOmJlZm9yZSwgLmh2ci1pY29uLXNwaW46Zm9jdXM6YmVmb3JlLCAuaHZyLWljb24tc3BpbjphY3RpdmU6YmVmb3JlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxuXG4vKiBJY29uIERyb3AgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi1kcm9wIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9XG4gIDUxJSxcbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkBrZXlmcmFtZXMgaHZyLWljb24tZHJvcCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTsgfVxuICA1MSUsXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG4vKiBJY29uIERyb3AgKi9cbi5odnItaWNvbi1kcm9wIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTsgfVxuICAuaHZyLWljb24tZHJvcDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDQxXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxZW07XG4gICAgb3BhY2l0eTogMTtcbiAgICBwYWRkaW5nOiAwIDFweDtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOyB9XG4gIC5odnItaWNvbi1kcm9wOmhvdmVyOmJlZm9yZSwgLmh2ci1pY29uLWRyb3A6Zm9jdXM6YmVmb3JlLCAuaHZyLWljb24tZHJvcDphY3RpdmU6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLWRyb3A7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLWRyb3A7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuNXM7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4zcztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41MiwgMS42NCwgMC4zNywgMC42Nik7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTIsIDEuNjQsIDAuMzcsIDAuNjYpOyB9XG5cbi8qIEljb24gRmFkZSAqL1xuLmh2ci1pY29uLWZhZGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDIuMmVtOyB9XG4gIC5odnItaWNvbi1mYWRlOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwMGNcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDFlbTtcbiAgICBwYWRkaW5nOiAwIDFweDtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41cztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogY29sb3I7IH1cbiAgLmh2ci1pY29uLWZhZGU6aG92ZXI6YmVmb3JlLCAuaHZyLWljb24tZmFkZTpmb2N1czpiZWZvcmUsIC5odnItaWNvbi1mYWRlOmFjdGl2ZTpiZWZvcmUge1xuICAgIGNvbG9yOiAjMEY5RTVFOyB9XG5cbi8qIEljb24gRmxvYXQgQXdheSAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1pY29uLWZsb2F0LWF3YXkge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xZW0pO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMWVtKTsgfSB9XG5cbkBrZXlmcmFtZXMgaHZyLWljb24tZmxvYXQtYXdheSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFlbSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xZW0pOyB9IH1cblxuLyogSWNvbiBGbG9hdCBBd2F5ICovXG4uaHZyLWljb24tZmxvYXQtYXdheSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1yaWdodDogMi4yZW07IH1cbiAgLmh2ci1pY29uLWZsb2F0LWF3YXk6YmVmb3JlLCAuaHZyLWljb24tZmxvYXQtYXdheTphZnRlciB7XG4gICAgY29udGVudDogXCJcXGYwNTVcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDFlbTtcbiAgICBwYWRkaW5nOiAwIDFweDtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7IH1cbiAgLmh2ci1pY29uLWZsb2F0LWF3YXk6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuNXM7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7IH1cbiAgLmh2ci1pY29uLWZsb2F0LWF3YXk6aG92ZXI6YWZ0ZXIsIC5odnItaWNvbi1mbG9hdC1hd2F5OmZvY3VzOmFmdGVyLCAuaHZyLWljb24tZmxvYXQtYXdheTphY3RpdmU6YWZ0ZXIge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLWZsb2F0LWF3YXk7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLWZsb2F0LWF3YXk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuXG4vKiBJY29uIFNpbmsgQXdheSAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1pY29uLXNpbmstYXdheSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMWVtKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMWVtKTsgfSB9XG5cbkBrZXlmcmFtZXMgaHZyLWljb24tc2luay1hd2F5IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxZW0pO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxZW0pOyB9IH1cblxuLyogSWNvbiBTaW5rIEF3YXkgKi9cbi5odnItaWNvbi1zaW5rLWF3YXkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDIuMmVtOyB9XG4gIC5odnItaWNvbi1zaW5rLWF3YXk6YmVmb3JlLCAuaHZyLWljb24tc2luay1hd2F5OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcZjA1NlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMWVtO1xuICAgIHBhZGRpbmc6IDAgMXB4O1xuICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7IH1cbiAgLmh2ci1pY29uLXNpbmstYXdheTphZnRlciB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC41cztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuNXM7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsgfVxuICAuaHZyLWljb24tc2luay1hd2F5OmhvdmVyOmFmdGVyLCAuaHZyLWljb24tc2luay1hd2F5OmZvY3VzOmFmdGVyLCAuaHZyLWljb24tc2luay1hd2F5OmFjdGl2ZTphZnRlciB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWljb24tc2luay1hd2F5O1xuICAgIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1zaW5rLWF3YXk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuXG4vKiBJY29uIEdyb3cgKi9cbi5odnItaWNvbi1ncm93IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOyB9XG4gIC5odnItaWNvbi1ncm93OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYxMThcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDFlbTtcbiAgICBwYWRkaW5nOiAwIDFweDtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgLmh2ci1pY29uLWdyb3c6aG92ZXI6YmVmb3JlLCAuaHZyLWljb24tZ3Jvdzpmb2N1czpiZWZvcmUsIC5odnItaWNvbi1ncm93OmFjdGl2ZTpiZWZvcmUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjMpIHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpIHRyYW5zbGF0ZVooMCk7IH1cblxuLyogSWNvbiBTaHJpbmsgKi9cbi5odnItaWNvbi1zaHJpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDIuMmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7IH1cbiAgLmh2ci1pY29uLXNocmluazpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMTE5XCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxZW07XG4gICAgcGFkZGluZzogMCAxcHg7XG4gICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyB9XG4gIC5odnItaWNvbi1zaHJpbms6aG92ZXI6YmVmb3JlLCAuaHZyLWljb24tc2hyaW5rOmZvY3VzOmJlZm9yZSwgLmh2ci1pY29uLXNocmluazphY3RpdmU6YmVmb3JlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC44KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7IH1cblxuLyogSWNvbiBQdWxzZSAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1pY29uLXB1bHNlIHtcbiAgMjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4zKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMyk7IH1cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC44KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGh2ci1pY29uLXB1bHNlIHtcbiAgMjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4zKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMyk7IH1cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC44KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7IH0gfVxuXG4uaHZyLWljb24tcHVsc2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDIuMmVtOyB9XG4gIC5odnItaWNvbi1wdWxzZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDE1XCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxZW07XG4gICAgcGFkZGluZzogMCAxcHg7XG4gICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgLmh2ci1pY29uLXB1bHNlOmhvdmVyOmJlZm9yZSwgLmh2ci1pY29uLXB1bHNlOmZvY3VzOmJlZm9yZSwgLmh2ci1pY29uLXB1bHNlOmFjdGl2ZTpiZWZvcmUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXB1bHNlO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1wdWxzZTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsgfVxuXG4vKiBJY29uIFB1bHNlIEdyb3cgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi1wdWxzZS1ncm93IHtcbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4zKTsgfSB9XG5cbkBrZXlmcmFtZXMgaHZyLWljb24tcHVsc2UtZ3JvdyB7XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4zKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMyk7IH0gfVxuXG4uaHZyLWljb24tcHVsc2UtZ3JvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1yaWdodDogMi4yZW07IH1cbiAgLmh2ci1pY29uLXB1bHNlLWdyb3c6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjAxNVwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMWVtO1xuICAgIHBhZGRpbmc6IDAgMXB4O1xuICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyB9XG4gIC5odnItaWNvbi1wdWxzZS1ncm93OmhvdmVyOmJlZm9yZSwgLmh2ci1pY29uLXB1bHNlLWdyb3c6Zm9jdXM6YmVmb3JlLCAuaHZyLWljb24tcHVsc2UtZ3JvdzphY3RpdmU6YmVmb3JlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1wdWxzZS1ncm93O1xuICAgIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1wdWxzZS1ncm93O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246IGFsdGVybmF0ZTtcbiAgICBhbmltYXRpb24tZGlyZWN0aW9uOiBhbHRlcm5hdGU7IH1cblxuLyogSWNvbiBQdWxzZSBTaHJpbmsgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi1wdWxzZS1zaHJpbmsge1xuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpOyB9IH1cblxuQGtleWZyYW1lcyBodnItaWNvbi1wdWxzZS1zaHJpbmsge1xuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpOyB9IH1cblxuLmh2ci1pY29uLXB1bHNlLXNocmluayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1yaWdodDogMi4yZW07IH1cbiAgLmh2ci1pY29uLXB1bHNlLXNocmluazpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDE1XCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxZW07XG4gICAgcGFkZGluZzogMCAxcHg7XG4gICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgLmh2ci1pY29uLXB1bHNlLXNocmluazpob3ZlcjpiZWZvcmUsIC5odnItaWNvbi1wdWxzZS1zaHJpbms6Zm9jdXM6YmVmb3JlLCAuaHZyLWljb24tcHVsc2Utc2hyaW5rOmFjdGl2ZTpiZWZvcmUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXB1bHNlLXNocmluaztcbiAgICBhbmltYXRpb24tbmFtZTogaHZyLWljb24tcHVsc2Utc2hyaW5rO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246IGFsdGVybmF0ZTtcbiAgICBhbmltYXRpb24tZGlyZWN0aW9uOiBhbHRlcm5hdGU7IH1cblxuLyogSWNvbiBQdXNoICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWljb24tcHVzaCB7XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpOyB9IH1cblxuQGtleWZyYW1lcyBodnItaWNvbi1wdXNoIHtcbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7IH0gfVxuXG4uaHZyLWljb24tcHVzaCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1yaWdodDogMi4yZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsgfVxuICAuaHZyLWljb24tcHVzaDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDA2XCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxZW07XG4gICAgcGFkZGluZzogMCAxcHg7XG4gICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyB9XG4gIC5odnItaWNvbi1wdXNoOmhvdmVyOmJlZm9yZSwgLmh2ci1pY29uLXB1c2g6Zm9jdXM6YmVmb3JlLCAuaHZyLWljb24tcHVzaDphY3RpdmU6YmVmb3JlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1wdXNoO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1wdXNoO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7IH1cblxuLyogSWNvbiBQb3AgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi1wb3Age1xuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KTsgfSB9XG5cbkBrZXlmcmFtZXMgaHZyLWljb24tcG9wIHtcbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH0gfVxuXG4uaHZyLWljb24tcG9wIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOyB9XG4gIC5odnItaWNvbi1wb3A6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjAwNVwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMWVtO1xuICAgIHBhZGRpbmc6IDAgMXB4O1xuICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuICAuaHZyLWljb24tcG9wOmhvdmVyOmJlZm9yZSwgLmh2ci1pY29uLXBvcDpmb2N1czpiZWZvcmUsIC5odnItaWNvbi1wb3A6YWN0aXZlOmJlZm9yZSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWljb24tcG9wO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1wb3A7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTsgfVxuXG4vKiBJY29uIEJvdW5jZSAqL1xuLmh2ci1pY29uLWJvdW5jZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1yaWdodDogMi4yZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsgfVxuICAuaHZyLWljb24tYm91bmNlOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwODdcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDFlbTtcbiAgICBwYWRkaW5nOiAwIDFweDtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgLmh2ci1pY29uLWJvdW5jZTpob3ZlcjpiZWZvcmUsIC5odnItaWNvbi1ib3VuY2U6Zm9jdXM6YmVmb3JlLCAuaHZyLWljb24tYm91bmNlOmFjdGl2ZTpiZWZvcmUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NywgMi4wMiwgMC4zMSwgLTAuMzYpO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NywgMi4wMiwgMC4zMSwgLTAuMzYpOyB9XG5cbi8qIEljb24gUm90YXRlICovXG4uaHZyLWljb24tcm90YXRlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOyB9XG4gIC5odnItaWNvbi1yb3RhdGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjBjNlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMWVtO1xuICAgIHBhZGRpbmc6IDAgMXB4O1xuICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuICAuaHZyLWljb24tcm90YXRlOmhvdmVyOmJlZm9yZSwgLmh2ci1pY29uLXJvdGF0ZTpmb2N1czpiZWZvcmUsIC5odnItaWNvbi1yb3RhdGU6YWN0aXZlOmJlZm9yZSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgyMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMjBkZWcpOyB9XG5cbi8qIEljb24gR3JvdyBSb3RhdGUgKi9cbi5odnItaWNvbi1ncm93LXJvdGF0ZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1yaWdodDogMi4yZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsgfVxuICAuaHZyLWljb24tZ3Jvdy1yb3RhdGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjA5NVwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMWVtO1xuICAgIHBhZGRpbmc6IDAgMXB4O1xuICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuICAuaHZyLWljb24tZ3Jvdy1yb3RhdGU6aG92ZXI6YmVmb3JlLCAuaHZyLWljb24tZ3Jvdy1yb3RhdGU6Zm9jdXM6YmVmb3JlLCAuaHZyLWljb24tZ3Jvdy1yb3RhdGU6YWN0aXZlOmJlZm9yZSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuNSkgcm90YXRlKDEyZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSkgcm90YXRlKDEyZGVnKTsgfVxuXG4vKiBJY29uIEZsb2F0ICovXG4uaHZyLWljb24tZmxvYXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDIuMmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7IH1cbiAgLmh2ci1pY29uLWZsb2F0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwMWJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDFlbTtcbiAgICBwYWRkaW5nOiAwIDFweDtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgLmh2ci1pY29uLWZsb2F0OmhvdmVyOmJlZm9yZSwgLmh2ci1pY29uLWZsb2F0OmZvY3VzOmJlZm9yZSwgLmh2ci1pY29uLWZsb2F0OmFjdGl2ZTpiZWZvcmUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNHB4KTsgfVxuXG4vKiBJY29uIFNpbmsgKi9cbi5odnItaWNvbi1zaW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOyB9XG4gIC5odnItaWNvbi1zaW5rOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwMWFcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDFlbTtcbiAgICBwYWRkaW5nOiAwIDFweDtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgLmh2ci1pY29uLXNpbms6aG92ZXI6YmVmb3JlLCAuaHZyLWljb24tc2luazpmb2N1czpiZWZvcmUsIC5odnItaWNvbi1zaW5rOmFjdGl2ZTpiZWZvcmUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7IH1cblxuLyogSWNvbiBCb2IgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi1ib2Ige1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOyB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTsgfSB9XG5cbkBrZXlmcmFtZXMgaHZyLWljb24tYm9iIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTsgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7IH0gfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWljb24tYm9iLWZsb2F0IHtcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02cHgpOyB9IH1cblxuQGtleWZyYW1lcyBodnItaWNvbi1ib2ItZmxvYXQge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7IH0gfVxuXG4uaHZyLWljb24tYm9iIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOyB9XG4gIC5odnItaWNvbi1ib2I6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjA3N1wiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMWVtO1xuICAgIHBhZGRpbmc6IDAgMXB4O1xuICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7IH1cbiAgLmh2ci1pY29uLWJvYjpob3ZlcjpiZWZvcmUsIC5odnItaWNvbi1ib2I6Zm9jdXM6YmVmb3JlLCAuaHZyLWljb24tYm9iOmFjdGl2ZTpiZWZvcmUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLWJvYi1mbG9hdCwgaHZyLWljb24tYm9iO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1ib2ItZmxvYXQsIGh2ci1pY29uLWJvYjtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogLjNzLCAxLjVzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogLjNzLCAxLjVzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwcywgLjNzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMHMsIC4zcztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0LCBlYXNlLWluLW91dDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCwgZWFzZS1pbi1vdXQ7XG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxLCBpbmZpbml0ZTtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxLCBpbmZpbml0ZTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsLCBhbHRlcm5hdGU7XG4gICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsLCBhbHRlcm5hdGU7IH1cblxuLyogSWNvbiBIYW5nICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWljb24taGFuZyB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpOyB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMnB4KTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpOyB9IH1cblxuQGtleWZyYW1lcyBodnItaWNvbi1oYW5nIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7IH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgycHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgycHgpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7IH0gfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgaHZyLWljb24taGFuZy1zaW5rIHtcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTsgfSB9XG5cbkBrZXlmcmFtZXMgaHZyLWljb24taGFuZy1zaW5rIHtcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTsgfSB9XG5cbi5odnItaWNvbi1oYW5nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOyB9XG4gIC5odnItaWNvbi1oYW5nOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwNzhcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDFlbTtcbiAgICBwYWRkaW5nOiAwIDFweDtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOyB9XG4gIC5odnItaWNvbi1oYW5nOmhvdmVyOmJlZm9yZSwgLmh2ci1pY29uLWhhbmc6Zm9jdXM6YmVmb3JlLCAuaHZyLWljb24taGFuZzphY3RpdmU6YmVmb3JlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1oYW5nLXNpbmssIGh2ci1pY29uLWhhbmc7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLWhhbmctc2luaywgaHZyLWljb24taGFuZztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogLjNzLCAxLjVzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogLjNzLCAxLjVzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwcywgLjNzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMHMsIC4zcztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0LCBlYXNlLWluLW91dDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCwgZWFzZS1pbi1vdXQ7XG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxLCBpbmZpbml0ZTtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxLCBpbmZpbml0ZTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsLCBhbHRlcm5hdGU7XG4gICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsLCBhbHRlcm5hdGU7IH1cblxuLyogSWNvbiBXb2JibGUgSG9yaXpvbnRhbCAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1pY29uLXdvYmJsZS1ob3Jpem9udGFsIHtcbiAgMTYuNjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg2cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg2cHgpOyB9XG4gIDMzLjMlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7IH1cbiAgNDkuOTUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpOyB9XG4gIDY2LjYlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCk7IH1cbiAgODMuMjUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcHgpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfSB9XG5cbkBrZXlmcmFtZXMgaHZyLWljb24td29iYmxlLWhvcml6b250YWwge1xuICAxNi42NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDZweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDZweCk7IH1cbiAgMzMuMyUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXB4KTsgfVxuICA0OS45NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweCk7IH1cbiAgNjYuNiUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KTsgfVxuICA4My4yNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9IH1cblxuLmh2ci1pY29uLXdvYmJsZS1ob3Jpem9udGFsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOyB9XG4gIC5odnItaWNvbi13b2JibGUtaG9yaXpvbnRhbDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDYxXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxZW07XG4gICAgcGFkZGluZzogMCAxcHg7XG4gICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsgfVxuICAuaHZyLWljb24td29iYmxlLWhvcml6b250YWw6aG92ZXI6YmVmb3JlLCAuaHZyLWljb24td29iYmxlLWhvcml6b250YWw6Zm9jdXM6YmVmb3JlLCAuaHZyLWljb24td29iYmxlLWhvcml6b250YWw6YWN0aXZlOmJlZm9yZSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaHZyLWljb24td29iYmxlLWhvcml6b250YWw7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXdvYmJsZS1ob3Jpem9udGFsO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7IH1cblxuLyogSWNvbiBXb2JibGUgVmVydGljYWwgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi13b2JibGUtdmVydGljYWwge1xuICAxNi42NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7IH1cbiAgMzMuMyUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTsgfVxuICA0OS45NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7IH1cbiAgNjYuNiUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTsgfVxuICA4My4yNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9IH1cblxuQGtleWZyYW1lcyBodnItaWNvbi13b2JibGUtdmVydGljYWwge1xuICAxNi42NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7IH1cbiAgMzMuMyUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTsgfVxuICA0OS45NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7IH1cbiAgNjYuNiUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTsgfVxuICA4My4yNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9IH1cblxuLmh2ci1pY29uLXdvYmJsZS12ZXJ0aWNhbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1yaWdodDogMi4yZW07XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zczsgfVxuICAuaHZyLWljb24td29iYmxlLXZlcnRpY2FsOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwNjJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDFlbTtcbiAgICBwYWRkaW5nOiAwIDFweDtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOyB9XG4gIC5odnItaWNvbi13b2JibGUtdmVydGljYWw6aG92ZXI6YmVmb3JlLCAuaHZyLWljb24td29iYmxlLXZlcnRpY2FsOmZvY3VzOmJlZm9yZSwgLmh2ci1pY29uLXdvYmJsZS12ZXJ0aWNhbDphY3RpdmU6YmVmb3JlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi13b2JibGUtdmVydGljYWw7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXdvYmJsZS12ZXJ0aWNhbDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOyB9XG5cbi8qIEljb24gQnV6eiAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIGh2ci1pY29uLWJ1enoge1xuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOyB9IH1cblxuQGtleWZyYW1lcyBodnItaWNvbi1idXp6IHtcbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsgfSB9XG5cbi5odnItaWNvbi1idXp6IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzOyB9XG4gIC5odnItaWNvbi1idXp6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwMTdcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDFlbTtcbiAgICBwYWRkaW5nOiAwIDFweDtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOyB9XG4gIC5odnItaWNvbi1idXp6OmhvdmVyOmJlZm9yZSwgLmh2ci1pY29uLWJ1eno6Zm9jdXM6YmVmb3JlLCAuaHZyLWljb24tYnV6ejphY3RpdmU6YmVmb3JlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1idXp6O1xuICAgIGFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1idXp6O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuMTVzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbi8qIEljb24gQnV6eiBPdXQgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBodnItaWNvbi1idXp6LW91dCB7XG4gIDEwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpOyB9XG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKTsgfVxuICAzMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsgfVxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7IH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZyk7IH1cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpOyB9XG4gIDcwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpOyB9XG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCkgcm90YXRlKC0xZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCkgcm90YXRlKC0xZGVnKTsgfVxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFweCkgcm90YXRlKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcHgpIHJvdGF0ZSgwKTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMXB4KSByb3RhdGUoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xcHgpIHJvdGF0ZSgwKTsgfSB9XG5cbkBrZXlmcmFtZXMgaHZyLWljb24tYnV6ei1vdXQge1xuICAxMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTsgfVxuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZyk7IH1cbiAgMzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZyk7IH1cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpOyB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpOyB9XG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCkgcm90YXRlKC0xZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTJweCkgcm90YXRlKC0xZGVnKTsgfVxuICA3MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKTsgfVxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZyk7IH1cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxcHgpIHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMXB4KSByb3RhdGUoMCk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTFweCkgcm90YXRlKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMXB4KSByb3RhdGUoMCk7IH0gfVxuXG4uaHZyLWljb24tYnV6ei1vdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDIuMmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7IH1cbiAgLmh2ci1pY29uLWJ1enotb3V0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwMjNcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDFlbTtcbiAgICBwYWRkaW5nOiAwIDFweDtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOyB9XG4gIC5odnItaWNvbi1idXp6LW91dDpob3ZlcjpiZWZvcmUsIC5odnItaWNvbi1idXp6LW91dDpmb2N1czpiZWZvcmUsIC5odnItaWNvbi1idXp6LW91dDphY3RpdmU6YmVmb3JlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBodnItaWNvbi1idXp6LW91dDtcbiAgICBhbmltYXRpb24tbmFtZTogaHZyLWljb24tYnV6ei1vdXQ7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuNzVzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxOyB9XG5cbi8qIENVUkxTICovXG4vKiBDdXJsIFRvcCBMZWZ0ICovXG4uaHZyLWN1cmwtdG9wLWxlZnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmh2ci1jdXJsLXRvcC1sZWZ0OmJlZm9yZSB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogMDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAvKiBJRTkgKi9cbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB3aGl0ZSA0NSUsICNhYWEgNTAlLCAjY2NjIDU2JSwgd2hpdGUgODAlKTtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChHcmFkaWVudFR5cGU9MCxzdGFydENvbG9yc3RyPScjZmZmZmZmJywgZW5kQ29sb3JzdHI9JyMwMDAwMDAnKTtcbiAgICAvKkZvciBJRTctOC05Ki9cbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIGJveC1zaGFkb3c6IDFweCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHdpZHRoLCBoZWlnaHQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogd2lkdGgsIGhlaWdodDsgfVxuICAuaHZyLWN1cmwtdG9wLWxlZnQ6aG92ZXI6YmVmb3JlLCAuaHZyLWN1cmwtdG9wLWxlZnQ6Zm9jdXM6YmVmb3JlLCAuaHZyLWN1cmwtdG9wLWxlZnQ6YWN0aXZlOmJlZm9yZSB7XG4gICAgd2lkdGg6IDI1cHg7XG4gICAgaGVpZ2h0OiAyNXB4OyB9XG5cbi8qIEN1cmwgVG9wIFJpZ2h0ICovXG4uaHZyLWN1cmwtdG9wLXJpZ2h0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5odnItY3VybC10b3AtcmlnaHQ6YmVmb3JlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAvKiBJRTkgKi9cbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjI1ZGVnLCB3aGl0ZSA0NSUsICNhYWEgNTAlLCAjY2NjIDU2JSwgd2hpdGUgODAlKTtcbiAgICBib3gtc2hhZG93OiAtMXB4IDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogd2lkdGgsIGhlaWdodDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB3aWR0aCwgaGVpZ2h0OyB9XG4gIC5odnItY3VybC10b3AtcmlnaHQ6aG92ZXI6YmVmb3JlLCAuaHZyLWN1cmwtdG9wLXJpZ2h0OmZvY3VzOmJlZm9yZSwgLmh2ci1jdXJsLXRvcC1yaWdodDphY3RpdmU6YmVmb3JlIHtcbiAgICB3aWR0aDogMjVweDtcbiAgICBoZWlnaHQ6IDI1cHg7IH1cblxuLyogQ3VybCBCb3R0b20gUmlnaHQgKi9cbi5odnItY3VybC1ib3R0b20tcmlnaHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxcHgpIHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmh2ci1jdXJsLWJvdHRvbS1yaWdodDpiZWZvcmUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIC8qIElFOSAqL1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgzMTVkZWcsIHdoaXRlIDQ1JSwgI2FhYSA1MCUsICNjY2MgNTYlLCB3aGl0ZSA4MCUpO1xuICAgIGJveC1zaGFkb3c6IC0xcHggLTFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogd2lkdGgsIGhlaWdodDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB3aWR0aCwgaGVpZ2h0OyB9XG4gIC5odnItY3VybC1ib3R0b20tcmlnaHQ6aG92ZXI6YmVmb3JlLCAuaHZyLWN1cmwtYm90dG9tLXJpZ2h0OmZvY3VzOmJlZm9yZSwgLmh2ci1jdXJsLWJvdHRvbS1yaWdodDphY3RpdmU6YmVmb3JlIHtcbiAgICB3aWR0aDogMjVweDtcbiAgICBoZWlnaHQ6IDI1cHg7IH1cblxuLyogQ3VybCBCb3R0b20gTGVmdCAqL1xuLmh2ci1jdXJsLWJvdHRvbS1sZWZ0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMXB4KSB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5odnItY3VybC1ib3R0b20tbGVmdDpiZWZvcmUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgLyogSUU5ICovXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCB3aGl0ZSA0NSUsICNhYWEgNTAlLCAjY2NjIDU2JSwgd2hpdGUgODAlKTtcbiAgICBib3gtc2hhZG93OiAxcHggLTFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogd2lkdGgsIGhlaWdodDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB3aWR0aCwgaGVpZ2h0OyB9XG4gIC5odnItY3VybC1ib3R0b20tbGVmdDpob3ZlcjpiZWZvcmUsIC5odnItY3VybC1ib3R0b20tbGVmdDpmb2N1czpiZWZvcmUsIC5odnItY3VybC1ib3R0b20tbGVmdDphY3RpdmU6YmVmb3JlIHtcbiAgICB3aWR0aDogMjVweDtcbiAgICBoZWlnaHQ6IDI1cHg7IH1cblxuLyoqXG4gKiBWYXJpYWJsZXMgZGVjbGFyZWQgaGVyZSBjYW4gYmUgb3ZlcnJpZGRlbiBieSBjb25zdW1pbmcgYXBwbGljYXRpb25zLCB3aXRoXG4gKiB0aGUgaGVscCBvZiB0aGUgYCFkZWZhdWx0YCBmbGFnLlxuICpcbiAqIEBleGFtcGxlXG4gKiAgICAgLy8gb3ZlcnJpZGluZyAkaG92ZXJDb2xvclxuICogICAgICRob3ZlckNvbG9yOiByZ2JhKHJlZCwgMC4wNSk7XG4gKlxuICogICAgIC8vIG92ZXJyaWRpbmcgaW1hZ2UgcGF0aFxuICogICAgICRmbGFnc0ltYWdlUGF0aDogXCJpbWFnZXMvXCI7XG4gKlxuICogICAgIC8vIGltcG9ydCB0aGUgc2NzcyBmaWxlIGFmdGVyIHRoZSBvdmVycmlkZXNcbiAqICAgICBAaW1wb3J0IFwiYm93ZXJfY29tcG9uZW50L2ludGwtdGVsLWlucHV0L3NyYy9jc3MvaW50bFRlbElucHV0XCI7XG4gKi9cbi5pbnRsLXRlbC1pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5pbnRsLXRlbC1pbnB1dCAqIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuICAuaW50bC10ZWwtaW5wdXQgLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmludGwtdGVsLWlucHV0IC52LWhpZGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAuaW50bC10ZWwtaW5wdXQgaW5wdXQsIC5pbnRsLXRlbC1pbnB1dCBpbnB1dFt0eXBlPXRleHRdLCAuaW50bC10ZWwtaW5wdXQgaW5wdXRbdHlwZT10ZWxdIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMDtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDM2cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5pbnRsLXRlbC1pbnB1dCAuZmxhZy1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDFweDsgfVxuICAuaW50bC10ZWwtaW5wdXQgLnNlbGVjdGVkLWZsYWcge1xuICAgIHotaW5kZXg6IDE7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAzNnB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDAgMCA4cHg7IH1cbiAgICAuaW50bC10ZWwtaW5wdXQgLnNlbGVjdGVkLWZsYWcgLml0aS1mbGFnIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIG1hcmdpbjogYXV0bzsgfVxuICAgIC5pbnRsLXRlbC1pbnB1dCAuc2VsZWN0ZWQtZmxhZyAuaXRpLWFycm93IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgIHJpZ2h0OiA2cHg7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmlnaHQ6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAjNTU1OyB9XG4gICAgICAuaW50bC10ZWwtaW5wdXQgLnNlbGVjdGVkLWZsYWcgLml0aS1hcnJvdy51cCB7XG4gICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjNTU1OyB9XG4gIC5pbnRsLXRlbC1pbnB1dCAuY291bnRyeS1saXN0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMjtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDAgMCAwIC0xcHg7XG4gICAgYm94LXNoYWRvdzogMXB4IDFweCA0cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNDQ0M7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBtYXgtaGVpZ2h0OiAyMDBweDtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7IH1cbiAgICAuaW50bC10ZWwtaW5wdXQgLmNvdW50cnktbGlzdC5kcm9wdXAge1xuICAgICAgYm90dG9tOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTFweDsgfVxuICAgIC5pbnRsLXRlbC1pbnB1dCAuY291bnRyeS1saXN0IC5mbGFnLWJveCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMjBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1MDBweCkge1xuICAgICAgLmludGwtdGVsLWlucHV0IC5jb3VudHJ5LWxpc3Qge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyB9IH1cbiAgICAuaW50bC10ZWwtaW5wdXQgLmNvdW50cnktbGlzdCAuZGl2aWRlciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNDQ0M7IH1cbiAgICAuaW50bC10ZWwtaW5wdXQgLmNvdW50cnktbGlzdCAuY291bnRyeSB7XG4gICAgICBwYWRkaW5nOiA1cHggMTBweDsgfVxuICAgICAgLmludGwtdGVsLWlucHV0IC5jb3VudHJ5LWxpc3QgLmNvdW50cnkgLmRpYWwtY29kZSB7XG4gICAgICAgIGNvbG9yOiAjOTk5OyB9XG4gICAgLmludGwtdGVsLWlucHV0IC5jb3VudHJ5LWxpc3QgLmNvdW50cnkuaGlnaGxpZ2h0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7IH1cbiAgICAuaW50bC10ZWwtaW5wdXQgLmNvdW50cnktbGlzdCAuZmxhZy1ib3gsIC5pbnRsLXRlbC1pbnB1dCAuY291bnRyeS1saXN0IC5jb3VudHJ5LW5hbWUsIC5pbnRsLXRlbC1pbnB1dCAuY291bnRyeS1saXN0IC5kaWFsLWNvZGUge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIC5pbnRsLXRlbC1pbnB1dCAuY291bnRyeS1saXN0IC5mbGFnLWJveCwgLmludGwtdGVsLWlucHV0IC5jb3VudHJ5LWxpc3QgLmNvdW50cnktbmFtZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDZweDsgfVxuICAuaW50bC10ZWwtaW5wdXQuYWxsb3ctZHJvcGRvd24gaW5wdXQsIC5pbnRsLXRlbC1pbnB1dC5hbGxvdy1kcm9wZG93biBpbnB1dFt0eXBlPXRleHRdLCAuaW50bC10ZWwtaW5wdXQuYWxsb3ctZHJvcGRvd24gaW5wdXRbdHlwZT10ZWxdLCAuaW50bC10ZWwtaW5wdXQuc2VwYXJhdGUtZGlhbC1jb2RlIGlucHV0LCAuaW50bC10ZWwtaW5wdXQuc2VwYXJhdGUtZGlhbC1jb2RlIGlucHV0W3R5cGU9dGV4dF0sIC5pbnRsLXRlbC1pbnB1dC5zZXBhcmF0ZS1kaWFsLWNvZGUgaW5wdXRbdHlwZT10ZWxdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2cHg7XG4gICAgcGFkZGluZy1sZWZ0OiA1MnB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5pbnRsLXRlbC1pbnB1dC5hbGxvdy1kcm9wZG93biAuZmxhZy1jb250YWluZXIsIC5pbnRsLXRlbC1pbnB1dC5zZXBhcmF0ZS1kaWFsLWNvZGUgLmZsYWctY29udGFpbmVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC5pbnRsLXRlbC1pbnB1dC5hbGxvdy1kcm9wZG93biAuc2VsZWN0ZWQtZmxhZywgLmludGwtdGVsLWlucHV0LnNlcGFyYXRlLWRpYWwtY29kZSAuc2VsZWN0ZWQtZmxhZyB7XG4gICAgd2lkdGg6IDQ2cHg7IH1cbiAgLmludGwtdGVsLWlucHV0LmFsbG93LWRyb3Bkb3duIC5mbGFnLWNvbnRhaW5lcjpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLmludGwtdGVsLWlucHV0LmFsbG93LWRyb3Bkb3duIC5mbGFnLWNvbnRhaW5lcjpob3ZlciAuc2VsZWN0ZWQtZmxhZyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpOyB9XG4gIC5pbnRsLXRlbC1pbnB1dC5hbGxvdy1kcm9wZG93biBpbnB1dFtkaXNhYmxlZF0gKyAuZmxhZy1jb250YWluZXI6aG92ZXIsIC5pbnRsLXRlbC1pbnB1dC5hbGxvdy1kcm9wZG93biBpbnB1dFtyZWFkb25seV0gKyAuZmxhZy1jb250YWluZXI6aG92ZXIge1xuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuICAgIC5pbnRsLXRlbC1pbnB1dC5hbGxvdy1kcm9wZG93biBpbnB1dFtkaXNhYmxlZF0gKyAuZmxhZy1jb250YWluZXI6aG92ZXIgLnNlbGVjdGVkLWZsYWcsIC5pbnRsLXRlbC1pbnB1dC5hbGxvdy1kcm9wZG93biBpbnB1dFtyZWFkb25seV0gKyAuZmxhZy1jb250YWluZXI6aG92ZXIgLnNlbGVjdGVkLWZsYWcge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmludGwtdGVsLWlucHV0LnNlcGFyYXRlLWRpYWwtY29kZSAuc2VsZWN0ZWQtZmxhZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAuaW50bC10ZWwtaW5wdXQuc2VwYXJhdGUtZGlhbC1jb2RlIC5zZWxlY3RlZC1kaWFsLWNvZGUge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDI4cHg7IH1cbiAgLmludGwtdGVsLWlucHV0LnNlcGFyYXRlLWRpYWwtY29kZS5pdGktc2RjLTIgaW5wdXQsIC5pbnRsLXRlbC1pbnB1dC5zZXBhcmF0ZS1kaWFsLWNvZGUuaXRpLXNkYy0yIGlucHV0W3R5cGU9dGV4dF0sIC5pbnRsLXRlbC1pbnB1dC5zZXBhcmF0ZS1kaWFsLWNvZGUuaXRpLXNkYy0yIGlucHV0W3R5cGU9dGVsXSB7XG4gICAgcGFkZGluZy1sZWZ0OiA2NnB4OyB9XG4gIC5pbnRsLXRlbC1pbnB1dC5zZXBhcmF0ZS1kaWFsLWNvZGUuaXRpLXNkYy0yIC5zZWxlY3RlZC1mbGFnIHtcbiAgICB3aWR0aDogNjBweDsgfVxuICAuaW50bC10ZWwtaW5wdXQuc2VwYXJhdGUtZGlhbC1jb2RlLmFsbG93LWRyb3Bkb3duLml0aS1zZGMtMiBpbnB1dCwgLmludGwtdGVsLWlucHV0LnNlcGFyYXRlLWRpYWwtY29kZS5hbGxvdy1kcm9wZG93bi5pdGktc2RjLTIgaW5wdXRbdHlwZT10ZXh0XSwgLmludGwtdGVsLWlucHV0LnNlcGFyYXRlLWRpYWwtY29kZS5hbGxvdy1kcm9wZG93bi5pdGktc2RjLTIgaW5wdXRbdHlwZT10ZWxdIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDc2cHg7IH1cbiAgLmludGwtdGVsLWlucHV0LnNlcGFyYXRlLWRpYWwtY29kZS5hbGxvdy1kcm9wZG93bi5pdGktc2RjLTIgLnNlbGVjdGVkLWZsYWcge1xuICAgIHdpZHRoOiA3MHB4OyB9XG4gIC5pbnRsLXRlbC1pbnB1dC5zZXBhcmF0ZS1kaWFsLWNvZGUuaXRpLXNkYy0zIGlucHV0LCAuaW50bC10ZWwtaW5wdXQuc2VwYXJhdGUtZGlhbC1jb2RlLml0aS1zZGMtMyBpbnB1dFt0eXBlPXRleHRdLCAuaW50bC10ZWwtaW5wdXQuc2VwYXJhdGUtZGlhbC1jb2RlLml0aS1zZGMtMyBpbnB1dFt0eXBlPXRlbF0ge1xuICAgIHBhZGRpbmctbGVmdDogNzRweDsgfVxuICAuaW50bC10ZWwtaW5wdXQuc2VwYXJhdGUtZGlhbC1jb2RlLml0aS1zZGMtMyAuc2VsZWN0ZWQtZmxhZyB7XG4gICAgd2lkdGg6IDY4cHg7IH1cbiAgLmludGwtdGVsLWlucHV0LnNlcGFyYXRlLWRpYWwtY29kZS5hbGxvdy1kcm9wZG93bi5pdGktc2RjLTMgaW5wdXQsIC5pbnRsLXRlbC1pbnB1dC5zZXBhcmF0ZS1kaWFsLWNvZGUuYWxsb3ctZHJvcGRvd24uaXRpLXNkYy0zIGlucHV0W3R5cGU9dGV4dF0sIC5pbnRsLXRlbC1pbnB1dC5zZXBhcmF0ZS1kaWFsLWNvZGUuYWxsb3ctZHJvcGRvd24uaXRpLXNkYy0zIGlucHV0W3R5cGU9dGVsXSB7XG4gICAgcGFkZGluZy1sZWZ0OiA4NHB4OyB9XG4gIC5pbnRsLXRlbC1pbnB1dC5zZXBhcmF0ZS1kaWFsLWNvZGUuYWxsb3ctZHJvcGRvd24uaXRpLXNkYy0zIC5zZWxlY3RlZC1mbGFnIHtcbiAgICB3aWR0aDogNzhweDsgfVxuICAuaW50bC10ZWwtaW5wdXQuc2VwYXJhdGUtZGlhbC1jb2RlLml0aS1zZGMtNCBpbnB1dCwgLmludGwtdGVsLWlucHV0LnNlcGFyYXRlLWRpYWwtY29kZS5pdGktc2RjLTQgaW5wdXRbdHlwZT10ZXh0XSwgLmludGwtdGVsLWlucHV0LnNlcGFyYXRlLWRpYWwtY29kZS5pdGktc2RjLTQgaW5wdXRbdHlwZT10ZWxdIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgycHg7IH1cbiAgLmludGwtdGVsLWlucHV0LnNlcGFyYXRlLWRpYWwtY29kZS5pdGktc2RjLTQgLnNlbGVjdGVkLWZsYWcge1xuICAgIHdpZHRoOiA3NnB4OyB9XG4gIC5pbnRsLXRlbC1pbnB1dC5zZXBhcmF0ZS1kaWFsLWNvZGUuYWxsb3ctZHJvcGRvd24uaXRpLXNkYy00IGlucHV0LCAuaW50bC10ZWwtaW5wdXQuc2VwYXJhdGUtZGlhbC1jb2RlLmFsbG93LWRyb3Bkb3duLml0aS1zZGMtNCBpbnB1dFt0eXBlPXRleHRdLCAuaW50bC10ZWwtaW5wdXQuc2VwYXJhdGUtZGlhbC1jb2RlLmFsbG93LWRyb3Bkb3duLml0aS1zZGMtNCBpbnB1dFt0eXBlPXRlbF0ge1xuICAgIHBhZGRpbmctbGVmdDogOTJweDsgfVxuICAuaW50bC10ZWwtaW5wdXQuc2VwYXJhdGUtZGlhbC1jb2RlLmFsbG93LWRyb3Bkb3duLml0aS1zZGMtNCAuc2VsZWN0ZWQtZmxhZyB7XG4gICAgd2lkdGg6IDg2cHg7IH1cbiAgLmludGwtdGVsLWlucHV0LnNlcGFyYXRlLWRpYWwtY29kZS5pdGktc2RjLTUgaW5wdXQsIC5pbnRsLXRlbC1pbnB1dC5zZXBhcmF0ZS1kaWFsLWNvZGUuaXRpLXNkYy01IGlucHV0W3R5cGU9dGV4dF0sIC5pbnRsLXRlbC1pbnB1dC5zZXBhcmF0ZS1kaWFsLWNvZGUuaXRpLXNkYy01IGlucHV0W3R5cGU9dGVsXSB7XG4gICAgcGFkZGluZy1sZWZ0OiA5MHB4OyB9XG4gIC5pbnRsLXRlbC1pbnB1dC5zZXBhcmF0ZS1kaWFsLWNvZGUuaXRpLXNkYy01IC5zZWxlY3RlZC1mbGFnIHtcbiAgICB3aWR0aDogODRweDsgfVxuICAuaW50bC10ZWwtaW5wdXQuc2VwYXJhdGUtZGlhbC1jb2RlLmFsbG93LWRyb3Bkb3duLml0aS1zZGMtNSBpbnB1dCwgLmludGwtdGVsLWlucHV0LnNlcGFyYXRlLWRpYWwtY29kZS5hbGxvdy1kcm9wZG93bi5pdGktc2RjLTUgaW5wdXRbdHlwZT10ZXh0XSwgLmludGwtdGVsLWlucHV0LnNlcGFyYXRlLWRpYWwtY29kZS5hbGxvdy1kcm9wZG93bi5pdGktc2RjLTUgaW5wdXRbdHlwZT10ZWxdIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwMHB4OyB9XG4gIC5pbnRsLXRlbC1pbnB1dC5zZXBhcmF0ZS1kaWFsLWNvZGUuYWxsb3ctZHJvcGRvd24uaXRpLXNkYy01IC5zZWxlY3RlZC1mbGFnIHtcbiAgICB3aWR0aDogOTRweDsgfVxuICAuaW50bC10ZWwtaW5wdXQuaXRpLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTEwMDBweDtcbiAgICBsZWZ0OiAtMTAwMHB4O1xuICAgIHotaW5kZXg6IDEwNjA7XG4gICAgcGFkZGluZzogMXB4OyB9XG4gICAgLmludGwtdGVsLWlucHV0Lml0aS1jb250YWluZXI6aG92ZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5pdGktbW9iaWxlIC5pbnRsLXRlbC1pbnB1dC5pdGktY29udGFpbmVyIHtcbiAgdG9wOiAzMHB4O1xuICBib3R0b206IDMwcHg7XG4gIGxlZnQ6IDMwcHg7XG4gIHJpZ2h0OiAzMHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7IH1cblxuLml0aS1tb2JpbGUgLmludGwtdGVsLWlucHV0IC5jb3VudHJ5LWxpc3Qge1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTsgfVxuICAuaXRpLW1vYmlsZSAuaW50bC10ZWwtaW5wdXQgLmNvdW50cnktbGlzdCAuY291bnRyeSB7XG4gICAgcGFkZGluZzogMTBweCAxMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTsgfVxuXG4uaXRpLWZsYWcge1xuICB3aWR0aDogMjBweDsgfVxuICAuaXRpLWZsYWcuYmUge1xuICAgIHdpZHRoOiAxOHB4OyB9XG4gIC5pdGktZmxhZy5jaCB7XG4gICAgd2lkdGg6IDE1cHg7IH1cbiAgLml0aS1mbGFnLm1jIHtcbiAgICB3aWR0aDogMTlweDsgfVxuICAuaXRpLWZsYWcubmUge1xuICAgIHdpZHRoOiAxOHB4OyB9XG4gIC5pdGktZmxhZy5ucCB7XG4gICAgd2lkdGg6IDEzcHg7IH1cbiAgLml0aS1mbGFnLnZhIHtcbiAgICB3aWR0aDogMTVweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMiksIG9ubHkgc2NyZWVuIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMiAvIDEpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkge1xuICAgIC5pdGktZmxhZyB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDU2MzBweCAxNXB4OyB9IH1cbiAgLml0aS1mbGFnLmFjIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IDBweDsgfVxuICAuaXRpLWZsYWcuYWQge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjJweCAwcHg7IH1cbiAgLml0aS1mbGFnLmFlIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ0cHggMHB4OyB9XG4gIC5pdGktZmxhZy5hZiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC02NnB4IDBweDsgfVxuICAuaXRpLWZsYWcuYWcge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODhweCAwcHg7IH1cbiAgLml0aS1mbGFnLmFpIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMHB4IDBweDsgfVxuICAuaXRpLWZsYWcuYWwge1xuICAgIGhlaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTMycHggMHB4OyB9XG4gIC5pdGktZmxhZy5hbSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNTRweCAwcHg7IH1cbiAgLml0aS1mbGFnLmFvIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NnB4IDBweDsgfVxuICAuaXRpLWZsYWcuYXEge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTk4cHggMHB4OyB9XG4gIC5pdGktZmxhZy5hciB7XG4gICAgaGVpZ2h0OiAxM3B4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMjBweCAwcHg7IH1cbiAgLml0aS1mbGFnLmFzIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0MnB4IDBweDsgfVxuICAuaXRpLWZsYWcuYXQge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjY0cHggMHB4OyB9XG4gIC5pdGktZmxhZy5hdSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yODZweCAwcHg7IH1cbiAgLml0aS1mbGFnLmF3IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwOHB4IDBweDsgfVxuICAuaXRpLWZsYWcuYXgge1xuICAgIGhlaWdodDogMTNweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzMwcHggMHB4OyB9XG4gIC5pdGktZmxhZy5heiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNTJweCAwcHg7IH1cbiAgLml0aS1mbGFnLmJhIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM3NHB4IDBweDsgfVxuICAuaXRpLWZsYWcuYmIge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzk2cHggMHB4OyB9XG4gIC5pdGktZmxhZy5iZCB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MThweCAwcHg7IH1cbiAgLml0aS1mbGFnLmJlIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ0MHB4IDBweDsgfVxuICAuaXRpLWZsYWcuYmYge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDYwcHggMHB4OyB9XG4gIC5pdGktZmxhZy5iZyB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00ODJweCAwcHg7IH1cbiAgLml0aS1mbGFnLmJoIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUwNHB4IDBweDsgfVxuICAuaXRpLWZsYWcuYmkge1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTI2cHggMHB4OyB9XG4gIC5pdGktZmxhZy5iaiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NDhweCAwcHg7IH1cbiAgLml0aS1mbGFnLmJsIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU3MHB4IDBweDsgfVxuICAuaXRpLWZsYWcuYm0ge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTkycHggMHB4OyB9XG4gIC5pdGktZmxhZy5ibiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC02MTRweCAwcHg7IH1cbiAgLml0aS1mbGFnLmJvIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTYzNnB4IDBweDsgfVxuICAuaXRpLWZsYWcuYnEge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjU4cHggMHB4OyB9XG4gIC5pdGktZmxhZy5iciB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC02ODBweCAwcHg7IH1cbiAgLml0aS1mbGFnLmJzIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTcwMnB4IDBweDsgfVxuICAuaXRpLWZsYWcuYnQge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzI0cHggMHB4OyB9XG4gIC5pdGktZmxhZy5idiB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC03NDZweCAwcHg7IH1cbiAgLml0aS1mbGFnLmJ3IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTc2OHB4IDBweDsgfVxuICAuaXRpLWZsYWcuYnkge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzkwcHggMHB4OyB9XG4gIC5pdGktZmxhZy5ieiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC04MTJweCAwcHg7IH1cbiAgLml0aS1mbGFnLmNhIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgzNHB4IDBweDsgfVxuICAuaXRpLWZsYWcuY2Mge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODU2cHggMHB4OyB9XG4gIC5pdGktZmxhZy5jZCB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC04NzhweCAwcHg7IH1cbiAgLml0aS1mbGFnLmNmIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTkwMHB4IDBweDsgfVxuICAuaXRpLWZsYWcuY2cge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTIycHggMHB4OyB9XG4gIC5pdGktZmxhZy5jaCB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC05NDRweCAwcHg7IH1cbiAgLml0aS1mbGFnLmNpIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2MXB4IDBweDsgfVxuICAuaXRpLWZsYWcuY2sge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTgzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5jbCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDA1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5jbSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDI3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5jbiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDQ5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5jbyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDcxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5jcCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDkzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5jciB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMTE1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5jdSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMTM3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5jdiB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMTU5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5jdyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMTgxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5jeCB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjAzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5jeSB7XG4gICAgaGVpZ2h0OiAxM3B4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjI1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5jeiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjQ3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5kZSB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjY5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5kZyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjkxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5kaiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMzEzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5kayB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMzM1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5kbSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMzU3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5kbyB7XG4gICAgaGVpZ2h0OiAxM3B4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMzc5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5keiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNDAxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5lYSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNDIzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5lYyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNDQ1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5lZSB7XG4gICAgaGVpZ2h0OiAxM3B4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNDY3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5lZyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNDg5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5laCB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNTExcHggMHB4OyB9XG4gIC5pdGktZmxhZy5lciB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNTMzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5lcyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNTU1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5ldCB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNTc3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5ldSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNTk5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5maSB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNjIxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5maiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNjQzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5mayB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNjY1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5mbSB7XG4gICAgaGVpZ2h0OiAxMXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNjg3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5mbyB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNzA5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5mciB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNzMxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5nYSB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNzUzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5nYiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNzc1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5nZCB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNzk3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5nZSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xODE5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5nZiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xODQxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5nZyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xODYzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5naCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xODg1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5naSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xOTA3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5nbCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xOTI5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5nbSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xOTUxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5nbiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xOTczcHggMHB4OyB9XG4gIC5pdGktZmxhZy5ncCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xOTk1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5ncSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMDE3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5nciB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMDM5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5ncyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMDYxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5ndCB7XG4gICAgaGVpZ2h0OiAxM3B4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMDgzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5ndSB7XG4gICAgaGVpZ2h0OiAxMXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMTA1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5ndyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMTI3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5neSB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMTQ5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5oayB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMTcxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5obSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMTkzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5obiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMjE1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5ociB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMjM3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5odCB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMjU5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5odSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMjgxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5pYyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMzAzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5pZCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMzI1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5pZSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMzQ3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5pbCB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMzY5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5pbSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMzkxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5pbiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNDEzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5pbyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNDM1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5pcSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNDU3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5pciB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNDc5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5pcyB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNTAxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5pdCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNTIzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5qZSB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNTQ1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5qbSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNTY3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5qbyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNTg5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5qcCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNjExcHggMHB4OyB9XG4gIC5pdGktZmxhZy5rZSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNjMzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5rZyB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNjU1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5raCB7XG4gICAgaGVpZ2h0OiAxM3B4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNjc3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5raSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNjk5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5rbSB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNzIxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5rbiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNzQzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5rcCB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNzY1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5rciB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNzg3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5rdyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yODA5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5reSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yODMxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5reiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yODUzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5sYSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yODc1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5sYiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yODk3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5sYyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yOTE5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5saSB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yOTQxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5sayB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yOTYzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5sciB7XG4gICAgaGVpZ2h0OiAxMXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yOTg1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5scyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMDA3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5sdCB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMDI5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5sdSB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMDUxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5sdiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMDczcHggMHB4OyB9XG4gIC5pdGktZmxhZy5seSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMDk1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5tYSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMTE3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5tYyB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMTM5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5tZCB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMTYwcHggMHB4OyB9XG4gIC5pdGktZmxhZy5tZSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMTgycHggMHB4OyB9XG4gIC5pdGktZmxhZy5tZiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMjA0cHggMHB4OyB9XG4gIC5pdGktZmxhZy5tZyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMjI2cHggMHB4OyB9XG4gIC5pdGktZmxhZy5taCB7XG4gICAgaGVpZ2h0OiAxMXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMjQ4cHggMHB4OyB9XG4gIC5pdGktZmxhZy5tayB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMjcwcHggMHB4OyB9XG4gIC5pdGktZmxhZy5tbCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMjkycHggMHB4OyB9XG4gIC5pdGktZmxhZy5tbSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMzE0cHggMHB4OyB9XG4gIC5pdGktZmxhZy5tbiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMzM2cHggMHB4OyB9XG4gIC5pdGktZmxhZy5tbyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMzU4cHggMHB4OyB9XG4gIC5pdGktZmxhZy5tcCB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMzgwcHggMHB4OyB9XG4gIC5pdGktZmxhZy5tcSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNDAycHggMHB4OyB9XG4gIC5pdGktZmxhZy5tciB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNDI0cHggMHB4OyB9XG4gIC5pdGktZmxhZy5tcyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNDQ2cHggMHB4OyB9XG4gIC5pdGktZmxhZy5tdCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNDY4cHggMHB4OyB9XG4gIC5pdGktZmxhZy5tdSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNDkwcHggMHB4OyB9XG4gIC5pdGktZmxhZy5tdiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNTEycHggMHB4OyB9XG4gIC5pdGktZmxhZy5tdyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNTM0cHggMHB4OyB9XG4gIC5pdGktZmxhZy5teCB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNTU2cHggMHB4OyB9XG4gIC5pdGktZmxhZy5teSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNTc4cHggMHB4OyB9XG4gIC5pdGktZmxhZy5teiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNjAwcHggMHB4OyB9XG4gIC5pdGktZmxhZy5uYSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNjIycHggMHB4OyB9XG4gIC5pdGktZmxhZy5uYyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNjQ0cHggMHB4OyB9XG4gIC5pdGktZmxhZy5uZSB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNjY2cHggMHB4OyB9XG4gIC5pdGktZmxhZy5uZiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNjg2cHggMHB4OyB9XG4gIC5pdGktZmxhZy5uZyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNzA4cHggMHB4OyB9XG4gIC5pdGktZmxhZy5uaSB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNzMwcHggMHB4OyB9XG4gIC5pdGktZmxhZy5ubCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNzUycHggMHB4OyB9XG4gIC5pdGktZmxhZy5ubyB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNzc0cHggMHB4OyB9XG4gIC5pdGktZmxhZy5ucCB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNzk2cHggMHB4OyB9XG4gIC5pdGktZmxhZy5uciB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zODExcHggMHB4OyB9XG4gIC5pdGktZmxhZy5udSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zODMzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5ueiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zODU1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5vbSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zODc3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5wYSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zODk5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5wZSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zOTIxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5wZiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zOTQzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5wZyB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zOTY1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5waCB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zOTg3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5wayB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MDA5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5wbCB7XG4gICAgaGVpZ2h0OiAxM3B4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MDMxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5wbSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MDUzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5wbiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MDc1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5wciB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MDk3cHggMHB4OyB9XG4gIC5pdGktZmxhZy5wcyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MTE5cHggMHB4OyB9XG4gIC5pdGktZmxhZy5wdCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MTQxcHggMHB4OyB9XG4gIC5pdGktZmxhZy5wdyB7XG4gICAgaGVpZ2h0OiAxM3B4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MTYzcHggMHB4OyB9XG4gIC5pdGktZmxhZy5weSB7XG4gICAgaGVpZ2h0OiAxMXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MTg1cHggMHB4OyB9XG4gIC5pdGktZmxhZy5xYSB7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQyMDdweCAwcHg7IH1cbiAgLml0aS1mbGFnLnJlIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQyMjlweCAwcHg7IH1cbiAgLml0aS1mbGFnLnJvIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQyNTFweCAwcHg7IH1cbiAgLml0aS1mbGFnLnJzIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQyNzNweCAwcHg7IH1cbiAgLml0aS1mbGFnLnJ1IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQyOTVweCAwcHg7IH1cbiAgLml0aS1mbGFnLnJ3IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQzMTdweCAwcHg7IH1cbiAgLml0aS1mbGFnLnNhIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQzMzlweCAwcHg7IH1cbiAgLml0aS1mbGFnLnNiIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQzNjFweCAwcHg7IH1cbiAgLml0aS1mbGFnLnNjIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQzODNweCAwcHg7IH1cbiAgLml0aS1mbGFnLnNkIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ0MDVweCAwcHg7IH1cbiAgLml0aS1mbGFnLnNlIHtcbiAgICBoZWlnaHQ6IDEzcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ0MjdweCAwcHg7IH1cbiAgLml0aS1mbGFnLnNnIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ0NDlweCAwcHg7IH1cbiAgLml0aS1mbGFnLnNoIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ0NzFweCAwcHg7IH1cbiAgLml0aS1mbGFnLnNpIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ0OTNweCAwcHg7IH1cbiAgLml0aS1mbGFnLnNqIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ1MTVweCAwcHg7IH1cbiAgLml0aS1mbGFnLnNrIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ1MzdweCAwcHg7IH1cbiAgLml0aS1mbGFnLnNsIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ1NTlweCAwcHg7IH1cbiAgLml0aS1mbGFnLnNtIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ1ODFweCAwcHg7IH1cbiAgLml0aS1mbGFnLnNuIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ2MDNweCAwcHg7IH1cbiAgLml0aS1mbGFnLnNvIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ2MjVweCAwcHg7IH1cbiAgLml0aS1mbGFnLnNyIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ2NDdweCAwcHg7IH1cbiAgLml0aS1mbGFnLnNzIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ2NjlweCAwcHg7IH1cbiAgLml0aS1mbGFnLnN0IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ2OTFweCAwcHg7IH1cbiAgLml0aS1mbGFnLnN2IHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ3MTNweCAwcHg7IH1cbiAgLml0aS1mbGFnLnN4IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ3MzVweCAwcHg7IH1cbiAgLml0aS1mbGFnLnN5IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ3NTdweCAwcHg7IH1cbiAgLml0aS1mbGFnLnN6IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ3NzlweCAwcHg7IH1cbiAgLml0aS1mbGFnLnRhIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4MDFweCAwcHg7IH1cbiAgLml0aS1mbGFnLnRjIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4MjNweCAwcHg7IH1cbiAgLml0aS1mbGFnLnRkIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4NDVweCAwcHg7IH1cbiAgLml0aS1mbGFnLnRmIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4NjdweCAwcHg7IH1cbiAgLml0aS1mbGFnLnRnIHtcbiAgICBoZWlnaHQ6IDEzcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4ODlweCAwcHg7IH1cbiAgLml0aS1mbGFnLnRoIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ5MTFweCAwcHg7IH1cbiAgLml0aS1mbGFnLnRqIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ5MzNweCAwcHg7IH1cbiAgLml0aS1mbGFnLnRrIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ5NTVweCAwcHg7IH1cbiAgLml0aS1mbGFnLnRsIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ5NzdweCAwcHg7IH1cbiAgLml0aS1mbGFnLnRtIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ5OTlweCAwcHg7IH1cbiAgLml0aS1mbGFnLnRuIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUwMjFweCAwcHg7IH1cbiAgLml0aS1mbGFnLnRvIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUwNDNweCAwcHg7IH1cbiAgLml0aS1mbGFnLnRyIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUwNjVweCAwcHg7IH1cbiAgLml0aS1mbGFnLnR0IHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUwODdweCAwcHg7IH1cbiAgLml0aS1mbGFnLnR2IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUxMDlweCAwcHg7IH1cbiAgLml0aS1mbGFnLnR3IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUxMzFweCAwcHg7IH1cbiAgLml0aS1mbGFnLnR6IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUxNTNweCAwcHg7IH1cbiAgLml0aS1mbGFnLnVhIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUxNzVweCAwcHg7IH1cbiAgLml0aS1mbGFnLnVnIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUxOTdweCAwcHg7IH1cbiAgLml0aS1mbGFnLnVtIHtcbiAgICBoZWlnaHQ6IDExcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUyMTlweCAwcHg7IH1cbiAgLml0aS1mbGFnLnVzIHtcbiAgICBoZWlnaHQ6IDExcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUyNDFweCAwcHg7IH1cbiAgLml0aS1mbGFnLnV5IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUyNjNweCAwcHg7IH1cbiAgLml0aS1mbGFnLnV6IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUyODVweCAwcHg7IH1cbiAgLml0aS1mbGFnLnZhIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUzMDdweCAwcHg7IH1cbiAgLml0aS1mbGFnLnZjIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUzMjRweCAwcHg7IH1cbiAgLml0aS1mbGFnLnZlIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUzNDZweCAwcHg7IH1cbiAgLml0aS1mbGFnLnZnIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUzNjhweCAwcHg7IH1cbiAgLml0aS1mbGFnLnZpIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUzOTBweCAwcHg7IH1cbiAgLml0aS1mbGFnLnZuIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU0MTJweCAwcHg7IH1cbiAgLml0aS1mbGFnLnZ1IHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU0MzRweCAwcHg7IH1cbiAgLml0aS1mbGFnLndmIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU0NTZweCAwcHg7IH1cbiAgLml0aS1mbGFnLndzIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU0NzhweCAwcHg7IH1cbiAgLml0aS1mbGFnLnhrIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU1MDBweCAwcHg7IH1cbiAgLml0aS1mbGFnLnllIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU1MjJweCAwcHg7IH1cbiAgLml0aS1mbGFnLnl0IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU1NDRweCAwcHg7IH1cbiAgLml0aS1mbGFnLnphIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU1NjZweCAwcHg7IH1cbiAgLml0aS1mbGFnLnptIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU1ODhweCAwcHg7IH1cbiAgLml0aS1mbGFnLnp3IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU2MTBweCAwcHg7IH1cblxuLml0aS1mbGFnIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTVweDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAxcHggMHB4ICM4ODg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9mbGFncy5wbmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEQkRCREI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDIwcHggMDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMiksIG9ubHkgc2NyZWVuIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMiAvIDEpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkge1xuICAgIC5pdGktZmxhZyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvZmxhZ3NAMngucG5nXCIpOyB9IH1cblxuLml0aS1mbGFnLm5wIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5zbGljay1saXN0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY3Vyc29yOiBoYW5kOyB9XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4uc2xpY2stdHJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLnNsaWNrLXRyYWNrOmJlZm9yZSwgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5zbGljay10cmFjazphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXRyYWNrIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBkaXNwbGF5OiBub25lOyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnNsaWNrLXNsaWRlIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLXNsaWRlLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zbGljay1zbGlkZS5kcmFnZ2luZyBpbWcge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zbGljay1sb2FkaW5nIC5zbGljay1zbGlkZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5zbGljay12ZXJ0aWNhbCAuc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1sb2FkaW5nIC5zbGljay1saXN0IHtcbiAgYmFja2dyb3VuZDogI2ZmZiB1cmwoXCIuLi9pbWcvYWpheC1sb2FkZXIuZ2lmXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0OyB9XG5cbi8qIEljb25zICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9zbGljay9zbGljay5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvc2xpY2svc2xpY2suZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvc2xpY2svc2xpY2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9zbGljay9zbGljay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL3NsaWNrL3NsaWNrLnN2ZyNzbGlja1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG4vKiBBcnJvd3MgKi9cbi5zbGljay1wcmV2LFxuLnNsaWNrLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMHB4O1xuICBmb250LXNpemU6IDBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lOyB9XG4gIC5zbGljay1wcmV2OmhvdmVyLCAuc2xpY2stcHJldjpmb2N1cyxcbiAgLnNsaWNrLW5leHQ6aG92ZXIsXG4gIC5zbGljay1uZXh0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5zbGljay1wcmV2OmhvdmVyOmJlZm9yZSwgLnNsaWNrLXByZXY6Zm9jdXM6YmVmb3JlLFxuICAgIC5zbGljay1uZXh0OmhvdmVyOmJlZm9yZSxcbiAgICAuc2xpY2stbmV4dDpmb2N1czpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAuc2xpY2stcHJldi5zbGljay1kaXNhYmxlZDpiZWZvcmUsXG4gIC5zbGljay1uZXh0LnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XG4gICAgb3BhY2l0eTogMC4yNTsgfVxuICAuc2xpY2stcHJldjpiZWZvcmUsXG4gIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG4uc2xpY2stcHJldiB7XG4gIGxlZnQ6IC0yNXB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IC0yNXB4OyB9XG4gIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLihpBcIjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwi4oaSXCI7IH1cblxuLnNsaWNrLW5leHQge1xuICByaWdodDogLTI1cHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuc2xpY2stbmV4dCB7XG4gICAgbGVmdDogLTI1cHg7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIuKGklwiOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCLihpBcIjsgfVxuXG4vKiBEb3RzICovXG4uc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuLnNsaWNrLWRvdHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogLTI1cHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLnNsaWNrLWRvdHMgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIG1hcmdpbjogMCA1cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAuc2xpY2stZG90cyBsaSBidXR0b24ge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgICBmb250LXNpemU6IDBweDtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmhvdmVyLCAuc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lOyB9XG4gICAgICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpob3ZlcjpiZWZvcmUsIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpmb2N1czpiZWZvcmUge1xuICAgICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgY29udGVudDogXCLigKJcIjtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgICAgICAgZm9udC1zaXplOiA2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cbiAgICAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gICAgICBjb2xvcjogYmxhY2s7XG4gICAgICBvcGFjaXR5OiAwLjc1OyB9XG4iLCIvKiFcbiAqIEJvb3RzdHJhcCBHcmlkIHY0LjAuMCAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tKVxuICogQ29weXJpZ2h0IDIwMTEtMjAxOCBUaGUgQm9vdHN0cmFwIEF1dGhvcnNcbiAqIENvcHlyaWdodCAyMDExLTIwMTggVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSlcbiAqL1xuXG5AYXQtcm9vdCB7XG4gIEAtbXMtdmlld3BvcnQgeyB3aWR0aDogZGV2aWNlLXdpZHRoOyB9IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgYXQtcnVsZS1uby12ZW5kb3ItcHJlZml4XG59XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IHNjcm9sbGJhcjtcbn1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuQGltcG9ydCBcImZ1bmN0aW9uc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuXG5AaW1wb3J0IFwibWl4aW5zL2JyZWFrcG9pbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWQtZnJhbWV3b3JrXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyaWRcIjtcblxuQGltcG9ydCBcImdyaWRcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvZGlzcGxheVwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9mbGV4XCI7XG4iLCIvLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAuY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyLW1heC13aWR0aHMoKTtcbiAgfVxufVxuXG4vLyBGbHVpZCBjb250YWluZXJcbi8vXG4vLyBVdGlsaXplcyB0aGUgbWl4aW4gbWVhbnQgZm9yIGZpeGVkIHdpZHRoIGNvbnRhaW5lcnMsIGJ1dCB3aXRoIDEwMCUgd2lkdGggZm9yXG4vLyBmbHVpZCwgZnVsbCB3aWR0aCBsYXlvdXRzLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG59XG5cbi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiBhbmQgY2xlYXIgdGhlIGZsb2F0cyBvZiB5b3VyIGNvbHVtbnMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIG5lZ2F0aXZlIG1hcmdpbiBmcm9tIGRlZmF1bHQgLnJvdywgdGhlbiB0aGUgaG9yaXpvbnRhbCBwYWRkaW5nXG4gIC8vIGZyb20gYWxsIGltbWVkaWF0ZSBjaGlsZHJlbiBjb2x1bW5zICh0byBwcmV2ZW50IHJ1bmF3YXkgc3R5bGUgaW5oZXJpdGFuY2UpLlxuICAubm8tZ3V0dGVycyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgPiAuY29sLFxuICAgID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcbn1cbiIsIi8vLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2UtY29udGFpbmVyKCkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xuICBwYWRkaW5nLWxlZnQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuXG4vLyBGb3IgZWFjaCBicmVha3BvaW50LCBkZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgdGhlIGNvbnRhaW5lciBpbiBhIG1lZGlhIHF1ZXJ5XG5AbWl4aW4gbWFrZS1jb250YWluZXItbWF4LXdpZHRocygkbWF4LXdpZHRoczogJGNvbnRhaW5lci1tYXgtd2lkdGhzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkbWF4LXdpZHRocyB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWFrZS1yb3coKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gLTIpO1xuICBtYXJnaW4tbGVmdDogKCRncmlkLWd1dHRlci13aWR0aCAvIC0yKTtcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7IC8vIFByZXZlbnQgY29sbGFwc2luZ1xuICBwYWRkaW5nLXJpZ2h0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMik7XG4gIHBhZGRpbmctbGVmdDogKCRncmlkLWd1dHRlci13aWR0aCAvIDIpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2woJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIGZsZXg6IDAgMCBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xuICAvLyBBZGQgYSBgbWF4LXdpZHRoYCB0byBlbnN1cmUgY29udGVudCB3aXRoaW4gZWFjaCBjb2x1bW4gZG9lcyBub3QgYmxvdyBvdXRcbiAgLy8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4uIEFwcGxpZXMgdG8gSUUxMCsgYW5kIEZpcmVmb3guIENocm9tZSBhbmQgU2FmYXJpXG4gIC8vIGRvIG5vdCBhcHBlYXIgdG8gcmVxdWlyZSB0aGlzLlxuICBtYXgtd2lkdGg6IHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06ICRzaXplIC8gJGNvbHVtbnM7XG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBsYXJnZXN0IChsYXN0KSBicmVha3BvaW50LlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgY2FsY3VsYXRlZCBhcyB0aGUgbWluaW11bSBvZiB0aGUgbmV4dCBvbmUgbGVzcyAwLjAycHhcbi8vIHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZiBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIC4wMnB4LCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbmZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEdyaWQgT3B0aW9uc1xuLy9cbi8vIFRvIGF2b2lkIHlvdXIgb3B0aW9ucyBnZXR0aW5nIG92ZXJyaWRkZW4gYnkgYW4gdXBkYXRlLFxuLy8gY29weSBhbmQgcGFzdGUgdGhlIGJlbG93IG9wdGlvbnMgdG8geW91ciBvd24gc2FzcyBmaWxlXG4vLyBhbmQgaW5jbHVkZSBpdCBiZWZvcmUgdGhpcyBmaWxlLlxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gICAgICAgIHhzOiAwLFxuICAgICAgICBzbTogMzIwcHgsXG4gICAgICAgIG1kOiA3MjBweCxcbiAgICAgICAgbGc6IDEyMDBweCxcbiAgICAgICAgeGw6IDEyMDFweFxuKSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgICAgICAgc206IDMyMHB4LFxuICAgICAgICBtZDogNzIwcHgsXG4gICAgICAgIGxnOiAxMjAwcHgsXG4gICAgICAgIHhsOiAxMjAxcHhcbikgIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6IDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAzMHB4ICFkZWZhdWx0O1xuXG4vLyBFTkQgb2YgR3JpZCBPcHRpb25zXG5cblxuLy8gQm9vdHN0cmFwIGZpbGUgaW1wb3J0c1xuQGltcG9ydCBcImJyZWFrcG9pbnRzL21peGlucy9icmVha3BvaW50c1wiO1xuQGltcG9ydCBcImdyaWQvYm9vdHN0cmFwLWdyaWRcIjtcbkBpbXBvcnQgXCJzaXppbmcvdXRpbGl0aWVzL3NpemluZ1wiO1xuQGltcG9ydCBcImxheW91dC91dGlsaXRpZXMvc3BhY2luZ1wiO1xuQGltcG9ydCBcImxheW91dC9taXhpbnMvdmlzaWJpbGl0eVwiO1xuQGltcG9ydCBcImxheW91dC91dGlsaXRpZXMvdmlzaWJpbGl0eVwiOyIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIC8vIENvbW1vbiBwcm9wZXJ0aWVzIGZvciBhbGwgYnJlYWtwb2ludHNcbiAgJWdyaWQtY29sdW1uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4OyAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcbiAgICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuICAgIHBhZGRpbmctbGVmdDogKCRndXR0ZXIgLyAyKTtcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIC8vIEFsbG93IGNvbHVtbnMgdG8gc3RyZXRjaCBmdWxsIHdpZHRoIGJlbG93IHRoZWlyIGJyZWFrcG9pbnRzXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgICB9XG4gICAgfVxuICAgIC5jb2wjeyRpbmZpeH0sXG4gICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiBub25lOyAvLyBSZXNldCBlYXJsaWVyIGdyaWQgdGllcnNcbiAgICAgIH1cblxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWZpcnN0IHsgb3JkZXI6IC0xOyB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1sYXN0IHsgb3JkZXI6ICRjb2x1bW5zICsgMTsgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLm9yZGVyI3skaW5maXh9LSN7JGl9IHsgb3JkZXI6ICRpOyB9XG4gICAgICB9XG5cbiAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXG4gICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciBjb21tb24gYGRpc3BsYXlgIHZhbHVlc1xuLy9cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmQjeyRpbmZpeH0tbm9uZSAgICAgICAgIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0taW5saW5lICAgICAgIHsgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS1pbmxpbmUtYmxvY2sgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5kI3skaW5maXh9LWJsb2NrICAgICAgICB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS10YWJsZSAgICAgICAgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgLmQjeyRpbmZpeH0tdGFibGUtcm93ICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS10YWJsZS1jZWxsICAgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS1mbGV4ICAgICAgICAgeyBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cbiAgICAuZCN7JGluZml4fS1pbmxpbmUtZmxleCAgeyBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciB0b2dnbGluZyBgZGlzcGxheWAgaW4gcHJpbnRcbi8vXG5cbkBtZWRpYSBwcmludCB7XG4gIC5kLXByaW50LW5vbmUgICAgICAgICB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1pbmxpbmUgICAgICAgeyBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1pbmxpbmUtYmxvY2sgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1ibG9jayAgICAgICAgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LXRhYmxlICAgICAgICB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgLmQtcHJpbnQtdGFibGUtcm93ICAgIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgLmQtcHJpbnQtdGFibGUtY2VsbCAgIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIC5kLXByaW50LWZsZXggICAgICAgICB7IGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgfVxuICAuZC1wcmludC1pbmxpbmUtZmxleCAgeyBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBGbGV4IHZhcmlhdGlvblxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIGFkZGl0aW9uYWwgZmxleCBhbGlnbm1lbnQgb3B0aW9ucy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsZXgjeyRpbmZpeH0tcm93ICAgICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4gICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXJvdy1yZXZlcnNlICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4tcmV2ZXJzZSB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG5cbiAgICAuZmxleCN7JGluZml4fS13cmFwICAgICAgICAgeyBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LW5vd3JhcCAgICAgICB7IGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS13cmFwLXJldmVyc2UgeyBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG5cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0cmV0Y2ggeyBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWF1dG8gICAgIHsgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFdpZHRoIGFuZCBoZWlnaHRcblxuQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKHdpZHRoOiB3LCBoZWlnaHQ6IGgpIHtcbiAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNpemVzIHtcbiAgICAuI3skYWJicmV2fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4ubXctMTAwIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbi5taC0xMDAgeyBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBNYXJnaW4gYW5kIFBhZGRpbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKG1hcmdpbjogbSwgcGFkZGluZzogcCkge1xuICAgICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuXG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb21lIHNwZWNpYWwgbWFyZ2luIHV0aWxzXG4gICAgLm0jeyRpbmZpeH0tYXV0byB7IG1hcmdpbjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLm10I3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubXIjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1iI3skaW5maXh9LWF1dG8sXG4gICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWwjeyRpbmZpeH0tYXV0byxcbiAgICAubXgjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vL1xuXG4udmlzaWJsZSB7XG4gIEBpbmNsdWRlIGludmlzaWJsZSh2aXNpYmxlKTtcbn1cblxuLmludmlzaWJsZSB7XG4gIEBpbmNsdWRlIGludmlzaWJsZShoaWRkZW4pO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFZpc2liaWxpdHlcblxuQG1peGluIGludmlzaWJsZSgkdmlzaWJpbGl0eSkge1xuICB2aXNpYmlsaXR5OiAkdmlzaWJpbGl0eSAhaW1wb3J0YW50O1xufVxuIiwiLyohXG4gKiBIb3Zlci5jc3MgKGh0dHA6Ly9pYW5sdW5uLmdpdGh1Yi5pby9Ib3Zlci8pXG4gKiBWZXJzaW9uOiAyLjIuMVxuICogQXV0aG9yOiBJYW4gTHVubiBASWFuTHVublxuICogQXV0aG9yIFVSTDogaHR0cDovL2lhbmx1bm4uY28udWsvXG4gKiBHaXRodWI6IGh0dHBzOi8vZ2l0aHViLmNvbS9JYW5MdW5uL0hvdmVyXG5cbiAqIEhvdmVyLmNzcyBDb3B5cmlnaHQgSWFuIEx1bm4gMjAxNy4gR2VuZXJhdGVkIHdpdGggU2Fzcy5cbiAqL1xuXG5AaW1wb3J0IFwib3B0aW9uc1wiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuQGltcG9ydCBcImhhY2tzXCI7XG5cblxuLyogMkQgVFJBTlNJVElPTlMgKi9cbkBpbXBvcnQgXCJlZmZlY3RzLzJkLXRyYW5zaXRpb25zL2dyb3dcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1ncm93IHtcblx0XHRAaW5jbHVkZSBncm93KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvc2hyaW5rXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tc2hyaW5rIHtcblx0XHRAaW5jbHVkZSBzaHJpbmsoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9wdWxzZVwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LXB1bHNlIHtcblx0XHRAaW5jbHVkZSBwdWxzZSgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzLzJkLXRyYW5zaXRpb25zL3B1bHNlLWdyb3dcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1wdWxzZS1ncm93IHtcblx0XHRAaW5jbHVkZSBwdWxzZS1ncm93KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvcHVsc2Utc2hyaW5rXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tcHVsc2Utc2hyaW5rIHtcblx0XHRAaW5jbHVkZSBwdWxzZS1zaHJpbmsoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9wdXNoXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tcHVzaCB7XG5cdFx0QGluY2x1ZGUgcHVzaCgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzLzJkLXRyYW5zaXRpb25zL3BvcFwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LXBvcCB7XG5cdFx0QGluY2x1ZGUgcG9wKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvYm91bmNlLWluXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tYm91bmNlLWluIHtcblx0XHRAaW5jbHVkZSBib3VuY2UtaW4oKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9ib3VuY2Utb3V0XCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tYm91bmNlLW91dCB7XG5cdFx0QGluY2x1ZGUgYm91bmNlLW91dCgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzLzJkLXRyYW5zaXRpb25zL3JvdGF0ZVwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LXJvdGF0ZSB7XG5cdFx0QGluY2x1ZGUgcm90YXRlKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvZ3Jvdy1yb3RhdGVcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1ncm93LXJvdGF0ZSB7XG5cdFx0QGluY2x1ZGUgZ3Jvdy1yb3RhdGUoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9mbG9hdFwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LWZsb2F0IHtcblx0XHRAaW5jbHVkZSBmbG9hdCgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzLzJkLXRyYW5zaXRpb25zL3NpbmtcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1zaW5rIHtcblx0XHRAaW5jbHVkZSBzaW5rKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvYm9iXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tYm9iIHtcblx0XHRAaW5jbHVkZSBib2IoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9oYW5nXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0taGFuZyB7XG5cdFx0QGluY2x1ZGUgaGFuZygpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzLzJkLXRyYW5zaXRpb25zL3NrZXdcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1za2V3IHtcblx0XHRAaW5jbHVkZSBza2V3KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvc2tldy1mb3J3YXJkXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tc2tldy1mb3J3YXJkIHtcblx0XHRAaW5jbHVkZSBza2V3LWZvcndhcmQoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9za2V3LWJhY2t3YXJkXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tc2tldy1iYWNrd2FyZCB7XG5cdCAgICBAaW5jbHVkZSBza2V3LWJhY2t3YXJkKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvd29iYmxlLXZlcnRpY2FsXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0td29iYmxlLXZlcnRpY2FsIHtcblx0XHRAaW5jbHVkZSB3b2JibGUtdmVydGljYWwoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy93b2JibGUtaG9yaXpvbnRhbFwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LXdvYmJsZS1ob3Jpem9udGFsIHtcblx0XHRAaW5jbHVkZSB3b2JibGUtaG9yaXpvbnRhbCgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzLzJkLXRyYW5zaXRpb25zL3dvYmJsZS10by1ib3R0b20tcmlnaHRcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS13b2JibGUtdG8tYm90dG9tLXJpZ2h0IHtcblx0ICAgIEBpbmNsdWRlIHdvYmJsZS10by1ib3R0b20tcmlnaHQoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy93b2JibGUtdG8tdG9wLXJpZ2h0XCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0td29iYmxlLXRvLXRvcC1yaWdodCB7XG5cdCAgICBAaW5jbHVkZSB3b2JibGUtdG8tdG9wLXJpZ2h0KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvd29iYmxlLXRvcFwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LXdvYmJsZS10b3Age1xuXHRcdEBpbmNsdWRlIHdvYmJsZS10b3AoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy93b2JibGUtYm90dG9tXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0td29iYmxlLWJvdHRvbSB7XG5cdFx0QGluY2x1ZGUgd29iYmxlLWJvdHRvbSgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzLzJkLXRyYW5zaXRpb25zL3dvYmJsZS1za2V3XCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0td29iYmxlLXNrZXcge1xuXHQgICAgQGluY2x1ZGUgd29iYmxlLXNrZXcoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy8yZC10cmFuc2l0aW9ucy9idXp6XCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tYnV6eiB7XG5cdCAgICBAaW5jbHVkZSBidXp6KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvYnV6ei1vdXRcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1idXp6LW91dCB7XG5cdCAgICBAaW5jbHVkZSBidXp6LW91dCgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzLzJkLXRyYW5zaXRpb25zL2ZvcndhcmRcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1mb3J3YXJkIHtcblx0XHRAaW5jbHVkZSBmb3J3YXJkKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvMmQtdHJhbnNpdGlvbnMvYmFja3dhcmRcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1iYWNrd2FyZCB7XG5cdFx0QGluY2x1ZGUgYmFja3dhcmQoKTtcblx0fVxufVxuXG4vKiBCQUNLR1JPVU5EIFRSQU5TSVRJT05TICovXG5AaW1wb3J0IFwiZWZmZWN0cy9iYWNrZ3JvdW5kLXRyYW5zaXRpb25zL2ZhZGVcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1mYWRlIHtcblx0XHRAaW5jbHVkZSBmYWRlKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9iYWNrLXB1bHNlXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tYmFjay1wdWxzZSB7XG5cdFx0QGluY2x1ZGUgYmFjay1wdWxzZSgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzL2JhY2tncm91bmQtdHJhbnNpdGlvbnMvc3dlZXAtdG8tcmlnaHRcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1zd2VlcC10by1yaWdodCB7XG5cdFx0QGluY2x1ZGUgc3dlZXAtdG8tcmlnaHQoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy9iYWNrZ3JvdW5kLXRyYW5zaXRpb25zL3N3ZWVwLXRvLWxlZnRcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1zd2VlcC10by1sZWZ0IHtcblx0XHRAaW5jbHVkZSBzd2VlcC10by1sZWZ0KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9zd2VlcC10by1ib3R0b21cIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1zd2VlcC10by1ib3R0b20ge1xuXHRcdEBpbmNsdWRlIHN3ZWVwLXRvLWJvdHRvbSgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzL2JhY2tncm91bmQtdHJhbnNpdGlvbnMvc3dlZXAtdG8tdG9wXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tc3dlZXAtdG8tdG9wIHtcblx0XHRAaW5jbHVkZSBzd2VlcC10by10b3AoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy9iYWNrZ3JvdW5kLXRyYW5zaXRpb25zL2JvdW5jZS10by1yaWdodFwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LWJvdW5jZS10by1yaWdodCB7XG5cdFx0QGluY2x1ZGUgYm91bmNlLXRvLXJpZ2h0KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9ib3VuY2UtdG8tbGVmdFwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LWJvdW5jZS10by1sZWZ0IHtcblx0XHRAaW5jbHVkZSBib3VuY2UtdG8tbGVmdCgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzL2JhY2tncm91bmQtdHJhbnNpdGlvbnMvYm91bmNlLXRvLWJvdHRvbVwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LWJvdW5jZS10by1ib3R0b20ge1xuXHRcdEBpbmNsdWRlIGJvdW5jZS10by1ib3R0b20oKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy9iYWNrZ3JvdW5kLXRyYW5zaXRpb25zL2JvdW5jZS10by10b3BcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1ib3VuY2UtdG8tdG9wIHtcblx0XHRAaW5jbHVkZSBib3VuY2UtdG8tdG9wKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9yYWRpYWwtb3V0XCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tcmFkaWFsLW91dCB7XG5cdFx0QGluY2x1ZGUgcmFkaWFsLW91dCgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzL2JhY2tncm91bmQtdHJhbnNpdGlvbnMvcmFkaWFsLWluXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tcmFkaWFsLWluIHtcblx0XHRAaW5jbHVkZSByYWRpYWwtaW4oKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy9iYWNrZ3JvdW5kLXRyYW5zaXRpb25zL3JlY3RhbmdsZS1pblwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LXJlY3RhbmdsZS1pbiB7XG5cdFx0QGluY2x1ZGUgcmVjdGFuZ2xlLWluKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9yZWN0YW5nbGUtb3V0XCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tcmVjdGFuZ2xlLW91dCB7XG5cdFx0QGluY2x1ZGUgcmVjdGFuZ2xlLW91dCgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzL2JhY2tncm91bmQtdHJhbnNpdGlvbnMvc2h1dHRlci1pbi1ob3Jpem9udGFsXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tc2h1dHRlci1pbi1ob3Jpem9udGFsIHtcblx0XHRAaW5jbHVkZSBzaHV0dGVyLWluLWhvcml6b250YWwoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy9iYWNrZ3JvdW5kLXRyYW5zaXRpb25zL3NodXR0ZXItb3V0LWhvcml6b250YWxcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1zaHV0dGVyLW91dC1ob3Jpem9udGFsIHtcblx0XHRAaW5jbHVkZSBzaHV0dGVyLW91dC1ob3Jpem9udGFsKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYmFja2dyb3VuZC10cmFuc2l0aW9ucy9zaHV0dGVyLWluLXZlcnRpY2FsXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tc2h1dHRlci1pbi12ZXJ0aWNhbCB7XG5cdFx0QGluY2x1ZGUgc2h1dHRlci1pbi12ZXJ0aWNhbCgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzL2JhY2tncm91bmQtdHJhbnNpdGlvbnMvc2h1dHRlci1vdXQtdmVydGljYWxcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1zaHV0dGVyLW91dC12ZXJ0aWNhbCB7XG5cdFx0QGluY2x1ZGUgc2h1dHRlci1vdXQtdmVydGljYWwoKTtcblx0fVxufVxuXG5cbi8qIEJPUkRFUiBUUkFOU0lUSU9OUyAqL1xuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL2JvcmRlci1mYWRlXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tYm9yZGVyLWZhZGUge1xuXHRcdEBpbmNsdWRlIGJvcmRlci1mYWRlKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL2hvbGxvd1wiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LWhvbGxvdyB7XG5cdFx0QGluY2x1ZGUgaG9sbG93KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL3RyaW1cIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS10cmltIHtcblx0XHRAaW5jbHVkZSB0cmltKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL3JpcHBsZS1vdXRcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1yaXBwbGUtb3V0IHtcblx0XHRAaW5jbHVkZSByaXBwbGUtb3V0KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL3JpcHBsZS1pblwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LXJpcHBsZS1pbiB7XG5cdFx0QGluY2x1ZGUgcmlwcGxlLWluKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL291dGxpbmUtb3V0XCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tb3V0bGluZS1vdXQge1xuXHRcdEBpbmNsdWRlIG91dGxpbmUtb3V0KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL291dGxpbmUtaW5cIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1vdXRsaW5lLWluIHtcblx0XHRAaW5jbHVkZSBvdXRsaW5lLWluKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL3JvdW5kLWNvcm5lcnNcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1yb3VuZC1jb3JuZXJzIHtcblx0XHRAaW5jbHVkZSByb3VuZC1jb3JuZXJzKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL3VuZGVybGluZS1mcm9tLWxlZnRcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS11bmRlcmxpbmUtZnJvbS1sZWZ0IHtcblx0XHRAaW5jbHVkZSB1bmRlcmxpbmUtZnJvbS1sZWZ0KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL3VuZGVybGluZS1mcm9tLWNlbnRlclwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LXVuZGVybGluZS1mcm9tLWNlbnRlciB7XG5cdFx0QGluY2x1ZGUgdW5kZXJsaW5lLWZyb20tY2VudGVyKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL3VuZGVybGluZS1mcm9tLXJpZ2h0XCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tdW5kZXJsaW5lLWZyb20tcmlnaHQge1xuXHRcdEBpbmNsdWRlIHVuZGVybGluZS1mcm9tLXJpZ2h0KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL292ZXJsaW5lLWZyb20tbGVmdFwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LW92ZXJsaW5lLWZyb20tbGVmdCB7XG5cdFx0QGluY2x1ZGUgb3ZlcmxpbmUtZnJvbS1sZWZ0KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL292ZXJsaW5lLWZyb20tY2VudGVyXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tb3ZlcmxpbmUtZnJvbS1jZW50ZXIge1xuXHRcdEBpbmNsdWRlIG92ZXJsaW5lLWZyb20tY2VudGVyKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL292ZXJsaW5lLWZyb20tcmlnaHRcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1vdmVybGluZS1mcm9tLXJpZ2h0IHtcblx0XHRAaW5jbHVkZSBvdmVybGluZS1mcm9tLXJpZ2h0KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL3JldmVhbFwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LXJldmVhbCB7XG5cdFx0QGluY2x1ZGUgcmV2ZWFsKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL3VuZGVybGluZS1yZXZlYWxcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS11bmRlcmxpbmUtcmV2ZWFsIHtcblx0XHRAaW5jbHVkZSB1bmRlcmxpbmUtcmV2ZWFsKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvYm9yZGVyLXRyYW5zaXRpb25zL292ZXJsaW5lLXJldmVhbFwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LW92ZXJsaW5lLXJldmVhbCB7XG5cdFx0QGluY2x1ZGUgb3ZlcmxpbmUtcmV2ZWFsKCk7XG5cdH1cbn1cblxuXG4vKiBTSEFET1cvR0xPVyBUUkFOU0lUSU9OUyAqL1xuQGltcG9ydCBcImVmZmVjdHMvc2hhZG93LWFuZC1nbG93LXRyYW5zaXRpb25zL2dsb3dcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1nbG93IHtcblx0XHRAaW5jbHVkZSBnbG93KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvc2hhZG93LWFuZC1nbG93LXRyYW5zaXRpb25zL3NoYWRvd1wiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LXNoYWRvdyB7XG5cdFx0QGluY2x1ZGUgc2hhZG93KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvc2hhZG93LWFuZC1nbG93LXRyYW5zaXRpb25zL2dyb3ctc2hhZG93XCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tZ3Jvdy1zaGFkb3cge1xuXHRcdEBpbmNsdWRlIGdyb3ctc2hhZG93KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvc2hhZG93LWFuZC1nbG93LXRyYW5zaXRpb25zL2JveC1zaGFkb3ctb3V0c2V0XCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tYm94LXNoYWRvdy1vdXRzZXQge1xuXHRcdEBpbmNsdWRlIGJveC1zaGFkb3ctb3V0c2V0KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvc2hhZG93LWFuZC1nbG93LXRyYW5zaXRpb25zL2JveC1zaGFkb3ctaW5zZXRcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1ib3gtc2hhZG93LWluc2V0IHtcblx0XHRAaW5jbHVkZSBib3gtc2hhZG93LWluc2V0KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvc2hhZG93LWFuZC1nbG93LXRyYW5zaXRpb25zL2Zsb2F0LXNoYWRvd1wiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LWZsb2F0LXNoYWRvdyB7XG5cdFx0QGluY2x1ZGUgZmxvYXQtc2hhZG93KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvc2hhZG93LWFuZC1nbG93LXRyYW5zaXRpb25zL3NoYWRvdy1yYWRpYWxcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1zaGFkb3ctcmFkaWFsIHtcblx0XHRAaW5jbHVkZSBzaGFkb3ctcmFkaWFsKCk7XG5cdH1cbn1cblxuLyogU1BFRUNIIEJVQkJMRVMgKi9cbkBpbXBvcnQgXCJlZmZlY3RzL3NwZWVjaC1idWJibGVzL2J1YmJsZS10b3BcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1idWJibGUtdG9wIHtcblx0XHRAaW5jbHVkZSBidWJibGUtdG9wKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvc3BlZWNoLWJ1YmJsZXMvYnViYmxlLXJpZ2h0XCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tYnViYmxlLXJpZ2h0IHtcblx0XHRAaW5jbHVkZSBidWJibGUtcmlnaHQoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy9zcGVlY2gtYnViYmxlcy9idWJibGUtYm90dG9tXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tYnViYmxlLWJvdHRvbSB7XG5cdFx0QGluY2x1ZGUgYnViYmxlLWJvdHRvbSgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzL3NwZWVjaC1idWJibGVzL2J1YmJsZS1sZWZ0XCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0tYnViYmxlLWxlZnQge1xuXHRcdEBpbmNsdWRlIGJ1YmJsZS1sZWZ0KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvc3BlZWNoLWJ1YmJsZXMvYnViYmxlLWZsb2F0LXRvcFwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LWJ1YmJsZS1mbG9hdC10b3Age1xuXHRcdEBpbmNsdWRlIGJ1YmJsZS1mbG9hdC10b3AoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy9zcGVlY2gtYnViYmxlcy9idWJibGUtZmxvYXQtcmlnaHRcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1idWJibGUtZmxvYXQtcmlnaHQge1xuXHRcdEBpbmNsdWRlIGJ1YmJsZS1mbG9hdC1yaWdodCgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzL3NwZWVjaC1idWJibGVzL2J1YmJsZS1mbG9hdC1ib3R0b21cIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1idWJibGUtZmxvYXQtYm90dG9tIHtcblx0XHRAaW5jbHVkZSBidWJibGUtZmxvYXQtYm90dG9tKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvc3BlZWNoLWJ1YmJsZXMvYnViYmxlLWZsb2F0LWxlZnRcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1idWJibGUtZmxvYXQtbGVmdCB7XG5cdFx0QGluY2x1ZGUgYnViYmxlLWZsb2F0LWxlZnQoKTtcblx0fVxufVxuXG4vKiBJQ09OUyAqL1xuQGltcG9ydCBcImVmZmVjdHMvaWNvbnMvaWNvbi1iYWNrXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0taWNvbi1iYWNrIHtcblx0XHRAaW5jbHVkZSBpY29uLWJhY2soKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy9pY29ucy9pY29uLWZvcndhcmRcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1pY29uLWZvcndhcmQge1xuXHRcdEBpbmNsdWRlIGljb24tZm9yd2FyZCgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzL2ljb25zL2ljb24tZG93blwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LWljb24tZG93biB7XG5cdFx0QGluY2x1ZGUgaWNvbi1kb3duKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvaWNvbnMvaWNvbi11cFwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LWljb24tdXAge1xuXHRcdEBpbmNsdWRlIGljb24tdXAoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy9pY29ucy9pY29uLXNwaW5cIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1pY29uLXNwaW4ge1xuXHRcdEBpbmNsdWRlIGljb24tc3BpbigpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzL2ljb25zL2ljb24tZHJvcFwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LWljb24tZHJvcCB7XG5cdFx0QGluY2x1ZGUgaWNvbi1kcm9wKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvaWNvbnMvaWNvbi1mYWRlXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0taWNvbi1mYWRlIHtcblx0XHRAaW5jbHVkZSBpY29uLWZhZGUoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy9pY29ucy9pY29uLWZsb2F0LWF3YXlcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1pY29uLWZsb2F0LWF3YXkge1xuXHRcdEBpbmNsdWRlIGljb24tZmxvYXQtYXdheSgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzL2ljb25zL2ljb24tc2luay1hd2F5XCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0taWNvbi1zaW5rLWF3YXkge1xuXHRcdEBpbmNsdWRlIGljb24tc2luay1hd2F5KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvaWNvbnMvaWNvbi1ncm93XCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0taWNvbi1ncm93IHtcblx0XHRAaW5jbHVkZSBpY29uLWdyb3coKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy9pY29ucy9pY29uLXNocmlua1wiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LWljb24tc2hyaW5rIHtcblx0XHRAaW5jbHVkZSBpY29uLXNocmluaygpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzL2ljb25zL2ljb24tcHVsc2VcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1pY29uLXB1bHNlIHtcblx0XHRAaW5jbHVkZSBpY29uLXB1bHNlKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvaWNvbnMvaWNvbi1wdWxzZS1ncm93XCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0taWNvbi1wdWxzZS1ncm93IHtcblx0XHRAaW5jbHVkZSBpY29uLXB1bHNlLWdyb3coKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy9pY29ucy9pY29uLXB1bHNlLXNocmlua1wiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LWljb24tcHVsc2Utc2hyaW5rIHtcblx0XHRAaW5jbHVkZSBpY29uLXB1bHNlLXNocmluaygpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzL2ljb25zL2ljb24tcHVzaFwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LWljb24tcHVzaCB7XG5cdFx0QGluY2x1ZGUgaWNvbi1wdXNoKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvaWNvbnMvaWNvbi1wb3BcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1pY29uLXBvcCB7XG5cdFx0QGluY2x1ZGUgaWNvbi1wb3AoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy9pY29ucy9pY29uLWJvdW5jZVwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LWljb24tYm91bmNlIHtcblx0XHRAaW5jbHVkZSBpY29uLWJvdW5jZSgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzL2ljb25zL2ljb24tcm90YXRlXCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0taWNvbi1yb3RhdGUge1xuXHRcdEBpbmNsdWRlIGljb24tcm90YXRlKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvaWNvbnMvaWNvbi1ncm93LXJvdGF0ZVwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LWljb24tZ3Jvdy1yb3RhdGUge1xuXHRcdEBpbmNsdWRlIGljb24tZ3Jvdy1yb3RhdGUoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy9pY29ucy9pY29uLWZsb2F0XCI7XG5AaWYgJGluY2x1ZGVDbGFzc2VzIHtcblx0LiN7JG5hbWVTcGFjZX0taWNvbi1mbG9hdCB7XG5cdFx0QGluY2x1ZGUgaWNvbi1mbG9hdCgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzL2ljb25zL2ljb24tc2lua1wiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LWljb24tc2luayB7XG5cdFx0QGluY2x1ZGUgaWNvbi1zaW5rKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvaWNvbnMvaWNvbi1ib2JcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1pY29uLWJvYiB7XG5cdFx0QGluY2x1ZGUgaWNvbi1ib2IoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy9pY29ucy9pY29uLWhhbmdcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1pY29uLWhhbmcge1xuXHRcdEBpbmNsdWRlIGljb24taGFuZygpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzL2ljb25zL2ljb24td29iYmxlLWhvcml6b250YWxcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1pY29uLXdvYmJsZS1ob3Jpem9udGFsIHtcblx0XHRAaW5jbHVkZSBpY29uLXdvYmJsZS1ob3Jpem9udGFsKCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvaWNvbnMvaWNvbi13b2JibGUtdmVydGljYWxcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1pY29uLXdvYmJsZS12ZXJ0aWNhbCB7XG5cdFx0QGluY2x1ZGUgaWNvbi13b2JibGUtdmVydGljYWwoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy9pY29ucy9pY29uLWJ1enpcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1pY29uLWJ1enoge1xuXHRcdEBpbmNsdWRlIGljb24tYnV6eigpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzL2ljb25zL2ljb24tYnV6ei1vdXRcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1pY29uLWJ1enotb3V0IHtcblx0XHRAaW5jbHVkZSBpY29uLWJ1enotb3V0KCk7XG5cdH1cbn1cblxuLyogQ1VSTFMgKi9cbkBpbXBvcnQgXCJlZmZlY3RzL2N1cmxzL2N1cmwtdG9wLWxlZnRcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1jdXJsLXRvcC1sZWZ0IHtcblx0XHRAaW5jbHVkZSBjdXJsLXRvcC1sZWZ0KCk7XG5cdH1cbn1cblxuQGltcG9ydCBcImVmZmVjdHMvY3VybHMvY3VybC10b3AtcmlnaHRcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1jdXJsLXRvcC1yaWdodCB7XG5cdFx0QGluY2x1ZGUgY3VybC10b3AtcmlnaHQoKTtcblx0fVxufVxuXG5AaW1wb3J0IFwiZWZmZWN0cy9jdXJscy9jdXJsLWJvdHRvbS1yaWdodFwiO1xuQGlmICRpbmNsdWRlQ2xhc3NlcyB7XG5cdC4jeyRuYW1lU3BhY2V9LWN1cmwtYm90dG9tLXJpZ2h0IHtcblx0XHRAaW5jbHVkZSBjdXJsLWJvdHRvbS1yaWdodCgpO1xuXHR9XG59XG5cbkBpbXBvcnQgXCJlZmZlY3RzL2N1cmxzL2N1cmwtYm90dG9tLWxlZnRcIjtcbkBpZiAkaW5jbHVkZUNsYXNzZXMge1xuXHQuI3skbmFtZVNwYWNlfS1jdXJsLWJvdHRvbS1sZWZ0IHtcblx0XHRAaW5jbHVkZSBjdXJsLWJvdHRvbS1sZWZ0KCk7XG5cdH1cbn1cbiIsIi8qIEdyb3cgKi9cbkBtaXhpbiBncm93IHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZSgxLjEpKTtcblx0fVxufVxuIiwiLy8gQXMgaXMgb2Z0ZW4gdGhlIGNhc2UsIHNvbWUgZGV2aWNlcy9icm93c2VycyBuZWVkIGFkZGl0aW9uYWwgY29kZSB0byBnZXQgQ1NTIHRvIHdvcmtcbi8vIGluIHRoZSBtb3N0IGRlc2lyZWQgd2F5LiBUaGVzZSBtaXhpbnMgYXJlIHVzZWQgdG8gcXVpY2tseSBkcm9wIGluIGhhY2tzIGZvciBlYWNoIGVsZW1lbnRcbi8vIEZpbmQgb3V0IG1vcmUgaGVyZTogaHR0cHM6Ly9naXRodWIuY29tL0lhbkx1bm4vSG92ZXIvd2lraS9IYWNrcy1FeHBsYWluZWRcblxuQG1peGluIGhhcmR3YXJlQWNjZWwoKSB7XG5cdC8vIEltcHJvdmUgcGVyZm9ybWFuY2Ugb24gbW9iaWxlL3RhYmxldCBkZXZpY2VzXG5cdC8vIFBlcnNwZWN0aXZlIHJlZHVjZXMgYmx1cnJ5bmVzcyBvZiB0ZXh0IGluIENocm9tZVxuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKSk7XG59XG5cbkBtaXhpbiBpbXByb3ZlQW50aUFsaWFzKCkge1xuXHQvLyBJbXByb3ZlIGFsaWFzaW5nIG9uIG1vYmlsZS90YWJsZXQgZGV2aWNlc1xuXHRib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbkBtaXhpbiBmb3JjZUJsb2NrTGV2ZWwoKSB7XG5cdC8vIFRyYW5zZm9ybXMgbmVlZCB0byBiZSBibG9jay1sZXZlbCB0byB3b3JrXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuQG1peGluIGhhY2tzKCkge1xuXHRAaW5jbHVkZSBmb3JjZUJsb2NrTGV2ZWwoKTtcblx0QGluY2x1ZGUgaGFyZHdhcmVBY2NlbCgpO1xuXHRAaW5jbHVkZSBpbXByb3ZlQW50aUFsaWFzKCk7XG59XG4iLCIvLyBwcmVmaXggZGVjbGFyYXRpb25zXG5AbWl4aW4gcHJlZml4ZWQoJHByb3BlcnR5LCAkdmFsdWUpIHtcbiAgQGlmICR3ZWJraXQgPT0gdHJ1ZSB7XG4gICAgLXdlYmtpdC0jeyRwcm9wZXJ0eX06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBpZiAkbW96ID09IHRydWUge1xuICAgIC1tb3otI3skcHJvcGVydHl9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAaWYgJG1zID09IHRydWUge1xuICAgIC1tcy0jeyRwcm9wZXJ0eX06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBpZiAkbyA9PSB0cnVlIHtcbiAgICAtby0jeyRwcm9wZXJ0eX06ICN7JHZhbHVlfTtcbiAgfVxuXG4gICN7JHByb3BlcnR5fTogI3skdmFsdWV9O1xufVxuXG4vLyBwcmVmaXgga2V5ZnJhbWVzXG5AbWl4aW4ga2V5ZnJhbWVzKCRuYW1lKSB7XG4gIEBpZiAkd2Via2l0ID09IHRydWUge1xuICAgIEAtd2Via2l0LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAaWYgJG1veiA9PSB0cnVlIHtcbiAgICBALW1vei1rZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgQGlmICRtcyA9PSB0cnVlIHtcbiAgICBALW1zLWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAaWYgJG8gPT0gdHJ1ZSB7XG4gICAgQC1vLWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLyogU2hyaW5rICovXG5AbWl4aW4gc2hyaW5rIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZSguOSkpO1xuXHR9XG59XG4iLCIvKiBQdWxzZSAqL1xuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0tcHVsc2UpIHtcblx0MjUlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKDEuMSkpO1xuXHR9XG5cblx0NzUlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKC45KSk7XG5cdH1cbn1cblxuQG1peGluIHB1bHNlIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0tcHVsc2UpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgMXMpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGxpbmVhcik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgaW5maW5pdGUpO1xuXHR9XG59XG4iLCIvKiBQdWxzZSBHcm93ICovXG5AaW5jbHVkZSBrZXlmcmFtZXMoI3skbmFtZVNwYWNlfS1wdWxzZS1ncm93KSB7XG5cdHRvIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKDEuMSkpO1xuXHR9XG59XG5cbkBtaXhpbiBwdWxzZS1ncm93IHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0tcHVsc2UtZ3Jvdyk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGxpbmVhcik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgaW5maW5pdGUpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kaXJlY3Rpb24sIGFsdGVybmF0ZSk7XG5cdH1cbn1cbiIsIi8qIFB1bHNlIFNocmluayAqL1xuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0tcHVsc2Utc2hyaW5rKSB7XG5cdHRvIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKC45KSk7XG5cdH1cbn1cblxuQG1peGluIHB1bHNlLXNocmluayB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LXB1bHNlLXNocmluayk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGxpbmVhcik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgaW5maW5pdGUpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kaXJlY3Rpb24sIGFsdGVybmF0ZSk7XG5cdH1cbn1cbiIsIi8qIFB1c2ggKi9cbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LXB1c2gpIHtcblx0NTAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKC44KSk7XG5cdH1cblxuXHQxMDAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKDEpKTtcblx0fVxufVxuXG5AbWl4aW4gcHVzaCB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LXB1c2gpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgLjNzKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBsaW5lYXIpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIDEpO1xuXHR9XG59XG4iLCIvKiBQb3AgKi9cbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LXBvcCkge1xuXHQ1MCUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoMS4yKSk7XG5cdH1cbn1cblxuQG1peGluIHBvcCB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LXBvcCk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGxpbmVhcik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgMSk7XG5cdH1cbn1cbiIsIi8qIEJvdW5jZSBJbiAqL1xuQG1peGluIGJvdW5jZS1pbiB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRzbG93RHVyYXRpb24pO1xuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKDEuMikpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBjdWJpYy1iZXppZXIoLjQ3LDIuMDIsLjMxLC0wLjM2KSk7XG5cdH1cbn1cbiIsIi8qIEJvdW5jZSBPdXQgKi9cbkBtaXhpbiBib3VuY2Utb3V0IHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJHNsb3dEdXJhdGlvbik7XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoLjgpKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgY3ViaWMtYmV6aWVyKC40NywyLjAyLC4zMSwtMC4zNikpO1xuXHR9XG59XG4iLCIvKiBSb3RhdGUgKi9cbkBtaXhpbiByb3RhdGUge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHJvdGF0ZSg0ZGVnKSk7XG5cdH1cbn1cbiIsIi8qIEdyb3cgUm90YXRlICovXG5AbWl4aW4gZ3Jvdy1yb3RhdGUge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKDEuMSkgcm90YXRlKDRkZWcpKTtcblx0fVxufVxuIiwiLyogRmxvYXQgKi9cbkBtaXhpbiBmbG9hdCB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgtOHB4KSk7XG5cdH1cbn1cbiIsIi8qIFNpbmsgKi9cbkBtaXhpbiBzaW5rIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKDhweCkpO1xuXHR9XG59XG4iLCIvKiBCb2IgKi9cbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWJvYikge1xuXHQwJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC04cHgpKTtcblx0fVxuXHQ1MCUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgtNHB4KSk7XG5cdH1cblx0MTAwJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC04cHgpKTtcblx0fVxufVxuXG5AaW5jbHVkZSBrZXlmcmFtZXMoI3skbmFtZVNwYWNlfS1ib2ItZmxvYXQpIHtcblx0MTAwJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC04cHgpKTtcblx0fVxufVxuXG5AbWl4aW4gYm9iIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsIFwiI3skbmFtZVNwYWNlfS1ib2ItZmxvYXQsICN7JG5hbWVTcGFjZX0tYm9iXCIpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgXCIuM3MsIDEuNXNcIik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWRlbGF5LCBcIjBzLCAuM3NcIik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgXCJlYXNlLW91dCwgZWFzZS1pbi1vdXRcIik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgXCIxLCBpbmZpbml0ZVwiKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZmlsbC1tb2RlLCBcImZvcndhcmRzXCIpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kaXJlY3Rpb24sIFwibm9ybWFsLCBhbHRlcm5hdGVcIik7XG5cdH1cbn1cbiIsIi8qIEhhbmcgKi9cbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWhhbmcpIHtcblx0MCUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSg4cHgpKTtcblx0fVxuXHQ1MCUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSg0cHgpKTtcblx0fVxuXHQxMDAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoOHB4KSk7XG5cdH1cbn1cblxuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0taGFuZy1zaW5rKSB7XG5cdDEwMCUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSg4cHgpKTtcblx0fVxufVxuXG5AbWl4aW4gaGFuZyB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCBcIiN7JG5hbWVTcGFjZX0taGFuZy1zaW5rLCAjeyRuYW1lU3BhY2V9LWhhbmdcIik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCBcIi4zcywgMS41c1wiKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZGVsYXksIFwiMHMsIC4zc1wiKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBcImVhc2Utb3V0LCBlYXNlLWluLW91dFwiKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCBcIjEsIGluZmluaXRlXCIpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1maWxsLW1vZGUsIFwiZm9yd2FyZHNcIik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWRpcmVjdGlvbiwgXCJub3JtYWwsIGFsdGVybmF0ZVwiKTtcblx0fVxufVxuIiwiLyogU2tldyAqL1xuQG1peGluIHNrZXcge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNrZXcoLTEwZGVnKSk7XG5cdH1cbn1cbiIsIi8qIFNrZXcgRm9yd2FyZCAqL1xuQG1peGluIHNrZXctZm9yd2FyZCB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybS1vcmlnaW4sIDAgMTAwJSk7XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2tldygtMTBkZWcpKTtcblx0fVxufVxuIiwiLyogU2tldyBCYWNrd2FyZCAqL1xuQG1peGluIHNrZXctYmFja3dhcmQge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0tb3JpZ2luLCAwIDEwMCUpO1xuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNrZXcoMTBkZWcpKTtcblx0fVxufVxuIiwiLyogV29iYmxlIFZlcnRpY2FsICovXG5AaW5jbHVkZSBrZXlmcmFtZXMoI3skbmFtZVNwYWNlfS13b2JibGUtdmVydGljYWwpIHtcblx0MTYuNjUlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoOHB4KSk7XG5cdH1cblxuXHQzMy4zJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC02cHgpKTtcblx0fVxuXG5cdDQ5Ljk1JSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKDRweCkpO1xuXHR9XG5cblx0NjYuNiUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgtMnB4KSk7XG5cdH1cblxuXHQ4My4yNSUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgxcHgpKTtcblx0fVxuXG5cdDEwMCUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgwKSk7XG5cdH1cbn1cblxuQG1peGluIHdvYmJsZS12ZXJ0aWNhbCB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LXdvYmJsZS12ZXJ0aWNhbCk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAxcyk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1pbi1vdXQpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIDEpO1xuXHR9XG59XG4iLCIvKiBXb2JibGUgSG9yaXpvbnRhbCAqL1xuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0td29iYmxlLWhvcml6b250YWwpIHtcblx0MTYuNjUlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoOHB4KSk7XG5cdH1cblxuXHQzMy4zJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKC02cHgpKTtcblx0fVxuXG5cdDQ5Ljk1JSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKDRweCkpO1xuXHR9XG5cblx0NjYuNiUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgtMnB4KSk7XG5cdH1cblxuXHQ4My4yNSUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgxcHgpKTtcblx0fVxuXG5cdDEwMCUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgwKSk7XG5cdH1cbn1cblxuQG1peGluIHdvYmJsZS1ob3Jpem9udGFsIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0td29iYmxlLWhvcml6b250YWwpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgMXMpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2UtaW4tb3V0KTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAxKTtcblx0fVxufVxuIiwiLyogV29iYmxlIFRvIEJvdHRvbSBSaWdodCAqL1xuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0td29iYmxlLXRvLWJvdHRvbS1yaWdodCkge1xuXHQxNi42NSUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlKDhweCwgOHB4KSk7XG5cdH1cblxuXHQzMy4zJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGUoLTZweCwgLTZweCkpO1xuXHR9XG5cblx0NDkuOTUlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZSg0cHgsIDRweCkpO1xuXHR9XG5cblx0NjYuNiUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlKC0ycHgsIC0ycHgpKTtcblx0fVxuXG5cdDgzLjI1JSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGUoMXB4LCAxcHgpKTtcblx0fVxuXG5cdDEwMCUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlKDAsIDApKTtcblx0fVxufVxuXG5AbWl4aW4gd29iYmxlLXRvLWJvdHRvbS1yaWdodCB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LXdvYmJsZS10by1ib3R0b20tcmlnaHQpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgMXMpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2UtaW4tb3V0KTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAxKTtcblx0fVxufVxuIiwiLyogV29iYmxlIFRvIFRvcCBSaWdodCAqL1xuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0td29iYmxlLXRvLXRvcC1yaWdodCkge1xuICAxNi42NSUge1xuICAgIEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlKDhweCwgLThweCkpO1xuICB9XG5cbiAgMzMuMyUge1xuICAgIEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlKC02cHgsIDZweCkpO1xuICB9XG5cbiAgNDkuOTUlIHtcbiAgICBAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZSg0cHgsIC00cHgpKTtcbiAgfVxuXG4gIDY2LjYlIHtcbiAgICBAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZSgtMnB4LCAycHgpKTtcbiAgfVxuXG4gIDgzLjI1JSB7XG4gICAgQGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGUoMXB4LCAtMXB4KSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZSgwLCAwKSk7XG4gIH1cbn1cblxuQG1peGluIHdvYmJsZS10by10b3AtcmlnaHQge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXG5cdCY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LXdvYmJsZS10by10b3AtcmlnaHQpO1xuICAgICAgICBAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sIDFzKTtcbiAgICAgICAgQGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1pbi1vdXQpO1xuICAgICAgICBAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAxKTtcblx0fVxufVxuIiwiLyogV29iYmxlIFRvcCAqL1xuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0td29iYmxlLXRvcCkge1xuXHQxNi42NSUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2tldygtMTJkZWcpKTtcblx0fVxuXG5cdDMzLjMlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNrZXcoMTBkZWcpKTtcblx0fVxuXG5cdDQ5Ljk1JSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBza2V3KC02ZGVnKSk7XG5cdH1cblxuXHQ2Ni42JSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBza2V3KDRkZWcpKTtcblx0fVxuXG5cdDgzLjI1JSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBza2V3KC0yZGVnKSk7XG5cdH1cblxuXHQxMDAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNrZXcoMCkpO1xuXHR9XG59XG5cbkBtaXhpbiB3b2JibGUtdG9wIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLW9yaWdpbiwgMCAxMDAlKTtcblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0td29iYmxlLXRvcCk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAxcyk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1pbi1vdXQpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIDEpO1xuXHR9XG59XG4iLCIvKiBXb2JibGUgQm90dG9tICovXG5AaW5jbHVkZSBrZXlmcmFtZXMoI3skbmFtZVNwYWNlfS13b2JibGUtYm90dG9tKSB7XG5cdDE2LjY1JSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBza2V3KC0xMmRlZykpO1xuXHR9XG5cblx0MzMuMyUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2tldygxMGRlZykpO1xuXHR9XG5cblx0NDkuOTUlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNrZXcoLTZkZWcpKTtcblx0fVxuXG5cdDY2LjYlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNrZXcoNGRlZykpO1xuXHR9XG5cblx0ODMuMjUlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNrZXcoLTJkZWcpKTtcblx0fVxuXG5cdDEwMCUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2tldygwKSk7XG5cdH1cbn1cblxuQG1peGluIHdvYmJsZS1ib3R0b20ge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0tb3JpZ2luLCAxMDAlIDApO1xuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS13b2JibGUtYm90dG9tKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sIDFzKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLWluLW91dCk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgMSk7XG5cdH1cbn1cbiIsIi8qIFdvYmJsZSBTa2V3ICovXG5AaW5jbHVkZSBrZXlmcmFtZXMoI3skbmFtZVNwYWNlfS13b2JibGUtc2tldykge1xuXHQxNi42NSUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2tldygtMTJkZWcpKTtcblx0fVxuXG5cdDMzLjMlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNrZXcoMTBkZWcpKTtcblx0fVxuXG5cdDQ5Ljk1JSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBza2V3KC02ZGVnKSk7XG5cdH1cblxuXHQ2Ni42JSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBza2V3KDRkZWcpKTtcblx0fVxuXG5cdDgzLjI1JSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBza2V3KC0yZGVnKSk7XG5cdH1cblxuXHQxMDAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNrZXcoMCkpO1xuXHR9XG59XG5cbkBtaXhpbiB3b2JibGUtc2tldyB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LXdvYmJsZS1za2V3KTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sIDFzKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLWluLW91dCk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgMSk7XG5cdH1cbn1cbiIsIi8qIEJ1enogKi9cbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWJ1enopIHtcblx0NTAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZykpO1xuXHR9XG5cblx0MTAwJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZykpO1xuXHR9XG59XG5cbkBtaXhpbiBidXp6IHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0tYnV6eik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAuMTVzKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBsaW5lYXIpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIGluZmluaXRlKTtcblx0fVxufVxuIiwiLyogQnV6eiBPdXQgKi9cbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWJ1enotb3V0KSB7XG5cdDEwJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpKTtcblx0fVxuXG5cdDIwJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZSgtMmRlZykpO1xuXHR9XG5cblx0MzAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZykpO1xuXHR9XG5cblx0NDAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKSk7XG5cdH1cblxuXHQ1MCUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgycHgpIHJvdGF0ZSgxZGVnKSk7XG5cdH1cblxuXHQ2MCUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgtMnB4KSByb3RhdGUoLTFkZWcpKTtcblx0fVxuXG5cdDcwJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpKTtcblx0fVxuXG5cdDgwJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZykpO1xuXHR9XG5cblx0OTAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoMXB4KSByb3RhdGUoMCkpO1xuXHR9XG5cblx0MTAwJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKC0xcHgpIHJvdGF0ZSgwKSk7XG5cdH1cbn1cblxuQG1peGluIGJ1enotb3V0IHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0tYnV6ei1vdXQpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgLjc1cyk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgbGluZWFyKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAxKTtcblx0fVxufVxuIiwiLyogRm9yd2FyZCAqL1xuQG1peGluIGZvcndhcmQge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoOHB4KSk7XG5cdH1cbn1cbiIsIi8qIEJhY2t3YXJkICovXG5AbWl4aW4gYmFja3dhcmQge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoLThweCkpO1xuXHR9XG59XG4iLCIvKiBGYWRlICovXG5AbWl4aW4gZmFkZSB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIFwiY29sb3IsIGJhY2tncm91bmQtY29sb3JcIik7XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmVDb2xvcjtcblx0XHRjb2xvcjogd2hpdGU7XG5cdH1cbn1cbiIsIi8vIERFRkFVTFQgT1BUSU9OU1xuXG4vLyBQcmVmaXggZm9yIEhvdmVyIGNsYXNzIG5hbWVzXG4kbmFtZVNwYWNlOiAnaHZyJyAhZGVmYXVsdDtcblxuLy8gRHVyYXRpb25zXG4kZmFzdER1cmF0aW9uOiAuMXMgIWRlZmF1bHQ7XG4kbWVkaXVtRHVyYXRpb246IC4zcyAhZGVmYXVsdDtcbiRzbG93RHVyYXRpb246IC41cyAhZGVmYXVsdDtcblxuLy8gQ29sb3JzXG4kcHJpbWFyeUNvbG9yOiAjZTFlMWUxICFkZWZhdWx0O1xuJHNlY29uZGFyeUNvbG9yOiAjNjY2ICFkZWZhdWx0O1xuJGhpZ2hsaWdodENvbG9yOiAjY2NjICFkZWZhdWx0O1xuJGFjdGl2ZUNvbG9yOiAjMjA5OEQxICFkZWZhdWx0O1xuJHNoYWRvd0NvbG9yOiByZ2JhKDAsIDAsIDAsIC42KSAhZGVmYXVsdDtcblxuLy8gU3BlZWNoIGJ1YmJsZXMgb3B0aW9uc1xuJHRpcFdpZHRoOiAxMHB4ICFkZWZhdWx0OyAgLy90aGUgd2lkdGggb2YgdGhlIHNwZWVjaCBidWJibGUgdGlwXG4kdGlwSGVpZ2h0OiAxMHB4ICFkZWZhdWx0OyAvL3RoZSBoZWlnaHQgb2YgdGhlIHNwZWVjaCBidWJibGUgdGlwXG4kdGlwQ29sb3I6ICRwcmltYXJ5Q29sb3IgIWRlZmF1bHQ7XG5cbi8vIEFycm93cyBvcHRpb25zXG4kc3BhY2VCZXR3ZWVuVGV4dEFuZEFycm93czogMi4yZW0gIWRlZmF1bHQ7XG5cbi8vIEN1cmwgZGltZW5zaW9uc1xuJGN1cmxXaWR0aDogMjVweCAhZGVmYXVsdDtcbiRjdXJsSGVpZ2h0OiAyNXB4ICFkZWZhdWx0O1xuXG4vLyBDdXJsIGNvbG9yc1xuJHJldmVhbEFyZWFDb2xvcjogd2hpdGUgIWRlZmF1bHQ7ICAgIC8vIHJldmVhbCBhcmVhIGJlaGluZCB0aGUgY3VybFxuJGN1cmxMaW5lQ29sb3I6ICNhYWEgIWRlZmF1bHQ7ICAgICAgIC8vIGNyZWFzZSBsaW5lXG4kY3VybFRyYW5zaXRpb25Db2xvcjogI2NjYyAhZGVmYXVsdDtcdC8vIGNvbG9yIHRyYW5zaXRpb25pbmcgZnJvbSBjcmVhc2UgbGluZSB0byBmaW5hbCBjb2xvclxuJGN1cmxMYXN0Q29sb3I6IHdoaXRlICFkZWZhdWx0O1x0XHQvLyBmaW5hbCBjb2xvciBvZiB0aGUgYmFjayBvZiB0aGUgY3VybFxuXG4vLyBCcm93c2VyIFByZWZpeGVzIC0gV2hpY2ggQ1NTIHByZWZpeGVzIHNob3VsZCBiZSB1c2VkP1xuJHdlYmtpdDogdHJ1ZSAhZGVmYXVsdDtcbiRtb3o6IGZhbHNlICFkZWZhdWx0O1xuJG1zOiBmYWxzZSAhZGVmYXVsdDtcbiRvOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gQ29tcGlsZSB3aXRoIG9yIHdpdGhvdXQgY2xhc3Nlc1xuJGluY2x1ZGVDbGFzc2VzOiB0cnVlICFkZWZhdWx0O1xuIiwiLyogQmFjayBQdWxzZSAqL1xuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0tYmFjay1wdWxzZSkge1xuXHQ1MCUge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzIsIDE1MiwgMjA5LCAuNzUpO1xuXHR9XG59XG5cbkBtaXhpbiBiYWNrLXB1bHNlIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJHNsb3dEdXJhdGlvbik7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIFwiY29sb3IsIGJhY2tncm91bmQtY29sb3JcIik7XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LWJhY2stcHVsc2UpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgMXMpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kZWxheSwgJHNsb3dEdXJhdGlvbik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgbGluZWFyKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCBpbmZpbml0ZSk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZUNvbG9yO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzIsIDE1MiwgMjA5LCAxKTtcblx0XHRjb2xvcjogd2hpdGU7XG5cdH1cbn1cbiIsIi8qIFN3ZWVwIFRvIFJpZ2h0ICovXG5AbWl4aW4gc3dlZXAtdG8tcmlnaHQge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGNvbG9yKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogLTE7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGJhY2tncm91bmQ6ICRhY3RpdmVDb2xvcjtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlWCgwKSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLW9yaWdpbiwgMCA1MCUpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xuXHR9XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdGNvbG9yOiB3aGl0ZTtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGVYKDEpKTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIFN3ZWVwIFRvIExlZnQgKi9cbkBtaXhpbiBzd2VlcC10by1sZWZ0IHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBjb2xvcik7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IC0xO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRiYWNrZ3JvdW5kOiAkYWN0aXZlQ29sb3I7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZVgoMCkpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybS1vcmlnaW4sIDEwMCUgNTAlKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRjb2xvcjogd2hpdGU7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlWCgxKSk7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBTd2VlcCBUbyBCb3R0b20gKi9cbkBtaXhpbiBzd2VlcC10by1ib3R0b20ge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGNvbG9yKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogLTE7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGJhY2tncm91bmQ6ICRhY3RpdmVDb2xvcjtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlWSgwKSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLW9yaWdpbiwgNTAlIDApO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xuXHR9XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdGNvbG9yOiB3aGl0ZTtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGVZKDEpKTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIFN3ZWVwIFRvIFRvcCAqL1xuQG1peGluIHN3ZWVwLXRvLXRvcCB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgY29sb3IpO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIlwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAtMTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0YmFja2dyb3VuZDogJGFjdGl2ZUNvbG9yO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGVZKDApKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0tb3JpZ2luLCA1MCUgMTAwJSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZVkoMSkpO1xuXHRcdH1cblx0fVxufVxuIiwiLyogQm91bmNlIFRvIFJpZ2h0ICovXG5AbWl4aW4gYm91bmNlLXRvLXJpZ2h0IHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBjb2xvcik7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRzbG93RHVyYXRpb24pO1xuXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIlwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAtMTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0YmFja2dyb3VuZDogJGFjdGl2ZUNvbG9yO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGVYKDApKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0tb3JpZ2luLCAwIDUwJSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkc2xvd0R1cmF0aW9uKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xuXHR9XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdGNvbG9yOiB3aGl0ZTtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGVYKDEpKTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBjdWJpYy1iZXppZXIoLjUyLDEuNjQsLjM3LC42NikpO1xuXHRcdH1cblx0fVxufVxuIiwiLyogQm91bmNlIFRvIExlZnQgKi9cbkBtaXhpbiBib3VuY2UtdG8tbGVmdCB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgY29sb3IpO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkc2xvd0R1cmF0aW9uKTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogLTE7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGJhY2tncm91bmQ6ICRhY3RpdmVDb2xvcjtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlWCgwKSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLW9yaWdpbiwgMTAwJSA1MCUpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJHNsb3dEdXJhdGlvbik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRjb2xvcjogd2hpdGU7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlWCgxKSk7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgY3ViaWMtYmV6aWVyKC41MiwxLjY0LC4zNywuNjYpKTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIEJvdW5jZSBUbyBCb3R0b20gKi9cbkBtaXhpbiBib3VuY2UtdG8tYm90dG9tIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBjb2xvcik7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRzbG93RHVyYXRpb24pO1xuXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIlwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAtMTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0YmFja2dyb3VuZDogJGFjdGl2ZUNvbG9yO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGVZKDApKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0tb3JpZ2luLCA1MCUgMCk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkc2xvd0R1cmF0aW9uKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xuXHR9XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdGNvbG9yOiB3aGl0ZTtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGVZKDEpKTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBjdWJpYy1iZXppZXIoLjUyLDEuNjQsLjM3LC42NikpO1xuXHRcdH1cblx0fVxufVxuIiwiLyogQm91bmNlIFRvIFRvcCAqL1xuQG1peGluIGJvdW5jZS10by10b3Age1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGNvbG9yKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJHNsb3dEdXJhdGlvbik7XG5cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IC0xO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRiYWNrZ3JvdW5kOiAkYWN0aXZlQ29sb3I7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZVkoMCkpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybS1vcmlnaW4sIDUwJSAxMDAlKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRzbG93RHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZVkoMSkpO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGN1YmljLWJlemllciguNTIsMS42NCwuMzcsLjY2KSk7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBSYWRpYWwgT3V0ICovXG5AbWl4aW4gcmFkaWFsLW91dCB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0YmFja2dyb3VuZDogJHByaW1hcnlDb2xvcjtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgY29sb3IpO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIlwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAtMTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0YmFja2dyb3VuZDogJGFjdGl2ZUNvbG9yO1xuXHRcdGJvcmRlci1yYWRpdXM6IDEwMCU7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZSgwKSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZSgyKSk7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBSYWRpYWwgSW4gKi9cbkBtaXhpbiByYWRpYWwtaW4ge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdGJhY2tncm91bmQ6ICRhY3RpdmVDb2xvcjtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgY29sb3IpO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIlwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAtMTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0YmFja2dyb3VuZDogJHByaW1hcnlDb2xvcjtcblx0XHRib3JkZXItcmFkaXVzOiAxMDAlO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoMikpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xuXHR9XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdGNvbG9yOiB3aGl0ZTtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoMCkpO1xuXHRcdH1cblx0fVxufVxuIiwiLyogUmVjdGFuZ2xlIEluICovXG5AbWl4aW4gcmVjdGFuZ2xlLWluIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRiYWNrZ3JvdW5kOiAkYWN0aXZlQ29sb3I7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGNvbG9yKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogLTE7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5Q29sb3I7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZSgxKSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZSgwKSk7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBSZWN0YW5nbGUgT3V0ICovXG5AbWl4aW4gcmVjdGFuZ2xlLW91dCB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0YmFja2dyb3VuZDogJHByaW1hcnlDb2xvcjtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgY29sb3IpO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIlwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAtMTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0YmFja2dyb3VuZDogJGFjdGl2ZUNvbG9yO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoMCkpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xuXHR9XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdGNvbG9yOiB3aGl0ZTtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoMSkpO1xuXHRcdH1cblx0fVxufVxuIiwiLyogU2h1dHRlciBJbiBIb3Jpem9udGFsICovXG5AbWl4aW4gc2h1dHRlci1pbi1ob3Jpem9udGFsIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRiYWNrZ3JvdW5kOiAkYWN0aXZlQ29sb3I7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGNvbG9yKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogLTE7XG5cdFx0dG9wOiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJhY2tncm91bmQ6ICRwcmltYXJ5Q29sb3I7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZVgoMSkpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybS1vcmlnaW4sIDUwJSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZVgoMCkpO1xuXHRcdH1cblx0fVxufVxuIiwiLyogU2h1dHRlciBPdXQgSG9yaXpvbnRhbCAqL1xuQG1peGluIHNodXR0ZXItb3V0LWhvcml6b250YWwge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGJhY2tncm91bmQ6ICRwcmltYXJ5Q29sb3I7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGNvbG9yKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogLTE7XG5cdFx0dG9wOiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJhY2tncm91bmQ6ICRhY3RpdmVDb2xvcjtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlWCgwKSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLW9yaWdpbiwgNTAlKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRjb2xvcjogd2hpdGU7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlWCgxKSk7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBTaHV0dGVyIEluIFZlcnRpY2FsICovXG5AbWl4aW4gc2h1dHRlci1pbi12ZXJ0aWNhbCB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0YmFja2dyb3VuZDogJGFjdGl2ZUNvbG9yO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBjb2xvcik7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IC0xO1xuXHRcdHRvcDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeUNvbG9yO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGVZKDEpKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0tb3JpZ2luLCA1MCUpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xuXHR9XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdGNvbG9yOiB3aGl0ZTtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGVZKDApKTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIFNodXR0ZXIgT3V0IFZlcnRpY2FsICovXG5AbWl4aW4gc2h1dHRlci1vdXQtdmVydGljYWwge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGJhY2tncm91bmQ6ICRwcmltYXJ5Q29sb3I7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGNvbG9yKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogLTE7XG5cdFx0dG9wOiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJhY2tncm91bmQ6ICRhY3RpdmVDb2xvcjtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlWSgwKSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLW9yaWdpbiwgNTAlKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRjb2xvcjogd2hpdGU7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlWSgxKSk7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBCb3JkZXIgRmFkZSAqL1xuQG1peGluIGJvcmRlci1mYWRlIHtcblx0JGJvcmRlcldpZHRoOiA0cHg7XG5cblx0QGluY2x1ZGUgaGFja3MoKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgYm94LXNoYWRvdyk7XG5cdGJveC1zaGFkb3c6XG5cdFx0XHRpbnNldCAwIDAgMCAkYm9yZGVyV2lkdGggJHByaW1hcnlDb2xvcixcblx0XHRcdDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsgLyogSGFjayB0byBpbXByb3ZlIGFsaWFzaW5nIG9uIG1vYmlsZS90YWJsZXQgZGV2aWNlcyAqL1xuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRib3gtc2hhZG93OlxuXHRcdFx0aW5zZXQgMCAwIDAgJGJvcmRlcldpZHRoICRhY3RpdmVDb2xvcixcblx0XHRcdDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsgLyogSGFjayB0byBpbXByb3ZlIGFsaWFzaW5nIG9uIG1vYmlsZS90YWJsZXQgZGV2aWNlcyAqL1xuXHR9XG59XG4iLCIvKiBIb2xsb3cgKi9cbkBtaXhpbiBob2xsb3cge1xuXHQkYm9yZGVyV2lkdGg6IDRweDtcblxuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBiYWNrZ3JvdW5kKTtcblx0Ym94LXNoYWRvdzpcblx0XHRpbnNldCAwIDAgMCAkYm9yZGVyV2lkdGggJHByaW1hcnlDb2xvcixcblx0XHQwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7IC8qIEhhY2sgdG8gaW1wcm92ZSBhbGlhc2luZyBvbiBtb2JpbGUvdGFibGV0IGRldmljZXMgKi9cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0YmFja2dyb3VuZDogbm9uZTtcblx0fVxufVxuIiwiLyogVHJpbSAqL1xuQG1peGluIHRyaW0ge1xuXHQkb3V0ZXJCb3JkZXJXaWR0aDogNHB4O1xuXHQkaW5uZXJCb3JkZXJXaWR0aDogNHB4O1xuXG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvcmRlcjogd2hpdGUgc29saWQgJGlubmVyQm9yZGVyV2lkdGg7XG5cdFx0dG9wOiAkb3V0ZXJCb3JkZXJXaWR0aDtcblx0XHRsZWZ0OiAkb3V0ZXJCb3JkZXJXaWR0aDtcblx0XHRyaWdodDogJG91dGVyQm9yZGVyV2lkdGg7XG5cdFx0Ym90dG9tOiAkb3V0ZXJCb3JkZXJXaWR0aDtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgb3BhY2l0eSk7XG5cdH1cblxuXHQmOmhvdmVyOmJlZm9yZSxcblx0Jjpmb2N1czpiZWZvcmUsXG5cdCY6YWN0aXZlOmJlZm9yZSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxufVxuIiwiLyogUmlwcGxlIE91dCAqL1xuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0tcmlwcGxlLW91dCkge1xuXHQxMDAlIHtcblx0XHR0b3A6IC0oNnB4ICsgNnB4KTtcblx0XHRyaWdodDogLSg2cHggKyA2cHgpO1xuXHRcdGJvdHRvbTogLSg2cHggKyA2cHgpO1xuXHRcdGxlZnQ6IC0oNnB4ICsgNnB4KTtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG59XG5cbkBtaXhpbiByaXBwbGUtb3V0IHtcblx0JG91dGVyQm9yZGVyV2lkdGg6IDZweDtcblx0JGlubmVyQm9yZGVyV2lkdGg6IDZweDtcblxuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRib3JkZXI6ICRwcmltYXJ5Q29sb3Igc29saWQgJG91dGVyQm9yZGVyV2lkdGg7XG5cdFx0dG9wOiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgMXMpO1xuXHR9XG5cblx0Jjpob3ZlcjpiZWZvcmUsXG5cdCY6Zm9jdXM6YmVmb3JlLFxuXHQmOmFjdGl2ZTpiZWZvcmUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LXJpcHBsZS1vdXQpO1xuXHR9XG59XG4iLCIvKiBSaXBwbGUgSW4gKi9cbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LXJpcHBsZS1pbikge1xuXHQxMDAlIHtcblx0XHR0b3A6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxufVxuXG5AbWl4aW4gcmlwcGxlLWluIHtcblx0JG91dGVyQm9yZGVyV2lkdGg6IDRweDtcblx0JGlubmVyQm9yZGVyV2lkdGg6IDRweDtcblxuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRib3JkZXI6ICRwcmltYXJ5Q29sb3Igc29saWQgJG91dGVyQm9yZGVyV2lkdGg7XG5cdFx0dG9wOiAtKDZweCArIDZweCk7XG5cdFx0cmlnaHQ6IC0oNnB4ICsgNnB4KTtcblx0XHRib3R0b206IC0oNnB4ICsgNnB4KTtcblx0XHRsZWZ0OiAtKDZweCArIDZweCk7XG5cdFx0b3BhY2l0eTogMDtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sIDFzKTtcblx0fVxuXG5cdCY6aG92ZXI6YmVmb3JlLFxuXHQmOmZvY3VzOmJlZm9yZSxcblx0JjphY3RpdmU6YmVmb3JlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS1yaXBwbGUtaW4pO1xuXHR9XG59XG4iLCIvKiBPdXRsaW5lIE91dCAqL1xuQG1peGluIG91dGxpbmUtb3V0IHtcblx0JG91dGVyQm9yZGVyV2lkdGg6IDRweDtcblx0JGlubmVyQm9yZGVyV2lkdGg6IDRweDtcblxuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRib3JkZXI6ICRwcmltYXJ5Q29sb3Igc29saWQgJG91dGVyQm9yZGVyV2lkdGg7XG5cdFx0dG9wOiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sIC4zcyk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgXCJ0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnRcIik7XG5cdH1cblxuXHQmOmhvdmVyOmJlZm9yZSxcblx0Jjpmb2N1czpiZWZvcmUsXG5cdCY6YWN0aXZlOmJlZm9yZSB7XG5cdFx0dG9wOiAtKCRvdXRlckJvcmRlcldpZHRoICsgJGlubmVyQm9yZGVyV2lkdGgpO1xuXHRcdHJpZ2h0OiAtKCRvdXRlckJvcmRlcldpZHRoICsgJGlubmVyQm9yZGVyV2lkdGgpO1xuXHRcdGJvdHRvbTogLSgkb3V0ZXJCb3JkZXJXaWR0aCArICRpbm5lckJvcmRlcldpZHRoKTtcblx0XHRsZWZ0OiAtKCRvdXRlckJvcmRlcldpZHRoICsgJGlubmVyQm9yZGVyV2lkdGgpO1xuXHR9XG59XG4iLCIvKiBPdXRsaW5lIEluICovXG5AbWl4aW4gb3V0bGluZS1pbiB7XG5cdCRvdXRlckJvcmRlcldpZHRoOiA0cHg7XG5cdCRpbm5lckJvcmRlcldpZHRoOiA0cHg7XG5cblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdCY6YmVmb3JlIHtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRjb250ZW50OiAnJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0Ym9yZGVyOiAkcHJpbWFyeUNvbG9yIHNvbGlkICRvdXRlckJvcmRlcldpZHRoO1xuXHRcdHRvcDogLSgkb3V0ZXJCb3JkZXJXaWR0aCArICRpbm5lckJvcmRlcldpZHRoKSAqIDI7XG5cdFx0cmlnaHQ6IC0oJG91dGVyQm9yZGVyV2lkdGggKyAkaW5uZXJCb3JkZXJXaWR0aCkgKiAyO1xuXHRcdGJvdHRvbTogLSgkb3V0ZXJCb3JkZXJXaWR0aCArICRpbm5lckJvcmRlcldpZHRoKSAqIDI7XG5cdFx0bGVmdDogLSgkb3V0ZXJCb3JkZXJXaWR0aCArICRpbm5lckJvcmRlcldpZHRoKSAqIDI7XG5cdFx0b3BhY2l0eTogMDtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAuM3MpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIFwidG9wLCByaWdodCwgYm90dG9tLCBsZWZ0XCIpO1xuXHR9XG5cblx0Jjpob3ZlcjpiZWZvcmUsXG5cdCY6Zm9jdXM6YmVmb3JlLFxuXHQmOmFjdGl2ZTpiZWZvcmUge1xuXHRcdHRvcDogLSgkb3V0ZXJCb3JkZXJXaWR0aCArICRpbm5lckJvcmRlcldpZHRoKTtcblx0XHRyaWdodDogLSgkb3V0ZXJCb3JkZXJXaWR0aCArICRpbm5lckJvcmRlcldpZHRoKTtcblx0XHRib3R0b206IC0oJG91dGVyQm9yZGVyV2lkdGggKyAkaW5uZXJCb3JkZXJXaWR0aCk7XG5cdFx0bGVmdDogLSgkb3V0ZXJCb3JkZXJXaWR0aCArICRpbm5lckJvcmRlcldpZHRoKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG4iLCIvKiBSb3VuZCBDb3JuZXJzICovXG5AbWl4aW4gcm91bmQtY29ybmVycyB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGJvcmRlci1yYWRpdXMpO1xuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRib3JkZXItcmFkaXVzOiAxZW07XG5cdH1cbn1cbiIsIi8qIFVuZGVybGluZSBGcm9tIExlZnQgKi9cbkBtaXhpbiB1bmRlcmxpbmUtZnJvbS1sZWZ0IHtcblx0JGR1cmF0aW9uOiAkbWVkaXVtRHVyYXRpb247XG5cblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIlwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAtMTtcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAxMDAlO1xuXHRcdGJvdHRvbTogMDtcblx0XHRiYWNrZ3JvdW5kOiAkYWN0aXZlQ29sb3I7XG5cdFx0aGVpZ2h0OiA0cHg7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgXCJyaWdodFwiKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkZHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRyaWdodDogMDtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIFVuZGVybGluZSBGcm9tIENlbnRlciAqL1xuQG1peGluIHVuZGVybGluZS1mcm9tLWNlbnRlciB7XG5cdCRkdXJhdGlvbjogJG1lZGl1bUR1cmF0aW9uO1xuXG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogLTE7XG5cdFx0bGVmdDogNTAlO1xuXHRcdHJpZ2h0OiA1MCU7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGJhY2tncm91bmQ6ICRhY3RpdmVDb2xvcjtcblx0XHRoZWlnaHQ6IDRweDtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBcImxlZnQsIHJpZ2h0XCIpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRkdXJhdGlvbik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRyaWdodDogMDtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIFVuZGVybGluZSBGcm9tIFJpZ2h0ICovXG5AbWl4aW4gdW5kZXJsaW5lLWZyb20tcmlnaHQge1xuXHQkZHVyYXRpb246ICRtZWRpdW1EdXJhdGlvbjtcblxuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IC0xO1xuXHRcdGxlZnQ6IDEwMCU7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGJhY2tncm91bmQ6ICRhY3RpdmVDb2xvcjtcblx0XHRoZWlnaHQ6IDRweDtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBcImxlZnRcIik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJGR1cmF0aW9uKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xuXHR9XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0bGVmdDogMDtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIE92ZXJsaW5lIEZyb20gTGVmdCAqL1xuQG1peGluIG92ZXJsaW5lLWZyb20tbGVmdCB7XG5cdCRkdXJhdGlvbjogJG1lZGl1bUR1cmF0aW9uO1xuXG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogLTE7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMTAwJTtcblx0XHR0b3A6IDA7XG5cdFx0YmFja2dyb3VuZDogJGFjdGl2ZUNvbG9yO1xuXHRcdGhlaWdodDogNHB4O1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIFwicmlnaHRcIik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJGR1cmF0aW9uKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xuXHR9XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBPdmVybGluZSBGcm9tIENlbnRlciAqL1xuQG1peGluIG92ZXJsaW5lLWZyb20tY2VudGVyIHtcblx0JGR1cmF0aW9uOiAkbWVkaXVtRHVyYXRpb247XG5cblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IC0xO1xuXHRcdGxlZnQ6IDUwJTtcblx0XHRyaWdodDogNTAlO1xuXHRcdHRvcDogMDtcblx0XHRiYWNrZ3JvdW5kOiAkYWN0aXZlQ29sb3I7XG5cdFx0aGVpZ2h0OiA0cHg7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgXCJsZWZ0LCByaWdodFwiKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkZHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBPdmVybGluZSBGcm9tIFJpZ2h0ICovXG5AbWl4aW4gb3ZlcmxpbmUtZnJvbS1yaWdodCB7XG5cdCRkdXJhdGlvbjogJG1lZGl1bUR1cmF0aW9uO1xuXG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogLTE7XG5cdFx0bGVmdDogMTAwJTtcblx0XHRyaWdodDogMDtcblx0XHR0b3A6IDA7XG5cdFx0YmFja2dyb3VuZDogJGFjdGl2ZUNvbG9yO1xuXHRcdGhlaWdodDogNHB4O1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIFwibGVmdFwiKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkZHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdH1cblx0fVxufVxuIiwiLyogUmV2ZWFsICovXG5AbWl4aW4gcmV2ZWFsIHtcblx0JGR1cmF0aW9uOiAjeyRmYXN0RHVyYXRpb259O1xuXG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogLTE7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHR0b3A6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGJvcmRlci1jb2xvcjogI3skYWN0aXZlQ29sb3J9O1xuXHRcdGJvcmRlci1zdHlsZTogc29saWQ7XG5cdFx0Ym9yZGVyLXdpZHRoOiAwO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGJvcmRlci13aWR0aCk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgI3skZHVyYXRpb259KTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xuXHR9XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKDApKTtcblx0XHRcdGJvcmRlci13aWR0aDogNHB4O1xuXHRcdH1cblx0fVxufVxuIiwiLyogVW5kZXJsaW5lIFJldmVhbCAqL1xuQG1peGluIHVuZGVybGluZS1yZXZlYWwge1xuXHQkZHVyYXRpb246ICRtZWRpdW1EdXJhdGlvbjtcblxuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IC0xO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGJhY2tncm91bmQ6ICRhY3RpdmVDb2xvcjtcblx0XHRoZWlnaHQ6IDRweDtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoNHB4KSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkZHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoMCkpO1xuXHRcdH1cblx0fVxufVxuIiwiLyogT3ZlcmxpbmUgUmV2ZWFsICovXG5AbWl4aW4gb3ZlcmxpbmUtcmV2ZWFsIHtcblx0JGR1cmF0aW9uOiAkbWVkaXVtRHVyYXRpb247XG5cblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIlwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAtMTtcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdHRvcDogMDtcblx0XHRiYWNrZ3JvdW5kOiAkYWN0aXZlQ29sb3I7XG5cdFx0aGVpZ2h0OiA0cHg7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC00cHgpKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRkdXJhdGlvbik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgwKSk7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBHbG93ICovXG5AbWl4aW4gZ2xvdyB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGJveC1zaGFkb3cpO1xuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRib3gtc2hhZG93OiAwIDAgOHB4ICRzaGFkb3dDb2xvcjtcblx0fVxufVxuIiwiLyogU2hhZG93ICovXG5AbWl4aW4gc2hhZG93IHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgYm94LXNoYWRvdyk7XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdGJveC1zaGFkb3c6IDAgMTBweCAxMHB4IC0xMHB4IHJnYmEoMCwgMCwgMCwgMC41KTtcblx0fVxufVxuIiwiLyogR3JvdyBTaGFkb3cgKi9cbkBtaXhpbiBncm93LXNoYWRvdyB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIFwiYm94LXNoYWRvdywgdHJhbnNmb3JtXCIpO1xuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRib3gtc2hhZG93OiAwIDEwcHggMTBweCAtMTBweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZSgxLjEpKTtcblx0fVxufVxuIiwiLyogQm94IFNoYWRvdyBPdXRzZXQgKi9cbkBtaXhpbiBib3gtc2hhZG93LW91dHNldCB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIGJveC1zaGFkb3cpO1xuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRib3gtc2hhZG93OiAycHggMnB4IDJweCAkc2hhZG93Q29sb3I7XG5cdH1cbn1cbiIsIi8qIEJveCBTaGFkb3cgSW5zZXQgKi9cbkBtaXhpbiBib3gtc2hhZG93LWluc2V0IHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgYm94LXNoYWRvdyk7XG5cblx0Ym94LXNoYWRvdzogaW5zZXQgMCAwIDAgJHNoYWRvd0NvbG9yLFxuXHRcdDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwKTsgLyogSGFjayB0byBpbXByb3ZlIGFsaWFzaW5nIG9uIG1vYmlsZS90YWJsZXQgZGV2aWNlcyAqL1xuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblx0XHRib3gtc2hhZG93OiBpbnNldCAycHggMnB4IDJweCAkc2hhZG93Q29sb3IsXG5cdFx0MCAwIDFweCByZ2JhKDAsIDAsIDAsIDApOyAvKiBIYWNrIHRvIGltcHJvdmUgYWxpYXNpbmcgb24gbW9iaWxlL3RhYmxldCBkZXZpY2VzICovXG5cdH1cbn1cbiIsIi8qIEZsb2F0IFNoYWRvdyAqL1xuQG1peGluIGZsb2F0LXNoYWRvdyB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcblxuXHQmOmJlZm9yZSB7XG5cdCAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdCAgcG9zaXRpb246IGFic29sdXRlO1xuXHQgIHotaW5kZXg6IC0xO1xuXHQgIGNvbnRlbnQ6ICcnO1xuXHQgIHRvcDogMTAwJTtcblx0ICBsZWZ0OiA1JTtcblx0ICBoZWlnaHQ6IDEwcHg7XG5cdCAgd2lkdGg6IDkwJTtcblx0ICBvcGFjaXR5OiAwO1xuXHQgIGJhY2tncm91bmQ6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNlbnRlciwgZWxsaXBzZSwgcmdiYSgwLDAsMCwuMzUpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDgwJSk7XG5cdCAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgYXQgY2VudGVyLCByZ2JhKDAsMCwwLC4zNSkgMCUscmdiYSgwLDAsMCwwKSA4MCUpOyAvKiBXM0MgKi9cblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIFwidHJhbnNmb3JtLCBvcGFjaXR5XCIpO1xuXHR9XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgtNXB4KSk7IC8qIG1vdmUgdGhlIGVsZW1lbnQgdXAgYnkgNXB4ICovXG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKDVweCkpOyAvKiBtb3ZlIHRoZSBlbGVtZW50IGRvd24gYnkgNXB4IChpdCB3aWxsIHN0YXkgaW4gcGxhY2UgYmVjYXVzZSBpdCdzIGF0dGFjaGVkIHRvIHRoZSBlbGVtZW50IHRoYXQgYWxzbyBtb3ZlcyB1cCA1cHgpICovXG5cdFx0fVxuXHR9XG59XG4iLCIvKiBTaGFkb3cgUmFkaWFsICovXG5AbWl4aW4gc2hhZG93LXJhZGlhbCB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQmOmJlZm9yZSxcblx0JjphZnRlciB7XG5cdCAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdCAgY29udGVudDogJyc7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGhlaWdodDogNXB4O1xuICAgICAgb3BhY2l0eTogMDtcblx0ICBAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHQgIEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIG9wYWNpdHkpO1xuXHR9XG5cblx0JjpiZWZvcmUge1xuXHQgIGJvdHRvbTogMTAwJTtcblx0ICBiYWNrZ3JvdW5kOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudCg1MCUgMTUwJSwgZWxsaXBzZSwgJHNoYWRvd0NvbG9yIDAlLCByZ2JhKDAsIDAsIDAsIDApIDgwJSk7XG4gICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSBhdCA1MCUgMTUwJSwgJHNoYWRvd0NvbG9yIDAlLCByZ2JhKDAsIDAsIDAsIDApIDgwJSk7XG5cdH1cblxuXHQmOmFmdGVyIHtcblx0ICB0b3A6IDEwMCU7XG5cdCAgYmFja2dyb3VuZDogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoNTAlIC01MCUsIGVsbGlwc2UsICRzaGFkb3dDb2xvciAwJSwgcmdiYSgwLCAwLCAwLCAwKSA4MCUpO1xuXHQgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IDUwJSAtNTAlLCAkc2hhZG93Q29sb3IgMCUsIHJnYmEoMCwgMCwgMCwgMCkgODAlKTtcblx0fVxuXG5cdCY6aG92ZXI6YmVmb3JlLFxuXHQmOmZvY3VzOmJlZm9yZSxcblx0JjphY3RpdmU6YmVmb3JlLFxuXHQmOmhvdmVyOmFmdGVyLFxuXHQmOmZvY3VzOmFmdGVyLFxuXHQmOmFjdGl2ZTphZnRlciB7XG5cdCAgb3BhY2l0eTogMTtcblx0fVxufVxuIiwiLyogQnViYmxlIFRvcCAqL1xuQG1peGluIGJ1YmJsZS10b3Age1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0JjpiZWZvcmUge1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAtMTtcblx0XHRjb250ZW50OiAnJztcblx0XHRib3JkZXItc3R5bGU6IHNvbGlkO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcblx0XHRsZWZ0OiBjYWxjKDUwJSAtICN7JHRpcFdpZHRofSk7XG5cdFx0dG9wOiAwO1xuXHRcdGJvcmRlci13aWR0aDogMCAkdGlwV2lkdGggJHRpcEhlaWdodCAkdGlwV2lkdGg7XG5cdFx0Ym9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdGlwQ29sb3IgdHJhbnNwYXJlbnQ7XG5cdH1cblxuXHQmOmhvdmVyOmJlZm9yZSxcblx0Jjpmb2N1czpiZWZvcmUsXG5cdCY6YWN0aXZlOmJlZm9yZSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC0oJHRpcEhlaWdodCkpKTtcblx0fVxufVxuIiwiLyogQnViYmxlIFJpZ2h0ICovXG5AbWl4aW4gYnViYmxlLXJpZ2h0IHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdCY6YmVmb3JlIHtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogLTE7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cdFx0dG9wOiBjYWxjKDUwJSAtICN7JHRpcEhlaWdodH0pO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJvcmRlci13aWR0aDogJHRpcEhlaWdodCAwICR0aXBIZWlnaHQgJHRpcFdpZHRoO1xuXHRcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRpcENvbG9yO1xuXHR9XG5cblx0Jjpob3ZlcjpiZWZvcmUsXG5cdCY6Zm9jdXM6YmVmb3JlLFxuXHQmOmFjdGl2ZTpiZWZvcmUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgkdGlwV2lkdGgpKTtcblx0fVxufVxuIiwiLyogQnViYmxlIEJvdHRvbSAqL1xuQG1peGluIGJ1YmJsZS1ib3R0b20ge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0JjpiZWZvcmUge1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAtMTtcblx0XHRjb250ZW50OiAnJztcblx0XHRib3JkZXItc3R5bGU6IHNvbGlkO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcblx0XHRsZWZ0OiBjYWxjKDUwJSAtICN7JHRpcFdpZHRofSk7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGJvcmRlci13aWR0aDogJHRpcEhlaWdodCAkdGlwV2lkdGggMCAkdGlwV2lkdGg7XG5cdFx0Ym9yZGVyLWNvbG9yOiAkdGlwQ29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG5cdH1cblxuXHQmOmhvdmVyOmJlZm9yZSxcblx0Jjpmb2N1czpiZWZvcmUsXG5cdCY6YWN0aXZlOmJlZm9yZSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKCR0aXBIZWlnaHQpKTtcblx0fVxufVxuIiwiLyogQnViYmxlIExlZnQgKi9cbkBtaXhpbiBidWJibGUtbGVmdCB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IC0xO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdGJvcmRlci1zdHlsZTogc29saWQ7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xuXHRcdHRvcDogY2FsYyg1MCUgLSAjeyR0aXBIZWlnaHR9KTtcblx0XHRsZWZ0OiAwO1xuXHRcdGJvcmRlci13aWR0aDogJHRpcEhlaWdodCAkdGlwV2lkdGggJHRpcEhlaWdodCAwO1xuXHRcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRpcENvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuXHR9XG5cblx0Jjpob3ZlcjpiZWZvcmUsXG5cdCY6Zm9jdXM6YmVmb3JlLFxuXHQmOmFjdGl2ZTpiZWZvcmUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgtKCR0aXBXaWR0aCkpKTtcblx0fVxufVxuIiwiLyogQnViYmxlIEZsb2F0IFRvcCAqL1xuQG1peGluIGJ1YmJsZS1mbG9hdC10b3Age1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cblx0JjpiZWZvcmUge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAtMTtcblx0XHRjb250ZW50OiAnJztcblx0XHRsZWZ0OiBjYWxjKDUwJSAtICN7JHRpcFdpZHRofSk7XG5cdFx0dG9wOiAwO1xuXHRcdGJvcmRlci1zdHlsZTogc29saWQ7XG5cdFx0Ym9yZGVyLXdpZHRoOiAwICR0aXBXaWR0aCAkdGlwSGVpZ2h0ICR0aXBXaWR0aDtcblx0XHRib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0aXBDb2xvciB0cmFuc3BhcmVudDtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKCR0aXBIZWlnaHQpKTtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgtKCR0aXBIZWlnaHQpKSk7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBCdWJibGUgRmxvYXQgUmlnaHQgKi9cbkBtaXhpbiBidWJibGUtZmxvYXQtcmlnaHQge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cblx0JjpiZWZvcmUge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAtMTtcblx0XHR0b3A6IGNhbGMoNTAlIC0gI3skdGlwSGVpZ2h0fSk7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcblx0XHRib3JkZXItd2lkdGg6ICR0aXBIZWlnaHQgMCAkdGlwSGVpZ2h0ICR0aXBXaWR0aDtcblx0XHRib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0aXBDb2xvcjtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKC0oJHRpcFdpZHRoKSkpO1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKCR0aXBXaWR0aCkpO1xuXHRcdH1cblx0fVxufVxuIiwiLyogQnViYmxlIEZsb2F0IEJvdHRvbSAqL1xuQG1peGluIGJ1YmJsZS1mbG9hdC1ib3R0b20ge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cblx0JjpiZWZvcmUge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAtMTtcblx0XHRjb250ZW50OiAnJztcblx0XHRsZWZ0OiBjYWxjKDUwJSAtICN7JHRpcFdpZHRofSk7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGJvcmRlci1zdHlsZTogc29saWQ7XG5cdFx0Ym9yZGVyLXdpZHRoOiAkdGlwSGVpZ2h0ICR0aXBXaWR0aCAwICR0aXBXaWR0aDtcblx0XHRib3JkZXItY29sb3I6ICR0aXBDb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC0oJHRpcEhlaWdodCkpKTtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgkdGlwSGVpZ2h0KSk7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBCdWJibGUgRmxvYXQgTGVmdCAqL1xuQG1peGluIGJ1YmJsZS1mbG9hdC1sZWZ0IHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xuXG5cdCY6YmVmb3JlIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogLTE7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0dG9wOiBjYWxjKDUwJSAtICN7JHRpcEhlaWdodH0pO1xuXHRcdGxlZnQ6IDA7XG5cdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcblx0XHRib3JkZXItd2lkdGg6ICR0aXBIZWlnaHQgJHRpcFdpZHRoICR0aXBIZWlnaHQgMDtcblx0XHRib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0aXBDb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKCR0aXBXaWR0aCkpO1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKC0oJHRpcFdpZHRoKSkpO1xuXHRcdH1cblx0fVxufVxuIiwiLyogSWNvbiBCYWNrICovXG5AbWl4aW4gaWNvbi1iYWNrIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLWxlZnQ6IDIuMmVtO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkZmFzdER1cmF0aW9uKTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcXGYxMzdcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0bGVmdDogMWVtO1xuXHRcdHBhZGRpbmc6IDAgMXB4O1xuXHRcdGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRmYXN0RHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgtNHB4KSk7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBJY29uIEZvcndhcmQgKi9cbkBtaXhpbiBpY29uLWZvcndhcmQge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctcmlnaHQ6IDIuMmVtO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkZmFzdER1cmF0aW9uKTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcXGYxMzhcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDFlbTtcblx0XHRwYWRkaW5nOiAwIDFweDtcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkZmFzdER1cmF0aW9uKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoNHB4KSk7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBJY29uIERvd24gKi9cbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWljb24tZG93bikge1xuXHQwJSxcblx0NTAlLFxuXHQxMDAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoMCkpO1xuXHR9XG5cdDI1JSxcblx0NzUlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoNnB4KSk7XG5cdH1cbn1cblxuLyogSWNvbiBEb3duICovXG5AbWl4aW4gaWNvbi1kb3duIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLXJpZ2h0OiAjeyRzcGFjZUJldHdlZW5UZXh0QW5kQXJyb3dzfTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcXGYwMWFcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDFlbTtcblx0XHRwYWRkaW5nOiAwIDFweDtcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LWljb24tZG93bik7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sIC43NXMpO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xuXHRcdH1cblx0fVxufVxuIiwiLyogSWNvbiBVcCAqL1xuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0taWNvbi11cCkge1xuXHQwJSxcblx0NTAlLFxuXHQxMDAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoMCkpO1xuXHR9XG5cdDI1JSxcblx0NzUlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoLTZweCkpO1xuXHR9XG59XG5cbi8qIEljb24gVXAgKi9cbkBtaXhpbiBpY29uLXVwIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcXGYwMWJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDFlbTtcblx0XHRwYWRkaW5nOiAwIDFweDtcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LWljb24tdXApO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAuNzVzKTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIEljb24gU3BpbiAqL1xuQG1peGluIGljb24tc3BpbiB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1yaWdodDogMi4yZW07XG5cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IFwiXFxmMDIxXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHJpZ2h0OiAxZW07XG5cdFx0cGFkZGluZzogMCAxcHg7XG5cdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sIDFzKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLWluLW91dCk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHJvdGF0ZSgzNjBkZWcpKTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIEljb24gRHJvcCAqL1xuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0taWNvbi1kcm9wKSB7XG5cdDAlIHtcblx0XHRvcGFjaXR5OiAwO1xuXG5cdH1cblxuXHQ1MCUge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC0xMDAlKSk7XG5cdH1cblxuXHQ1MSUsXG5cdDEwMCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cblxuLyogSWNvbiBEcm9wICovXG5AbWl4aW4gaWNvbi1kcm9wIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLXJpZ2h0OiAjeyRzcGFjZUJldHdlZW5UZXh0QW5kQXJyb3dzfTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcXGYwNDFcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDFlbTtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHBhZGRpbmc6IDAgMXB4O1xuXHRcdGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xuXHR9XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICN7JG1lZGl1bUR1cmF0aW9ufSk7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS1pY29uLWRyb3ApO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAjeyRzbG93RHVyYXRpb259KTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kZWxheSwgI3skbWVkaXVtRHVyYXRpb259KTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1maWxsLW1vZGUsIGZvcndhcmRzKTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2UtaW4tb3V0KTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGN1YmljLWJlemllciguNTIsMS42NCwuMzcsLjY2KSk7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBJY29uIEZhZGUgKi9cbkBtaXhpbiBpY29uLWZhZGUge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctcmlnaHQ6ICN7JHNwYWNlQmV0d2VlblRleHRBbmRBcnJvd3N9O1xuXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIlxcZjAwY1wiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRyaWdodDogMWVtO1xuXHRcdHBhZGRpbmc6IDAgMXB4O1xuXHRcdGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sIC41cyk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgY29sb3IpO1xuXHR9XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29sb3I6ICMwRjlFNUU7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBJY29uIEZsb2F0IEF3YXkgKi9cbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWljb24tZmxvYXQtYXdheSkge1xuXHQwJSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXG5cdDEwMCUge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC0xZW0pKTtcblx0fVxufVxuXG4vKiBJY29uIEZsb2F0IEF3YXkgKi9cbkBtaXhpbiBpY29uLWZsb2F0LWF3YXkge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctcmlnaHQ6ICN7JHNwYWNlQmV0d2VlblRleHRBbmRBcnJvd3N9O1xuXG5cdCY6YmVmb3JlLFxuXHQmOmFmdGVyIHtcblx0XHRjb250ZW50OiBcIlxcZjA1NVwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRyaWdodDogMWVtO1xuXHRcdHBhZGRpbmc6IDAgMXB4O1xuXHRcdGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcblx0fVxuXG5cdCY6YWZ0ZXIge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAjeyRzbG93RHVyYXRpb259KTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZmlsbC1tb2RlLCBmb3J3YXJkcyk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cblx0XHQmOmFmdGVyIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LWljb24tZmxvYXQtYXdheSk7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBJY29uIFNpbmsgQXdheSAqL1xuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0taWNvbi1zaW5rLWF3YXkpIHtcblx0MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblxuXHQxMDAlIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgxZW0pKTtcblx0fVxufVxuXG4vKiBJY29uIFNpbmsgQXdheSAqL1xuQG1peGluIGljb24tc2luay1hd2F5IHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLXJpZ2h0OiAjeyRzcGFjZUJldHdlZW5UZXh0QW5kQXJyb3dzfTtcblxuXHQmOmJlZm9yZSxcblx0JjphZnRlciB7XG5cdFx0Y29udGVudDogXCJcXGYwNTZcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDFlbTtcblx0XHRwYWRkaW5nOiAwIDFweDtcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcblx0fVxuXG5cdCY6YWZ0ZXIge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAjeyRzbG93RHVyYXRpb259KTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZmlsbC1tb2RlLCBmb3J3YXJkcyk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cblx0XHQmOmFmdGVyIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LWljb24tc2luay1hd2F5KTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIEljb24gR3JvdyAqL1xuQG1peGluIGljb24tZ3JvdyB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1yaWdodDogI3skc3BhY2VCZXR3ZWVuVGV4dEFuZEFycm93c307XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IFwiXFxmMTE4XCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHJpZ2h0OiAxZW07XG5cdFx0cGFkZGluZzogMCAxcHg7XG5cdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWigwKSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKDEuMykgdHJhbnNsYXRlWigwKSk7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBJY29uIFNocmluayAqL1xuQG1peGluIGljb24tc2hyaW5rIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLXJpZ2h0OiAjeyRzcGFjZUJldHdlZW5UZXh0QW5kQXJyb3dzfTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcXGYxMTlcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDFlbTtcblx0XHRwYWRkaW5nOiAwIDFweDtcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoLjgpKTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIEljb24gUHVsc2UgKi9cbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWljb24tcHVsc2UpIHtcblx0MjUlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKDEuMykpO1xuXHR9XG5cblx0NzUlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKC44KSk7XG5cdH1cbn1cblxuQG1peGluIGljb24tcHVsc2Uge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctcmlnaHQ6ICN7JHNwYWNlQmV0d2VlblRleHRBbmRBcnJvd3N9O1xuXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIlxcZjAxNVwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRyaWdodDogMWVtO1xuXHRcdHBhZGRpbmc6IDAgMXB4O1xuXHRcdGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS1pY29uLXB1bHNlKTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgMXMpO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgbGluZWFyKTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIGluZmluaXRlKTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIEljb24gUHVsc2UgR3JvdyAqL1xuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0taWNvbi1wdWxzZS1ncm93KSB7XG5cdHRvIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKDEuMykpO1xuXHR9XG59XG5cbkBtaXhpbiBpY29uLXB1bHNlLWdyb3cge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctcmlnaHQ6ICN7JHNwYWNlQmV0d2VlblRleHRBbmRBcnJvd3N9O1xuXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIlxcZjAxNVwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRyaWdodDogMWVtO1xuXHRcdHBhZGRpbmc6IDAgMXB4O1xuXHRcdGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS1pY29uLXB1bHNlLWdyb3cpO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgbGluZWFyKTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIGluZmluaXRlKTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kaXJlY3Rpb24sIGFsdGVybmF0ZSk7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBJY29uIFB1bHNlIFNocmluayAqL1xuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0taWNvbi1wdWxzZS1zaHJpbmspIHtcblx0dG8ge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoLjgpKTtcblx0fVxufVxuXG5AbWl4aW4gaWNvbi1wdWxzZS1zaHJpbmsge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctcmlnaHQ6ICN7JHNwYWNlQmV0d2VlblRleHRBbmRBcnJvd3N9O1xuXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIlxcZjAxNVwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRyaWdodDogMWVtO1xuXHRcdHBhZGRpbmc6IDAgMXB4O1xuXHRcdGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS1pY29uLXB1bHNlLXNocmluayk7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBsaW5lYXIpO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgaW5maW5pdGUpO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWRpcmVjdGlvbiwgYWx0ZXJuYXRlKTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIEljb24gUHVzaCAqL1xuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0taWNvbi1wdXNoKSB7XG5cdDUwJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCBzY2FsZSguNSkpO1xuXHR9XG59XG5cbkBtaXhpbiBpY29uLXB1c2gge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctcmlnaHQ6ICN7JHNwYWNlQmV0d2VlblRleHRBbmRBcnJvd3N9O1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIlxcZjAwNlwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRyaWdodDogMWVtO1xuXHRcdHBhZGRpbmc6IDAgMXB4O1xuXHRcdGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xuXHR9XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0taWNvbi1wdXNoKTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGxpbmVhcik7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAxKTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIEljb24gUG9wICovXG5AaW5jbHVkZSBrZXlmcmFtZXMoI3skbmFtZVNwYWNlfS1pY29uLXBvcCkge1xuXHQ1MCUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoMS41KSk7XG5cdH1cbn1cblxuQG1peGluIGljb24tcG9wIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLXJpZ2h0OiAjeyRzcGFjZUJldHdlZW5UZXh0QW5kQXJyb3dzfTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcXGYwMDVcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDFlbTtcblx0XHRwYWRkaW5nOiAwIDFweDtcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LWljb24tcG9wKTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sIGxpbmVhcik7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAxKTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIEljb24gQm91bmNlICovXG5cbkBtaXhpbiBpY29uLWJvdW5jZSB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1yaWdodDogI3skc3BhY2VCZXR3ZWVuVGV4dEFuZEFycm93c307XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IFwiXFxmMDg3XCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHJpZ2h0OiAxZW07XG5cdFx0cGFkZGluZzogMCAxcHg7XG5cdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWigwKSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCB0cmFuc2Zvcm0pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLW91dCk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHNjYWxlKDEuNSkpO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGN1YmljLWJlemllciguNDcsMi4wMiwuMzEsLTAuMzYpKTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIEljb24gUm90YXRlICovXG5AbWl4aW4gaWNvbi1yb3RhdGUge1xuXHQkZHVyYXRpb246ICRtZWRpdW1EdXJhdGlvbjtcblxuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctcmlnaHQ6ICN7JHNwYWNlQmV0d2VlblRleHRBbmRBcnJvd3N9O1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkZHVyYXRpb24pO1xuXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIlxcZjBjNlwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRyaWdodDogMWVtO1xuXHRcdHBhZGRpbmc6IDAgMXB4O1xuXHRcdGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRkdXJhdGlvbik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xuXHR9XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCByb3RhdGUoMjBkZWcpKTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIEljb24gR3JvdyBSb3RhdGUgKi9cbkBtaXhpbiBpY29uLWdyb3ctcm90YXRlIHtcblx0JGR1cmF0aW9uOiAkbWVkaXVtRHVyYXRpb247XG5cblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLXJpZ2h0OiAjeyRzcGFjZUJldHdlZW5UZXh0QW5kQXJyb3dzfTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJGR1cmF0aW9uKTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcXGYwOTVcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDFlbTtcblx0XHRwYWRkaW5nOiAwIDFweDtcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkZHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgc2NhbGUoMS41KSByb3RhdGUoMTJkZWcpKTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIEljb24gRmxvYXQgKi9cbkBtaXhpbiBpY29uLWZsb2F0IHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcXGYwMWJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDFlbTtcblx0XHRwYWRkaW5nOiAwIDFweDtcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tcHJvcGVydHksIHRyYW5zZm9ybSk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGVhc2Utb3V0KTtcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgtNHB4KSk7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBJY29uIFNpbmsgKi9cbkBtaXhpbiBpY29uLXNpbmsge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctcmlnaHQ6IDIuMmVtO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIlxcZjAxYVwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRyaWdodDogMWVtO1xuXHRcdHBhZGRpbmc6IDAgMXB4O1xuXHRcdGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgdHJhbnNmb3JtKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgZWFzZS1vdXQpO1xuXHR9XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKDRweCkpO1xuXHRcdH1cblx0fVxufVxuIiwiLyogSWNvbiBCb2IgKi9cbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWljb24tYm9iKSB7XG5cdDAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoLTZweCkpO1xuXHR9XG5cdDUwJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC0ycHgpKTtcblx0fVxuXHQxMDAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoLTZweCkpO1xuXHR9XG59XG5cbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWljb24tYm9iLWZsb2F0KSB7XG5cdDEwMCUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSgtNnB4KSk7XG5cdH1cbn1cblxuQG1peGluIGljb24tYm9iIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcXGYwNzdcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDFlbTtcblx0XHRwYWRkaW5nOiAwIDFweDtcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCBcIiN7JG5hbWVTcGFjZX0taWNvbi1ib2ItZmxvYXQsICN7JG5hbWVTcGFjZX0taWNvbi1ib2JcIik7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sIFwiLjNzLCAxLjVzXCIpO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWRlbGF5LCBcIjBzLCAuM3NcIik7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBcImVhc2Utb3V0LCBlYXNlLWluLW91dFwiKTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIFwiMSwgaW5maW5pdGVcIik7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZmlsbC1tb2RlLCBcImZvcndhcmRzXCIpO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWRpcmVjdGlvbiwgXCJub3JtYWwsIGFsdGVybmF0ZVwiKTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIEljb24gSGFuZyAqL1xuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0taWNvbi1oYW5nKSB7XG5cdDAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoNnB4KSk7XG5cdH1cblx0NTAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoMnB4KSk7XG5cdH1cblx0MTAwJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKDZweCkpO1xuXHR9XG59XG5cbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWljb24taGFuZy1zaW5rKSB7XG5cdDEwMCUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSg2cHgpKTtcblx0fVxufVxuXG5AbWl4aW4gaWNvbi1oYW5nIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcXGYwNzhcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDFlbTtcblx0XHRwYWRkaW5nOiAwIDFweDtcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCBcIiN7JG5hbWVTcGFjZX0taWNvbi1oYW5nLXNpbmssICN7JG5hbWVTcGFjZX0taWNvbi1oYW5nXCIpO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCBcIi4zcywgMS41c1wiKTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kZWxheSwgXCIwcywgLjNzXCIpO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgXCJlYXNlLW91dCwgZWFzZS1pbi1vdXRcIik7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCBcIjEsIGluZmluaXRlXCIpO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWZpbGwtbW9kZSwgXCJmb3J3YXJkc1wiKTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kaXJlY3Rpb24sIFwibm9ybWFsLCBhbHRlcm5hdGVcIik7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBJY29uIFdvYmJsZSBIb3Jpem9udGFsICovXG5AaW5jbHVkZSBrZXlmcmFtZXMoI3skbmFtZVNwYWNlfS1pY29uLXdvYmJsZS1ob3Jpem9udGFsKSB7XG5cdDE2LjY1JSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKDZweCkpO1xuXHR9XG5cblx0MzMuMyUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgtNXB4KSk7XG5cdH1cblxuXHQ0OS45NSUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCg0cHgpKTtcblx0fVxuXG5cdDY2LjYlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoLTJweCkpO1xuXHR9XG5cblx0ODMuMjUlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoMXB4KSk7XG5cdH1cblxuXHQxMDAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoMCkpO1xuXHR9XG59XG5cbkBtaXhpbiBpY29uLXdvYmJsZS1ob3Jpem9udGFsIHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcXGYwNjFcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDFlbTtcblx0XHRwYWRkaW5nOiAwIDFweDtcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LWljb24td29iYmxlLWhvcml6b250YWwpO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAxcyk7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLWluLW91dCk7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAxKTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIEljb24gV29iYmxlIFZlcnRpY2FsICovXG5AaW5jbHVkZSBrZXlmcmFtZXMoI3skbmFtZVNwYWNlfS1pY29uLXdvYmJsZS12ZXJ0aWNhbCkge1xuXHQxNi42NSUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWSg2cHgpKTtcblx0fVxuXG5cdDMzLjMlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoLTVweCkpO1xuXHR9XG5cblx0NDkuOTUlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVkoNHB4KSk7XG5cdH1cblxuXHQ2Ni42JSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKC0ycHgpKTtcblx0fVxuXG5cdDgzLjI1JSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKDFweCkpO1xuXHR9XG5cblx0MTAwJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVZKDApKTtcblx0fVxufVxuXG5AbWl4aW4gaWNvbi13b2JibGUtdmVydGljYWwge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctcmlnaHQ6IDIuMmVtO1xuXHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLWR1cmF0aW9uLCAkbWVkaXVtRHVyYXRpb24pO1xuXG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIlxcZjA2MlwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRyaWdodDogMWVtO1xuXHRcdHBhZGRpbmc6IDAgMXB4O1xuXHRcdGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVooMCkpO1xuXHR9XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUge1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLW5hbWUsICN7JG5hbWVTcGFjZX0taWNvbi13b2JibGUtdmVydGljYWwpO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWR1cmF0aW9uLCAxcyk7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBlYXNlLWluLW91dCk7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAxKTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIEljb24gQnV6eiAqL1xuQGluY2x1ZGUga2V5ZnJhbWVzKCN7JG5hbWVTcGFjZX0taWNvbi1idXp6KSB7XG5cdDUwJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKDNweCkgcm90YXRlKDJkZWcpKTtcblx0fVxuXG5cdDEwMCUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpKTtcblx0fVxufVxuXG5AbWl4aW4gaWNvbi1idXp6IHtcblx0QGluY2x1ZGUgaGFja3MoKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLXJpZ2h0OiAyLjJlbTtcblx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcXGYwMTdcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDFlbTtcblx0XHRwYWRkaW5nOiAwIDFweDtcblx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVaKDApKTtcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlIHtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1uYW1lLCAjeyRuYW1lU3BhY2V9LWljb24tYnV6eik7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tZHVyYXRpb24sIC4xNXMpO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbiwgbGluZWFyKTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIGluZmluaXRlKTtcblx0XHR9XG5cdH1cbn1cbiIsIi8qIEljb24gQnV6eiBPdXQgKi9cbkBpbmNsdWRlIGtleWZyYW1lcygjeyRuYW1lU3BhY2V9LWljb24tYnV6ei1vdXQpIHtcblx0MTAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoM3B4KSByb3RhdGUoMmRlZykpO1xuXHR9XG5cblx0MjAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0yZGVnKSk7XG5cdH1cblxuXHQzMCUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgyZGVnKSk7XG5cdH1cblxuXHQ0MCUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTJkZWcpKTtcblx0fVxuXG5cdDUwJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDFkZWcpKTtcblx0fVxuXG5cdDYwJSB7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNmb3JtLCB0cmFuc2xhdGVYKC0ycHgpIHJvdGF0ZSgtMWRlZykpO1xuXHR9XG5cblx0NzAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoMnB4KSByb3RhdGUoMWRlZykpO1xuXHR9XG5cblx0ODAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoLTJweCkgcm90YXRlKC0xZGVnKSk7XG5cdH1cblxuXHQ5MCUge1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWCgxcHgpIHJvdGF0ZSgwKSk7XG5cdH1cblxuXHQxMDAlIHtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2Zvcm0sIHRyYW5zbGF0ZVgoLTFweCkgcm90YXRlKDApKTtcblx0fVxufVxuXG5AbWl4aW4gaWNvbi1idXp6LW91dCB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1yaWdodDogMi4yZW07XG5cdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IFwiXFxmMDIzXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHJpZ2h0OiAxZW07XG5cdFx0cGFkZGluZzogMCAxcHg7XG5cdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zZm9ybSwgdHJhbnNsYXRlWigwKSk7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tbmFtZSwgI3skbmFtZVNwYWNlfS1pY29uLWJ1enotb3V0KTtcblx0XHRcdEBpbmNsdWRlIHByZWZpeGVkKGFuaW1hdGlvbi1kdXJhdGlvbiwgLjc1cyk7XG5cdFx0XHRAaW5jbHVkZSBwcmVmaXhlZChhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCBsaW5lYXIpO1xuXHRcdFx0QGluY2x1ZGUgcHJlZml4ZWQoYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgMSk7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiBDdXJsIFRvcCBMZWZ0ICovXG5AbWl4aW4gY3VybC10b3AtbGVmdCB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdGhlaWdodDogMDtcblx0XHR3aWR0aDogMDtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHRiYWNrZ3JvdW5kOiAkcmV2ZWFsQXJlYUNvbG9yOyAvKiBJRTkgKi9cblx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG5cdFx0XHQxMzVkZWcsXG5cdFx0XHQkcmV2ZWFsQXJlYUNvbG9yIDQ1JSxcblx0XHRcdCRjdXJsTGluZUNvbG9yIDUwJSxcblx0XHRcdCRjdXJsVHJhbnNpdGlvbkNvbG9yIDU2JSxcblx0XHRcdCRjdXJsTGFzdENvbG9yIDgwJVxuXHRcdCk7XG5cdFx0ZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoR3JhZGllbnRUeXBlPTAsc3RhcnRDb2xvcnN0cj0nI2ZmZmZmZicsIGVuZENvbG9yc3RyPScjMDAwMDAwJyk7LypGb3IgSUU3LTgtOSovXG5cblx0XHR6LWluZGV4OiAxMDAwO1xuXHRcdGJveC1zaGFkb3c6IDFweCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjQpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgXCJ3aWR0aCwgaGVpZ2h0XCIpO1xuXHR9XG5cblx0Jjpob3ZlcjpiZWZvcmUsXG5cdCY6Zm9jdXM6YmVmb3JlLFxuXHQmOmFjdGl2ZTpiZWZvcmUge1xuXHRcdHdpZHRoOiAkY3VybFdpZHRoO1xuXHRcdGhlaWdodDogJGN1cmxIZWlnaHQ7XG5cdH1cbn1cbiIsIi8qIEN1cmwgVG9wIFJpZ2h0ICovXG5AbWl4aW4gY3VybC10b3AtcmlnaHQge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0JjpiZWZvcmUge1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRjb250ZW50OiAnJztcblx0XHRoZWlnaHQ6IDA7XG5cdFx0d2lkdGg6IDA7XG5cdFx0dG9wOiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJhY2tncm91bmQ6ICRyZXZlYWxBcmVhQ29sb3I7IC8qIElFOSAqL1xuXHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcblx0XHRcdDIyNWRlZyxcblx0XHRcdCRyZXZlYWxBcmVhQ29sb3IgNDUlLFxuXHRcdFx0JGN1cmxMaW5lQ29sb3IgNTAlLFxuXHRcdFx0JGN1cmxUcmFuc2l0aW9uQ29sb3IgNTYlLFxuXHRcdFx0JGN1cmxMYXN0Q29sb3IgODAlXG5cdFx0KTtcblx0XHRib3gtc2hhZG93OiAtMXB4IDFweCAxcHggcmdiYSgwLCAwLCAwLCAuNCk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBcIndpZHRoLCBoZWlnaHRcIik7XG5cdH1cblxuXHQmOmhvdmVyOmJlZm9yZSxcblx0Jjpmb2N1czpiZWZvcmUsXG5cdCY6YWN0aXZlOmJlZm9yZSB7XG5cdFx0d2lkdGg6ICRjdXJsV2lkdGg7XG5cdFx0aGVpZ2h0OiAkY3VybEhlaWdodDtcblx0fVxufVxuIiwiLyogQ3VybCBCb3R0b20gUmlnaHQgKi9cbkBtaXhpbiBjdXJsLWJvdHRvbS1yaWdodCB7XG5cdEBpbmNsdWRlIGhhY2tzKCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdGhlaWdodDogMDtcblx0XHR3aWR0aDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0YmFja2dyb3VuZDogJHJldmVhbEFyZWFDb2xvcjsgLyogSUU5ICovXG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuXHRcdFx0MzE1ZGVnLFxuXHRcdFx0JHJldmVhbEFyZWFDb2xvciA0NSUsXG5cdFx0XHQkY3VybExpbmVDb2xvciA1MCUsXG5cdFx0XHQkY3VybFRyYW5zaXRpb25Db2xvciA1NiUsXG5cdFx0XHQkY3VybExhc3RDb2xvciA4MCVcblx0XHQpO1xuXHRcdGJveC1zaGFkb3c6IC0xcHggLTFweCAxcHggcmdiYSgwLCAwLCAwLCAuNCk7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1kdXJhdGlvbiwgJG1lZGl1bUR1cmF0aW9uKTtcblx0XHRAaW5jbHVkZSBwcmVmaXhlZCh0cmFuc2l0aW9uLXByb3BlcnR5LCBcIndpZHRoLCBoZWlnaHRcIik7XG5cdH1cblxuXHQmOmhvdmVyOmJlZm9yZSxcblx0Jjpmb2N1czpiZWZvcmUsXG5cdCY6YWN0aXZlOmJlZm9yZSB7XG5cdFx0d2lkdGg6ICRjdXJsV2lkdGg7XG5cdFx0aGVpZ2h0OiAkY3VybEhlaWdodDtcblx0fVxufVxuIiwiLyogQ3VybCBCb3R0b20gTGVmdCAqL1xuQG1peGluIGN1cmwtYm90dG9tLWxlZnQge1xuXHRAaW5jbHVkZSBoYWNrcygpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0JjpiZWZvcmUge1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRjb250ZW50OiAnJztcblx0XHRoZWlnaHQ6IDA7XG5cdFx0d2lkdGg6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0YmFja2dyb3VuZDogJHJldmVhbEFyZWFDb2xvcjsgLyogSUU5ICovXG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuXHRcdFx0NDVkZWcsXG5cdFx0XHQkcmV2ZWFsQXJlYUNvbG9yIDQ1JSxcblx0XHRcdCRjdXJsTGluZUNvbG9yIDUwJSxcblx0XHRcdCRjdXJsVHJhbnNpdGlvbkNvbG9yIDU2JSxcblx0XHRcdCRjdXJsTGFzdENvbG9yIDgwJVxuXHRcdCk7XG5cdFx0Ym94LXNoYWRvdzogMXB4IC0xcHggMXB4IHJnYmEoMCwgMCwgMCwgLjQpO1xuXHRcdEBpbmNsdWRlIHByZWZpeGVkKHRyYW5zaXRpb24tZHVyYXRpb24sICRtZWRpdW1EdXJhdGlvbik7XG5cdFx0QGluY2x1ZGUgcHJlZml4ZWQodHJhbnNpdGlvbi1wcm9wZXJ0eSwgXCJ3aWR0aCwgaGVpZ2h0XCIpO1xuXHR9XG5cblx0Jjpob3ZlcjpiZWZvcmUsXG5cdCY6Zm9jdXM6YmVmb3JlLFxuXHQmOmFjdGl2ZTpiZWZvcmUge1xuXHRcdHdpZHRoOiAkY3VybFdpZHRoO1xuXHRcdGhlaWdodDogJGN1cmxIZWlnaHQ7XG5cdH1cbn1cbiIsIi8qKlxuICogVmFyaWFibGVzIGRlY2xhcmVkIGhlcmUgY2FuIGJlIG92ZXJyaWRkZW4gYnkgY29uc3VtaW5nIGFwcGxpY2F0aW9ucywgd2l0aFxuICogdGhlIGhlbHAgb2YgdGhlIGAhZGVmYXVsdGAgZmxhZy5cbiAqXG4gKiBAZXhhbXBsZVxuICogICAgIC8vIG92ZXJyaWRpbmcgJGhvdmVyQ29sb3JcbiAqICAgICAkaG92ZXJDb2xvcjogcmdiYShyZWQsIDAuMDUpO1xuICpcbiAqICAgICAvLyBvdmVycmlkaW5nIGltYWdlIHBhdGhcbiAqICAgICAkZmxhZ3NJbWFnZVBhdGg6IFwiaW1hZ2VzL1wiO1xuICpcbiAqICAgICAvLyBpbXBvcnQgdGhlIHNjc3MgZmlsZSBhZnRlciB0aGUgb3ZlcnJpZGVzXG4gKiAgICAgQGltcG9ydCBcImJvd2VyX2NvbXBvbmVudC9pbnRsLXRlbC1pbnB1dC9zcmMvY3NzL2ludGxUZWxJbnB1dFwiO1xuICovXG5cbi8vIHJnYmEgaXMgbmVlZGVkIGZvciB0aGUgc2VsZWN0ZWQgZmxhZyBob3ZlciBzdGF0ZSB0byBibGVuZCBpbiB3aXRoXG4vLyB0aGUgYm9yZGVyLWhpZ2hsaWdodGluZyBzb21lIGJyb3dzZXJzIGdpdmUgdGhlIGlucHV0IG9uIGZvY3VzXG4kaG92ZXJDb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA1KSAhZGVmYXVsdDtcbiRncmV5VGV4dDogIzk5OSAhZGVmYXVsdDtcbiRncmV5Qm9yZGVyOiAjQ0NDICFkZWZhdWx0O1xuXG4kZmxhZ0hlaWdodDogMTVweCAhZGVmYXVsdDtcbiRmbGFnV2lkdGg6IDIwcHggIWRlZmF1bHQ7XG4kZmxhZ1BhZGRpbmc6IDhweCAhZGVmYXVsdDtcbi8vIHRoaXMgYm9yZGVyIHdpZHRoIGlzIHVzZWQgZm9yIHRoZSBwb3B1cCBhbmQgZGl2aWRlciwgYnV0IGl0IGlzIGFsc29cbi8vIGFzc3VtZWQgdG8gYmUgdGhlIGJvcmRlciB3aWR0aCBvZiB0aGUgaW5wdXQsIHdoaWNoIHdlIGRvIG5vdCBjb250cm9sXG4kYm9yZGVyV2lkdGg6IDFweCAhZGVmYXVsdDtcblxuJGFycm93SGVpZ2h0OiA0cHggIWRlZmF1bHQ7XG4kYXJyb3dXaWR0aDogNnB4ICFkZWZhdWx0O1xuJHRyaWFuZ2xlQm9yZGVyOiAzcHggIWRlZmF1bHQ7XG4kYXJyb3dQYWRkaW5nOiA2cHggIWRlZmF1bHQ7XG4kYXJyb3dDb2xvcjogIzU1NSAhZGVmYXVsdDtcblxuJGlucHV0UGFkZGluZzogNnB4ICFkZWZhdWx0O1xuJHNlbGVjdGVkRmxhZ1dpZHRoOiAkZmxhZ1dpZHRoICsgKDIgKiAkZmxhZ1BhZGRpbmcpICFkZWZhdWx0O1xuJHNlbGVjdGVkRmxhZ0Fycm93V2lkdGg6ICRmbGFnV2lkdGggKyAkZmxhZ1BhZGRpbmcgKyAkYXJyb3dXaWR0aCArICgyICogJGFycm93UGFkZGluZykgIWRlZmF1bHQ7XG4kc2VsZWN0ZWRGbGFnRGlhbENvZGVXaWR0aDogJHNlbGVjdGVkRmxhZ1dpZHRoICsgJGZsYWdQYWRkaW5nICFkZWZhdWx0O1xuJHNlbGVjdGVkRmxhZ0Fycm93RGlhbENvZGVXaWR0aDogJHNlbGVjdGVkRmxhZ0Fycm93V2lkdGggKyAkZmxhZ1BhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vIGltYWdlIHJlbGF0ZWQgdmFyaWFibGVzXG4kZmxhZ3NJbWFnZVBhdGg6IFwiLi4vaW1nL1wiICFkZWZhdWx0O1xuJGZsYWdzSW1hZ2VOYW1lOiBcImZsYWdzXCIgIWRlZmF1bHQ7XG4kZmxhZ3NJbWFnZUV4dGVuc2lvbjogXCJwbmdcIiAhZGVmYXVsdDtcblxuLy8gZW5vdWdoIHNwYWNlIGZvciB0aGVtIHRvIGNsaWNrIG9mZiB0byBjbG9zZVxuJG1vYmlsZVBvcHVwTWFyZ2luOiAzMHB4O1xuXG4uaW50bC10ZWwtaW5wdXQge1xuICAvLyBuZWVkIHBvc2l0aW9uIG9uIHRoZSBjb250YWluZXIgc28gdGhlIHNlbGVjdGVkIGZsYWcgY2FuIGJlXG4gIC8vIGFic29sdXRlbHkgcG9zaXRpb25lZCBvdmVyIHRoZSBpbnB1dFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIGtlZXAgdGhlIGlucHV0J3MgZGVmYXVsdCBpbmxpbmUgcHJvcGVydGllc1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgLy8gcGF1bCBpcmlzaCBzYXlzIHRoaXMgaXMgb2tcbiAgLy8gaHR0cDovL3d3dy5wYXVsaXJpc2guY29tLzIwMTIvYm94LXNpemluZy1ib3JkZXItYm94LWZ0dy9cbiAgKiB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICAuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAvLyBuZWVkIHRoaXMgZHVyaW5nIGluaXQsIHRvIGdldCB0aGUgaGVpZ2h0IG9mIHRoZSBkcm9wZG93blxuICAudi1oaWRlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBzcGVjaWZ5IHR5cGVzIHRvIGluY3JlYXNlIHNwZWNpZmljaXR5IGUuZy4gdG8gb3ZlcnJpZGUgYm9vdHN0cmFwIHYyLjNcbiAgaW5wdXQsIGlucHV0W3R5cGU9dGV4dF0sIGlucHV0W3R5cGU9dGVsXSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vIGlucHV0IGlzIGJvdHRvbSBsZXZlbCwgYmVsb3cgc2VsZWN0ZWQgZmxhZyBhbmQgZHJvcGRvd25cbiAgICB6LWluZGV4OiAwO1xuXG4gICAgLy8gYW55IHZlcnRpY2FsIG1hcmdpbiB0aGUgdXNlciBoYXMgb24gdGhlaXIgaW5wdXRzIHdvdWxkIG5vIGxvbmdlciB3b3JrIGFzIGV4cGVjdGVkXG4gICAgLy8gYmVjYXVzZSB3ZSB3cmFwIGV2ZXJ5dGhpbmcgaW4gYSBjb250YWluZXIgZGl2LiBpIGp1c3RpZnkgdGhlIHVzZSBvZiAhaW1wb3J0YW50XG4gICAgLy8gaGVyZSBiZWNhdXNlIGkgZG9uJ3QgdGhpbmsgdGhlIHVzZXIgc2hvdWxkIGV2ZXIgaGF2ZSB2ZXJ0aWNhbCBtYXJnaW4gaGVyZSAtIHdoZW5cbiAgICAvLyB0aGUgaW5wdXQgaXMgd3JhcHBlZCBpbiBhIGNvbnRhaW5lciwgdmVydGljYWwgbWFyZ2luIG1lc3NlcyB1cCBhbGlnbm1lbnQgd2l0aCBvdGhlclxuICAgIC8vIGlubGluZSBlbGVtZW50cyAoZS5nLiBhbiBhZGphY2VudCBidXR0b24pIGluIGZpcmVmb3gsIGFuZCBwcm9iYWJseSBvdGhlciBicm93c2Vycy5cbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuXG4gICAgLy8gbWFrZSBzcGFjZSBmb3IgdGhlIHNlbGVjdGVkIGZsYWdcbiAgICAvLyBOb3RlOiBubyAhaW1wb3J0YW50IGhlcmUsIGFzIHRoZSB1c2VyIG1heSB3YW50IHRvIHR3ZWFrIHRoaXMgc28gdGhhdCB0aGVcbiAgICAvLyBwZXJjZWl2ZWQgaW5wdXQgcGFkZGluZyBtYXRjaGVzIHRoZWlyIGV4aXN0aW5nIHN0eWxlc1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzZWxlY3RlZEZsYWdXaWR0aDtcblxuICAgIC8vIGFueSBtYXJnaW4tcmlnaHQgaGVyZSB3aWxsIHB1c2ggdGhlIHNlbGVjdGVkLWZsYWcgYXdheVxuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuXG4gIC5mbGFnLWNvbnRhaW5lciB7XG4gICAgLy8gcG9zaXRpb25lZCBvdmVyIHRoZSB0b3Agb2YgdGhlIGlucHV0XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vIGZ1bGwgaGVpZ2h0XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICAvLyBwcmV2ZW50IHRoZSBoaWdobGlnaHRlZCBjaGlsZCBmcm9tIG92ZXJsYXBwaW5nIHRoZSBpbnB1dCBib3JkZXJcbiAgICBwYWRkaW5nOiAkYm9yZGVyV2lkdGg7XG4gIH1cblxuICAuc2VsZWN0ZWQtZmxhZyB7XG4gICAgLy8gcmVuZGVyIGFib3ZlIHRoZSBpbnB1dFxuICAgIHotaW5kZXg6IDE7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAkc2VsZWN0ZWRGbGFnV2lkdGg7XG4gICAgLy8gdGhpcyBtdXN0IGJlIGZ1bGwtaGVpZ2h0IGJvdGggZm9yIHRoZSBob3ZlciBoaWdobGlnaHQsIGFuZCB0byBwdXNoIGRvd24gdGhlXG4gICAgLy8gZHJvcGRvd24gc28gaXQgYXBwZWFycyBiZWxvdyB0aGUgaW5wdXRcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMCAwIDAgJGZsYWdQYWRkaW5nO1xuXG4gICAgLy8gdmVydGljYWxseSBjZW50ZXIgdGhlIGZsYWdcbiAgICAuaXRpLWZsYWcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cblxuICAgIC5pdGktYXJyb3cge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgLy8gc3BsaXQgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgZmxhZyBhbmQgdGhlIGFycm93IGhlaWdodCB0byB2ZXJpY2FsbHkgY2VudGVyXG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xICogKCRhcnJvd0hlaWdodCAvIDIpO1xuICAgICAgcmlnaHQ6ICRhcnJvd1BhZGRpbmc7XG5cbiAgICAgIC8vIGNzcyB0cmlhbmdsZVxuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBib3JkZXItbGVmdDogJHRyaWFuZ2xlQm9yZGVyIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJpZ2h0OiAkdHJpYW5nbGVCb3JkZXIgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItdG9wOiAkYXJyb3dIZWlnaHQgc29saWQgJGFycm93Q29sb3I7XG5cbiAgICAgICYudXAge1xuICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiAkYXJyb3dIZWlnaHQgc29saWQgJGFycm93Q29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gdGhlIGRyb3Bkb3duXG4gIC5jb3VudHJ5LWxpc3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvLyBwb3B1cCBzbyByZW5kZXIgYWJvdmUgZXZlcnl0aGluZyBlbHNlXG4gICAgei1pbmRleDogMjtcblxuICAgIC8vIG92ZXJyaWRlIGRlZmF1bHQgbGlzdCBzdHlsZXNcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIC8vIGluIGNhc2UgYW55IGNvbnRhaW5lciBoYXMgdGV4dC1hbGlnbjpjZW50ZXJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgLy8gcGxhY2UgbWVudSBhYm92ZSB0aGUgaW5wdXQgZWxlbWVudFxuICAgICYuZHJvcHVwIHtcbiAgICAgIGJvdHRvbTogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206ICgtJGJvcmRlcldpZHRoKTtcbiAgICB9XG5cbiAgICAvLyBkcm9wZG93biBmbGFncyBuZWVkIGNvbnNpc3RlbnQgd2lkdGgsIHNvIHdyYXAgaW4gYSBjb250YWluZXJcbiAgICAuZmxhZy1ib3gge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6ICRmbGFnV2lkdGg7XG4gICAgfVxuXG4gICAgcGFkZGluZzogMDtcbiAgICAvLyBtYXJnaW4tbGVmdCB0byBjb21wZW5zYXRlIGZvciB0aGUgcGFkZGluZyBvbiB0aGUgcGFyZW50XG4gICAgbWFyZ2luOiAwIDAgMCAoLSRib3JkZXJXaWR0aCk7XG5cbiAgICBib3gtc2hhZG93OiAxcHggMXB4IDRweCByZ2JhKDAsMCwwLDAuMik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyOiAkYm9yZGVyV2lkdGggc29saWQgJGdyZXlCb3JkZXI7XG5cbiAgICAvLyBkb24ndCBsZXQgdGhlIGNvbnRlbnRzIHdyYXAgQUtBIHRoZSBjb250YWluZXIgd2lsbCBiZSBhcyB3aWRlIGFzIHRoZSBjb250ZW50c1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgLy8gZXhjZXB0IG9uIHNtYWxsIHNjcmVlbnMsIHdoZXJlIHdlIGZvcmNlIHRoZSBkcm9wZG93biB3aWR0aCB0byBtYXRjaCB0aGUgaW5wdXRcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTAwcHgpIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgfVxuXG4gICAgbWF4LWhlaWdodDogMjAwcHg7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuXG4gICAgLy8gdGhlIGRpdmlkZXIgYmVsb3cgdGhlIHByZWZlcnJlZCBjb3VudHJpZXNcbiAgICAuZGl2aWRlciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcldpZHRoIHNvbGlkICRncmV5Qm9yZGVyO1xuICAgIH1cblxuICAgIC8vIGVhY2ggY291bnRyeSBpdGVtIGluIGRyb3Bkb3duICh3ZSBtdXN0IGhhdmUgc2VwYXJhdGUgY2xhc3MgdG8gZGlmZmVyZW50aWF0ZSBmcm9tIGRpdmlkZXJzKVxuICAgIC5jb3VudHJ5IHtcbiAgICAgIC8vIE5vdGU6IGRlY2lkZWQgbm90IHRvIHVzZSBsaW5lLWhlaWdodCBoZXJlIGZvciBhbGlnbm1lbnQgYmVjYXVzZSBpdCBjYXVzZXMgaXNzdWVzIGUuZy4gbGFyZ2UgZm9udC1zaXplcyB3aWxsIG92ZXJsYXAsIGFuZCBhbHNvIGxvb2tzIGJhZCBpZiBvbmUgY291bnRyeSBvdmVyZmxvd3Mgb250byAyIGxpbmVzXG4gICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgIC8vIHRoZSBkaWFsIGNvZGVzIGFmdGVyIHRoZSBjb3VudHJ5IG5hbWVzIGFyZSBncmV5ZWQgb3V0XG4gICAgICAuZGlhbC1jb2RlIHtcbiAgICAgICAgY29sb3I6ICRncmV5VGV4dDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvdW50cnkuaGlnaGxpZ2h0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3ZlckNvbG9yO1xuICAgIH1cblxuICAgIC8vIHNwYWNpbmcgYmV0d2VlbiBjb3VudHJ5IGZsYWcsIG5hbWUgYW5kIGRpYWwgY29kZVxuICAgIC5mbGFnLWJveCwgLmNvdW50cnktbmFtZSwgLmRpYWwtY29kZSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgICAuZmxhZy1ib3gsIC5jb3VudHJ5LW5hbWUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gICAgfVxuICB9XG5cbiAgJi5hbGxvdy1kcm9wZG93biwgJi5zZXBhcmF0ZS1kaWFsLWNvZGUge1xuICAgIGlucHV0LCBpbnB1dFt0eXBlPXRleHRdLCBpbnB1dFt0eXBlPXRlbF0ge1xuICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0UGFkZGluZztcbiAgICAgIHBhZGRpbmctbGVmdDogJHNlbGVjdGVkRmxhZ0Fycm93V2lkdGggKyAkaW5wdXRQYWRkaW5nO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICAgIC5mbGFnLWNvbnRhaW5lciB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICAgIC5zZWxlY3RlZC1mbGFnIHtcbiAgICAgIHdpZHRoOiAkc2VsZWN0ZWRGbGFnQXJyb3dXaWR0aDtcbiAgICB9XG4gIH1cblxuICAmLmFsbG93LWRyb3Bkb3duIHtcbiAgICAvLyBob3ZlciBzdGF0ZSAtIHNob3cgZmxhZyBpcyBjbGlja2FibGVcbiAgICAuZmxhZy1jb250YWluZXI6aG92ZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgLnNlbGVjdGVkLWZsYWcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXJDb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gZGlzYWJsZSBob3ZlciBzdGF0ZSB3aGVuIGlucHV0IGlzIGRpc2FibGVkXG4gICAgaW5wdXRbZGlzYWJsZWRdICsgLmZsYWctY29udGFpbmVyOmhvdmVyLCBpbnB1dFtyZWFkb25seV0gKyAuZmxhZy1jb250YWluZXI6aG92ZXIge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgLnNlbGVjdGVkLWZsYWcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLnNlcGFyYXRlLWRpYWwtY29kZSB7XG4gICAgLnNlbGVjdGVkLWZsYWcge1xuICAgICAgLy8gbm93IHRoYXQgd2UgaGF2ZSBkaWdpdHMgaW4gdGhpcyBzZWN0aW9uLCBpdCBuZWVkcyB0aGlzIHZpc3VhbCBzZXBhcmF0aW9uXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXJDb2xvcjtcbiAgICAgIC8vIGZvciB2ZXJ0aWNhbCBjZW50ZXJpbmdcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cbiAgICAuc2VsZWN0ZWQtZGlhbC1jb2RlIHtcbiAgICAgIC8vIGZvciB2ZXJ0aWNhbCBjZW50ZXJpbmdcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICBwYWRkaW5nLWxlZnQ6ICRmbGFnV2lkdGggKyAkZmxhZ1BhZGRpbmc7XG4gICAgfVxuXG4gICAgLy8gLml0aS1zZGMgaXMgZm9yIFNlcGFyYXRlIERpYWwgQ29kZSwgd2l0aCBsZW5ndGhzIGZyb20gMi01IGJlY2F1c2Ugc2hvcnRlc3QgaXMgXCIrMVwiLCBsb25nZXN0IGlzIFwiKzE2ODRcIlxuICAgICRjaGFyTGVuZ3RoOiA4cHg7XG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCA1IHtcbiAgICAgICYuaXRpLXNkYy0jeyRpfSB7XG4gICAgICAgIGlucHV0LCBpbnB1dFt0eXBlPXRleHRdLCBpbnB1dFt0eXBlPXRlbF0ge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogJHNlbGVjdGVkRmxhZ0RpYWxDb2RlV2lkdGggKyAkaW5wdXRQYWRkaW5nICsgKCRpICogJGNoYXJMZW5ndGgpO1xuICAgICAgICB9XG4gICAgICAgIC5zZWxlY3RlZC1mbGFnIHtcbiAgICAgICAgICB3aWR0aDogJHNlbGVjdGVkRmxhZ0RpYWxDb2RlV2lkdGggKyAoJGkgKiAkY2hhckxlbmd0aCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuYWxsb3ctZHJvcGRvd24uaXRpLXNkYy0jeyRpfSB7XG4gICAgICAgIGlucHV0LCBpbnB1dFt0eXBlPXRleHRdLCBpbnB1dFt0eXBlPXRlbF0ge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogJHNlbGVjdGVkRmxhZ0Fycm93RGlhbENvZGVXaWR0aCArICRpbnB1dFBhZGRpbmcgKyAoJGkgKiAkY2hhckxlbmd0aCk7XG4gICAgICAgIH1cbiAgICAgICAgLnNlbGVjdGVkLWZsYWcge1xuICAgICAgICAgIHdpZHRoOiAkc2VsZWN0ZWRGbGFnQXJyb3dEaWFsQ29kZVdpZHRoICsgKCRpICogJGNoYXJMZW5ndGgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gaWYgZHJvcGRvd25Db250YWluZXIgb3B0aW9uIGlzIHNldCwgaW5jcmVhc2Ugei1pbmRleCB0byBwcmV2ZW50IGRpc3BsYXkgaXNzdWVzXG4gICYuaXRpLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTEwMDBweDtcbiAgICBsZWZ0OiAtMTAwMHB4O1xuICAgIC8vIGhpZ2hlciB0aGFuIGRlZmF1bHQgQm9vdHN0cmFwIG1vZGFsIHotaW5kZXggb2YgMTA1MFxuICAgIHotaW5kZXg6IDEwNjA7XG4gICAgLy8gdG8ga2VlcCBzdHlsaW5nIGNvbnNpc3RlbnQgd2l0aCAuZmxhZy1jb250YWluZXJcbiAgICBwYWRkaW5nOiAkYm9yZGVyV2lkdGg7XG4gICAgJjpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vIG92ZXJyaWRlcyBmb3IgbW9iaWxlIHBvcHVwXG4uaXRpLW1vYmlsZSAuaW50bC10ZWwtaW5wdXQge1xuICAmLml0aS1jb250YWluZXIge1xuICAgIHRvcDogJG1vYmlsZVBvcHVwTWFyZ2luO1xuICAgIGJvdHRvbTogJG1vYmlsZVBvcHVwTWFyZ2luO1xuICAgIGxlZnQ6ICRtb2JpbGVQb3B1cE1hcmdpbjtcbiAgICByaWdodDogJG1vYmlsZVBvcHVwTWFyZ2luO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgfVxuICAuY291bnRyeS1saXN0IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC5jb3VudHJ5IHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMTBweDtcbiAgICAgIC8vIGluY3JlYXNlIGxpbmUgaGVpZ2h0IGJlY2F1c2UgZHJvcGRvd24gY29weSBpcyB2IGxpa2VseSB0byBvdmVyZmxvdyBvbiBtb2JpbGUgYW5kIHdoZW4gaXQgZG9lcyBpdCBuZWVkcyB0byBiZSB3ZWxsIHNwYWNlZFxuICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cblxuQGltcG9ydCBcInNwcml0ZVwiO1xuXG4uaXRpLWZsYWcge1xuICB3aWR0aDogJGZsYWdXaWR0aDtcbiAgaGVpZ2h0OiAkZmxhZ0hlaWdodDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAxcHggMHB4ICM4ODg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGZsYWdzSW1hZ2VQYXRofSN7JGZsYWdzSW1hZ2VOYW1lfS4jeyRmbGFnc0ltYWdlRXh0ZW5zaW9ufVwiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgLy8gZW1wdHkgc3RhdGVcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RCREJEQjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZsYWdXaWR0aCAwO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIG9ubHkgc2NyZWVuIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgb25seSBzY3JlZW4gYW5kICgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyIC8gMSksIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skZmxhZ3NJbWFnZVBhdGh9I3skZmxhZ3NJbWFnZU5hbWV9QDJ4LiN7JGZsYWdzSW1hZ2VFeHRlbnNpb259XCIpO1xuICB9XG59XG5cblxuXG4vLyBoYWNrIGZvciBOZXBhbCB3aGljaCBpcyB0aGUgb25seSBmbGFnIHRoYXQgaXMgbm90IHNxdWFyZS9yZWN0YW5nbGUsIHNvIGl0IGhhcyB0cmFuc3BhcmVuY3ksIHNvIHlvdSBjYW4gc2VlIHRoZSBkZWZhdWx0IGdyZXkgYmVoaW5kIGl0XG4uaXRpLWZsYWcubnAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbiIsIkBmdW5jdGlvbiByZXRpbmEtc2l6ZSgkdmFsdWUpIHtcbiAgQHJldHVybiBmbG9vcigkdmFsdWUgLyAyKTtcbn1cblxuQG1peGluIHJldGluYS1iZy1zaXplKCRzcHJpdGVXaWR0aCwgJHNwcml0ZUhlaWdodCkge1xuICBiYWNrZ3JvdW5kLXNpemU6IGZsb29yKCRzcHJpdGVXaWR0aCAvIDIpIGZsb29yKCRzcHJpdGVIZWlnaHQgLyAyKTtcbn1cblxuLml0aS1mbGFnIHtcbiAgJGl0ZW0td2lkdGgtbWFwczogKGFjOiAyMHB4LCBhZDogMjBweCwgYWU6IDIwcHgsIGFmOiAyMHB4LCBhZzogMjBweCwgYWk6IDIwcHgsIGFsOiAyMHB4LCBhbTogMjBweCwgYW86IDIwcHgsIGFxOiAyMHB4LCBhcjogMjBweCwgYXM6IDIwcHgsIGF0OiAyMHB4LCBhdTogMjBweCwgYXc6IDIwcHgsIGF4OiAyMHB4LCBhejogMjBweCwgYmE6IDIwcHgsIGJiOiAyMHB4LCBiZDogMjBweCwgYmU6IDE4cHgsIGJmOiAyMHB4LCBiZzogMjBweCwgYmg6IDIwcHgsIGJpOiAyMHB4LCBiajogMjBweCwgYmw6IDIwcHgsIGJtOiAyMHB4LCBibjogMjBweCwgYm86IDIwcHgsIGJxOiAyMHB4LCBicjogMjBweCwgYnM6IDIwcHgsIGJ0OiAyMHB4LCBidjogMjBweCwgYnc6IDIwcHgsIGJ5OiAyMHB4LCBiejogMjBweCwgY2E6IDIwcHgsIGNjOiAyMHB4LCBjZDogMjBweCwgY2Y6IDIwcHgsIGNnOiAyMHB4LCBjaDogMTVweCwgY2k6IDIwcHgsIGNrOiAyMHB4LCBjbDogMjBweCwgY206IDIwcHgsIGNuOiAyMHB4LCBjbzogMjBweCwgY3A6IDIwcHgsIGNyOiAyMHB4LCBjdTogMjBweCwgY3Y6IDIwcHgsIGN3OiAyMHB4LCBjeDogMjBweCwgY3k6IDIwcHgsIGN6OiAyMHB4LCBkZTogMjBweCwgZGc6IDIwcHgsIGRqOiAyMHB4LCBkazogMjBweCwgZG06IDIwcHgsIGRvOiAyMHB4LCBkejogMjBweCwgZWE6IDIwcHgsIGVjOiAyMHB4LCBlZTogMjBweCwgZWc6IDIwcHgsIGVoOiAyMHB4LCBlcjogMjBweCwgZXM6IDIwcHgsIGV0OiAyMHB4LCBldTogMjBweCwgZmk6IDIwcHgsIGZqOiAyMHB4LCBmazogMjBweCwgZm06IDIwcHgsIGZvOiAyMHB4LCBmcjogMjBweCwgZ2E6IDIwcHgsIGdiOiAyMHB4LCBnZDogMjBweCwgZ2U6IDIwcHgsIGdmOiAyMHB4LCBnZzogMjBweCwgZ2g6IDIwcHgsIGdpOiAyMHB4LCBnbDogMjBweCwgZ206IDIwcHgsIGduOiAyMHB4LCBncDogMjBweCwgZ3E6IDIwcHgsIGdyOiAyMHB4LCBnczogMjBweCwgZ3Q6IDIwcHgsIGd1OiAyMHB4LCBndzogMjBweCwgZ3k6IDIwcHgsIGhrOiAyMHB4LCBobTogMjBweCwgaG46IDIwcHgsIGhyOiAyMHB4LCBodDogMjBweCwgaHU6IDIwcHgsIGljOiAyMHB4LCBpZDogMjBweCwgaWU6IDIwcHgsIGlsOiAyMHB4LCBpbTogMjBweCwgaW46IDIwcHgsIGlvOiAyMHB4LCBpcTogMjBweCwgaXI6IDIwcHgsIGlzOiAyMHB4LCBpdDogMjBweCwgamU6IDIwcHgsIGptOiAyMHB4LCBqbzogMjBweCwganA6IDIwcHgsIGtlOiAyMHB4LCBrZzogMjBweCwga2g6IDIwcHgsIGtpOiAyMHB4LCBrbTogMjBweCwga246IDIwcHgsIGtwOiAyMHB4LCBrcjogMjBweCwga3c6IDIwcHgsIGt5OiAyMHB4LCBrejogMjBweCwgbGE6IDIwcHgsIGxiOiAyMHB4LCBsYzogMjBweCwgbGk6IDIwcHgsIGxrOiAyMHB4LCBscjogMjBweCwgbHM6IDIwcHgsIGx0OiAyMHB4LCBsdTogMjBweCwgbHY6IDIwcHgsIGx5OiAyMHB4LCBtYTogMjBweCwgbWM6IDE5cHgsIG1kOiAyMHB4LCBtZTogMjBweCwgbWY6IDIwcHgsIG1nOiAyMHB4LCBtaDogMjBweCwgbWs6IDIwcHgsIG1sOiAyMHB4LCBtbTogMjBweCwgbW46IDIwcHgsIG1vOiAyMHB4LCBtcDogMjBweCwgbXE6IDIwcHgsIG1yOiAyMHB4LCBtczogMjBweCwgbXQ6IDIwcHgsIG11OiAyMHB4LCBtdjogMjBweCwgbXc6IDIwcHgsIG14OiAyMHB4LCBteTogMjBweCwgbXo6IDIwcHgsIG5hOiAyMHB4LCBuYzogMjBweCwgbmU6IDE4cHgsIG5mOiAyMHB4LCBuZzogMjBweCwgbmk6IDIwcHgsIG5sOiAyMHB4LCBubzogMjBweCwgbnA6IDEzcHgsIG5yOiAyMHB4LCBudTogMjBweCwgbno6IDIwcHgsIG9tOiAyMHB4LCBwYTogMjBweCwgcGU6IDIwcHgsIHBmOiAyMHB4LCBwZzogMjBweCwgcGg6IDIwcHgsIHBrOiAyMHB4LCBwbDogMjBweCwgcG06IDIwcHgsIHBuOiAyMHB4LCBwcjogMjBweCwgcHM6IDIwcHgsIHB0OiAyMHB4LCBwdzogMjBweCwgcHk6IDIwcHgsIHFhOiAyMHB4LCByZTogMjBweCwgcm86IDIwcHgsIHJzOiAyMHB4LCBydTogMjBweCwgcnc6IDIwcHgsIHNhOiAyMHB4LCBzYjogMjBweCwgc2M6IDIwcHgsIHNkOiAyMHB4LCBzZTogMjBweCwgc2c6IDIwcHgsIHNoOiAyMHB4LCBzaTogMjBweCwgc2o6IDIwcHgsIHNrOiAyMHB4LCBzbDogMjBweCwgc206IDIwcHgsIHNuOiAyMHB4LCBzbzogMjBweCwgc3I6IDIwcHgsIHNzOiAyMHB4LCBzdDogMjBweCwgc3Y6IDIwcHgsIHN4OiAyMHB4LCBzeTogMjBweCwgc3o6IDIwcHgsIHRhOiAyMHB4LCB0YzogMjBweCwgdGQ6IDIwcHgsIHRmOiAyMHB4LCB0ZzogMjBweCwgdGg6IDIwcHgsIHRqOiAyMHB4LCB0azogMjBweCwgdGw6IDIwcHgsIHRtOiAyMHB4LCB0bjogMjBweCwgdG86IDIwcHgsIHRyOiAyMHB4LCB0dDogMjBweCwgdHY6IDIwcHgsIHR3OiAyMHB4LCB0ejogMjBweCwgdWE6IDIwcHgsIHVnOiAyMHB4LCB1bTogMjBweCwgdXM6IDIwcHgsIHV5OiAyMHB4LCB1ejogMjBweCwgdmE6IDE1cHgsIHZjOiAyMHB4LCB2ZTogMjBweCwgdmc6IDIwcHgsIHZpOiAyMHB4LCB2bjogMjBweCwgdnU6IDIwcHgsIHdmOiAyMHB4LCB3czogMjBweCwgeGs6IDIwcHgsIHllOiAyMHB4LCB5dDogMjBweCwgemE6IDIwcHgsIHptOiAyMHB4LCB6dzogMjBweCwgKTtcbiAgJHN0YW5kYXJkLWNvdW50cnk6ICdhYyc7XG4gIHdpZHRoOiBtYXAtZ2V0KCRpdGVtLXdpZHRoLW1hcHMsICRzdGFuZGFyZC1jb3VudHJ5KTtcblxuICBAZWFjaCAka2V5LCAkd2lkdGggaW4gJGl0ZW0td2lkdGgtbWFwcyB7XG4gICAgQGlmICR3aWR0aCAhPSBtYXAtZ2V0KCRpdGVtLXdpZHRoLW1hcHMsICRzdGFuZGFyZC1jb3VudHJ5KSB7XG4gICAgICAmLiN7JGtleX0ge1xuICAgICAgICB3aWR0aDogJHdpZHRoO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYVxuICBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIvMSksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDE5MmRwaSksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICAgICAgICAgIG1pbi1yZXNvbHV0aW9uOiAyZHBweCkge1xuICAgIGJhY2tncm91bmQtc2l6ZTogNTYzMHB4IDE1cHg7XG4gIH1cblxuICAmLmFjIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IDBweDtcbiAgfVxuICAmLmFkIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIycHggMHB4O1xuICB9XG4gICYuYWUge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDRweCAwcHg7XG4gIH1cbiAgJi5hZiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC02NnB4IDBweDtcbiAgfVxuICAmLmFnIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTg4cHggMHB4O1xuICB9XG4gICYuYWkge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEwcHggMHB4O1xuICB9XG4gICYuYWwge1xuICAgIGhlaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTMycHggMHB4O1xuICB9XG4gICYuYW0ge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTU0cHggMHB4O1xuICB9XG4gICYuYW8ge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTc2cHggMHB4O1xuICB9XG4gICYuYXEge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTk4cHggMHB4O1xuICB9XG4gICYuYXIge1xuICAgIGhlaWdodDogMTNweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjIwcHggMHB4O1xuICB9XG4gICYuYXMge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjQycHggMHB4O1xuICB9XG4gICYuYXQge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjY0cHggMHB4O1xuICB9XG4gICYuYXUge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjg2cHggMHB4O1xuICB9XG4gICYuYXcge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzA4cHggMHB4O1xuICB9XG4gICYuYXgge1xuICAgIGhlaWdodDogMTNweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzMwcHggMHB4O1xuICB9XG4gICYuYXoge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzUycHggMHB4O1xuICB9XG4gICYuYmEge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzc0cHggMHB4O1xuICB9XG4gICYuYmIge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzk2cHggMHB4O1xuICB9XG4gICYuYmQge1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDE4cHggMHB4O1xuICB9XG4gICYuYmUge1xuICAgIGhlaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDQwcHggMHB4O1xuICB9XG4gICYuYmYge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDYwcHggMHB4O1xuICB9XG4gICYuYmcge1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDgycHggMHB4O1xuICB9XG4gICYuYmgge1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTA0cHggMHB4O1xuICB9XG4gICYuYmkge1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTI2cHggMHB4O1xuICB9XG4gICYuYmoge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTQ4cHggMHB4O1xuICB9XG4gICYuYmwge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTcwcHggMHB4O1xuICB9XG4gICYuYm0ge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTkycHggMHB4O1xuICB9XG4gICYuYm4ge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjE0cHggMHB4O1xuICB9XG4gICYuYm8ge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjM2cHggMHB4O1xuICB9XG4gICYuYnEge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjU4cHggMHB4O1xuICB9XG4gICYuYnIge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjgwcHggMHB4O1xuICB9XG4gICYuYnMge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzAycHggMHB4O1xuICB9XG4gICYuYnQge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzI0cHggMHB4O1xuICB9XG4gICYuYnYge1xuICAgIGhlaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzQ2cHggMHB4O1xuICB9XG4gICYuYncge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzY4cHggMHB4O1xuICB9XG4gICYuYnkge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzkwcHggMHB4O1xuICB9XG4gICYuYnoge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODEycHggMHB4O1xuICB9XG4gICYuY2Ege1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODM0cHggMHB4O1xuICB9XG4gICYuY2Mge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODU2cHggMHB4O1xuICB9XG4gICYuY2Qge1xuICAgIGhlaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODc4cHggMHB4O1xuICB9XG4gICYuY2Yge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTAwcHggMHB4O1xuICB9XG4gICYuY2cge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTIycHggMHB4O1xuICB9XG4gICYuY2gge1xuICAgIGhlaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTQ0cHggMHB4O1xuICB9XG4gICYuY2kge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTYxcHggMHB4O1xuICB9XG4gICYuY2sge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTgzcHggMHB4O1xuICB9XG4gICYuY2wge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwNXB4IDBweDtcbiAgfVxuICAmLmNtIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMjdweCAwcHg7XG4gIH1cbiAgJi5jbiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDQ5cHggMHB4O1xuICB9XG4gICYuY28ge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA3MXB4IDBweDtcbiAgfVxuICAmLmNwIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwOTNweCAwcHg7XG4gIH1cbiAgJi5jciB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMTE1cHggMHB4O1xuICB9XG4gICYuY3Uge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEzN3B4IDBweDtcbiAgfVxuICAmLmN2IHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExNTlweCAwcHg7XG4gIH1cbiAgJi5jdyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMTgxcHggMHB4O1xuICB9XG4gICYuY3gge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwM3B4IDBweDtcbiAgfVxuICAmLmN5IHtcbiAgICBoZWlnaHQ6IDEzcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMjVweCAwcHg7XG4gIH1cbiAgJi5jeiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjQ3cHggMHB4O1xuICB9XG4gICYuZGUge1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI2OXB4IDBweDtcbiAgfVxuICAmLmRnIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOTFweCAwcHg7XG4gIH1cbiAgJi5kaiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMzEzcHggMHB4O1xuICB9XG4gICYuZGsge1xuICAgIGhlaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTMzNXB4IDBweDtcbiAgfVxuICAmLmRtIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEzNTdweCAwcHg7XG4gIH1cbiAgJi5kbyB7XG4gICAgaGVpZ2h0OiAxM3B4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMzc5cHggMHB4O1xuICB9XG4gICYuZHoge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQwMXB4IDBweDtcbiAgfVxuICAmLmVhIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0MjNweCAwcHg7XG4gIH1cbiAgJi5lYyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNDQ1cHggMHB4O1xuICB9XG4gICYuZWUge1xuICAgIGhlaWdodDogMTNweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ2N3B4IDBweDtcbiAgfVxuICAmLmVnIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0ODlweCAwcHg7XG4gIH1cbiAgJi5laCB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNTExcHggMHB4O1xuICB9XG4gICYuZXIge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTUzM3B4IDBweDtcbiAgfVxuICAmLmVzIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1NTVweCAwcHg7XG4gIH1cbiAgJi5ldCB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNTc3cHggMHB4O1xuICB9XG4gICYuZXUge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTU5OXB4IDBweDtcbiAgfVxuICAmLmZpIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2MjFweCAwcHg7XG4gIH1cbiAgJi5maiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNjQzcHggMHB4O1xuICB9XG4gICYuZmsge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTY2NXB4IDBweDtcbiAgfVxuICAmLmZtIHtcbiAgICBoZWlnaHQ6IDExcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2ODdweCAwcHg7XG4gIH1cbiAgJi5mbyB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNzA5cHggMHB4O1xuICB9XG4gICYuZnIge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTczMXB4IDBweDtcbiAgfVxuICAmLmdhIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NTNweCAwcHg7XG4gIH1cbiAgJi5nYiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNzc1cHggMHB4O1xuICB9XG4gICYuZ2Qge1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTc5N3B4IDBweDtcbiAgfVxuICAmLmdlIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4MTlweCAwcHg7XG4gIH1cbiAgJi5nZiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xODQxcHggMHB4O1xuICB9XG4gICYuZ2cge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTg2M3B4IDBweDtcbiAgfVxuICAmLmdoIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE4ODVweCAwcHg7XG4gIH1cbiAgJi5naSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xOTA3cHggMHB4O1xuICB9XG4gICYuZ2wge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkyOXB4IDBweDtcbiAgfVxuICAmLmdtIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5NTFweCAwcHg7XG4gIH1cbiAgJi5nbiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xOTczcHggMHB4O1xuICB9XG4gICYuZ3Age1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTk5NXB4IDBweDtcbiAgfVxuICAmLmdxIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwMTdweCAwcHg7XG4gIH1cbiAgJi5nciB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMDM5cHggMHB4O1xuICB9XG4gICYuZ3Mge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjA2MXB4IDBweDtcbiAgfVxuICAmLmd0IHtcbiAgICBoZWlnaHQ6IDEzcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwODNweCAwcHg7XG4gIH1cbiAgJi5ndSB7XG4gICAgaGVpZ2h0OiAxMXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMTA1cHggMHB4O1xuICB9XG4gICYuZ3cge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjEyN3B4IDBweDtcbiAgfVxuICAmLmd5IHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIxNDlweCAwcHg7XG4gIH1cbiAgJi5oayB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMTcxcHggMHB4O1xuICB9XG4gICYuaG0ge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjE5M3B4IDBweDtcbiAgfVxuICAmLmhuIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyMTVweCAwcHg7XG4gIH1cbiAgJi5ociB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMjM3cHggMHB4O1xuICB9XG4gICYuaHQge1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI1OXB4IDBweDtcbiAgfVxuICAmLmh1IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyODFweCAwcHg7XG4gIH1cbiAgJi5pYyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMzAzcHggMHB4O1xuICB9XG4gICYuaWQge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjMyNXB4IDBweDtcbiAgfVxuICAmLmllIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIzNDdweCAwcHg7XG4gIH1cbiAgJi5pbCB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMzY5cHggMHB4O1xuICB9XG4gICYuaW0ge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjM5MXB4IDBweDtcbiAgfVxuICAmLmluIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0MTNweCAwcHg7XG4gIH1cbiAgJi5pbyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNDM1cHggMHB4O1xuICB9XG4gICYuaXEge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjQ1N3B4IDBweDtcbiAgfVxuICAmLmlyIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0NzlweCAwcHg7XG4gIH1cbiAgJi5pcyB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNTAxcHggMHB4O1xuICB9XG4gICYuaXQge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjUyM3B4IDBweDtcbiAgfVxuICAmLmplIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1NDVweCAwcHg7XG4gIH1cbiAgJi5qbSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNTY3cHggMHB4O1xuICB9XG4gICYuam8ge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjU4OXB4IDBweDtcbiAgfVxuICAmLmpwIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI2MTFweCAwcHg7XG4gIH1cbiAgJi5rZSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNjMzcHggMHB4O1xuICB9XG4gICYua2cge1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjY1NXB4IDBweDtcbiAgfVxuICAmLmtoIHtcbiAgICBoZWlnaHQ6IDEzcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI2NzdweCAwcHg7XG4gIH1cbiAgJi5raSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNjk5cHggMHB4O1xuICB9XG4gICYua20ge1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjcyMXB4IDBweDtcbiAgfVxuICAmLmtuIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI3NDNweCAwcHg7XG4gIH1cbiAgJi5rcCB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNzY1cHggMHB4O1xuICB9XG4gICYua3Ige1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjc4N3B4IDBweDtcbiAgfVxuICAmLmt3IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4MDlweCAwcHg7XG4gIH1cbiAgJi5reSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yODMxcHggMHB4O1xuICB9XG4gICYua3oge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjg1M3B4IDBweDtcbiAgfVxuICAmLmxhIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4NzVweCAwcHg7XG4gIH1cbiAgJi5sYiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yODk3cHggMHB4O1xuICB9XG4gICYubGMge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjkxOXB4IDBweDtcbiAgfVxuICAmLmxpIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI5NDFweCAwcHg7XG4gIH1cbiAgJi5sayB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yOTYzcHggMHB4O1xuICB9XG4gICYubHIge1xuICAgIGhlaWdodDogMTFweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjk4NXB4IDBweDtcbiAgfVxuICAmLmxzIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwMDdweCAwcHg7XG4gIH1cbiAgJi5sdCB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMDI5cHggMHB4O1xuICB9XG4gICYubHUge1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzA1MXB4IDBweDtcbiAgfVxuICAmLmx2IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwNzNweCAwcHg7XG4gIH1cbiAgJi5seSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMDk1cHggMHB4O1xuICB9XG4gICYubWEge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzExN3B4IDBweDtcbiAgfVxuICAmLm1jIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMxMzlweCAwcHg7XG4gIH1cbiAgJi5tZCB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMTYwcHggMHB4O1xuICB9XG4gICYubWUge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzE4MnB4IDBweDtcbiAgfVxuICAmLm1mIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMyMDRweCAwcHg7XG4gIH1cbiAgJi5tZyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMjI2cHggMHB4O1xuICB9XG4gICYubWgge1xuICAgIGhlaWdodDogMTFweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzI0OHB4IDBweDtcbiAgfVxuICAmLm1rIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMyNzBweCAwcHg7XG4gIH1cbiAgJi5tbCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMjkycHggMHB4O1xuICB9XG4gICYubW0ge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzMxNHB4IDBweDtcbiAgfVxuICAmLm1uIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMzMzZweCAwcHg7XG4gIH1cbiAgJi5tbyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMzU4cHggMHB4O1xuICB9XG4gICYubXAge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzM4MHB4IDBweDtcbiAgfVxuICAmLm1xIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM0MDJweCAwcHg7XG4gIH1cbiAgJi5tciB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNDI0cHggMHB4O1xuICB9XG4gICYubXMge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzQ0NnB4IDBweDtcbiAgfVxuICAmLm10IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM0NjhweCAwcHg7XG4gIH1cbiAgJi5tdSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNDkwcHggMHB4O1xuICB9XG4gICYubXYge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzUxMnB4IDBweDtcbiAgfVxuICAmLm13IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1MzRweCAwcHg7XG4gIH1cbiAgJi5teCB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNTU2cHggMHB4O1xuICB9XG4gICYubXkge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzU3OHB4IDBweDtcbiAgfVxuICAmLm16IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2MDBweCAwcHg7XG4gIH1cbiAgJi5uYSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNjIycHggMHB4O1xuICB9XG4gICYubmMge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzY0NHB4IDBweDtcbiAgfVxuICAmLm5lIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM2NjZweCAwcHg7XG4gIH1cbiAgJi5uZiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNjg2cHggMHB4O1xuICB9XG4gICYubmcge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzcwOHB4IDBweDtcbiAgfVxuICAmLm5pIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM3MzBweCAwcHg7XG4gIH1cbiAgJi5ubCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zNzUycHggMHB4O1xuICB9XG4gICYubm8ge1xuICAgIGhlaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzc3NHB4IDBweDtcbiAgfVxuICAmLm5wIHtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM3OTZweCAwcHg7XG4gIH1cbiAgJi5uciB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zODExcHggMHB4O1xuICB9XG4gICYubnUge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzgzM3B4IDBweDtcbiAgfVxuICAmLm56IHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM4NTVweCAwcHg7XG4gIH1cbiAgJi5vbSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zODc3cHggMHB4O1xuICB9XG4gICYucGEge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzg5OXB4IDBweDtcbiAgfVxuICAmLnBlIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM5MjFweCAwcHg7XG4gIH1cbiAgJi5wZiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zOTQzcHggMHB4O1xuICB9XG4gICYucGcge1xuICAgIGhlaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzk2NXB4IDBweDtcbiAgfVxuICAmLnBoIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM5ODdweCAwcHg7XG4gIH1cbiAgJi5wayB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MDA5cHggMHB4O1xuICB9XG4gICYucGwge1xuICAgIGhlaWdodDogMTNweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDAzMXB4IDBweDtcbiAgfVxuICAmLnBtIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwNTNweCAwcHg7XG4gIH1cbiAgJi5wbiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MDc1cHggMHB4O1xuICB9XG4gICYucHIge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDA5N3B4IDBweDtcbiAgfVxuICAmLnBzIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQxMTlweCAwcHg7XG4gIH1cbiAgJi5wdCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MTQxcHggMHB4O1xuICB9XG4gICYucHcge1xuICAgIGhlaWdodDogMTNweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDE2M3B4IDBweDtcbiAgfVxuICAmLnB5IHtcbiAgICBoZWlnaHQ6IDExcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQxODVweCAwcHg7XG4gIH1cbiAgJi5xYSB7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQyMDdweCAwcHg7XG4gIH1cbiAgJi5yZSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MjI5cHggMHB4O1xuICB9XG4gICYucm8ge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDI1MXB4IDBweDtcbiAgfVxuICAmLnJzIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQyNzNweCAwcHg7XG4gIH1cbiAgJi5ydSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00Mjk1cHggMHB4O1xuICB9XG4gICYucncge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDMxN3B4IDBweDtcbiAgfVxuICAmLnNhIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQzMzlweCAwcHg7XG4gIH1cbiAgJi5zYiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MzYxcHggMHB4O1xuICB9XG4gICYuc2Mge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDM4M3B4IDBweDtcbiAgfVxuICAmLnNkIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ0MDVweCAwcHg7XG4gIH1cbiAgJi5zZSB7XG4gICAgaGVpZ2h0OiAxM3B4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NDI3cHggMHB4O1xuICB9XG4gICYuc2cge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDQ0OXB4IDBweDtcbiAgfVxuICAmLnNoIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ0NzFweCAwcHg7XG4gIH1cbiAgJi5zaSB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NDkzcHggMHB4O1xuICB9XG4gICYuc2oge1xuICAgIGhlaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDUxNXB4IDBweDtcbiAgfVxuICAmLnNrIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ1MzdweCAwcHg7XG4gIH1cbiAgJi5zbCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NTU5cHggMHB4O1xuICB9XG4gICYuc20ge1xuICAgIGhlaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDU4MXB4IDBweDtcbiAgfVxuICAmLnNuIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ2MDNweCAwcHg7XG4gIH1cbiAgJi5zbyB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NjI1cHggMHB4O1xuICB9XG4gICYuc3Ige1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDY0N3B4IDBweDtcbiAgfVxuICAmLnNzIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ2NjlweCAwcHg7XG4gIH1cbiAgJi5zdCB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NjkxcHggMHB4O1xuICB9XG4gICYuc3Yge1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDcxM3B4IDBweDtcbiAgfVxuICAmLnN4IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ3MzVweCAwcHg7XG4gIH1cbiAgJi5zeSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NzU3cHggMHB4O1xuICB9XG4gICYuc3oge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDc3OXB4IDBweDtcbiAgfVxuICAmLnRhIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4MDFweCAwcHg7XG4gIH1cbiAgJi50YyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00ODIzcHggMHB4O1xuICB9XG4gICYudGQge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDg0NXB4IDBweDtcbiAgfVxuICAmLnRmIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4NjdweCAwcHg7XG4gIH1cbiAgJi50ZyB7XG4gICAgaGVpZ2h0OiAxM3B4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00ODg5cHggMHB4O1xuICB9XG4gICYudGgge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDkxMXB4IDBweDtcbiAgfVxuICAmLnRqIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ5MzNweCAwcHg7XG4gIH1cbiAgJi50ayB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00OTU1cHggMHB4O1xuICB9XG4gICYudGwge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDk3N3B4IDBweDtcbiAgfVxuICAmLnRtIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ5OTlweCAwcHg7XG4gIH1cbiAgJi50biB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MDIxcHggMHB4O1xuICB9XG4gICYudG8ge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTA0M3B4IDBweDtcbiAgfVxuICAmLnRyIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUwNjVweCAwcHg7XG4gIH1cbiAgJi50dCB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MDg3cHggMHB4O1xuICB9XG4gICYudHYge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTEwOXB4IDBweDtcbiAgfVxuICAmLnR3IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUxMzFweCAwcHg7XG4gIH1cbiAgJi50eiB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MTUzcHggMHB4O1xuICB9XG4gICYudWEge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTE3NXB4IDBweDtcbiAgfVxuICAmLnVnIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUxOTdweCAwcHg7XG4gIH1cbiAgJi51bSB7XG4gICAgaGVpZ2h0OiAxMXB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MjE5cHggMHB4O1xuICB9XG4gICYudXMge1xuICAgIGhlaWdodDogMTFweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTI0MXB4IDBweDtcbiAgfVxuICAmLnV5IHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUyNjNweCAwcHg7XG4gIH1cbiAgJi51eiB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01Mjg1cHggMHB4O1xuICB9XG4gICYudmEge1xuICAgIGhlaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTMwN3B4IDBweDtcbiAgfVxuICAmLnZjIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUzMjRweCAwcHg7XG4gIH1cbiAgJi52ZSB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MzQ2cHggMHB4O1xuICB9XG4gICYudmcge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTM2OHB4IDBweDtcbiAgfVxuICAmLnZpIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTUzOTBweCAwcHg7XG4gIH1cbiAgJi52biB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NDEycHggMHB4O1xuICB9XG4gICYudnUge1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTQzNHB4IDBweDtcbiAgfVxuICAmLndmIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU0NTZweCAwcHg7XG4gIH1cbiAgJi53cyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NDc4cHggMHB4O1xuICB9XG4gICYueGsge1xuICAgIGhlaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTUwMHB4IDBweDtcbiAgfVxuICAmLnllIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU1MjJweCAwcHg7XG4gIH1cbiAgJi55dCB7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NTQ0cHggMHB4O1xuICB9XG4gICYuemEge1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNTU2NnB4IDBweDtcbiAgfVxuICAmLnptIHtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU1ODhweCAwcHg7XG4gIH1cbiAgJi56dyB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NjEwcHggMHB4O1xuICB9XG59XG4iLCIvKiBTbGlkZXIgKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1saXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICYuZHJhZ2dpbmcge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGN1cnNvcjogaGFuZDtcbiAgICB9XG59XG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAmLmRyYWdnaW5nIGltZyB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuc2xpY2stdmVydGljYWwgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vIERlZmF1bHQgVmFyaWFibGVzXG5cbi8vIFNsaWNrIGljb24gZW50aXR5IGNvZGVzIG91dHB1dHMgdGhlIGZvbGxvd2luZ1xuLy8gXCJcXDIxOTBcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGkFwiXG4vLyBcIlxcMjE5MlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaSXCJcbi8vIFwiXFwyMDIyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLigKJcIlxuXG4kc2xpY2stZm9udC1wYXRoOiBcIi4uL2ZvbnRzL3NsaWNrL1wiICFkZWZhdWx0O1xuJHNsaWNrLWZvbnQtZmFtaWx5OiBcInNsaWNrXCIgIWRlZmF1bHQ7XG4kc2xpY2stbG9hZGVyLXBhdGg6IFwiLi4vaW1nL1wiICFkZWZhdWx0O1xuJHNsaWNrLWFycm93LWNvbG9yOiB3aGl0ZSAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3I6IGJsYWNrICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU6ICRzbGljay1kb3QtY29sb3IgIWRlZmF1bHQ7XG4kc2xpY2stcHJldi1jaGFyYWN0ZXI6IFwiXFwyMTkwXCIgIWRlZmF1bHQ7XG4kc2xpY2stbmV4dC1jaGFyYWN0ZXI6IFwiXFwyMTkyXCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNoYXJhY3RlcjogXCJcXDIwMjJcIiAhZGVmYXVsdDtcbiRzbGljay1kb3Qtc2l6ZTogNnB4ICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktZGVmYXVsdDogMC43NSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW9uLWhvdmVyOiAxICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTogMC4yNSAhZGVmYXVsdDtcblxuQGZ1bmN0aW9uIHNsaWNrLWltYWdlLXVybCgkdXJsKSB7XG4gICAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhpbWFnZS11cmwpIHtcbiAgICAgICAgQHJldHVybiBpbWFnZS11cmwoJHVybCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWxvYWRlci1wYXRoICsgJHVybCk7XG4gICAgfVxufVxuXG5AZnVuY3Rpb24gc2xpY2stZm9udC11cmwoJHVybCkge1xuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoZm9udC11cmwpIHtcbiAgICAgICAgQHJldHVybiBmb250LXVybCgkdXJsKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgICBAcmV0dXJuIHVybCgkc2xpY2stZm9udC1wYXRoICsgJHVybCk7XG4gICAgfVxufVxuXG4vKiBTbGlkZXIgKi9cblxuLnNsaWNrLWxpc3Qge1xuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmIHNsaWNrLWltYWdlLXVybChcImFqYXgtbG9hZGVyLmdpZlwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgICB9XG59XG5cbi8qIEljb25zICovXG5AaWYgJHNsaWNrLWZvbnQtZmFtaWx5ID09IFwic2xpY2tcIiB7XG4gICAgQGZvbnQtZmFjZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gICAgICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3RcIik7XG4gICAgICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2suc3ZnI3NsaWNrXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIH1cbn1cblxuLyogQXJyb3dzICovXG5cbi5zbGljay1wcmV2LFxuLnNsaWNrLW5leHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICBmb250LXNpemU6IDBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRvcDogNTAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuc2xpY2stZGlzYWJsZWQ6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBjb2xvcjogJHNsaWNrLWFycm93LWNvbG9yO1xuICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICB9XG59XG5cbi5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAtMjVweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogLTI1cHg7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IC0yNXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGxlZnQ6IC0yNXB4O1xuICAgICAgICByaWdodDogYXV0bztcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkc2xpY2stbmV4dC1jaGFyYWN0ZXI7XG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBjb250ZW50OiAkc2xpY2stcHJldi1jaGFyYWN0ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIERvdHMgKi9cblxuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5zbGljay1kb3RzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMjVweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgY29udGVudDogJHNsaWNrLWRvdC1jaGFyYWN0ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkc2xpY2stZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkc2xpY2stZG90LXNpemU7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yLWFjdGl2ZTtcbiAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0= */
